summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/GNUmakefile.am
blob: 1ad42fd1c2b677959b4641f1c0756ffd05417b5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
include $(srcdir)/Source/JavaScriptCore/GNUmakefile.list.am

lib_LTLIBRARIES += \
	libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la

# We are going to make everything public for now. When
# https://bugs.webkit.org/show_bug.cgi?id=27551 is fixed we'll able to
# simply rely on the usual symbol visibility flags.
libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \
	-version-info @LIBJAVASCRIPTCOREGTK_VERSION@ \
	$(no_undefined)

nodist_EXTRA_libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
	$(javascriptcore_built_nosources)

nodist_libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
	$(javascriptcore_built_sources)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = $(libwebkitgtkincludedir)/JavaScriptCore
libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = $(javascriptcore_h_api)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
	$(javascriptcore_sources)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD = \
	-lpthread \
	libWTF.la \
	$(UNICODE_LIBS) \
	$(GLIB_LIBS) \
	$(WINMM_LIBS)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \
	$(global_cxxflags) \
	$(libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \
	-fstrict-aliasing \
	-O3 \
	$(javascriptcore_cflags)

libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \
	$(global_cppflags) \
	$(javascriptcore_cppflags)

javascriptcore_cppflags += \
	$(JSC_CPPFLAGS) \
	-I$(srcdir)/Source \
	-I$(srcdir)/Source/JavaScriptCore \
	-I$(srcdir)/Source/JavaScriptCore/API \
	-I$(srcdir)/Source/JavaScriptCore/assembler \
	-I$(srcdir)/Source/JavaScriptCore/bytecode \
	-I$(srcdir)/Source/JavaScriptCore/bytecompiler \
	-I$(srcdir)/Source/JavaScriptCore/dfg \
	-I$(srcdir)/Source/JavaScriptCore/heap \
	-I$(srcdir)/Source/JavaScriptCore/debugger \
	-I$(srcdir)/Source/JavaScriptCore/ForwardingHeaders \
	-I$(srcdir)/Source/JavaScriptCore/interpreter \
	-I$(srcdir)/Source/JavaScriptCore/jit \
	-I$(srcdir)/Source/JavaScriptCore/jit \
	-I$(srcdir)/Source/JavaScriptCore/llint \
	-I$(srcdir)/Source/JavaScriptCore/parser \
	-I$(srcdir)/Source/JavaScriptCore/profiler \
	-I$(srcdir)/Source/JavaScriptCore/runtime \
	-I$(srcdir)/Source/JavaScriptCore/tools \
	-I$(srcdir)/Source/JavaScriptCore/yarr \
	-I$(top_builddir)/DerivedSources/JavaScriptCore

javascriptcore_cppflags += \
	-I$(srcdir)/Source/WTF

javascriptcore_cflags += \
	$(global_cflags) \
	$(GLIB_CFLAGS) \
	$(UNICODE_CFLAGS)

pkgconfig_DATA += Source/JavaScriptCore/javascriptcoregtk-@WEBKITGTK_API_VERSION@.pc

$(shell mkdir -p DerivedSources/JavaScriptCore)

DerivedSources/JavaScriptCore/Lexer.lut.h: $(srcdir)/Source/JavaScriptCore/create_hash_table $(srcdir)/Source/JavaScriptCore/parser/Keywords.table
	$(AM_V_GEN)$(PERL) $^ > $@

DerivedSources/JavaScriptCore/%.lut.h: $(srcdir)/Source/JavaScriptCore/create_hash_table $(srcdir)/Source/JavaScriptCore/runtime/%.cpp
	$(AM_V_GEN)$(PERL) $^ -i > $@

DerivedSources/JavaScriptCore/RegExpJitTables.h: $(srcdir)/Source/JavaScriptCore/create_regex_tables
	$(AM_V_GEN)$(PYTHON) $^ > $@

DerivedSources/JavaScriptCore/KeywordLookup.h: $(srcdir)/Source/JavaScriptCore/KeywordLookupGenerator.py $(srcdir)/Source/JavaScriptCore/parser/Keywords.table
	$(AM_V_GEN)$(PYTHON) $^ > $@

jsc: $(javascriptcore_built_nosources) Programs/jsc$(EXEEXT)

bin_PROGRAMS += \
	Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT)

noinst_PROGRAMS += \
	Programs/jsc \
	Programs/minidom

Programs_minidom_CPPFLAGS = \
	$(global_cppflags) \
	$(javascriptcore_cppflags)

Programs_minidom_CFLAGS = \
	-ansi \
	-fno-strict-aliasing \
	$(global_cflags) \
	$(GLOBALDEPS_CFLAGS)

Programs_minidom_LDADD = \
	libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
	$(WINMM_LIBS) \
	-lm \
	-lpthread \
	-lstdc++

Programs_minidom_LDFLAGS = \
	-no-install \
	-no-fast-install

# jsc
Programs/jsc$(EXEEXT): Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT)
	$(AM_V_GEN)cp -f Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT) Programs/jsc$(EXEEXT)
Programs_jsc_LDADD =
Programs_jsc_SOURCES =

Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_CPPFLAGS = \
	$(global_cppflags) \
	$(javascriptcore_cppflags)

Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_CXXFLAGS = \
	-fno-strict-aliasing \
	$(global_cxxflags) \
	$(global_cflags) \
	$(GLOBALDEPS_CFLAGS) \
	$(UNICODE_CFLAGS)

Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_LDADD = \
	-lpthread \
	libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
	$(WINMM_LIBS)

EXTRA_DIST += \
	Source/JavaScriptCore/AUTHORS \
	Source/JavaScriptCore/ChangeLog \
	Source/JavaScriptCore/COPYING.LIB \
	Source/JavaScriptCore/create_hash_table \
	Source/JavaScriptCore/create_regex_tables \
	Source/JavaScriptCore/icu/LICENSE \
	Source/JavaScriptCore/icu/README \
	Source/JavaScriptCore/KeywordLookupGenerator.py \
	Source/JavaScriptCore/parser/Keywords.table \
	Source/JavaScriptCore/THANKS

CLEANFILES += \
	$(javascriptcore_built_nosources) \
	Programs/jsc \
	Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@ \
	Programs/minidom

DISTCLEANFILES += \
	$(top_builddir)/Source/JavaScriptCore/javascriptcoregtk-@WEBKITGTK_API_VERSION@.pc