1 AUTOMAKE_OPTIONS = subdir-objects
6 # Directory for autogenerated sources
7 GENSOURCES := $(top_builddir)/DerivedSources
9 # Script for creating hash tables
10 CREATE_HASH_TABLE = $(srcdir)/JavaScriptCore/kjs/create_hash_table
12 # Libraries and support components
23 # Files that will be distributed
31 -I $(srcdir)/JavaScriptCore \
32 -I $(srcdir)/JavaScriptCore/ForwardingHeaders \
33 -I $(srcdir)/JavaScriptCore/wtf \
34 -I $(srcdir)/JavaScriptCore/kjs \
35 -I $(top_builddir)/DerivedSources
37 # Default compiler flags
39 -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type \
40 -Wformat -Wformat-security -Wno-format-y2k -Wundef \
41 -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings \
42 -Wno-unused-parameter -fno-exceptions -fno-strict-aliasing
45 lib_LTLIBRARIES = libJavaScriptCore.la libWebKitGtk.la
49 # Following are the variables we use in JavaScripCore/GNUmakefile.am
51 # javascriptcore_h_api - api headers to be included in the JSC library
52 # javascriptcore_cppflags - CPP flags for JSC
53 # javascriptcore_sources - source files to be included
54 # javascriptcore_built_sources - autogenerated sources and/or header files that are part of _SOURCES
55 # javascriptcore_built_nosources - same as above but not part of _SOURCES
57 # If you add or remove sources or header files, make sure you update the
58 # following variables in JavaScriptCore/GNUmakefile.am
60 javascriptcore_h_api :=
61 javascriptcore_cppflags:=
62 javascriptcore_sources :=
63 javascriptcore_built_sources :=
64 javascriptcore_built_nosources :=
66 # The variables above are already included below so we don't need to touch
67 # these variables too often
68 libJavaScriptCore_ladir = $(prefix)/include/WebKit/JavaScriptCore
69 libJavaScriptCore_la_HEADERS := $(javascriptcore_h_api)
71 libJavaScriptCore_la_SOURCES := \
72 $(javascriptcore_built_sources) \
73 $(javascriptcore_sources)
75 libJavaScriptCore_la_LDFLAGS := -lpthread
77 libJavaScriptCore_la_CXXFLAGS := $(global_cflags)
79 libJavaScriptCore_la_CFLAGS := $(global_cflags)
81 libJavaScriptCore_la_CPPFLAGS := $(global_cppflags) $(javascriptcore_cppflags)
85 # The Following variables have the same meaning as JSC, with addition of:
87 # webcore_sources - These are port-independent sources and header files
88 # webkitgtk_headers - header files that will be included in _SOURCES
95 webkitgtk_built_sources :=
96 webkitgtk_built_nosources :=
98 # No need to touch the following variables unless you have to. If you need to change the values
99 # for the following variables, use the "webkitgtk_" variables above
100 libWebKitGtk_ladir := $(prefix)/include/WebKit
102 libWebKitGtk_la_HEADERS := $(webkitgtk_h_api)
104 libWebKitGtk_la_SOURCES := \
106 $(webkitgtk_built_sources) \
107 $(webkitgtk_headers) \
110 libWebKitGtk_la_CXXFLAGS := \
113 $(DEPENDENCIES_CFLAGS) \
116 $(GSTREAMER_CFLAGS) \
120 libWebKitGtk_la_CFLAGS := \
122 $(DEPENDENCIES_CFLAGS) \
125 $(GSTREAMER_CFLAGS) \
129 libWebKitGtk_la_CPPFLAGS := \
131 $(webkitgtk_cppflags)
133 libWebKitGtk_la_LIBADD := @LTLIBOBJS@ libJavaScriptCore.la
135 libWebKitGtk_la_LDFLAGS := \
136 $(DEPENDENCIES_LIBS) \
143 libWebKitGtk_la_LDFLAGS += \
146 -version-info @LIBWEBKITGTK_VERSION@
148 # Extra checks and flags
152 -DUSE_SYSTEM_MALLOC \
156 global_cppflags += -DNDEBUG
158 webkitgtk_cppflags += \
159 -DG_DISABLE_DEPRECATED \
160 -DGDK_PIXBUF_DISABLE_DEPRECATED \
161 -DGDK_DISABLE_DEPRECATED \
162 -DGTK_DISABLE_DEPRECATED \
163 -DPANGO_DISABLE_DEPRECATED \
164 -DGDK_MULTIHEAD_SAFE \
169 global_cppflags += -DXP_UNIX
173 global_cppflags += -DHAVE_STDINT_H
177 global_cppflags += -DHAVE_PTHREAD_NP_H
182 -DGCC_GENERATE_TEST_COVERAGE_FILES \
183 -DGCC_INSTRUMENT_PROGRAM_FLOW_ARCS
187 libWebKitGtk_la_LDFLAGS += -lgstinterfaces-0.10 -lgstvideo-0.10
190 # WebKit/GTK+ sources
192 webkitgtk_cppflags += \
193 -I $(top_builddir)/WebKit/gtk/WebView \
194 -DBUILDING_CAIRO__=1 \
198 WebKit/gtk/WebView/webkit.h \
199 WebKit/gtk/WebView/webkitdefines.h \
200 WebKit/gtk/WebView/webkitnetworkrequest.h \
201 WebKit/gtk/WebView/webkitwebframe.h \
202 WebKit/gtk/WebView/webkitwebview.h
204 webkitgtk_built_sources += \
205 WebKit/gtk/WebView/webkit-marshal.h \
206 WebKit/gtk/WebView/webkit-marshal.cpp
208 webkitgtk_headers += \
209 WebKit/gtk/WebView/webkitprivate.h \
210 WebKit/gtk/WebView/webkitsettings.h \
211 WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \
212 WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \
213 WebKit/gtk/WebCoreSupport/DragClientGtk.h \
214 WebKit/gtk/WebCoreSupport/EditorClientGtk.h \
215 WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \
216 WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \
217 WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h
219 webkitgtk_sources += \
220 WebKit/gtk/WebView/webkitnetworkrequest.cpp \
221 WebKit/gtk/WebView/webkitprivate.cpp \
222 WebKit/gtk/WebView/webkitsettings.cpp \
223 WebKit/gtk/WebView/webkitwebframe.cpp \
224 WebKit/gtk/WebView/webkitwebview.cpp \
225 WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \
226 WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \
227 WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \
228 WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \
229 WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \
230 WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \
231 WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp
233 pkgconfigdir = $(libdir)/pkgconfig
234 pkgconfig_DATA = WebKit/gtk/WebKitGtk.pc
236 WEBKIT_MARSHAL = $(CURDIR)/WebKit/gtk/WebView/webkit-marshal
237 WEBKIT_MARSHAL_LIST = $(srcdir)/WebKit/gtk/WebView/webkit-marshal.list
240 stamp-webkit-marshal.cpp \
241 stamp-webkit-marshal.h
243 WebKit/gtk/WebView/webkit-marshal.cpp: stamp-webkit-marshal.cpp
246 WebKit/gtk/WebView/webkit-marshal.h: stamp-webkit-marshal.h
249 stamp-webkit-marshal.cpp: $(WEBKIT_MARSHAL_LIST)
250 echo "extern \"C\" {" > $(WEBKIT_MARSHAL).cpp && \
251 $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) \
252 --body >> $(WEBKIT_MARSHAL).cpp && echo '}' >> $(WEBKIT_MARSHAL).cpp && \
253 echo timestamp > $(@F)
255 stamp-webkit-marshal.h: $(WEBKIT_MARSHAL_LIST)
256 $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) \
257 --header > $(WEBKIT_MARSHAL).h && \
258 echo timestamp > $(@F)
260 # Autogenerated sources
262 $(javascriptcore_built_sources) \
263 $(javascriptcore_built_nosources) \
264 $(webkitgtk_built_sources) \
265 $(webkitgtk_built_nosources)
267 # Files that will be cleaned
268 MAINTAINERCLEANFILES := $(stamp_files) $(BUILT_SOURCES)
269 DISTCLEANFILES := $(stamp_files) $(BUILT_SOURCES)
270 CLEANFILES := $(stamp_files) $(BUILT_SOURCES)
272 # Include module makefiles
273 include JavaScriptCore/GNUmakefile.am
274 include WebCore/GNUmakefile.am
275 include WebKitTools/GNUmakefile.am
277 # Project-wide clean rules
279 -rm -rf $(GENSOURCES)
280 -rm -f $(top_builddir)/Programs/GtkLauncher $(top_builddir)/Programs/DumpRenderTree
281 -rm -f $(top_builddir)/Programs/testkjs $(top_builddir)/Programs/dftables
282 -rm -f $(top_builddir/WebKit/gtk/WebKitGtk-1.0.pc
285 -rm -f $(srcdir)/aconfig.h.in configure config.* GNUmakefile.in \