[GTK] Duplicated symbols in libjavascriptcoregtk and libwebkit2gtk can cause crashes...
[WebKit-https.git] / Source / WebKit / PlatformGTK.cmake
1 include(InspectorGResources.cmake)
2
3 set(WebKit_OUTPUT_NAME webkit2gtk-${WEBKITGTK_API_VERSION})
4 set(WebKit_WebProcess_OUTPUT_NAME WebKitWebProcess)
5 set(WebKit_NetworkProcess_OUTPUT_NAME WebKitNetworkProcess)
6 set(WebKit_PluginProcess_OUTPUT_NAME WebKitPluginProcess)
7 set(WebKit_StorageProcess_OUTPUT_NAME WebKitStorageProcess)
8
9 file(MAKE_DIRECTORY ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR})
10 file(MAKE_DIRECTORY ${FORWARDING_HEADERS_WEBKIT2GTK_DIR})
11 file(MAKE_DIRECTORY ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR})
12
13 configure_file(UIProcess/API/gtk/WebKitVersion.h.in ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitVersion.h)
14 configure_file(gtk/webkit2gtk.pc.in ${WebKit2_PKGCONFIG_FILE} @ONLY)
15 configure_file(gtk/webkit2gtk-web-extension.pc.in ${WebKit2WebExtension_PKGCONFIG_FILE} @ONLY)
16
17 add_definitions(-DBUILDING_WEBKIT)
18 add_definitions(-DWEBKIT2_COMPILATION)
19 add_definitions(-DWEBKIT_DOM_USE_UNSTABLE_API)
20
21 add_definitions(-DLIBEXECDIR="${CMAKE_INSTALL_FULL_LIBEXECDIR}")
22 add_definitions(-DPKGLIBEXECDIR="${LIBEXEC_INSTALL_DIR}")
23 add_definitions(-DLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}")
24 add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
25 add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}")
26
27 if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
28     WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map")
29 endif ()
30
31 # Temporary workaround to allow the build to succeed.
32 file(REMOVE "${FORWARDING_HEADERS_DIR}/WebCore/Settings.h")
33
34 set(WebKit_USE_PREFIX_HEADER ON)
35
36 list(APPEND WebKit_SOURCES
37     NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.cpp
38
39     NetworkProcess/CustomProtocols/soup/LegacyCustomProtocolManagerSoup.cpp
40
41     NetworkProcess/cache/NetworkCacheCodersSoup.cpp
42     NetworkProcess/cache/NetworkCacheDataSoup.cpp
43     NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp
44
45     NetworkProcess/soup/NetworkDataTaskSoup.cpp
46     NetworkProcess/soup/NetworkProcessMainSoup.cpp
47     NetworkProcess/soup/NetworkProcessSoup.cpp
48     NetworkProcess/soup/NetworkSessionSoup.cpp
49     NetworkProcess/soup/RemoteNetworkingContextSoup.cpp
50
51     Platform/IPC/glib/GSocketMonitor.cpp
52     Platform/IPC/unix/AttachmentUnix.cpp
53     Platform/IPC/unix/ConnectionUnix.cpp
54
55     Platform/classifier/ResourceLoadStatisticsClassifier.cpp
56
57     Platform/glib/ModuleGlib.cpp
58
59     Platform/unix/LoggingUnix.cpp
60     Platform/unix/SharedMemoryUnix.cpp
61
62     PluginProcess/unix/PluginControllerProxyUnix.cpp
63     PluginProcess/unix/PluginProcessMainUnix.cpp
64     PluginProcess/unix/PluginProcessUnix.cpp
65
66     Shared/API/c/cairo/WKImageCairo.cpp
67
68     Shared/API/glib/WebKitContextMenu.cpp
69     Shared/API/glib/WebKitContextMenuActions.cpp
70     Shared/API/glib/WebKitContextMenuItem.cpp
71     Shared/API/glib/WebKitHitTestResult.cpp
72     Shared/API/glib/WebKitURIRequest.cpp
73     Shared/API/glib/WebKitURIResponse.cpp
74
75     Shared/Authentication/soup/AuthenticationManagerSoup.cpp
76
77     Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp
78     Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp
79     Shared/CoordinatedGraphics/SimpleViewportController.cpp
80
81     Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp
82     Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp
83     Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp
84
85     Shared/Plugins/Netscape/unix/NetscapePluginModuleUnix.cpp
86
87     Shared/Plugins/unix/PluginSearchPath.cpp
88
89     Shared/cairo/ShareableBitmapCairo.cpp
90
91     Shared/glib/WebContextMenuItemGlib.cpp
92     Shared/glib/WebErrorsGlib.cpp
93
94     Shared/gtk/ArgumentCodersGtk.cpp
95     Shared/gtk/NativeWebKeyboardEventGtk.cpp
96     Shared/gtk/NativeWebMouseEventGtk.cpp
97     Shared/gtk/NativeWebTouchEventGtk.cpp
98     Shared/gtk/NativeWebWheelEventGtk.cpp
99     Shared/gtk/PrintInfoGtk.cpp
100     Shared/gtk/ProcessExecutablePathGtk.cpp
101     Shared/gtk/WebErrorsGtk.cpp
102     Shared/gtk/WebEventFactory.cpp
103     Shared/gtk/WebSelectionData.cpp
104
105     Shared/linux/WebMemorySamplerLinux.cpp
106
107     Shared/soup/WebCoreArgumentCodersSoup.cpp
108     Shared/soup/WebErrorsSoup.cpp
109
110     Shared/unix/ChildProcessMain.cpp
111
112     StorageProcess/glib/StorageProcessMainGLib.cpp
113
114     UIProcess/AcceleratedDrawingAreaProxy.cpp
115     UIProcess/BackingStore.cpp
116     UIProcess/DefaultUndoController.cpp
117     UIProcess/DrawingAreaProxyImpl.cpp
118     UIProcess/LegacySessionStateCodingNone.cpp
119     UIProcess/WebResourceLoadStatisticsStore.cpp
120     UIProcess/WebResourceLoadStatisticsTelemetry.cpp
121     UIProcess/WebTextChecker.cpp
122     UIProcess/WebTextCheckerClient.cpp
123
124     UIProcess/API/C/WKGrammarDetail.cpp
125
126     UIProcess/API/C/gtk/WKTextCheckerGtk.cpp
127     UIProcess/API/C/gtk/WKView.cpp
128
129     UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp
130     UIProcess/API/glib/IconDatabase.cpp
131     UIProcess/API/glib/WebKitApplicationInfo.cpp
132     UIProcess/API/glib/WebKitAuthenticationRequest.cpp
133     UIProcess/API/glib/WebKitAutomationSession.cpp
134     UIProcess/API/glib/WebKitBackForwardList.cpp
135     UIProcess/API/glib/WebKitBackForwardListItem.cpp
136     UIProcess/API/glib/WebKitContextMenuClient.cpp
137     UIProcess/API/glib/WebKitCookieManager.cpp
138     UIProcess/API/glib/WebKitCredential.cpp
139     UIProcess/API/glib/WebKitCustomProtocolManagerClient.cpp
140     UIProcess/API/glib/WebKitDownload.cpp
141     UIProcess/API/glib/WebKitDownloadClient.cpp
142     UIProcess/API/glib/WebKitEditorState.cpp
143     UIProcess/API/glib/WebKitError.cpp
144     UIProcess/API/glib/WebKitFaviconDatabase.cpp
145     UIProcess/API/glib/WebKitFileChooserRequest.cpp
146     UIProcess/API/glib/WebKitFindController.cpp
147     UIProcess/API/glib/WebKitFormClient.cpp
148     UIProcess/API/glib/WebKitFormSubmissionRequest.cpp
149     UIProcess/API/glib/WebKitGeolocationPermissionRequest.cpp
150     UIProcess/API/glib/WebKitGeolocationProvider.cpp
151     UIProcess/API/glib/WebKitIconLoadingClient.cpp
152     UIProcess/API/glib/WebKitInjectedBundleClient.cpp
153     UIProcess/API/glib/WebKitInstallMissingMediaPluginsPermissionRequest.cpp
154     UIProcess/API/glib/WebKitJavascriptResult.cpp
155     UIProcess/API/glib/WebKitMimeInfo.cpp
156     UIProcess/API/glib/WebKitNavigationAction.cpp
157     UIProcess/API/glib/WebKitNavigationClient.cpp
158     UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp
159     UIProcess/API/glib/WebKitNetworkProxySettings.cpp
160     UIProcess/API/glib/WebKitNotification.cpp
161     UIProcess/API/glib/WebKitNotificationPermissionRequest.cpp
162     UIProcess/API/glib/WebKitNotificationProvider.cpp
163     UIProcess/API/glib/WebKitPermissionRequest.cpp
164     UIProcess/API/glib/WebKitPlugin.cpp
165     UIProcess/API/glib/WebKitPolicyDecision.cpp
166     UIProcess/API/glib/WebKitPrivate.cpp
167     UIProcess/API/glib/WebKitResponsePolicyDecision.cpp
168     UIProcess/API/glib/WebKitScriptDialog.cpp
169     UIProcess/API/glib/WebKitSecurityManager.cpp
170     UIProcess/API/glib/WebKitSecurityOrigin.cpp
171     UIProcess/API/glib/WebKitSettings.cpp
172     UIProcess/API/glib/WebKitUIClient.cpp
173     UIProcess/API/glib/WebKitURISchemeRequest.cpp
174     UIProcess/API/glib/WebKitUserContent.cpp
175     UIProcess/API/glib/WebKitUserContentManager.cpp
176     UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp
177     UIProcess/API/glib/WebKitWebContext.cpp
178     UIProcess/API/glib/WebKitWebResource.cpp
179     UIProcess/API/glib/WebKitWebView.cpp
180     UIProcess/API/glib/WebKitWebViewSessionState.cpp
181     UIProcess/API/glib/WebKitWebsiteData.cpp
182     UIProcess/API/glib/WebKitWebsiteDataManager.cpp
183     UIProcess/API/glib/WebKitWindowProperties.cpp
184
185     UIProcess/API/gtk/PageClientImpl.cpp
186     UIProcess/API/gtk/WebKitAuthenticationDialog.cpp
187     UIProcess/API/gtk/WebKitColorChooser.cpp
188     UIProcess/API/gtk/WebKitColorChooserRequest.cpp
189     UIProcess/API/gtk/WebKitOptionMenu.cpp
190     UIProcess/API/gtk/WebKitOptionMenuItem.cpp
191     UIProcess/API/gtk/WebKitPopupMenu.cpp
192     UIProcess/API/gtk/WebKitPrintCustomWidget.cpp
193     UIProcess/API/gtk/WebKitPrintOperation.cpp
194     UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp
195     UIProcess/API/gtk/WebKitScriptDialogGtk.cpp
196     UIProcess/API/gtk/WebKitVersion.cpp
197     UIProcess/API/gtk/WebKitVersion.h.in
198     UIProcess/API/gtk/WebKitWebInspector.cpp
199     UIProcess/API/gtk/WebKitWebViewBase.cpp
200     UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp
201     UIProcess/API/gtk/WebKitWebViewGtk.cpp
202
203     UIProcess/Automation/cairo/WebAutomationSessionCairo.cpp
204
205     UIProcess/Automation/gtk/WebAutomationSessionGtk.cpp
206
207     UIProcess/Launcher/glib/ProcessLauncherGLib.cpp
208
209     UIProcess/Network/CustomProtocols/LegacyCustomProtocolManagerProxy.cpp
210
211     UIProcess/linux/MemoryPressureMonitor.cpp
212
213     UIProcess/Plugins/gtk/PluginInfoCache.cpp
214
215     UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp
216     UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp
217
218     UIProcess/WebStorage/StorageManager.cpp
219
220     UIProcess/WebsiteData/unix/WebsiteDataStoreUnix.cpp
221
222     UIProcess/cairo/BackingStoreCairo.cpp
223
224     UIProcess/glib/RemoteInspectorClient.cpp
225
226     UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.cpp
227     UIProcess/gstreamer/WebPageProxyGStreamer.cpp
228
229     UIProcess/gtk/AcceleratedBackingStore.cpp
230     UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
231     UIProcess/gtk/AcceleratedBackingStoreX11.cpp
232     UIProcess/gtk/DragAndDropHandler.cpp
233     UIProcess/gtk/GestureController.cpp
234     UIProcess/gtk/HardwareAccelerationManager.cpp
235     UIProcess/gtk/InputMethodFilter.cpp
236     UIProcess/gtk/KeyBindingTranslator.cpp
237     UIProcess/gtk/RemoteWebInspectorProxyGtk.cpp
238     UIProcess/gtk/TextCheckerGtk.cpp
239     UIProcess/gtk/WaylandCompositor.cpp
240     UIProcess/gtk/WebColorPickerGtk.cpp
241     UIProcess/gtk/WebContextMenuProxyGtk.cpp
242     UIProcess/gtk/WebInspectorProxyGtk.cpp
243     UIProcess/gtk/WebKitInspectorWindow.cpp
244     UIProcess/gtk/WebPageProxyGtk.cpp
245     UIProcess/gtk/WebPasteboardProxyGtk.cpp
246     UIProcess/gtk/WebPopupMenuProxyGtk.cpp
247     UIProcess/gtk/WebPreferencesGtk.cpp
248     UIProcess/gtk/WebProcessPoolGtk.cpp
249
250     UIProcess/soup/WebCookieManagerProxySoup.cpp
251     UIProcess/soup/WebProcessPoolSoup.cpp
252
253     WebProcess/Cookies/soup/WebCookieManagerSoup.cpp
254
255     WebProcess/InjectedBundle/API/glib/WebKitConsoleMessage.cpp
256     WebProcess/InjectedBundle/API/glib/WebKitExtensionManager.cpp
257     WebProcess/InjectedBundle/API/glib/WebKitFrame.cpp
258     WebProcess/InjectedBundle/API/glib/WebKitScriptWorld.cpp
259     WebProcess/InjectedBundle/API/glib/WebKitWebEditor.cpp
260     WebProcess/InjectedBundle/API/glib/WebKitWebExtension.cpp
261     WebProcess/InjectedBundle/API/glib/WebKitWebHitTestResult.cpp
262     WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp
263
264     WebProcess/InjectedBundle/API/gtk/DOM/ConvertToUTF8String.cpp
265     WebProcess/InjectedBundle/API/gtk/DOM/DOMObjectCache.cpp
266     WebProcess/InjectedBundle/API/gtk/DOM/GObjectEventListener.cpp
267     WebProcess/InjectedBundle/API/gtk/DOM/GObjectNodeFilterCondition.cpp
268     WebProcess/InjectedBundle/API/gtk/DOM/GObjectXPathNSResolver.cpp
269     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.cpp
270     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.cpp
271     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASection.cpp
272     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.cpp
273     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleList.cpp
274     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclaration.cpp
275     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheet.cpp
276     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValue.cpp
277     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.cpp
278     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRect.cpp
279     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRectList.cpp
280     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMComment.cpp
281     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.cpp
282     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.cpp
283     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.cpp
284     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.cpp
285     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDeprecated.cpp
286     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.cpp
287     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.cpp
288     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.cpp
289     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.cpp
290     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.cpp
291     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEventTarget.cpp
292     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.cpp
293     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileList.cpp
294     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.cpp
295     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElement.cpp
296     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.cpp
297     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElement.cpp
298     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElement.cpp
299     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElement.cpp
300     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.cpp
301     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElement.cpp
302     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollection.cpp
303     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElement.cpp
304     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElement.cpp
305     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElement.cpp
306     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocument.cpp
307     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.cpp
308     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElement.cpp
309     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.cpp
310     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElement.cpp
311     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.cpp
312     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElement.cpp
313     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElement.cpp
314     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElement.cpp
315     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElement.cpp
316     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElement.cpp
317     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.cpp
318     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.cpp
319     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.cpp
320     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp
321     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElement.cpp
322     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.cpp
323     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElement.cpp
324     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.cpp
325     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElement.cpp
326     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.cpp
327     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElement.cpp
328     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElement.cpp
329     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElement.cpp
330     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.cpp
331     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.cpp
332     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElement.cpp
333     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElement.cpp
334     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.cpp
335     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElement.cpp
336     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElement.cpp
337     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElement.cpp
338     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPrivate.cpp
339     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElement.cpp
340     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.cpp
341     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.cpp
342     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.cpp
343     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElement.cpp
344     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElement.cpp
345     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElement.cpp
346     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.cpp
347     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElement.cpp
348     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElement.cpp
349     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.cpp
350     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElement.cpp
351     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElement.cpp
352     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEvent.cpp
353     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.cpp
354     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.cpp
355     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMap.cpp
356     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.cpp
357     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeFilter.cpp
358     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIterator.cpp
359     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeList.cpp
360     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObject.cpp
361     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPrivate.cpp
362     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstruction.cpp
363     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.cpp
364     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheet.cpp
365     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetList.cpp
366     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMText.cpp
367     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalker.cpp
368     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.cpp
369     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.cpp
370     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.cpp
371     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathNSResolver.cpp
372     WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.cpp
373
374     WebProcess/InjectedBundle/glib/InjectedBundleGlib.cpp
375
376     WebProcess/MediaCache/WebMediaKeyStorageManager.cpp
377
378     WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp
379     WebProcess/Plugins/Netscape/unix/PluginProxyUnix.cpp
380
381     WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
382
383     WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp
384     WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp
385     WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp
386     WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp
387
388     WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp
389
390     WebProcess/WebPage/AcceleratedDrawingArea.cpp
391     WebProcess/WebPage/AcceleratedSurface.cpp
392
393     WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp
394     WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp
395     WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp
396
397     WebProcess/WebPage/DrawingAreaImpl.cpp
398
399     WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp
400
401     WebProcess/WebPage/gstreamer/WebPageGStreamer.cpp
402
403     WebProcess/WebPage/gtk/AcceleratedSurfaceWayland.cpp
404     WebProcess/WebPage/gtk/AcceleratedSurfaceX11.cpp
405     WebProcess/WebPage/gtk/PrinterListGtk.cpp
406     WebProcess/WebPage/gtk/WebInspectorUIGtk.cpp
407     WebProcess/WebPage/gtk/WebPageGtk.cpp
408     WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp
409
410     WebProcess/gtk/WaylandCompositorDisplay.cpp
411     WebProcess/gtk/WebProcessMainGtk.cpp
412
413     WebProcess/soup/WebKitSoupRequestInputStream.cpp
414     WebProcess/soup/WebProcessSoup.cpp
415 )
416
417 list(APPEND WebKit_MESSAGES_IN_FILES
418     NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.messages.in
419
420     UIProcess/Network/CustomProtocols/LegacyCustomProtocolManagerProxy.messages.in
421 )
422
423 list(APPEND WebKit_DERIVED_SOURCES
424     ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.c
425     ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.c
426
427     ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.cpp
428 )
429
430 if (ENABLE_WAYLAND_TARGET)
431     list(APPEND WebKit_DERIVED_SOURCES
432         ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitWaylandClientProtocol.c
433     )
434 endif ()
435
436 set(WebKit2GTK_INSTALLED_HEADERS
437     ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.h
438     ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitVersion.h
439     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitApplicationInfo.h
440     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitAuthenticationRequest.h
441     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitAutocleanups.h
442     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitAutomationSession.h
443     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitBackForwardList.h
444     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitBackForwardListItem.h
445     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitColorChooserRequest.h
446     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitCredential.h
447     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenu.h
448     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenuActions.h
449     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenuItem.h
450     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitCookieManager.h
451     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitDefines.h
452     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitDownload.h
453     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitEditingCommands.h
454     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitEditorState.h
455     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitError.h
456     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitFaviconDatabase.h
457     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitFileChooserRequest.h
458     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitFindController.h
459     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitFormSubmissionRequest.h
460     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitForwardDeclarations.h
461     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitGeolocationPermissionRequest.h
462     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitHitTestResult.h
463     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.h
464     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitJavascriptResult.h
465     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitMimeInfo.h
466     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitNavigationAction.h
467     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitNavigationPolicyDecision.h
468     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitNetworkProxySettings.h
469     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitNotificationPermissionRequest.h
470     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitNotification.h
471     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitOptionMenu.h
472     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitOptionMenuItem.h
473     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitPermissionRequest.h
474     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitPlugin.h
475     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitPolicyDecision.h
476     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitPrintCustomWidget.h
477     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitPrintOperation.h
478     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitResponsePolicyDecision.h
479     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitScriptDialog.h
480     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitSecurityManager.h
481     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitSecurityOrigin.h
482     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitSettings.h
483     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitURIRequest.h
484     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitURIResponse.h
485     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitURISchemeRequest.h
486     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitUserContent.h
487     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitUserContentManager.h
488     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h
489     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebContext.h
490     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebInspector.h
491     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebResource.h
492     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebView.h
493     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebViewBase.h
494     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebViewSessionState.h
495     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebsiteData.h
496     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWebsiteDataManager.h
497     ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitWindowProperties.h
498     ${WEBKIT_DIR}/UIProcess/API/gtk/webkit2.h
499 )
500
501 set(WebKit2WebExtension_INSTALLED_HEADERS
502     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.h
503     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitFrame.h
504     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h
505     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.h
506     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.h
507     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitWebExtensionAutocleanups.h
508     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResult.h
509     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h
510     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h
511 )
512
513 set(WebKitDOM_INSTALLED_HEADERS
514     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/webkitdomautocleanups.h
515     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/webkitdomdefines.h
516     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/webkitdom.h
517     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.h
518     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.h
519     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASection.h
520     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.h
521     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRect.h
522     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRectList.h
523     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMComment.h
524     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.h
525     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleList.h
526     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclaration.h
527     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheet.h
528     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValue.h
529     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustom.h
530     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustomUnstable.h
531     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDeprecated.h
532     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.h
533     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragmentUnstable.h
534     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.h
535     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.h
536     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentUnstable.h
537     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.h
538     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.h
539     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.h
540     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.h
541     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowUnstable.h
542     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.h
543     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementUnstable.h
544     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.h
545     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEventTarget.h
546     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.h
547     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileList.h
548     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.h
549     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElement.h
550     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.h
551     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElement.h
552     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElement.h
553     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElement.h
554     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.h
555     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElement.h
556     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollection.h
557     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElement.h
558     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElement.h
559     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElement.h
560     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocument.h
561     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.h
562     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElementUnstable.h
563     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElement.h
564     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.h
565     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElement.h
566     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.h
567     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElement.h
568     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElement.h
569     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElement.h
570     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElement.h
571     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElement.h
572     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.h
573     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.h
574     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.h
575     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h
576     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.h
577     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElement.h
578     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElement.h
579     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.h
580     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElement.h
581     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.h
582     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElement.h
583     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElement.h
584     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElement.h
585     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.h
586     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.h
587     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElement.h
588     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElement.h
589     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.h
590     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElement.h
591     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElement.h
592     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElement.h
593     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElement.h
594     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.h
595     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.h
596     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.h
597     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElement.h
598     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElement.h
599     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElement.h
600     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.h
601     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElement.h
602     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElement.h
603     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.h
604     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElement.h
605     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElement.h
606     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEvent.h
607     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.h
608     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.h
609     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMap.h
610     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeFilter.h
611     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.h
612     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIterator.h
613     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeList.h
614     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObject.h
615     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstruction.h
616     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.h
617     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRangeUnstable.h
618     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheet.h
619     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetList.h
620     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMText.h
621     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalker.h
622     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.h
623     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.h
624     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.h
625     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathNSResolver.h
626     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.h
627 )
628
629 set(WebKitDOM_GTKDOC_HEADERS
630     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.h
631     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.h
632     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASection.h
633     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.h
634     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRect.h
635     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMClientRectList.h
636     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMComment.h
637     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.h
638     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleList.h
639     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclaration.h
640     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheet.h
641     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValue.h
642     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustom.h
643     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDeprecated.h
644     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.h
645     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.h
646     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.h
647     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.h
648     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.h
649     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.h
650     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.h
651     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.h
652     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.h
653     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEventTarget.h
654     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.h
655     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileList.h
656     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.h
657     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElement.h
658     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.h
659     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElement.h
660     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElement.h
661     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElement.h
662     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.h
663     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElement.h
664     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollection.h
665     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElement.h
666     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElement.h
667     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElement.h
668     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocument.h
669     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.h
670     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElement.h
671     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.h
672     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElement.h
673     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.h
674     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElement.h
675     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElement.h
676     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElement.h
677     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElement.h
678     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElement.h
679     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.h
680     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.h
681     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.h
682     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h
683     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.h
684     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElement.h
685     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElement.h
686     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.h
687     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElement.h
688     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.h
689     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElement.h
690     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElement.h
691     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElement.h
692     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.h
693     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.h
694     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElement.h
695     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElement.h
696     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.h
697     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElement.h
698     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElement.h
699     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElement.h
700     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElement.h
701     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.h
702     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.h
703     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.h
704     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElement.h
705     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElement.h
706     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElement.h
707     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.h
708     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElement.h
709     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElement.h
710     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.h
711     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElement.h
712     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElement.h
713     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEvent.h
714     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.h
715     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.h
716     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMap.h
717     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeFilter.h
718     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.h
719     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIterator.h
720     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeList.h
721     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObject.h
722     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstruction.h
723     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.h
724     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheet.h
725     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetList.h
726     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMText.h
727     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalker.h
728     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.h
729     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.h
730     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.h
731     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathNSResolver.h
732     ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.h
733 )
734
735 # This is necessary because of a conflict between the GTK+ API WebKitVersion.h and one generated by WebCore.
736 list(INSERT WebKit_INCLUDE_DIRECTORIES 0
737     "${FORWARDING_HEADERS_WEBKIT2GTK_DIR}"
738     "${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}"
739     "${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}"
740     "${DERIVED_SOURCES_WEBKIT2GTK_DIR}"
741 )
742
743 list(APPEND WebKit_INCLUDE_DIRECTORIES
744     "${WEBKIT_DIR}/PluginProcess/unix"
745     "${WEBKIT_DIR}/NetworkProcess/CustomProtocols/soup"
746     "${WEBKIT_DIR}/NetworkProcess/Downloads/soup"
747     "${WEBKIT_DIR}/NetworkProcess/gtk"
748     "${WEBKIT_DIR}/NetworkProcess/soup"
749     "${WEBKIT_DIR}/NetworkProcess/unix"
750     "${WEBKIT_DIR}/Platform/IPC/glib"
751     "${WEBKIT_DIR}/Platform/IPC/unix"
752     "${WEBKIT_DIR}/Platform/classifier"
753     "${WEBKIT_DIR}/Shared/API/c/gtk"
754     "${WEBKIT_DIR}/Shared/API/glib"
755     "${WEBKIT_DIR}/Shared/CoordinatedGraphics"
756     "${WEBKIT_DIR}/Shared/CoordinatedGraphics/threadedcompositor"
757     "${WEBKIT_DIR}/Shared/Plugins/unix"
758     "${WEBKIT_DIR}/Shared/glib"
759     "${WEBKIT_DIR}/Shared/gtk"
760     "${WEBKIT_DIR}/Shared/linux"
761     "${WEBKIT_DIR}/Shared/soup"
762     "${WEBKIT_DIR}/Shared/unix"
763     "${WEBKIT_DIR}/StorageProcess/unix"
764     "${WEBKIT_DIR}/UIProcess/API/C/cairo"
765     "${WEBKIT_DIR}/UIProcess/API/C/gtk"
766     "${WEBKIT_DIR}/UIProcess/API/glib"
767     "${WEBKIT_DIR}/UIProcess/API/gtk"
768     "${WEBKIT_DIR}/UIProcess/Network/CustomProtocols/soup"
769     "${WEBKIT_DIR}/UIProcess/Plugins/gtk"
770     "${WEBKIT_DIR}/UIProcess/glib"
771     "${WEBKIT_DIR}/UIProcess/gstreamer"
772     "${WEBKIT_DIR}/UIProcess/gtk"
773     "${WEBKIT_DIR}/UIProcess/linux"
774     "${WEBKIT_DIR}/UIProcess/soup"
775     "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib"
776     "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk"
777     "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM"
778     "${WEBKIT_DIR}/WebProcess/Plugins/Netscape/unix"
779     "${WEBKIT_DIR}/WebProcess/Plugins/Netscape/x11"
780     "${WEBKIT_DIR}/WebProcess/gtk"
781     "${WEBKIT_DIR}/WebProcess/soup"
782     "${WEBKIT_DIR}/WebProcess/unix"
783     "${WEBKIT_DIR}/WebProcess/WebCoreSupport/gtk"
784     "${WEBKIT_DIR}/WebProcess/WebCoreSupport/soup"
785     "${WEBKIT_DIR}/WebProcess/WebPage/CoordinatedGraphics"
786     "${WEBKIT_DIR}/WebProcess/WebPage/atk"
787     "${WEBKIT_DIR}/WebProcess/WebPage/gtk"
788 )
789
790 list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES
791     ${CAIRO_INCLUDE_DIRS}
792     ${ENCHANT_INCLUDE_DIRS}
793     ${GSTREAMER_INCLUDE_DIRS}
794     ${GSTREAMER_PBUTILS_INCLUDE_DIRS}
795     ${HARFBUZZ_INCLUDE_DIRS}
796     ${LIBSOUP_INCLUDE_DIRS}
797 )
798
799 if (USE_LIBNOTIFY)
800 list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES
801     ${LIBNOTIFY_INCLUDE_DIRS}
802 )
803 endif ()
804
805 set(WebKitCommonIncludeDirectories ${WebKit_INCLUDE_DIRECTORIES})
806 set(WebKitCommonSystemIncludeDirectories ${WebKit_SYSTEM_INCLUDE_DIRECTORIES})
807
808 list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES
809     ${GLIB_INCLUDE_DIRS}
810     ${GTK_INCLUDE_DIRS}
811     ${GTK_UNIX_PRINT_INCLUDE_DIRS}
812 )
813
814 list(APPEND WebProcess_SOURCES
815     WebProcess/EntryPoint/unix/WebProcessMain.cpp
816 )
817
818 list(APPEND NetworkProcess_SOURCES
819     NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp
820 )
821
822 list(APPEND StorageProcess_SOURCES
823     StorageProcess/EntryPoint/unix/StorageProcessMain.cpp
824 )
825
826 set(SharedWebKitLibraries
827     ${WebKit_LIBRARIES}
828 )
829
830 list(APPEND WebKit_LIBRARIES
831     WebCorePlatformGTK
832     ${GTK_UNIX_PRINT_LIBRARIES}
833 )
834
835 if (LIBNOTIFY_FOUND)
836 list(APPEND WebKit_LIBRARIES
837     ${LIBNOTIFY_LIBRARIES}
838 )
839 endif ()
840
841 # To generate WebKitEnumTypes.h we want to use all installed headers, except WebKitEnumTypes.h itself.
842 set(WebKit2GTK_ENUM_GENERATION_HEADERS ${WebKit2GTK_INSTALLED_HEADERS})
843 list(REMOVE_ITEM WebKit2GTK_ENUM_GENERATION_HEADERS ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.h)
844 add_custom_command(
845     OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.h
846            ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.cpp
847     DEPENDS ${WebKit2GTK_ENUM_GENERATION_HEADERS}
848
849     COMMAND glib-mkenums --template ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitEnumTypes.h.template ${WebKit2GTK_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ | sed s/WEBKIT_TYPE_KIT/WEBKIT_TYPE/ > ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.h
850
851     COMMAND glib-mkenums --template ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitEnumTypes.cpp.template ${WebKit2GTK_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ > ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}/WebKitEnumTypes.cpp
852     VERBATIM)
853
854 WEBKIT_BUILD_INSPECTOR_GRESOURCES(${DERIVED_SOURCES_WEBKIT2GTK_DIR})
855
856 set(WebKitResources
857     "        <file alias=\"images/missingImage\">missingImage.png</file>\n"
858     "        <file alias=\"images/missingImage@2x\">missingImage@2x.png</file>\n"
859     "        <file alias=\"images/panIcon\">panIcon.png</file>\n"
860     "        <file alias=\"images/textAreaResizeCorner\">textAreaResizeCorner.png</file>\n"
861     "        <file alias=\"images/textAreaResizeCorner@2x\">textAreaResizeCorner@2x.png</file>\n"
862 )
863
864 if (ENABLE_ICONDATABASE)
865     list(APPEND WebKitResources
866         "        <file alias=\"images/urlIcon\">urlIcon.png</file>\n"
867     )
868 endif ()
869
870 if (ENABLE_WEB_AUDIO)
871     list(APPEND WebKitResources
872         "        <file alias=\"audio/Composite\">Composite.wav</file>\n"
873     )
874 endif ()
875
876 file(WRITE ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.xml
877     "<?xml version=1.0 encoding=UTF-8?>\n"
878     "<gresources>\n"
879     "    <gresource prefix=\"/org/webkitgtk/resources\">\n"
880     ${WebKitResources}
881     "    </gresource>\n"
882     "</gresources>\n"
883 )
884
885 add_custom_command(
886     OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.c
887     DEPENDS ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.xml
888     COMMAND glib-compile-resources --generate --sourcedir=${CMAKE_SOURCE_DIR}/Source/WebCore/Resources --sourcedir=${CMAKE_SOURCE_DIR}/Source/WebCore/platform/audio/resources --target=${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.c ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitResourcesGResourceBundle.xml
889     VERBATIM
890 )
891
892 if (ENABLE_WAYLAND_TARGET)
893     # Wayland protocol extension.
894     add_custom_command(
895         OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitWaylandClientProtocol.c
896         DEPENDS ${WEBKIT_DIR}/Shared/gtk/WebKitWaylandProtocol.xml
897         COMMAND wayland-scanner server-header < ${WEBKIT_DIR}/Shared/gtk/WebKitWaylandProtocol.xml > ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitWaylandServerProtocol.h
898         COMMAND wayland-scanner client-header < ${WEBKIT_DIR}/Shared/gtk/WebKitWaylandProtocol.xml > ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitWaylandClientProtocol.h
899         COMMAND wayland-scanner code < ${WEBKIT_DIR}/Shared/gtk/WebKitWaylandProtocol.xml > ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/WebKitWaylandClientProtocol.c
900     )
901 endif ()
902
903 if (ENABLE_PLUGIN_PROCESS_GTK2)
904     set(PluginProcessGTK2_EXECUTABLE_NAME WebKitPluginProcess2)
905
906     # FIXME: We should figure out a way to avoid compiling files that are common between the plugin
907     # process and WebKit only once instead of recompiling them for the plugin process.
908     list(APPEND PluginProcessGTK2_SOURCES
909         Platform/Logging.cpp
910         Platform/Module.cpp
911
912         Platform/IPC/ArgumentCoders.cpp
913         Platform/IPC/Attachment.cpp
914         Platform/IPC/Connection.cpp
915         Platform/IPC/DataReference.cpp
916         Platform/IPC/Decoder.cpp
917         Platform/IPC/Encoder.cpp
918         Platform/IPC/MessageReceiverMap.cpp
919         Platform/IPC/MessageSender.cpp
920         Platform/IPC/StringReference.cpp
921
922         Platform/IPC/glib/GSocketMonitor.cpp
923         Platform/IPC/unix/AttachmentUnix.cpp
924         Platform/IPC/unix/ConnectionUnix.cpp
925
926         Platform/glib/ModuleGlib.cpp
927
928         Platform/unix/LoggingUnix.cpp
929         Platform/unix/SharedMemoryUnix.cpp
930
931         PluginProcess/PluginControllerProxy.cpp
932         PluginProcess/PluginCreationParameters.cpp
933         PluginProcess/PluginProcess.cpp
934         PluginProcess/WebProcessConnection.cpp
935
936         PluginProcess/EntryPoint/unix/PluginProcessMain.cpp
937
938         PluginProcess/unix/PluginControllerProxyUnix.cpp
939         PluginProcess/unix/PluginProcessMainUnix.cpp
940         PluginProcess/unix/PluginProcessUnix.cpp
941
942         Shared/ActivityAssertion.cpp
943         Shared/BlobDataFileReferenceWithSandboxExtension.cpp
944         Shared/ChildProcess.cpp
945         Shared/ShareableBitmap.cpp
946         Shared/WebCoreArgumentCoders.cpp
947         Shared/WebEvent.cpp
948         Shared/WebKeyboardEvent.cpp
949         Shared/WebKit2Initialize.cpp
950         Shared/WebMouseEvent.cpp
951         Shared/WebPlatformTouchPoint.cpp
952         Shared/WebTouchEvent.cpp
953         Shared/WebWheelEvent.cpp
954
955         Shared/Plugins/NPIdentifierData.cpp
956         Shared/Plugins/NPObjectMessageReceiver.cpp
957         Shared/Plugins/NPObjectProxy.cpp
958         Shared/Plugins/NPRemoteObjectMap.cpp
959         Shared/Plugins/NPVariantData.cpp
960         Shared/Plugins/PluginProcessCreationParameters.cpp
961
962         Shared/Plugins/Netscape/NetscapePluginModule.cpp
963         Shared/Plugins/Netscape/NetscapePluginModuleNone.cpp
964
965         Shared/Plugins/Netscape/unix/NetscapePluginModuleUnix.cpp
966
967         Shared/cairo/ShareableBitmapCairo.cpp
968
969         Shared/gtk/NativeWebKeyboardEventGtk.cpp
970         Shared/gtk/NativeWebMouseEventGtk.cpp
971         Shared/gtk/NativeWebTouchEventGtk.cpp
972         Shared/gtk/NativeWebWheelEventGtk.cpp
973         Shared/gtk/ProcessExecutablePathGtk.cpp
974         Shared/gtk/WebEventFactory.cpp
975
976         Shared/soup/WebCoreArgumentCodersSoup.cpp
977
978         Shared/unix/ChildProcessMain.cpp
979
980         UIProcess/Launcher/ProcessLauncher.cpp
981
982         UIProcess/Launcher/glib/ProcessLauncherGLib.cpp
983
984         UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp
985
986         WebProcess/Plugins/Plugin.cpp
987
988         WebProcess/Plugins/Netscape/NPRuntimeUtilities.cpp
989         WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp
990         WebProcess/Plugins/Netscape/NetscapePlugin.cpp
991         WebProcess/Plugins/Netscape/NetscapePluginNone.cpp
992         WebProcess/Plugins/Netscape/NetscapePluginStream.cpp
993
994         WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp
995         WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
996
997         ${DERIVED_SOURCES_WEBKIT_DIR}/PluginControllerProxyMessageReceiver.cpp
998         ${DERIVED_SOURCES_WEBKIT_DIR}/PluginProcessMessageReceiver.cpp
999         ${DERIVED_SOURCES_WEBKIT_DIR}/WebProcessConnectionMessageReceiver.cpp
1000         ${DERIVED_SOURCES_WEBKIT_DIR}/NPObjectMessageReceiverMessageReceiver.cpp
1001         ${DERIVED_SOURCES_WEBKIT_DIR}/ChildProcessMessageReceiver.cpp
1002     )
1003
1004     add_executable(WebKitPluginProcess2 ${PluginProcessGTK2_SOURCES})
1005     ADD_WEBKIT_PREFIX_HEADER(WebKitPluginProcess2)
1006
1007     # We need ENABLE_PLUGIN_PROCESS for all targets in this directory, but
1008     # we only want GTK_API_VERSION_2 for the plugin process target.
1009     set_property(
1010         TARGET WebKitPluginProcess2
1011         APPEND
1012         PROPERTY COMPILE_DEFINITIONS GTK_API_VERSION_2=1
1013     )
1014     target_include_directories(WebKitPluginProcess2 PRIVATE
1015         ${WebKitCommonIncludeDirectories}
1016     )
1017     target_include_directories(WebKitPluginProcess2 SYSTEM PRIVATE
1018          ${WebKitCommonSystemIncludeDirectories}
1019          ${GTK2_INCLUDE_DIRS}
1020          ${GDK2_INCLUDE_DIRS}
1021     )
1022
1023     set(WebKitPluginProcess2_LIBRARIES
1024         ${SharedWebKitLibraries}
1025         WebCorePlatformGTK2
1026     )
1027     ADD_WHOLE_ARCHIVE_TO_LIBRARIES(WebKitPluginProcess2_LIBRARIES)
1028     target_link_libraries(WebKitPluginProcess2 ${WebKitPluginProcess2_LIBRARIES})
1029
1030     add_dependencies(WebKitPluginProcess2 WebKit)
1031
1032     install(TARGETS WebKitPluginProcess2 DESTINATION "${LIBEXEC_INSTALL_DIR}")
1033
1034     if (COMPILER_IS_GCC_OR_CLANG)
1035         WEBKIT_ADD_TARGET_CXX_FLAGS(WebKitPluginProcess2 -Wno-unused-parameter)
1036     endif ()
1037 endif () # ENABLE_PLUGIN_PROCESS_GTK2
1038
1039 # GTK3 PluginProcess
1040 list(APPEND PluginProcess_SOURCES
1041     PluginProcess/EntryPoint/unix/PluginProcessMain.cpp
1042 )
1043
1044 # Commands for building the built-in injected bundle.
1045 include_directories(
1046     "${WEBKIT_DIR}/Platform"
1047     "${WEBKIT_DIR}/Shared"
1048     "${WEBKIT_DIR}/Shared/API/c"
1049     "${WEBKIT_DIR}/UIProcess/API/C"
1050     "${WEBKIT_DIR}/WebProcess/InjectedBundle"
1051     "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/c"
1052     "${DERIVED_SOURCES_DIR}/InjectedBundle"
1053     "${FORWARDING_HEADERS_DIR}"
1054     "${FORWARDING_HEADERS_WEBKIT2GTK_DIR}"
1055 )
1056
1057 add_library(webkit2gtkinjectedbundle MODULE "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib/WebKitInjectedBundleMain.cpp")
1058 ADD_WEBKIT_PREFIX_HEADER(webkit2gtkinjectedbundle)
1059 target_link_libraries(webkit2gtkinjectedbundle WebKit)
1060
1061 if (COMPILER_IS_GCC_OR_CLANG)
1062     WEBKIT_ADD_TARGET_CXX_FLAGS(webkit2gtkinjectedbundle -Wno-unused-parameter)
1063 endif ()
1064
1065 # Add ${CMAKE_LIBRARY_OUTPUT_DIRECTORY} to LD_LIBRARY_PATH or DYLD_LIBRARY_PATH
1066 if (APPLE)
1067     set(LOADER_LIBRARY_PATH_VAR "DYLD_LIBRARY_PATH")
1068     set(PREV_LOADER_LIBRARY_PATH "$ENV{DYLD_LIBRARY_PATH}")
1069 else ()
1070     set(LOADER_LIBRARY_PATH_VAR "LD_LIBRARY_PATH")
1071     set(PREV_LOADER_LIBRARY_PATH "$ENV{LD_LIBRARY_PATH}")
1072 endif ()
1073
1074 string(COMPARE EQUAL "${PREV_LOADER_LIBRARY_PATH}" "" ld_library_path_does_not_exist)
1075 if (ld_library_path_does_not_exist)
1076     set(INTROSPECTION_ADDITIONAL_LIBRARY_PATH
1077         "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}"
1078     )
1079 else ()
1080     set(INTROSPECTION_ADDITIONAL_LIBRARY_PATH
1081         "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}:${PREV_LOADER_LIBRARY_PATH}"
1082     )
1083 endif ()
1084
1085 # Add required -L flags from ${CMAKE_SHARED_LINKER_FLAGS} for g-ir-scanner
1086 string(REGEX MATCHALL "-L[^ ]*"
1087     INTROSPECTION_ADDITIONAL_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
1088
1089 add_custom_command(
1090     OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
1091     DEPENDS WebKit
1092     DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
1093     COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations LDFLAGS=
1094         ${LOADER_LIBRARY_PATH_VAR}="${INTROSPECTION_ADDITIONAL_LIBRARY_PATH}"
1095         ${INTROSPECTION_SCANNER}
1096         --quiet
1097         --warn-all
1098         --symbol-prefix=webkit
1099         --identifier-prefix=WebKit
1100         --namespace=WebKit2
1101         --nsversion=${WEBKITGTK_API_VERSION}
1102         --include=GObject-2.0
1103         --include=Gtk-3.0
1104         --include=Soup-2.4
1105         --include-uninstalled=${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
1106         --library=webkit2gtk-${WEBKITGTK_API_VERSION}
1107         --library=javascriptcoregtk-${WEBKITGTK_API_VERSION}
1108         -L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
1109         ${INTROSPECTION_ADDITIONAL_LINKER_FLAGS}
1110         --no-libtool
1111         --pkg=gobject-2.0
1112         --pkg=gtk+-3.0
1113         --pkg=libsoup-2.4
1114         --pkg-export=webkit2gtk-${WEBKITGTK_API_VERSION}
1115         --output=${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
1116         --c-include="webkit2/webkit2.h"
1117         -DBUILDING_WEBKIT
1118         -DWEBKIT2_COMPILATION
1119         -I${CMAKE_SOURCE_DIR}/Source
1120         -I${WEBKIT_DIR}
1121         -I${JAVASCRIPTCORE_DIR}
1122         -I${JAVASCRIPTCORE_DIR}/ForwardingHeaders
1123         -I${DERIVED_SOURCES_DIR}
1124         -I${DERIVED_SOURCES_WEBKIT2GTK_DIR}
1125         -I${FORWARDING_HEADERS_WEBKIT2GTK_DIR}
1126         ${WebKit2GTK_INSTALLED_HEADERS}
1127         ${WEBKIT_DIR}/Shared/API/glib/*.cpp
1128         ${WEBKIT_DIR}/UIProcess/API/glib/*.cpp
1129         ${WEBKIT_DIR}/UIProcess/API/gtk/*.cpp
1130 )
1131
1132 add_custom_command(
1133     OUTPUT ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
1134     DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
1135     DEPENDS ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
1136     COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations
1137         LDFLAGS="${INTROSPECTION_ADDITIONAL_LDFLAGS}"
1138         ${LOADER_LIBRARY_PATH_VAR}="${INTROSPECTION_ADDITIONAL_LIBRARY_PATH}"
1139         ${INTROSPECTION_SCANNER}
1140         --quiet
1141         --warn-all
1142         --symbol-prefix=webkit
1143         --identifier-prefix=WebKit
1144         --namespace=WebKit2WebExtension
1145         --nsversion=${WEBKITGTK_API_VERSION}
1146         --include=GObject-2.0
1147         --include=Gtk-3.0
1148         --include=Soup-2.4
1149         --include-uninstalled=${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
1150         --library=webkit2gtk-${WEBKITGTK_API_VERSION}
1151         --library=javascriptcoregtk-${WEBKITGTK_API_VERSION}
1152         ${INTROSPECTION_ADDITIONAL_LIBRARIES}
1153         -L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
1154         ${INTROSPECTION_ADDITIONAL_LINKER_FLAGS}
1155         --no-libtool
1156         --pkg=gobject-2.0
1157         --pkg=gtk+-3.0
1158         --pkg=libsoup-2.4
1159         --pkg-export=webkit2gtk-web-extension-${WEBKITGTK_API_VERSION}
1160         --output=${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
1161         --c-include="webkit2/webkit-web-extension.h"
1162         -DBUILDING_WEBKIT
1163         -DWEBKIT2_COMPILATION
1164         -I${CMAKE_SOURCE_DIR}/Source
1165         -I${WEBKIT_DIR}
1166         -I${JAVASCRIPTCORE_DIR}
1167         -I${JAVASCRIPTCORE_DIR}/ForwardingHeaders
1168         -I${DERIVED_SOURCES_DIR}
1169         -I${DERIVED_SOURCES_WEBKIT2GTK_DIR}
1170         -I${FORWARDING_HEADERS_DIR}
1171         -I${FORWARDING_HEADERS_WEBKIT2GTK_DIR}
1172         -I${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}
1173         -I${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk
1174         ${WebKitDOM_INSTALLED_HEADERS}
1175         ${WebKit2WebExtension_INSTALLED_HEADERS}
1176         ${WEBKIT_DIR}/Shared/API/glib/WebKitContextMenu.cpp
1177         ${WEBKIT_DIR}/Shared/API/glib/WebKitContextMenuItem.cpp
1178         ${WEBKIT_DIR}/Shared/API/glib/WebKitHitTestResult.cpp
1179         ${WEBKIT_DIR}/Shared/API/glib/WebKitURIRequest.cpp
1180         ${WEBKIT_DIR}/Shared/API/glib/WebKitURIResponse.cpp
1181         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenu.h
1182         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenuActions.h
1183         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitContextMenuItem.h
1184         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitHitTestResult.h
1185         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitURIRequest.h
1186         ${WEBKIT_DIR}/UIProcess/API/gtk/WebKitURIResponse.h
1187         ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib/*.cpp
1188 )
1189
1190 add_custom_command(
1191     OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
1192     DEPENDS ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
1193     COMMAND ${INTROSPECTION_COMPILER} --includedir=${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir -o ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
1194 )
1195
1196 add_custom_command(
1197     OUTPUT ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib
1198     DEPENDS ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
1199     COMMAND ${INTROSPECTION_COMPILER} --includedir=${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir -o ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib
1200 )
1201
1202 ADD_TYPELIB(${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib)
1203 ADD_TYPELIB(${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib)
1204
1205 install(TARGETS webkit2gtkinjectedbundle
1206         DESTINATION "${LIB_INSTALL_DIR}/webkit2gtk-${WEBKITGTK_API_VERSION}/injected-bundle"
1207 )
1208 install(FILES "${CMAKE_BINARY_DIR}/Source/WebKit/webkit2gtk-${WEBKITGTK_API_VERSION}.pc"
1209               "${CMAKE_BINARY_DIR}/Source/WebKit/webkit2gtk-web-extension-${WEBKITGTK_API_VERSION}.pc"
1210         DESTINATION "${LIB_INSTALL_DIR}/pkgconfig"
1211 )
1212 install(FILES ${WebKit2GTK_INSTALLED_HEADERS}
1213               ${WebKit2WebExtension_INSTALLED_HEADERS}
1214         DESTINATION "${WEBKITGTK_HEADER_INSTALL_DIR}/webkit2"
1215 )
1216 install(FILES ${WebKitDOM_INSTALLED_HEADERS}
1217         DESTINATION "${WEBKITGTK_HEADER_INSTALL_DIR}/webkitdom"
1218 )
1219
1220 if (ENABLE_INTROSPECTION)
1221     install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
1222                   ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
1223             DESTINATION ${INTROSPECTION_INSTALL_GIRDIR}
1224     )
1225     install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
1226                   ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib
1227             DESTINATION ${INTROSPECTION_INSTALL_TYPELIBDIR}
1228     )
1229 endif ()
1230
1231 file(WRITE ${CMAKE_BINARY_DIR}/gtkdoc-webkit2gtk.cfg
1232     "[webkit2gtk-${WEBKITGTK_API_VERSION}]\n"
1233     "pkgconfig_file=${WebKit2_PKGCONFIG_FILE}\n"
1234     "namespace=webkit\n"
1235     "cflags=-I${CMAKE_SOURCE_DIR}/Source\n"
1236     "       -I${WEBKIT_DIR}/Shared/API/glib\n"
1237     "       -I${WEBKIT_DIR}/UIProcess/API/glib\n"
1238     "       -I${WEBKIT_DIR}/UIProcess/API/gtk\n"
1239     "       -I${DERIVED_SOURCES_WEBKIT2GTK_DIR}\n"
1240     "       -I${FORWARDING_HEADERS_WEBKIT2GTK_DIR}\n"
1241     "doc_dir=${WEBKIT_DIR}/UIProcess/API/gtk/docs\n"
1242     "source_dirs=${WEBKIT_DIR}/Shared/API/glib"
1243     "            ${WEBKIT_DIR}/UIProcess/API/glib\n"
1244     "            ${WEBKIT_DIR}/UIProcess/API/gtk\n"
1245     "            ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib\n"
1246     "            ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk\n"
1247     "            ${DERIVED_SOURCES_WEBKIT2GTK_API_DIR}\n"
1248     "headers=${WebKit2GTK_ENUM_GENERATION_HEADERS} ${WebKit2WebExtension_INSTALLED_HEADERS}\n"
1249     "main_sgml_file=webkit2gtk-docs.sgml\n"
1250 )
1251
1252 file(WRITE ${CMAKE_BINARY_DIR}/gtkdoc-webkitdom.cfg
1253     "[webkitdomgtk-${WEBKITGTK_API_VERSION}]\n"
1254     "pkgconfig_file=${WebKit2_PKGCONFIG_FILE}\n"
1255     "namespace=webkit_dom\n"
1256     "cflags=-I${CMAKE_SOURCE_DIR}/Source\n"
1257     "       -I${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM\n"
1258     "       -I${DERIVED_SOURCES_WEBKIT2GTK_DIR}\n"
1259     "       -I${FORWARDING_HEADERS_WEBKIT2GTK_DIR}\n"
1260     "doc_dir=${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM/docs\n"
1261     "source_dirs=${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM\n"
1262     "headers=${WebKitDOM_GTKDOC_HEADERS}\n"
1263     "main_sgml_file=webkitdomgtk-docs.sgml\n"
1264 )
1265
1266 add_custom_target(WebKit-forwarding-headers
1267     COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/Scripts/generate-forwarding-headers.pl --include-path ${WEBKIT_DIR} --output ${FORWARDING_HEADERS_DIR} --platform gtk --platform soup
1268 )
1269
1270 # These symbolic link allows includes like #include <webkit2/WebkitWebView.h> which simulates installed headers.
1271 add_custom_command(
1272     OUTPUT ${FORWARDING_HEADERS_WEBKIT2GTK_DIR}/webkit2
1273     DEPENDS ${WEBKIT_DIR}/UIProcess/API/gtk
1274     COMMAND ln -n -s -f ${WEBKIT_DIR}/UIProcess/API/gtk ${FORWARDING_HEADERS_WEBKIT2GTK_DIR}/webkit2
1275 )
1276 add_custom_command(
1277     OUTPUT ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkit2
1278     DEPENDS ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk
1279     COMMAND ln -n -s -f ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkit2
1280 )
1281 add_custom_command(
1282     OUTPUT ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkitdom
1283     DEPENDS ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM
1284     COMMAND ln -n -s -f ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/gtk/DOM ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkitdom
1285 )
1286 add_custom_target(WebKit-fake-api-headers
1287     DEPENDS ${FORWARDING_HEADERS_WEBKIT2GTK_DIR}/webkit2
1288             ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkit2
1289             ${FORWARDING_HEADERS_WEBKIT2GTK_EXTENSION_DIR}/webkitdom
1290 )
1291
1292 set(WEBKIT_EXTRA_DEPENDENCIES
1293      WebKit-fake-api-headers
1294      WebKit-forwarding-headers
1295 )