Compile and link with CMake on Mac
[WebKit-https.git] / Source / WebKit2 / CMakeLists.txt
1 set(WebKit2_INCLUDE_DIRECTORIES
2     "${JAVASCRIPTCORE_DIR}/llint"
3     "${WEBKIT2_DIR}"
4     "${WEBKIT2_DIR}/DatabaseProcess"
5     "${WEBKIT2_DIR}/DatabaseProcess/IndexedDB"
6     "${WEBKIT2_DIR}/DatabaseProcess/IndexedDB/sqlite"
7     "${WEBKIT2_DIR}/NetworkProcess"
8     "${WEBKIT2_DIR}/NetworkProcess/FileAPI"
9     "${WEBKIT2_DIR}/NetworkProcess/cache"
10     "${WEBKIT2_DIR}/Platform"
11     "${WEBKIT2_DIR}/Platform/IPC"
12     "${WEBKIT2_DIR}/PluginProcess"
13     "${WEBKIT2_DIR}/Shared"
14     "${WEBKIT2_DIR}/Shared/API"
15     "${WEBKIT2_DIR}/Shared/API/c"
16     "${WEBKIT2_DIR}/Shared/Authentication"
17     "${WEBKIT2_DIR}/Shared/CoreIPCSupport"
18     "${WEBKIT2_DIR}/Shared/Databases"
19     "${WEBKIT2_DIR}/Shared/Databases/IndexedDB"
20     "${WEBKIT2_DIR}/Shared/Downloads"
21     "${WEBKIT2_DIR}/Shared/FileAPI"
22     "${WEBKIT2_DIR}/Shared/Network"
23     "${WEBKIT2_DIR}/Shared/Network/CustomProtocols"
24     "${WEBKIT2_DIR}/Shared/Plugins"
25     "${WEBKIT2_DIR}/Shared/Plugins/Netscape"
26     "${WEBKIT2_DIR}/Shared/Plugins/Netscape/x11"
27     "${WEBKIT2_DIR}/Shared/WebsiteData"
28     "${WEBKIT2_DIR}/UIProcess"
29     "${WEBKIT2_DIR}/UIProcess/API"
30     "${WEBKIT2_DIR}/UIProcess/API/C"
31     "${WEBKIT2_DIR}/UIProcess/API/cpp"
32     "${WEBKIT2_DIR}/UIProcess/Authentication"
33     "${WEBKIT2_DIR}/UIProcess/Databases"
34     "${WEBKIT2_DIR}/UIProcess/Downloads"
35     "${WEBKIT2_DIR}/UIProcess/InspectorServer"
36     "${WEBKIT2_DIR}/UIProcess/Launcher"
37     "${WEBKIT2_DIR}/UIProcess/Network"
38     "${WEBKIT2_DIR}/UIProcess/Network/CustomProtocols"
39     "${WEBKIT2_DIR}/UIProcess/Notifications"
40     "${WEBKIT2_DIR}/UIProcess/Plugins"
41     "${WEBKIT2_DIR}/UIProcess/Storage"
42     "${WEBKIT2_DIR}/UIProcess/UserContent"
43     "${WEBKIT2_DIR}/UIProcess/WebsiteData"
44     "${WEBKIT2_DIR}/WebProcess"
45     "${WEBKIT2_DIR}/WebProcess/ApplicationCache"
46     "${WEBKIT2_DIR}/WebProcess/Battery"
47     "${WEBKIT2_DIR}/WebProcess/Cookies"
48     "${WEBKIT2_DIR}/WebProcess/Databases"
49     "${WEBKIT2_DIR}/WebProcess/Databases/IndexedDB"
50     "${WEBKIT2_DIR}/WebProcess/FileAPI"
51     "${WEBKIT2_DIR}/WebProcess/FullScreen"
52     "${WEBKIT2_DIR}/WebProcess/Geolocation"
53     "${WEBKIT2_DIR}/WebProcess/IconDatabase"
54     "${WEBKIT2_DIR}/WebProcess/InjectedBundle"
55     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API"
56     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/c"
57     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/DOM"
58     "${WEBKIT2_DIR}/WebProcess/Launching"
59     "${WEBKIT2_DIR}/WebProcess/MediaCache"
60     "${WEBKIT2_DIR}/WebProcess/MediaStream"
61     "${WEBKIT2_DIR}/WebProcess/Network"
62     "${WEBKIT2_DIR}/WebProcess/Notifications"
63     "${WEBKIT2_DIR}/WebProcess/OriginData"
64     "${WEBKIT2_DIR}/WebProcess/Plugins"
65     "${WEBKIT2_DIR}/WebProcess/Plugins/Netscape"
66     "${WEBKIT2_DIR}/WebProcess/ResourceCache"
67     "${WEBKIT2_DIR}/WebProcess/Storage"
68     "${WEBKIT2_DIR}/WebProcess/UserContent"
69     "${WEBKIT2_DIR}/WebProcess/WebCoreSupport"
70     "${WEBKIT2_DIR}/WebProcess/WebPage"
71     "${WEBCORE_DIR}"
72     "${WEBCORE_DIR}/Modules/battery"
73     "${WEBCORE_DIR}/Modules/indexeddb"
74     "${WEBCORE_DIR}/Modules/indexeddb/legacy"
75     "${WEBCORE_DIR}/Modules/mediastream"
76     "${WEBCORE_DIR}/Modules/networkinfo"
77     "${WEBCORE_DIR}/Modules/notifications"
78     "${WEBCORE_DIR}/Modules/streams"
79     "${WEBCORE_DIR}/Modules/vibration"
80     "${WEBCORE_DIR}/Modules/webdatabase"
81     "${WEBCORE_DIR}/accessibility"
82     "${WEBCORE_DIR}/bindings/js"
83     "${WEBCORE_DIR}/bindings"
84     "${WEBCORE_DIR}/bridge"
85     "${WEBCORE_DIR}/bridge/jsc"
86     "${WEBCORE_DIR}/contentextensions"
87     "${WEBCORE_DIR}/css"
88     "${WEBCORE_DIR}/dom"
89     "${WEBCORE_DIR}/dom/default"
90     "${WEBCORE_DIR}/editing"
91     "${WEBCORE_DIR}/fileapi"
92     "${WEBCORE_DIR}/history"
93     "${WEBCORE_DIR}/html"
94     "${WEBCORE_DIR}/html/shadow"
95     "${WEBCORE_DIR}/html/track"
96     "${WEBCORE_DIR}/inspector"
97     "${WEBCORE_DIR}/loader"
98     "${WEBCORE_DIR}/loader/archive"
99     "${WEBCORE_DIR}/loader/icon"
100     "${WEBCORE_DIR}/loader/cache"
101     "${WEBCORE_DIR}/page"
102     "${WEBCORE_DIR}/page/animation"
103     "${WEBCORE_DIR}/page/scrolling"
104     "${WEBCORE_DIR}/platform"
105     "${WEBCORE_DIR}/platform/animation"
106     "${WEBCORE_DIR}/platform/audio"
107     "${WEBCORE_DIR}/platform/graphics"
108     "${WEBCORE_DIR}/platform/graphics/filters"
109     "${WEBCORE_DIR}/platform/graphics/harfbuzz"
110     "${WEBCORE_DIR}/platform/graphics/harfbuzz/ng"
111     "${WEBCORE_DIR}/platform/graphics/surfaces"
112     "${WEBCORE_DIR}/platform/graphics/texmap"
113     "${WEBCORE_DIR}/platform/graphics/transforms"
114     "${WEBCORE_DIR}/platform/mediastream"
115     "${WEBCORE_DIR}/platform/network"
116     "${WEBCORE_DIR}/platform/sql"
117     "${WEBCORE_DIR}/platform/text"
118     "${WEBCORE_DIR}/plugins"
119     "${WEBCORE_DIR}/rendering"
120     "${WEBCORE_DIR}/rendering/line"
121     "${WEBCORE_DIR}/rendering/shapes"
122     "${WEBCORE_DIR}/rendering/style"
123     "${WEBCORE_DIR}/storage"
124     "${WEBCORE_DIR}/style"
125     "${WEBCORE_DIR}/svg"
126     "${WEBCORE_DIR}/svg/graphics"
127     "${WEBCORE_DIR}/svg/properties"
128     "${JAVASCRIPTCORE_DIR}"
129     "${JAVASCRIPTCORE_DIR}/ForwardingHeaders"
130     "${JAVASCRIPTCORE_DIR}/API"
131     "${JAVASCRIPTCORE_DIR}/assembler"
132     "${JAVASCRIPTCORE_DIR}/bytecode"
133     "${JAVASCRIPTCORE_DIR}/bytecompiler"
134     "${JAVASCRIPTCORE_DIR}/collector/handles"
135     "${JAVASCRIPTCORE_DIR}/dfg"
136     "${JAVASCRIPTCORE_DIR}/disassembler"
137     "${JAVASCRIPTCORE_DIR}/heap"
138     "${JAVASCRIPTCORE_DIR}/interpreter"
139     "${JAVASCRIPTCORE_DIR}/jit"
140     "${JAVASCRIPTCORE_DIR}/parser"
141     "${JAVASCRIPTCORE_DIR}/profiler"
142     "${JAVASCRIPTCORE_DIR}/runtime"
143     "${WTF_DIR}"
144     "${DERIVED_SOURCES_DIR}"
145     "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}"
146     "${DERIVED_SOURCES_WEBCORE_DIR}"
147     "${DERIVED_SOURCES_WEBKIT2_DIR}"
148     "${DERIVED_SOURCES_WEBKIT2_DIR}/include"
149     "${CMAKE_BINARY_DIR}"
150     "${CMAKE_SOURCE_DIR}/Source"
151     "${CMAKE_SOURCE_DIR}/WebKitLibraries"
152 )
153
154 set(WebKit2_SYSTEM_INCLUDE_DIRECTORIES "")
155
156 if (ENABLE_GRAPHICS_CONTEXT_3D)
157     list(APPEND WebKit2_INCLUDE_DIRECTORIES
158         "${THIRDPARTY_DIR}/ANGLE"
159         "${THIRDPARTY_DIR}/ANGLE/include/KHR"
160     )
161 endif ()
162
163 set(NetworkProcess_COMMON_SOURCES
164     NetworkProcess/NetworkConnectionToWebProcess.cpp
165     NetworkProcess/NetworkProcess.cpp
166     NetworkProcess/NetworkProcessPlatformStrategies.cpp
167     NetworkProcess/NetworkResourceLoader.cpp
168
169     NetworkProcess/FileAPI/NetworkBlobRegistry.cpp
170
171     NetworkProcess/cache/NetworkCache.cpp
172     NetworkProcess/cache/NetworkCacheBlobStorage.cpp
173     NetworkProcess/cache/NetworkCacheCoders.cpp
174     NetworkProcess/cache/NetworkCacheData.cpp
175     NetworkProcess/cache/NetworkCacheDecoder.cpp
176     NetworkProcess/cache/NetworkCacheEncoder.cpp
177     NetworkProcess/cache/NetworkCacheEntry.cpp
178     NetworkProcess/cache/NetworkCacheFileSystem.cpp
179     NetworkProcess/cache/NetworkCacheKey.cpp
180     NetworkProcess/cache/NetworkCacheStatistics.cpp
181     NetworkProcess/cache/NetworkCacheStorage.cpp
182 )
183
184 set(WebKit2_SOURCES
185     DatabaseProcess/DatabaseProcess.cpp
186     DatabaseProcess/DatabaseToWebProcessConnection.cpp
187
188     DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp
189     DatabaseProcess/IndexedDB/IDBSerialization.cpp
190     DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp
191     DatabaseProcess/IndexedDB/UniqueIDBDatabaseIdentifier.cpp
192
193     DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp
194     DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp
195     DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp
196
197     Platform/Logging.cpp
198     Platform/Module.cpp
199
200     Platform/IPC/ArgumentCoders.cpp
201     Platform/IPC/ArgumentDecoder.cpp
202     Platform/IPC/ArgumentEncoder.cpp
203     Platform/IPC/Attachment.cpp
204     Platform/IPC/Connection.cpp
205     Platform/IPC/DataReference.cpp
206     Platform/IPC/MessageDecoder.cpp
207     Platform/IPC/MessageEncoder.cpp
208     Platform/IPC/MessageReceiverMap.cpp
209     Platform/IPC/MessageSender.cpp
210     Platform/IPC/StringReference.cpp
211
212     PluginProcess/PluginControllerProxy.cpp
213     PluginProcess/PluginCreationParameters.cpp
214     PluginProcess/PluginProcess.cpp
215     PluginProcess/WebProcessConnection.cpp
216
217     Shared/ActivityAssertion.cpp
218     Shared/AsyncRequest.cpp
219     Shared/BlobDataFileReferenceWithSandboxExtension.cpp
220     Shared/CacheModel.cpp
221     Shared/ChildProcess.cpp
222     Shared/ChildProcessProxy.cpp
223     Shared/ContextMenuContextData.cpp
224     Shared/EditorState.cpp
225     Shared/FontInfo.cpp
226     Shared/LayerTreeContext.cpp
227     Shared/NavigationActionData.cpp
228     Shared/OriginAndDatabases.cpp
229     Shared/PlatformPopupMenuData.cpp
230     Shared/PrintInfo.cpp
231     Shared/SessionState.cpp
232     Shared/SessionTracker.cpp
233     Shared/ShareableBitmap.cpp
234     Shared/ShareableResource.cpp
235     Shared/StatisticsData.cpp
236     Shared/UpdateInfo.cpp
237     Shared/UserData.cpp
238     Shared/VisitedLinkTable.cpp
239     Shared/WebBackForwardListItem.cpp
240     Shared/WebBatteryStatus.cpp
241     Shared/WebCompiledContentExtension.cpp
242     Shared/WebCompiledContentExtensionData.cpp
243     Shared/WebConnection.cpp
244     Shared/WebConnectionClient.cpp
245     Shared/WebContextMenuItem.cpp
246     Shared/WebContextMenuItemData.cpp
247     Shared/WebCoreArgumentCoders.cpp
248     Shared/WebCrossThreadCopier.cpp
249     Shared/WebEvent.cpp
250     Shared/WebEventConversion.cpp
251     Shared/WebGeolocationPosition.cpp
252     Shared/WebHitTestResultData.cpp
253     Shared/WebImage.cpp
254     Shared/WebKeyboardEvent.cpp
255     Shared/WebKit2Initialize.cpp
256     Shared/WebMediaSessionMetadata.cpp
257     Shared/WebMemorySampler.cpp
258     Shared/WebMouseEvent.cpp
259     Shared/WebOpenPanelParameters.cpp
260     Shared/WebPageCreationParameters.cpp
261     Shared/WebPageGroupData.cpp
262     Shared/WebPlatformTouchPoint.cpp
263     Shared/WebPopupItem.cpp
264     Shared/WebPreferencesKeys.cpp
265     Shared/WebPreferencesStore.cpp
266     Shared/WebProcessCreationParameters.cpp
267     Shared/WebRenderLayer.cpp
268     Shared/WebRenderObject.cpp
269     Shared/WebTouchEvent.cpp
270     Shared/WebWheelEvent.cpp
271
272     Shared/API/APIArray.cpp
273     Shared/API/APIData.cpp
274     Shared/API/APIDictionary.cpp
275     Shared/API/APIError.cpp
276     Shared/API/APIFrameHandle.cpp
277     Shared/API/APIGeometry.cpp
278     Shared/API/APIObject.cpp
279     Shared/API/APIPageGroupHandle.cpp
280     Shared/API/APIPageHandle.cpp
281     Shared/API/APIURLRequest.cpp
282     Shared/API/APIURLResponse.cpp
283
284     Shared/API/c/WKArray.cpp
285     Shared/API/c/WKCertificateInfo.cpp
286     Shared/API/c/WKConnectionRef.cpp
287     Shared/API/c/WKContextMenuItem.cpp
288     Shared/API/c/WKData.cpp
289     Shared/API/c/WKDeprecatedFunctions.cpp
290     Shared/API/c/WKDictionary.cpp
291     Shared/API/c/WKErrorRef.cpp
292     Shared/API/c/WKGeometry.cpp
293     Shared/API/c/WKImage.cpp
294     Shared/API/c/WKMutableArray.cpp
295     Shared/API/c/WKMutableDictionary.cpp
296     Shared/API/c/WKNumber.cpp
297     Shared/API/c/WKPluginInformation.cpp
298     Shared/API/c/WKRenderLayer.cpp
299     Shared/API/c/WKRenderObject.cpp
300     Shared/API/c/WKSecurityOriginRef.cpp
301     Shared/API/c/WKSerializedScriptValue.cpp
302     Shared/API/c/WKString.cpp
303     Shared/API/c/WKType.cpp
304     Shared/API/c/WKURL.cpp
305     Shared/API/c/WKURLRequest.cpp
306     Shared/API/c/WKURLResponse.cpp
307     Shared/API/c/WKUserContentURLPattern.cpp
308
309     Shared/Authentication/AuthenticationManager.cpp
310
311     Shared/Databases/DatabaseProcessCreationParameters.cpp
312
313     Shared/Databases/IndexedDB/IDBUtilities.cpp
314
315     Shared/Downloads/Download.cpp
316     Shared/Downloads/DownloadAuthenticationClient.cpp
317     Shared/Downloads/DownloadManager.cpp
318
319     Shared/Network/NetworkProcessCreationParameters.cpp
320     Shared/Network/NetworkResourceLoadParameters.cpp
321
322     Shared/Plugins/NPIdentifierData.cpp
323     Shared/Plugins/NPObjectMessageReceiver.cpp
324     Shared/Plugins/NPObjectProxy.cpp
325     Shared/Plugins/NPRemoteObjectMap.cpp
326     Shared/Plugins/NPVariantData.cpp
327     Shared/Plugins/PluginProcessCreationParameters.cpp
328
329     Shared/Plugins/Netscape/NetscapePluginModule.cpp
330     Shared/Plugins/Netscape/NetscapePluginModuleNone.cpp
331     Shared/Plugins/Netscape/PluginInformation.cpp
332
333     Shared/WebsiteData/WebsiteData.cpp
334
335     UIProcess/DrawingAreaProxy.cpp
336     UIProcess/FrameLoadState.cpp
337     UIProcess/GeolocationPermissionRequestManagerProxy.cpp
338     UIProcess/GeolocationPermissionRequestProxy.cpp
339     UIProcess/PageLoadState.cpp
340     UIProcess/ProcessAssertion.cpp
341     UIProcess/ProcessThrottler.cpp
342     UIProcess/ResponsivenessTimer.cpp
343     UIProcess/StatisticsRequest.cpp
344     UIProcess/TextCheckerCompletion.cpp
345     UIProcess/UserMediaPermissionRequestManagerProxy.cpp
346     UIProcess/UserMediaPermissionRequestProxy.cpp
347     UIProcess/VisitedLinkStore.cpp
348     UIProcess/WebBackForwardList.cpp
349     UIProcess/WebBatteryManagerProxy.cpp
350     UIProcess/WebBatteryProvider.cpp
351     UIProcess/WebColorPicker.cpp
352     UIProcess/WebConnectionToWebProcess.cpp
353     UIProcess/WebContextClient.cpp
354     UIProcess/WebContextConnectionClient.cpp
355     UIProcess/WebContextInjectedBundleClient.cpp
356     UIProcess/WebContextMenuProxy.cpp
357     UIProcess/WebCookieManagerProxy.cpp
358     UIProcess/WebCookieManagerProxyClient.cpp
359     UIProcess/WebDatabaseManagerProxy.cpp
360     UIProcess/WebDatabaseManagerProxyClient.cpp
361     UIProcess/WebEditCommandProxy.cpp
362     UIProcess/WebFormClient.cpp
363     UIProcess/WebFormSubmissionListenerProxy.cpp
364     UIProcess/WebFrameListenerProxy.cpp
365     UIProcess/WebFramePolicyListenerProxy.cpp
366     UIProcess/WebFrameProxy.cpp
367     UIProcess/WebFullScreenManagerProxy.cpp
368     UIProcess/WebGeolocationManagerProxy.cpp
369     UIProcess/WebGeolocationProvider.cpp
370     UIProcess/WebGrammarDetail.cpp
371     UIProcess/WebIconDatabase.cpp
372     UIProcess/WebIconDatabaseClient.cpp
373     UIProcess/WebInspectorProxy.cpp
374     UIProcess/WebMediaCacheManagerProxy.cpp
375     UIProcess/WebNavigationState.cpp
376     UIProcess/WebOpenPanelResultListenerProxy.cpp
377     UIProcess/WebPageDiagnosticLoggingClient.cpp
378     UIProcess/WebPageGroup.cpp
379     UIProcess/WebPageInjectedBundleClient.cpp
380     UIProcess/WebPageProxy.cpp
381     UIProcess/WebPasteboardProxy.cpp
382     UIProcess/WebPreferences.cpp
383     UIProcess/WebProcessLifetimeObserver.cpp
384     UIProcess/WebProcessLifetimeTracker.cpp
385     UIProcess/WebProcessPool.cpp
386     UIProcess/WebProcessProxy.cpp
387     UIProcess/WebTextChecker.cpp
388     UIProcess/WebTextCheckerClient.cpp
389     UIProcess/WebVibrationProvider.cpp
390     UIProcess/WebVibrationProxy.cpp
391     UIProcess/WebViewportAttributes.cpp
392
393     UIProcess/API/APIFrameInfo.cpp
394     UIProcess/API/APIHitTestResult.cpp
395     UIProcess/API/APINavigation.cpp
396     UIProcess/API/APINavigationData.cpp
397     UIProcess/API/APIPageConfiguration.cpp
398     UIProcess/API/APIProcessPoolConfiguration.cpp
399     UIProcess/API/APISession.cpp
400     UIProcess/API/APISessionState.cpp
401     UIProcess/API/APIUserContentExtension.cpp
402     UIProcess/API/APIUserContentExtensionStore.cpp
403     UIProcess/API/APIWebsiteDataStore.cpp
404     UIProcess/API/APIWindowFeatures.cpp
405
406     UIProcess/API/C/WKApplicationCacheManager.cpp
407     UIProcess/API/C/WKAuthenticationChallenge.cpp
408     UIProcess/API/C/WKAuthenticationDecisionListener.cpp
409     UIProcess/API/C/WKBackForwardListItemRef.cpp
410     UIProcess/API/C/WKBackForwardListRef.cpp
411     UIProcess/API/C/WKBatteryManager.cpp
412     UIProcess/API/C/WKBatteryStatus.cpp
413     UIProcess/API/C/WKContext.cpp
414     UIProcess/API/C/WKContextConfigurationRef.cpp
415     UIProcess/API/C/WKCookieManager.cpp
416     UIProcess/API/C/WKCredential.cpp
417     UIProcess/API/C/WKDatabaseManager.cpp
418     UIProcess/API/C/WKDownload.cpp
419     UIProcess/API/C/WKFormSubmissionListener.cpp
420     UIProcess/API/C/WKFrame.cpp
421     UIProcess/API/C/WKFrameInfoRef.cpp
422     UIProcess/API/C/WKFramePolicyListener.cpp
423     UIProcess/API/C/WKGeolocationManager.cpp
424     UIProcess/API/C/WKGeolocationPermissionRequest.cpp
425     UIProcess/API/C/WKGeolocationPosition.cpp
426     UIProcess/API/C/WKGrammarDetail.cpp
427     UIProcess/API/C/WKHitTestResult.cpp
428     UIProcess/API/C/WKIconDatabase.cpp
429     UIProcess/API/C/WKInspector.cpp
430     UIProcess/API/C/WKKeyValueStorageManager.cpp
431     UIProcess/API/C/WKMediaCacheManager.cpp
432     UIProcess/API/C/WKMediaSessionMetadata.cpp
433     UIProcess/API/C/WKNavigationActionRef.cpp
434     UIProcess/API/C/WKNavigationDataRef.cpp
435     UIProcess/API/C/WKNavigationRef.cpp
436     UIProcess/API/C/WKNavigationResponseRef.cpp
437     UIProcess/API/C/WKNotification.cpp
438     UIProcess/API/C/WKNotificationManager.cpp
439     UIProcess/API/C/WKNotificationPermissionRequest.cpp
440     UIProcess/API/C/WKOpenPanelParameters.cpp
441     UIProcess/API/C/WKOpenPanelResultListener.cpp
442     UIProcess/API/C/WKOriginDataManager.cpp
443     UIProcess/API/C/WKPage.cpp
444     UIProcess/API/C/WKPageConfigurationRef.cpp
445     UIProcess/API/C/WKPageGroup.cpp
446     UIProcess/API/C/WKPluginSiteDataManager.cpp
447     UIProcess/API/C/WKPreferences.cpp
448     UIProcess/API/C/WKProtectionSpace.cpp
449     UIProcess/API/C/WKResourceCacheManager.cpp
450     UIProcess/API/C/WKSessionStateRef.cpp
451     UIProcess/API/C/WKTextChecker.cpp
452     UIProcess/API/C/WKUserContentControllerRef.cpp
453     UIProcess/API/C/WKUserMediaPermissionRequest.cpp
454     UIProcess/API/C/WKVibration.cpp
455     UIProcess/API/C/WKViewportAttributes.cpp
456     UIProcess/API/C/WKWindowFeaturesRef.cpp
457
458     UIProcess/Authentication/AuthenticationChallengeProxy.cpp
459     UIProcess/Authentication/AuthenticationDecisionListener.cpp
460     UIProcess/Authentication/WebCredential.cpp
461     UIProcess/Authentication/WebProtectionSpace.cpp
462
463     UIProcess/Databases/DatabaseProcessProxy.cpp
464
465     UIProcess/Downloads/DownloadProxy.cpp
466     UIProcess/Downloads/DownloadProxyMap.cpp
467
468     UIProcess/InspectorServer/HTTPRequest.cpp
469     UIProcess/InspectorServer/WebInspectorServer.cpp
470     UIProcess/InspectorServer/WebSocketServer.cpp
471     UIProcess/InspectorServer/WebSocketServerConnection.cpp
472
473     UIProcess/Launcher/ProcessLauncher.cpp
474
475     UIProcess/Network/NetworkProcessProxy.cpp
476
477     UIProcess/Notifications/NotificationPermissionRequest.cpp
478     UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp
479     UIProcess/Notifications/WebNotification.cpp
480     UIProcess/Notifications/WebNotificationManagerProxy.cpp
481     UIProcess/Notifications/WebNotificationProvider.cpp
482
483     UIProcess/Plugins/PlugInAutoStartProvider.cpp
484     UIProcess/Plugins/PluginInfoStore.cpp
485     UIProcess/Plugins/PluginProcessManager.cpp
486     UIProcess/Plugins/PluginProcessProxy.cpp
487
488     UIProcess/Storage/LocalStorageDatabase.cpp
489     UIProcess/Storage/LocalStorageDatabaseTracker.cpp
490
491     UIProcess/UserContent/WebScriptMessageHandler.cpp
492     UIProcess/UserContent/WebUserContentControllerProxy.cpp
493
494     UIProcess/WebsiteData/WebsiteDataRecord.cpp
495     UIProcess/WebsiteData/WebsiteDataStore.cpp
496
497     WebProcess/WebConnectionToUIProcess.cpp
498     WebProcess/WebProcess.cpp
499
500     WebProcess/Battery/WebBatteryManager.cpp
501
502     WebProcess/Cookies/WebCookieManager.cpp
503
504     WebProcess/Databases/WebDatabaseProvider.cpp
505     WebProcess/Databases/WebToDatabaseProcessConnection.cpp
506
507     WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp
508     WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp
509
510     WebProcess/FileAPI/BlobRegistryProxy.cpp
511
512     WebProcess/FullScreen/WebFullScreenManager.cpp
513
514     WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp
515     WebProcess/Geolocation/WebGeolocationManager.cpp
516
517     WebProcess/IconDatabase/WebIconDatabaseProxy.cpp
518
519     WebProcess/InjectedBundle/InjectedBundle.cpp
520     WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp
521     WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp
522     WebProcess/InjectedBundle/InjectedBundleClient.cpp
523     WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp
524     WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
525     WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp
526     WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp
527     WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp
528     WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp
529     WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp
530     WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp
531     WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp
532     WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp
533     WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp
534     WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp
535     WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp
536
537     WebProcess/InjectedBundle/API/c/WKBundle.cpp
538     WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.cpp
539     WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp
540     WebProcess/InjectedBundle/API/c/WKBundleDOMWindowExtension.cpp
541     WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
542     WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp
543     WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp
544     WebProcess/InjectedBundle/API/c/WKBundleNavigationAction.cpp
545     WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp
546     WebProcess/InjectedBundle/API/c/WKBundlePage.cpp
547     WebProcess/InjectedBundle/API/c/WKBundlePageGroup.cpp
548     WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp
549     WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.cpp
550     WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp
551
552     WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp
553     WebProcess/InjectedBundle/DOM/InjectedBundleFileHandle.cpp
554     WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp
555     WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp
556
557     WebProcess/MediaCache/WebMediaCacheManager.cpp
558
559     WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp
560
561     WebProcess/Network/NetworkProcessConnection.cpp
562     WebProcess/Network/WebResourceLoadScheduler.cpp
563     WebProcess/Network/WebResourceLoader.cpp
564
565     WebProcess/Notifications/NotificationPermissionRequestManager.cpp
566     WebProcess/Notifications/WebNotificationManager.cpp
567
568     WebProcess/Plugins/Plugin.cpp
569     WebProcess/Plugins/PluginProcessConnection.cpp
570     WebProcess/Plugins/PluginProcessConnectionManager.cpp
571     WebProcess/Plugins/PluginProxy.cpp
572     WebProcess/Plugins/PluginView.cpp
573
574     WebProcess/Plugins/Netscape/JSNPMethod.cpp
575     WebProcess/Plugins/Netscape/JSNPObject.cpp
576     WebProcess/Plugins/Netscape/NPJSObject.cpp
577     WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp
578     WebProcess/Plugins/Netscape/NPRuntimeUtilities.cpp
579     WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp
580     WebProcess/Plugins/Netscape/NetscapePlugin.cpp
581     WebProcess/Plugins/Netscape/NetscapePluginNone.cpp
582     WebProcess/Plugins/Netscape/NetscapePluginStream.cpp
583
584     WebProcess/Storage/StorageAreaImpl.cpp
585     WebProcess/Storage/StorageAreaMap.cpp
586     WebProcess/Storage/StorageNamespaceImpl.cpp
587     WebProcess/Storage/WebStorageNamespaceProvider.cpp
588
589     WebProcess/UserContent/WebUserContentController.cpp
590
591     WebProcess/WebCoreSupport/SessionStateConversion.cpp
592     WebProcess/WebCoreSupport/WebBatteryClient.cpp
593     WebProcess/WebCoreSupport/WebChromeClient.cpp
594     WebProcess/WebCoreSupport/WebColorChooser.cpp
595     WebProcess/WebCoreSupport/WebContextMenuClient.cpp
596     WebProcess/WebCoreSupport/WebDatabaseManager.cpp
597     WebProcess/WebCoreSupport/WebDeviceProximityClient.cpp
598     WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp
599     WebProcess/WebCoreSupport/WebDragClient.cpp
600     WebProcess/WebCoreSupport/WebEditorClient.cpp
601     WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
602     WebProcess/WebCoreSupport/WebGeolocationClient.cpp
603     WebProcess/WebCoreSupport/WebInspectorClient.cpp
604     WebProcess/WebCoreSupport/WebNotificationClient.cpp
605     WebProcess/WebCoreSupport/WebPlatformStrategies.cpp
606     WebProcess/WebCoreSupport/WebPlugInClient.cpp
607     WebProcess/WebCoreSupport/WebPopupMenu.cpp
608     WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp
609     WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp
610     WebProcess/WebCoreSupport/WebUserMediaClient.cpp
611     WebProcess/WebCoreSupport/WebVibrationClient.cpp
612
613     WebProcess/WebPage/DrawingArea.cpp
614     WebProcess/WebPage/EventDispatcher.cpp
615     WebProcess/WebPage/FindController.cpp
616     WebProcess/WebPage/LayerTreeHost.cpp
617     WebProcess/WebPage/PageBanner.cpp
618     WebProcess/WebPage/VisitedLinkTableController.cpp
619     WebProcess/WebPage/WebBackForwardListProxy.cpp
620     WebProcess/WebPage/WebContextMenu.cpp
621     WebProcess/WebPage/WebDocumentLoader.cpp
622     WebProcess/WebPage/WebFrame.cpp
623     WebProcess/WebPage/WebInspector.cpp
624     WebProcess/WebPage/WebInspectorFrontendAPIDispatcher.cpp
625     WebProcess/WebPage/WebInspectorUI.cpp
626     WebProcess/WebPage/WebOpenPanelResultListener.cpp
627     WebProcess/WebPage/WebPage.cpp
628     WebProcess/WebPage/WebPageGroupProxy.cpp
629     WebProcess/WebPage/WebPageOverlay.cpp
630     WebProcess/WebPage/WebUndoStep.cpp
631
632
633
634     ${NetworkProcess_COMMON_SOURCES}
635 )
636
637 set(WebKit2_MESSAGES_IN_FILES
638     DatabaseProcess/DatabaseProcess.messages.in
639     DatabaseProcess/DatabaseToWebProcessConnection.messages.in
640
641     DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in
642
643     NetworkProcess/NetworkConnectionToWebProcess.messages.in
644     NetworkProcess/NetworkProcess.messages.in
645     NetworkProcess/NetworkResourceLoader.messages.in
646
647     PluginProcess/PluginControllerProxy.messages.in
648     PluginProcess/PluginProcess.messages.in
649     PluginProcess/WebProcessConnection.messages.in
650
651     Shared/ChildProcess.messages.in
652     Shared/WebConnection.messages.in
653
654     Shared/Authentication/AuthenticationManager.messages.in
655
656     Shared/Network/CustomProtocols/CustomProtocolManager.messages.in
657
658     Shared/Plugins/NPObjectMessageReceiver.messages.in
659
660     UIProcess/DrawingAreaProxy.messages.in
661     UIProcess/VisitedLinkStore.messages.in
662     UIProcess/WebBatteryManagerProxy.messages.in
663     UIProcess/WebCookieManagerProxy.messages.in
664     UIProcess/WebDatabaseManagerProxy.messages.in
665     UIProcess/WebFullScreenManagerProxy.messages.in
666     UIProcess/WebGeolocationManagerProxy.messages.in
667     UIProcess/WebIconDatabase.messages.in
668     UIProcess/WebInspectorProxy.messages.in
669     UIProcess/WebMediaCacheManagerProxy.messages.in
670     UIProcess/WebPageProxy.messages.in
671     UIProcess/WebPasteboardProxy.messages.in
672     UIProcess/WebProcessPool.messages.in
673     UIProcess/WebProcessProxy.messages.in
674     UIProcess/WebVibrationProxy.messages.in
675
676     UIProcess/Databases/DatabaseProcessProxy.messages.in
677
678     UIProcess/Downloads/DownloadProxy.messages.in
679
680     UIProcess/Network/NetworkProcessProxy.messages.in
681
682     UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in
683
684     UIProcess/Plugins/PluginProcessProxy.messages.in
685
686     UIProcess/Storage/StorageManager.messages.in
687
688     UIProcess/UserContent/WebUserContentControllerProxy.messages.in
689
690     WebProcess/WebProcess.messages.in
691
692     WebProcess/Battery/WebBatteryManager.messages.in
693
694     WebProcess/Cookies/WebCookieManager.messages.in
695
696     WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in
697
698     WebProcess/FullScreen/WebFullScreenManager.messages.in
699
700     WebProcess/Geolocation/WebGeolocationManager.messages.in
701
702     WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in
703
704     WebProcess/MediaCache/WebMediaCacheManager.messages.in
705
706     WebProcess/Network/NetworkProcessConnection.messages.in
707     WebProcess/Network/WebResourceLoader.messages.in
708
709     WebProcess/Notifications/WebNotificationManager.messages.in
710
711     WebProcess/Plugins/PluginProcessConnection.messages.in
712     WebProcess/Plugins/PluginProcessConnectionManager.messages.in
713     WebProcess/Plugins/PluginProxy.messages.in
714
715     WebProcess/Storage/StorageAreaMap.messages.in
716
717     WebProcess/UserContent/WebUserContentController.messages.in
718
719     WebProcess/WebCoreSupport/WebDatabaseManager.messages.in
720
721     WebProcess/WebPage/DrawingArea.messages.in
722     WebProcess/WebPage/EventDispatcher.messages.in
723     WebProcess/WebPage/VisitedLinkTableController.messages.in
724     WebProcess/WebPage/WebInspector.messages.in
725     WebProcess/WebPage/WebInspectorUI.messages.in
726     WebProcess/WebPage/WebPage.messages.in
727     WebProcess/WebPage/WebPageGroupProxy.messages.in
728 )
729
730 set(WebProcess_LIBRARIES
731     WebKit2
732 )
733
734 set(NetworkProcess_LIBRARIES
735     WebKit2
736 )
737
738 set(DatabaseProcess_LIBRARIES
739   WebKit2
740 )
741
742 set(WebKit2_LIBRARIES
743     JavaScriptCore
744     WebCore
745 )
746
747 set(PluginProcess_LIBRARIES
748     WebKit2
749 )
750
751 # librt is needed for shm_open on Linux.
752 find_library(LIBRT_LIBRARIES NAMES rt)
753 mark_as_advanced(LIBRT_LIBRARIES)
754 if (LIBRT_LIBRARIES)
755     list(APPEND WebKit2_LIBRARIES ${LIBRT_LIBRARIES})
756 endif ()
757
758 macro(ADD_WEBKIT2_PREFIX_HEADER _target)
759     if (WebKit2_USE_PREFIX_HEADER)
760         get_target_property(OLD_COMPILE_FLAGS ${_target} COMPILE_FLAGS)
761         if (${OLD_COMPILE_FLAGS} STREQUAL "OLD_COMPILE_FLAGS-NOTFOUND")
762             set(OLD_COMPILE_FLAGS "")
763         endif ()
764         set_target_properties(${_target} PROPERTIES COMPILE_FLAGS "${OLD_COMPILE_FLAGS} -include ${WEBKIT2_DIR}/WebKit2Prefix.h")
765     endif ()
766 endmacro()
767
768 WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
769
770 GENERATE_WEBKIT2_MESSAGE_SOURCES(WebKit2_DERIVED_SOURCES "${WebKit2_MESSAGES_IN_FILES}")
771
772 include_directories(${WebKit2_INCLUDE_DIRECTORIES})
773 include_directories(SYSTEM ${WebKit2_SYSTEM_INCLUDE_DIRECTORIES})
774 add_library(WebKit2 ${WebKit2_LIBRARY_TYPE} ${WebKit2_SOURCES} ${WebKit2_DERIVED_SOURCES})
775
776 add_dependencies(WebKit2 WebCore ${WEBKIT2_EXTRA_DEPENDENCIES})
777 add_webkit2_prefix_header(WebKit2)
778 target_link_libraries(WebKit2 ${WebKit2_LIBRARIES})
779 set_target_properties(WebKit2 PROPERTIES FOLDER "WebKit")
780
781 # Suppress unused parameter warnings for sources in WebKit2.
782 ADD_TARGET_PROPERTIES(WebKit2 COMPILE_FLAGS "-Wno-unused-parameter")
783
784 if (WebKit2_VERSION_SCRIPT)
785     ADD_TARGET_PROPERTIES(WebKit2 LINK_FLAGS "${WebKit2_VERSION_SCRIPT}")
786 endif ()
787
788 if (WebKit2_OUTPUT_NAME)
789     set_target_properties(WebKit2 PROPERTIES OUTPUT_NAME ${WebKit2_OUTPUT_NAME})
790 endif ()
791
792 add_executable(WebProcess ${WebProcess_SOURCES})
793 add_webkit2_prefix_header(WebProcess)
794 target_link_libraries(WebProcess ${WebProcess_LIBRARIES})
795 set_target_properties(WebProcess PROPERTIES FOLDER "WebKit")
796
797 if (WebKit2_WebProcess_OUTPUT_NAME)
798     set_target_properties(WebProcess PROPERTIES OUTPUT_NAME ${WebKit2_WebProcess_OUTPUT_NAME})
799 endif ()
800
801 if (ENABLE_NETWORK_PROCESS)
802     add_executable(NetworkProcess ${NetworkProcess_SOURCES})
803     add_webkit2_prefix_header(NetworkProcess)
804     target_link_libraries(NetworkProcess ${NetworkProcess_LIBRARIES})
805     set_target_properties(NetworkProcess PROPERTIES FOLDER "WebKit")
806     install(TARGETS NetworkProcess DESTINATION "${LIBEXEC_INSTALL_DIR}")
807
808     if (WebKit2_NetworkProcess_OUTPUT_NAME)
809         set_target_properties(NetworkProcess PROPERTIES OUTPUT_NAME ${WebKit2_NetworkProcess_OUTPUT_NAME})
810     endif ()
811 endif ()
812
813 if (ENABLE_PLUGIN_PROCESS)
814     add_definitions(-DENABLE_PLUGIN_PROCESS=1)
815     add_executable(PluginProcess ${PluginProcess_SOURCES})
816     add_webkit2_prefix_header(PluginProcess)
817     target_link_libraries(PluginProcess ${PluginProcess_LIBRARIES})
818     set_target_properties(PluginProcess PROPERTIES FOLDER "WebKit")
819     install(TARGETS PluginProcess DESTINATION "${LIBEXEC_INSTALL_DIR}")
820
821     if (WebKit2_PluginProcess_OUTPUT_NAME)
822       set_target_properties(PluginProcess PROPERTIES OUTPUT_NAME ${WebKit2_PluginProcess_OUTPUT_NAME})
823     endif ()
824 endif ()
825
826 if (ENABLE_DATABASE_PROCESS)
827     add_definitions(-DENABLE_DATABASE_PROCESS=1)
828     add_executable(DatabaseProcess ${DatabaseProcess_SOURCES})
829     add_webkit2_prefix_header(DatabaseProcess)
830     target_link_libraries(DatabaseProcess ${DatabaseProcess_LIBRARIES})
831     set_target_properties(DatabaseProcess PROPERTIES FOLDER "WebKit")
832     install(TARGETS DatabaseProcess DESTINATION "${LIBEXEC_INSTALL_DIR}")
833
834     if (WebKit2_DatabaseProcess_OUTPUT_NAME)
835         set_target_properties(DatabaseProcess PROPERTIES OUTPUT_NAME ${WebKit2_DatabaseProcess_OUTPUT_NAME})
836     endif ()
837 endif ()
838
839 POPULATE_LIBRARY_VERSION(WEBKIT2)
840 set_target_properties(WebKit2 PROPERTIES VERSION ${WEBKIT2_VERSION} SOVERSION ${WEBKIT2_VERSION_MAJOR})
841
842 install(TARGETS WebKit2 WebProcess
843         LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
844         RUNTIME DESTINATION "${LIBEXEC_INSTALL_DIR}"
845 )