[GTK] Use XDamage to simplify RedirectedXCompositeWindow
[WebKit-https.git] / Source / WebKit2 / GNUmakefile.am
1 include $(srcdir)/Source/WebKit2/GNUmakefile.list.am
2
3 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = \
4         $(webkit2_h_api)
5
6 libwebkit2gtkincludedir = $(libwebkitgtkincludedir)/webkit2
7 nodist_libwebkit2gtkinclude_HEADERS = \
8         DerivedSources/WebKit2/webkit2gtk/webkit2/WebKitEnumTypes.h \
9         DerivedSources/WebKit2/webkit2gtk/webkit2/WebKitVersion.h
10
11 libwebkit2gtkinclude_HEADERS = \
12         $(webkit2gtk_h_api)
13
14 nodist_libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
15         $(webkit2_built_sources) \
16         $(webkit2gtk_built_sources)
17
18 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
19         $(webkit2_sources)
20
21 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \
22         -fno-strict-aliasing \
23         $(global_cppflags) \
24         -include $(srcdir)/Source/WebKit2/WebKit2Prefix.h \
25         -I$(srcdir)/Source/WebKit/gtk \
26         -I$(srcdir)/Source/WebKit2 \
27         -I$(srcdir)/Source/WebKit2/gtk \
28         -I$(srcdir)/Source/WebKit2/Platform \
29         -I$(srcdir)/Source/WebKit2/Platform/CoreIPC \
30         -I$(srcdir)/Source/WebKit2/Platform/CoreIPC/gtk \
31         -I$(srcdir)/Source/WebKit2/Platform/gtk \
32         -I$(srcdir)/Source/WebKit2/PluginProcess \
33         -I$(srcdir)/Source/WebKit2/Shared \
34         -I$(srcdir)/Source/WebKit2/Shared/API \
35         -I$(srcdir)/Source/WebKit2/Shared/API/c \
36         -I$(srcdir)/Source/WebKit2/Shared/API/c/gtk \
37         -I$(srcdir)/Source/WebKit2/Shared/API/c/soup \
38         -I$(srcdir)/Source/WebKit2/Shared/CoreIPCSupport \
39         -I$(srcdir)/Source/WebKit2/Shared/gtk \
40         -I$(srcdir)/Source/WebKit2/Shared/Plugins \
41         -I$(srcdir)/Source/WebKit2/Shared/Plugins/Netscape \
42         -I$(srcdir)/Source/WebKit2/Shared/Plugins/Netscape/x11 \
43         -I$(srcdir)/Source/WebKit2/Shared/soup \
44         -I$(srcdir)/Source/WebKit2/UIProcess \
45         -I$(srcdir)/Source/WebKit2/UIProcess/API \
46         -I$(srcdir)/Source/WebKit2/UIProcess/API/C \
47         -I$(srcdir)/Source/WebKit2/UIProcess/API/C/gtk \
48         -I$(srcdir)/Source/WebKit2/UIProcess/API/C/soup \
49         -I$(srcdir)/Source/WebKit2/UIProcess/API/cpp \
50         -I$(srcdir)/Source/WebKit2/UIProcess/API/gtk \
51         -I$(srcdir)/Source/WebKit2/UIProcess/Authentication \
52         -I$(srcdir)/Source/WebKit2/UIProcess/Downloads \
53         -I$(srcdir)/Source/WebKit2/UIProcess/gtk \
54         -I$(srcdir)/Source/WebKit2/UIProcess/Launcher \
55         -I$(srcdir)/Source/WebKit2/UIProcess/Launcher/gtk \
56         -I$(srcdir)/Source/WebKit2/UIProcess/Notifications \
57         -I$(srcdir)/Source/WebKit2/UIProcess/Plugins \
58         -I$(srcdir)/Source/WebKit2/UIProcess/Plugins/gtk \
59         -I$(srcdir)/Source/WebKit2/UIProcess/soup \
60         -I$(srcdir)/Source/WebKit2/WebProcess \
61         -I$(srcdir)/Source/WebKit2/WebProcess/ApplicationCache \
62         -I$(srcdir)/Source/WebKit2/WebProcess/Authentication \
63         -I$(srcdir)/Source/WebKit2/WebProcess/Battery \
64         -I$(srcdir)/Source/WebKit2/WebProcess/Cookies \
65         -I$(srcdir)/Source/WebKit2/WebProcess/Downloads \
66         -I$(srcdir)/Source/WebKit2/WebProcess/Downloads/soup \
67         -I$(srcdir)/Source/WebKit2/WebProcess/FullScreen \
68         -I$(srcdir)/Source/WebKit2/WebProcess/Geolocation \
69         -I$(srcdir)/Source/WebKit2/WebProcess/gtk \
70         -I$(srcdir)/Source/WebKit2/WebProcess/IconDatabase \
71         -I$(srcdir)/Source/WebKit2/WebProcess/InjectedBundle \
72         -I$(srcdir)/Source/WebKit2/WebProcess/InjectedBundle/API \
73         -I$(srcdir)/Source/WebKit2/WebProcess/InjectedBundle/API/c \
74         -I$(srcdir)/Source/WebKit2/WebProcess/InjectedBundle/DOM \
75         -I$(srcdir)/Source/WebKit2/WebProcess/InjectedBundle/gtk \
76         -I$(srcdir)/Source/WebKit2/WebProcess/KeyValueStorage \
77         -I$(srcdir)/Source/WebKit2/WebProcess/Launching \
78         -I$(srcdir)/Source/WebKit2/WebProcess/MediaCache \
79         -I$(srcdir)/Source/WebKit2/WebProcess/NetworkInfo \
80         -I$(srcdir)/Source/WebKit2/WebProcess/Notifications \
81         -I$(srcdir)/Source/WebKit2/WebProcess/ResourceCache \
82         -I$(srcdir)/Source/WebKit2/WebProcess/soup \
83         -I$(srcdir)/Source/WebKit2/WebProcess/Plugins \
84         -I$(srcdir)/Source/WebKit2/WebProcess/Plugins/Netscape \
85         -I$(srcdir)/Source/WebKit2/WebProcess/Plugins/Netscape/gtk \
86         -I$(srcdir)/Source/WebKit2/WebProcess/WebCoreSupport \
87         -I$(srcdir)/Source/WebKit2/WebProcess/WebCoreSupport/gtk \
88         -I$(srcdir)/Source/WebKit2/WebProcess/WebCoreSupport/soup \
89         -I$(srcdir)/Source/WebKit2/WebProcess/WebPage \
90         -I$(srcdir)/Source/WebKit2/WebProcess/WebPage/gtk \
91         -I$(top_builddir)/DerivedSources/WebKit2 \
92         -I$(top_builddir)/DerivedSources/WebKit2/include \
93         -I$(top_builddir)/DerivedSources/WebKit2/webkit2gtk \
94         -I$(top_builddir)/DerivedSources/WebKit2/webkit2gtk/include \
95         -I$(top_builddir)/DerivedSources/WebKit2/webkit2gtk/webkit2 \
96         -I$(top_builddir)/DerivedSources/WebKit2/include/JavaScriptCore \
97         -I$(top_builddir)/DerivedSources/WebKit2/include/WebCore \
98         -I$(top_builddir)/DerivedSources/WebKit2/include/WebKit2 \
99         -DLIBEXECDIR=\""$(libexecdir)"\" \
100         -DWEBKIT2_COMPILATION \
101         $(webcore_cppflags) \
102         $(webcoregtk_cppflags) \
103         $(javascriptcore_cppflags) \
104         $(CLUTTER_CFLAGS) \
105         $(COVERAGE_CFLAGS) \
106         $(GEOCLUE_CFLAGS) \
107         $(GLIB_CFLAGS) \
108         $(GTK_CFLAGS) \
109         $(GTK_UNIX_PRINTING_CFLAGS) \
110         $(LIBSOUP_CFLAGS) \
111         $(UNICODE_CFLAGS) \
112         $(XCOMPOSITE_CFLAGS) \
113         $(XDAMAGE_CFLAGS) \
114         $(XT_CFLAGS)
115
116 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \
117         $(global_cxxflags)
118
119 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \
120         $(global_cflags)
121
122 if ENABLE_WEBKIT2
123 # Shared libraries
124 lib_LTLIBRARIES += \
125         libwebkit2gtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
126 endif
127
128 # Artificial dependency to make sure libwebkit2gtk and libwebkitgtk are not linked at the same time
129 # The variable creation is to avoid having automake override the entire rule instead of adding the
130 # dependency.
131 webkit2gtk_lib_for_dep = libwebkit2gtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
132 $(webkit2gtk_lib_for_dep): libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
133
134 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = \
135         $(libwebkit2gtkincludedir)/WebKit2
136
137 # For the Gtk port we want to use XP_UNIX both in X11 and Mac
138 if !TARGET_WIN32
139 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS += \
140         -DXP_UNIX
141 endif
142
143 # Add MOZ_X11 for X11 targets only
144 if TARGET_X11
145 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS += \
146         -DMOZ_X11
147 endif
148
149 # Plugin process
150 if ENABLE_PLUGIN_PROCESS
151 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS += \
152         -DENABLE_PLUGIN_PROCESS=1
153 endif
154
155 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \
156         -version-info @LIBWEBKIT2GTK_VERSION@ \
157         $(version_script) \
158         $(no_undefined)
159
160 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD = \
161         -lpthread \
162         libWebCore.la \
163         libWebCoreModules.la \
164         libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
165         libWebCoreGtk.la \
166         $(CAIRO_LIBS) \
167         $(CLUTTER_LIBS) \
168         $(COVERAGE_LDFLAGS) \
169         $(FARSTREAM_LIBS) \
170         $(GAIL_LIBS) \
171         $(GAMEPAD_LIBS) \
172         $(GEOCLUE_LIBS) \
173         $(GLIB_LIBS) \
174         $(GSTREAMER_LIBS) \
175         $(GTK_LIBS) \
176         $(GTK_UNIX_PRINTING_LIBS) \
177         $(JPEG_LIBS) \
178         $(LIBSOUP_LIBS) \
179         $(LIBXML_LIBS) \
180         $(LIBXSLT_LIBS) \
181         $(OPENGL_LIBS) \
182         $(PANGO_LIBS) \
183         $(PNG_LIBS) \
184         $(SQLITE3_LIBS) \
185         $(UNICODE_LIBS) \
186         $(XRENDER_LIBS) \
187         $(XCOMPOSITE_LIBS) \
188         $(XDAMAGE_LIBS) \
189         $(XT_LIBS) \
190         $(ZLIB_LIBS)
191
192 if ENABLE_SPELLCHECK
193 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS += \
194         -DENABLE_SPELLCHECK=1 \
195         $(ENCHANT_CFLAGS)
196
197 libwebkit2gtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD += \
198         $(ENCHANT_LIBS)
199 endif
200
201
202 if ENABLE_WEBKIT2
203 pkgconfig_DATA += Source/WebKit2/webkit2gtk-@WEBKITGTK_API_VERSION@.pc
204 endif
205
206 # WebKit2 specific variables
207 forwarding_headers := $(GENSOURCES_WEBKIT2)/include
208 generate-webkit2-forwarding-headers: $(WebKit2)/Scripts/generate-forwarding-headers.pl $(libWebKit2_la_SOURCES)
209         $(AM_V_GEN)$(PERL) $< $(WebKit2) $(forwarding_headers) gtk
210         $(AM_V_GEN)$(PERL) $< $(WebKit2) $(forwarding_headers) soup
211
212 BUILT_SOURCES += generate-webkit2-forwarding-headers
213
214 $(GENSOURCES_WEBKIT2)/webkit2gtk/include/webkit2: $(libwebkit2gtkinclude_HEADERS)
215         $(AM_V_GEN)mkdir -p $(GENSOURCES_WEBKIT2)/webkit2gtk/include \
216         && ln -n -s -f ${shell pwd}/$(WebKit2)/UIProcess/API/gtk $@
217
218 BUILT_SOURCES += $(GENSOURCES_WEBKIT2)/webkit2gtk/include/webkit2
219
220 vpath %.messages.in = \
221         $(WebKit2)/PluginProcess \
222         $(WebKit2)/Shared/Plugins \
223         $(WebKit2)/UIProcess \
224         $(WebKit2)/UIProcess/ApplicationCache \
225         $(WebKit2)/UIProcess/Downloads \
226         $(WebKit2)/UIProcess/Geolocation \
227         $(WebKit2)/UIProcess/Notifications \
228         $(WebKit2)/UIProcess/Plugins \
229         $(WebKit2)/UIProcess/ResourceCache \
230         $(WebKit2)/UIProcess/soup \
231         $(WebKit2)/WebProcess \
232         $(WebKit2)/WebProcess/ApplicationCache \
233         $(WebKit2)/WebProcess/Authentication \
234         $(WebKit2)/WebProcess/Battery \
235         $(WebKit2)/WebProcess/Cookies \
236         $(WebKit2)/WebProcess/FullScreen \
237         $(WebKit2)/WebProcess/Geolocation \
238         $(WebKit2)/WebProcess/IconDatabase \
239         $(WebKit2)/WebProcess/KeyValueStorage \
240         $(WebKit2)/WebProcess/MediaCache \
241         $(WebKit2)/WebProcess/NetworkInfo \
242         $(WebKit2)/WebProcess/Notifications \
243         $(WebKit2)/WebProcess/Plugins \
244         $(WebKit2)/WebProcess/ResourceCache \
245         $(WebKit2)/WebProcess/WebCoreSupport \
246         $(WebKit2)/WebProcess/WebPage \
247         $(WebKit2)/WebProcess/soup
248
249 message_gen_scripts = \
250         $(WebKit2)/Scripts/generate-message-receiver.py \
251         $(WebKit2)/Scripts/generate-messages-header.py \
252         $(WebKit2)/Scripts/webkit2/__init__.py \
253         $(WebKit2)/Scripts/webkit2/messages.py \
254         $(WebKit2)/Scripts/webkit2/model.py \
255         $(WebKit2)/Scripts/webkit2/parser.py
256
257 # Message header generation
258 DerivedSources/WebKit2/%MessageReceiver.cpp: %.messages.in $(message_gen_scripts)
259         $(AM_V_GEN)$(PYTHON) $(WebKit2)/Scripts/generate-message-receiver.py $< > $@
260
261 DerivedSources/WebKit2/%Messages.h: %.messages.in $(message_gen_scripts)
262         $(AM_V_GEN)$(PYTHON) $(WebKit2)/Scripts/generate-messages-header.py $< > $@
263
264 webkit2gtk_built_headers_dir := $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2
265 $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2/WebKitEnumTypes.h: stamp-webkit2enumtypes
266         @true
267
268 stamp-webkit2enumtypes: $(libwebkit2gtkinclude_HEADERS) $(WebKit2)/GNUmakefile.am
269         $(AM_V_GEN)mkdir -p $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2 \
270         && glib-mkenums \
271                         --fhead "#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION)\n" \
272                         --fhead "#error \"Only <webkit2/webkit2.h> can be included directly.\"\n" \
273                         --fhead "#endif\n\n" \
274                         --fhead "#ifndef WEBKIT_ENUM_TYPES_H\n" \
275                         --fhead "#define WEBKIT_ENUM_TYPES_H\n\n" \
276                         --fhead "#include <glib-object.h>\n\n" \
277                         --fhead "#include <webkit2/WebKitDefines.h>\n\n" \
278                         --fhead "G_BEGIN_DECLS\n\n" \
279                         --ftail "G_END_DECLS\n\n" \
280                         --ftail "#endif\n" \
281                         --fprod "#include <webkit2/@basename@>\n\n" \
282                         --eprod "#define WEBKIT_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \
283                         --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);\n\n" \
284                 $(libwebkit2gtkinclude_HEADERS) | \
285                 sed 's,web_kit,webkit,' | \
286                 sed 's,WEBKIT_TYPE_KIT,WEBKIT_TYPE,' \
287                 > wk2-xgen-gth \
288         && (cmp -s wk2-xgen-gth $(webkit2gtk_built_headers_dir)/WebKitEnumTypes.h || cp wk2-xgen-gth $(webkit2gtk_built_headers_dir)/WebKitEnumTypes.h) \
289         && rm -f wk2-xgen-gth \
290         && echo timestamp > $(@F)
291
292 $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2/WebKitEnumTypes.cpp: $(libwebkit2gtkinclude_HEADERS) $(WebKit2)/GNUmakefile.am
293         $(AM_V_GEN)mkdir -p $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2 \
294         && glib-mkenums \
295                         --fhead "#include <config.h>\n" \
296                         --fhead "#include <glib-object.h>\n" \
297                         --fhead "#include \"$(webkit2gtk_built_headers_dir)/WebKitEnumTypes.h\"\n\n" \
298                         --fhead "extern \"C\" {\n\n" \
299                         --fprod "\n/* Enumerations from \"@filename@\". */" \
300                         --vhead "static const G@Type@Value _@enum_name@_values[] = {" \
301                         --vprod "    { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
302                         --vtail "    { 0, NULL, NULL }\n};\n\n" \
303                         --vtail "GType @enum_name@_get_type(void)\n{\n" \
304                         --vtail "    static GType type = 0;\n\n" \
305                         --vtail "    if (!type)\n" \
306                         --vtail "        type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \
307                         --vtail "    return type;\n}\n\n" \
308                         --ftail "}\n" \
309                 $(libwebkit2gtkinclude_HEADERS) | \
310                 sed 's,web_kit,webkit,' \
311                 > wk2-xgen-gtc \
312         && cp wk2-xgen-gtc $@ \
313         && rm -f wk2-xgen-gtc
314
315 WEBKIT2_MARSHAL_LIST = $(WebKit2)/UIProcess/API/gtk/webkit2marshal.list
316
317 $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2/WebKitMarshal.cpp: stamp-webkit2marshal.cpp
318         @true
319 $(GENSOURCES_WEBKIT2)/webkit2gtk/webkit2/WebKitMarshal.h: stamp-webkit2marshal.h
320         @true
321
322 stamp-webkit2marshal.cpp: $(WEBKIT2_MARSHAL_LIST)
323         $(AM_V_GEN) echo "extern \"C\" {" > $(webkit2gtk_built_headers_dir)/WebKitMarshal.cpp && \
324         $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT2_MARSHAL_LIST) --body >> $(webkit2gtk_built_headers_dir)/WebKitMarshal.cpp && \
325         echo '}' >> $(webkit2gtk_built_headers_dir)/WebKitMarshal.cpp && \
326         echo timestamp > $(@F)
327
328 stamp-webkit2marshal.h: $(WEBKIT2_MARSHAL_LIST)
329         $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT2_MARSHAL_LIST) --header > $(webkit2gtk_built_headers_dir)/WebKitMarshal.h && \
330         echo timestamp > $(@F)
331
332 CLEANFILES += \
333         $(BUILT_SOURCES) \
334         $(top_builddir)/stamp-webkit2enumtypes \
335         $(top_builddir)/stamp-webkit2marshal.cpp \
336         $(top_builddir)/stamp-webkit2marshal.h \
337         $(top_builddir)/Programs/WebKitWebProcess
338
339 DISTCLEANFILES += \
340         $(top_builddir)/WebKit2/webkit2gtk-@WEBKITGTK_API_VERSION@.pc
341
342 if ENABLE_WEBKIT2
343 libexec_PROGRAMS += \
344         Programs/WebKitWebProcess
345 endif
346
347 Programs_WebKitWebProcess_CPPFLAGS = \
348         -I$(srcdir)/Source/WebKit2 \
349         -I$(srcdir)/Source/WebKit2/UIProcess/API/C \
350         -I$(srcdir)/Source/WebKit2/WebProcess/gtk \
351         -I$(top_builddir)/DerivedSources/WebKit2 \
352         -I$(top_builddir)/DerivedSources/WebKit2/include \
353         -I$(top_builddir)/DerivedSources/WebKit2/include/WebCore \
354         $(global_cppflags) \
355         $(javascriptcore_cppflags)
356
357 Programs_WebKitWebProcess_CFLAGS = \
358         $(global_cflags) \
359         $(CAIRO_CFLAGS) \
360         $(GLIB_CFLAGS) \
361         $(GTK_CFLAGS) \
362         $(GTK_UNIX_PRINTING_CFLAGS) \
363         $(LIBSOUP_CFLAGS) \
364         $(ZLIB_CFLAGS)
365
366 Programs_WebKitWebProcess_SOURCES = \
367         Source/WebKit2/gtk/MainGtk.cpp
368
369 Programs_WebKitWebProcess_LDADD = \
370         libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
371         libwebkit2gtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
372         $(GLIB_LIBS) \
373         $(GTK_LIBS) \
374         $(GTK_UNIX_PRINTING_LIBS) \
375         $(LIBSOUP_LIBS)
376
377 # PluginProcess
378 if ENABLE_PLUGIN_PROCESS
379
380 # We need to make sure plugin process is always built with gtk2, because plugins like flash
381 # still use gtk2. Since webcore was built with gtk3, we need to build webcoregtk sources again with gtk2
382 noinst_LTLIBRARIES += \
383         libWebCoreGtk2.la
384
385 libWebCoreGtk2_la_SOURCES = \
386         $(webcoregtk_sources)
387
388 libWebCoreGtk2_la_CXXFLAGS = \
389         $(SYMBOL_VISIBILITY_INLINES) \
390         $(global_cxxflags)
391
392 libWebCoreGtk2_la_CFLAGS = \
393         $(SYMBOL_VISIBILITY) \
394         $(global_cflags)
395
396 libWebCoreGtk2_la_CPPFLAGS = \
397         -DBUILDING_WEBKIT \
398         -DGTK_API_VERSION_2=1 \
399         $(global_cppflags) \
400         $(webcore_cppflags) \
401         $(webcoregtk_cppflags) \
402         $(javascriptcore_cppflags) \
403         -fno-strict-aliasing \
404         $(COVERAGE_CFLAGS) \
405         $(ENCHANT_CFLAGS) \
406         $(GEOCLUE_CFLAGS) \
407         $(FARSTREAM_CFLAGS) \
408         $(GLIB_CFLAGS) \
409         $(GSTREAMER_CFLAGS) \
410         $(GTK2_CFLAGS) \
411         $(LIBSOUP_CFLAGS) \
412         $(LIBXML_CFLAGS) \
413         $(LIBXSLT_CFLAGS) \
414         $(SQLITE3_CFLAGS) \
415         $(UNICODE_CFLAGS) \
416         $(XRENDER_CFLAGS) \
417         $(XT_CFLAGS)
418
419 libexec_PROGRAMS += \
420         Programs/WebKitPluginProcess
421
422 # Serialize linking of the plugin process with both webkit libraries.
423 plugin_process_for_dep = Programs/WebKitPluginProcess
424 $(plugin_process_for_dep): libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la libwebkit2gtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
425
426 Programs_WebKitPluginProcess_CPPFLAGS = \
427         -include $(srcdir)/Source/WebKit2/WebKit2Prefix.h \
428         -I$(srcdir)/Source/WebKit2 \
429         -I$(srcdir)/Source/WebKit2/Platform \
430         -I$(srcdir)/Source/WebKit2/Platform/CoreIPC/ \
431         -I$(srcdir)/Source/WebKit2/PluginProcess/ \
432         -I$(srcdir)/Source/WebKit2/PluginProcess/gtk \
433         -I$(srcdir)/Source/WebKit2/Shared \
434         -I$(srcdir)/Source/WebKit2/Shared/Plugins \
435         -I$(srcdir)/Source/WebKit2/Shared/Plugins/Netscape/ \
436         -I$(srcdir)/Source/WebKit2/UIProcess/Plugins/ \
437         -I$(srcdir)/Source/WebKit2/UIProcess/Launcher \
438         -I$(srcdir)/Source/WebKit2/WebProcess/Plugins/ \
439         -I$(srcdir)/Source/WebKit2/WebProcess/Plugins/Netscape/ \
440         -I$(srcdir)/Source/WebKit2/Shared/soup \
441         -I$(top_builddir)/DerivedSources/WebKit2 \
442         -I$(top_builddir)/DerivedSources/WebKit2/include \
443         -I$(top_builddir)/DerivedSources/WebKit2/include/JavaScriptCore \
444         -I$(top_builddir)/DerivedSources/WebKit2/include/WebCore \
445         -I$(top_builddir)/DerivedSources/WebKit2/include/WebKit2 \
446         -DBUILDING_WEBKIT \
447         -DGTK_API_VERSION_2=1 \
448         -DENABLE_PLUGIN_PROCESS=1 \
449         -DLIBEXECDIR=\""$(libexecdir)"\" \
450         $(global_cppflags) \
451         $(webcore_cppflags) \
452         $(webcoregtk_cppflags) \
453         $(javascriptcore_cppflags) \
454         -fno-strict-aliasing \
455         $(CAIRO_CFLAGS) \
456         $(GLIB_CFLAGS) \
457         $(GSTREAMER_CFLAGS) \
458         $(GTK2_CFLAGS) \
459         $(LIBSOUP_CFLAGS) \
460         $(UNICODE_CFLAGS)
461
462 Programs_WebKitPluginProcess_CFLAGS = \
463         $(SYMBOL_VISIBILITY) \
464         $(global_cflags) \
465         $(CAIRO_CFLAGS) \
466         $(GLIB_CFLAGS) \
467         $(GSTREAMER_CFLAGS) \
468         $(GTK2_CFLAGS) \
469         $(LIBSOUP_CFLAGS) \
470         $(UNICODE_CFLAGS)
471
472 nodist_Programs_WebKitPluginProcess_SOURCES = \
473         $(webkit2_plugin_process_built_sources)
474
475 Programs_WebKitPluginProcess_SOURCES = \
476         $(webkit2_plugin_process_sources)
477
478 Programs_WebKitPluginProcess_LDADD = \
479         -lpthread \
480         libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
481         libWebCore.la \
482         libWebCoreGtk2.la \
483         $(CAIRO_LIBS) \
484         $(COVERAGE_LDFLAGS) \
485         $(GEOCLUE_LIBS) \
486         $(GLIB_LIBS) \
487         $(GSTREAMER_LIBS) \
488         $(GTK2_LIBS) \
489         $(JPEG_LIBS) \
490         $(LIBSOUP_LIBS) \
491         $(LIBXML_LIBS) \
492         $(LIBXSLT_LIBS) \
493         $(OLE32_LIBS) \
494         $(OPENGL_LIBS) \
495         $(PANGO_LIBS) \
496         $(PNG_LIBS) \
497         $(SHLWAPI_LIBS) \
498         $(SQLITE3_LIBS) \
499         $(UNICODE_LIBS) \
500         $(XRENDER_LIBS) \
501         $(XT_LIBS) \
502         $(WINMM_LIBS) \
503         $(ZLIB_LIBS)
504
505 # libWebCore and libWebCoreModules have circular dependencies that only seem to
506 # be a problem when linking the plugin process; we don't really care about
507 # modules for the plugin process, though, so to work around that we ignore
508 # internal unresolved symbols
509 Programs_WebKitPluginProcess_LDFLAGS = \
510         -Wl,--unresolved-symbols=ignore-in-object-files
511
512 Programs_WebKitPluginProcess_CXXFLAGS = \
513         $(SYMBOL_VISIBILITY_INLINES) \
514         $(global_cxxflags)
515
516 endif # ENABLE_PLUGIN_PROCESS
517
518 EXTRA_DIST += \
519         $(WebKit2)/UIProcess/API/gtk/docs/webkit2gtk-docs.sgml \
520         $(WebKit2)/UIProcess/API/gtk/docs/webkit2gtk-sections.txt \
521         $(WebKit2)/UIProcess/API/gtk/docs/webkit2gtk.types \
522         $(WebKit2)/Scripts/generate-message-receiver.py \
523         $(WebKit2)/Scripts/generate-messages-header.py \
524         $(WebKit2)/Scripts/webkit2/__init__.py \
525         $(WebKit2)/Scripts/webkit2/messages.py \
526         $(WebKit2)/Scripts/webkit2/model.py \
527         $(WebKit2)/Scripts/webkit2/parser.py \
528         $(WebKit2)/UIProcess/API/gtk/webkit2marshal.list \
529         $(WebKit2)/Scripts/generate-forwarding-headers.pl \
530         $(shell ls $(WebKit2)/PluginProcess/*.in) \
531         $(shell ls $(WebKit2)/Shared/Plugins/*.in) \
532         $(shell ls $(WebKit2)/UIProcess/*.in) \
533         $(shell ls $(WebKit2)/UIProcess/Downloads/*.in) \
534         $(shell ls $(WebKit2)/UIProcess/Notifications/*.in) \
535         $(shell ls $(WebKit2)/UIProcess/Plugins/*.in) \
536         $(shell ls $(WebKit2)/UIProcess/soup/*.in) \
537         $(shell ls $(WebKit2)/WebProcess/*.in) \
538         $(shell ls $(WebKit2)/WebProcess/ApplicationCache/*.in) \
539         $(shell ls $(WebKit2)/WebProcess/Authentication/*.in) \
540         $(shell ls $(WebKit2)/WebProcess/Battery/*.in) \
541         $(shell ls $(WebKit2)/WebProcess/Cookies/*.in) \
542         $(shell ls $(WebKit2)/WebProcess/FullScreen/*.in) \
543         $(shell ls $(WebKit2)/WebProcess/Geolocation/*.in) \
544         $(shell ls $(WebKit2)/WebProcess/IconDatabase/*.in) \
545         $(shell ls $(WebKit2)/WebProcess/KeyValueStorage/*.in) \
546         $(shell ls $(WebKit2)/WebProcess/MediaCache/*.in) \
547         $(shell ls $(WebKit2)/WebProcess/NetworkInfo/*.in) \
548         $(shell ls $(WebKit2)/WebProcess/Notifications/*.in) \
549         $(shell ls $(WebKit2)/WebProcess/Plugins/*.in) \
550         $(shell ls $(WebKit2)/WebProcess/ResourceCache/*.in) \
551         $(shell ls $(WebKit2)/WebProcess/WebCoreSupport/*.in) \
552         $(shell ls $(WebKit2)/WebProcess/WebPage/*.in) \
553         $(shell ls $(WebKit2)/WebProcess/soup/*.in)