Part 1 of: Rename DatabaseProcess to StorageProcess.
[WebKit-https.git] / Source / WebKit / PlatformMac.cmake
1 add_definitions("-ObjC++ -std=c++14")
2 find_library(APPLICATIONSERVICES_LIBRARY ApplicationServices)
3 find_library(CARBON_LIBRARY Carbon)
4 find_library(QUARTZ_LIBRARY Quartz)
5 find_library(AVFOUNDATION_LIBRARY AVFoundation)
6 find_library(AVFAUDIO_LIBRARY AVFAudio HINTS ${AVFOUNDATION_LIBRARY}/Versions/*/Frameworks)
7 add_definitions(-iframework ${QUARTZ_LIBRARY}/Frameworks)
8 add_definitions(-iframework ${CARBON_LIBRARY}/Frameworks)
9 add_definitions(-iframework ${APPLICATIONSERVICES_LIBRARY}/Versions/Current/Frameworks)
10 add_definitions(-DWK_XPC_SERVICE_SUFFIX=".Development")
11
12 list(APPEND WebKit2_LIBRARIES
13     PRIVATE WebKit
14     ${APPLICATIONSERVICES_LIBRARY}
15 )
16
17 if (NOT AVFAUDIO_LIBRARY-NOTFOUND)
18     list(APPEND WebKit2_LIBRARIES ${AVFAUDIO_LIBRARY})
19 endif ()
20
21 list(APPEND WebKit2_SOURCES
22     NetworkProcess/CustomProtocols/Cocoa/LegacyCustomProtocolManagerCocoa.mm
23
24     NetworkProcess/Downloads/PendingDownload.cpp
25
26     NetworkProcess/Downloads/cocoa/DownloadCocoa.mm
27
28     NetworkProcess/Downloads/mac/DownloadMac.mm
29
30     NetworkProcess/cache/NetworkCacheCodersCocoa.cpp
31     NetworkProcess/cache/NetworkCacheDataCocoa.mm
32     NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm
33
34     NetworkProcess/cocoa/NetworkDataTaskCocoa.mm
35     NetworkProcess/cocoa/NetworkProcessCocoa.mm
36     NetworkProcess/cocoa/NetworkSessionCocoa.mm
37
38     NetworkProcess/mac/NetworkLoadMac.mm
39     NetworkProcess/mac/NetworkProcessMac.mm
40     NetworkProcess/mac/RemoteNetworkingContext.mm
41
42     Platform/IPC/mac/ConnectionMac.mm
43     Platform/IPC/mac/MachMessage.cpp
44
45     Platform/cf/ModuleCF.cpp
46
47     Platform/cg/CGUtilities.cpp
48
49     Platform/classifier/ResourceLoadStatisticsClassifier.cpp
50
51     Platform/classifier/cocoa/ResourceLoadStatisticsClassifierCocoa.cpp
52
53     Platform/foundation/LoggingFoundation.mm
54
55     Platform/cocoa/SharedMemoryCocoa.cpp
56
57     Platform/mac/LayerHostingContext.mm
58     Platform/mac/MachUtilities.cpp
59     Platform/mac/MenuUtilities.mm
60     Platform/mac/StringUtilities.mm
61
62     Platform/unix/EnvironmentUtilities.cpp
63
64     PluginProcess/mac/PluginControllerProxyMac.mm
65     PluginProcess/mac/PluginProcessMac.mm
66     PluginProcess/mac/PluginProcessShim.mm
67
68     Shared/APIWebArchive.mm
69     Shared/APIWebArchiveResource.mm
70
71     Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm
72
73     Shared/API/Cocoa/RemoteObjectInvocation.mm
74     Shared/API/Cocoa/RemoteObjectRegistry.mm
75     Shared/API/Cocoa/WKBrowsingContextHandle.mm
76     Shared/API/Cocoa/WKRemoteObject.mm
77     Shared/API/Cocoa/WKRemoteObjectCoder.mm
78     Shared/API/Cocoa/WebKit.m
79     Shared/API/Cocoa/_WKFrameHandle.mm
80     Shared/API/Cocoa/_WKHitTestResult.mm
81     Shared/API/Cocoa/_WKNSFileManagerExtras.mm
82     Shared/API/Cocoa/_WKRemoteObjectInterface.mm
83     Shared/API/Cocoa/_WKRemoteObjectRegistry.mm
84
85     Shared/API/c/cf/WKErrorCF.cpp
86     Shared/API/c/cf/WKStringCF.mm
87     Shared/API/c/cf/WKURLCF.mm
88
89     Shared/API/c/cg/WKImageCG.cpp
90
91     Shared/API/c/mac/WKCertificateInfoMac.mm
92     Shared/API/c/mac/WKObjCTypeWrapperRef.mm
93     Shared/API/c/mac/WKURLRequestNS.mm
94     Shared/API/c/mac/WKURLResponseNS.mm
95     Shared/API/c/mac/WKWebArchive.cpp
96     Shared/API/c/mac/WKWebArchiveResource.cpp
97
98     Shared/Authentication/mac/AuthenticationManager.mac.mm
99
100     Shared/Cocoa/APIDataCocoa.mm
101     Shared/Cocoa/APIObject.mm
102     Shared/Cocoa/ChildProcessCocoa.mm
103     Shared/Cocoa/CompletionHandlerCallChecker.mm
104     Shared/Cocoa/DataDetectionResult.mm
105     Shared/Cocoa/LoadParametersCocoa.mm
106     Shared/Cocoa/WKNSArray.mm
107     Shared/Cocoa/WKNSData.mm
108     Shared/Cocoa/WKNSDictionary.mm
109     Shared/Cocoa/WKNSError.mm
110     Shared/Cocoa/WKNSNumber.mm
111     Shared/Cocoa/WKNSString.mm
112     Shared/Cocoa/WKNSURL.mm
113     Shared/Cocoa/WKNSURLExtras.mm
114     Shared/Cocoa/WKNSURLRequest.mm
115     Shared/Cocoa/WKObject.mm
116     Shared/Cocoa/WebErrorsCocoa.mm
117     Shared/Cocoa/WebKit2InitializeCocoa.mm
118
119     Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm
120     Shared/Plugins/Netscape/mac/PluginInformationMac.mm
121
122     Shared/Plugins/mac/PluginSandboxProfile.mm
123
124     Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp
125
126     Shared/cf/ArgumentCodersCF.cpp
127
128     Shared/cg/ShareableBitmapCG.cpp
129
130     Shared/mac/ArgumentCodersMac.mm
131     Shared/mac/AttributedString.mm
132     Shared/mac/ChildProcessMac.mm
133     Shared/mac/CodeSigning.mm
134     Shared/mac/ColorSpaceData.mm
135     Shared/mac/CookieStorageShim.mm
136     Shared/mac/CookieStorageShimLibrary.cpp
137     Shared/mac/HangDetectionDisablerMac.mm
138     Shared/mac/NativeWebGestureEventMac.mm
139     Shared/mac/NativeWebKeyboardEventMac.mm
140     Shared/mac/NativeWebMouseEventMac.mm
141     Shared/mac/NativeWebWheelEventMac.mm
142     Shared/mac/ObjCObjectGraph.mm
143     Shared/mac/PDFKitImports.mm
144     Shared/mac/PasteboardTypes.mm
145     Shared/mac/PrintInfoMac.mm
146     Shared/mac/RemoteLayerBackingStore.mm
147     Shared/mac/RemoteLayerBackingStoreCollection.mm
148     Shared/mac/RemoteLayerTreePropertyApplier.mm
149     Shared/mac/RemoteLayerTreeTransaction.mm
150     Shared/mac/SandboxExtensionMac.mm
151     Shared/mac/SandboxInitialiationParametersMac.mm
152     Shared/mac/SandboxUtilities.mm
153     Shared/mac/SecItemRequestData.cpp
154     Shared/mac/SecItemResponseData.cpp
155     Shared/mac/SecItemShim.cpp
156     Shared/mac/WebCoreArgumentCodersMac.mm
157     Shared/mac/WebEventFactory.mm
158     Shared/mac/WebGestureEvent.cpp
159     Shared/mac/WebHitTestResultData.mm
160     Shared/mac/WebMemorySampler.mac.mm
161
162     StorageProcess/mac/StorageProcessMac.mm
163
164     UIProcess/HighPerformanceGraphicsUsageSampler.cpp
165     UIProcess/PerActivityStateCPUUsageSampler.cpp
166     UIProcess/WebContextMenuListenerProxy.cpp
167     UIProcess/WebResourceLoadStatisticsStore.cpp
168     UIProcess/WebResourceLoadStatisticsTelemetry.cpp
169
170     UIProcess/Automation/WebAutomationSession.cpp
171
172     UIProcess/Automation/cocoa/WebAutomationSessionCocoa.mm
173
174     UIProcess/Automation/mac/WebAutomationSessionMac.mm
175
176     UIProcess/API/APIUserScript.cpp
177     UIProcess/API/APIUserStyleSheet.cpp
178     UIProcess/API/APIWebsiteDataRecord.cpp
179
180     UIProcess/API/C/mac/WKContextPrivateMac.mm
181     UIProcess/API/C/mac/WKPagePrivateMac.mm
182
183     UIProcess/API/Cocoa/APIContentRuleListStoreCocoa.mm
184     UIProcess/API/Cocoa/APISerializedScriptValueCocoa.mm
185     UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm
186     UIProcess/API/Cocoa/LegacyBundleForClass.mm
187     UIProcess/API/Cocoa/WKBackForwardList.mm
188     UIProcess/API/Cocoa/WKBackForwardListItem.mm
189     UIProcess/API/Cocoa/WKBrowsingContextController.mm
190     UIProcess/API/Cocoa/WKBrowsingContextGroup.mm
191     UIProcess/API/Cocoa/WKConnection.mm
192     UIProcess/API/Cocoa/WKContentRuleList.mm
193     UIProcess/API/Cocoa/WKContentRuleListStore.mm
194     UIProcess/API/Cocoa/WKError.mm
195     UIProcess/API/Cocoa/WKFrameInfo.mm
196     UIProcess/API/Cocoa/WKHTTPCookieStore.mm
197     UIProcess/API/Cocoa/WKMenuItemIdentifiers.mm
198     UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm
199     UIProcess/API/Cocoa/WKNavigation.mm
200     UIProcess/API/Cocoa/WKNavigationAction.mm
201     UIProcess/API/Cocoa/WKNavigationData.mm
202     UIProcess/API/Cocoa/WKNavigationResponse.mm
203     UIProcess/API/Cocoa/WKOpenPanelParameters.mm
204     UIProcess/API/Cocoa/WKPreferences.mm
205     UIProcess/API/Cocoa/WKPreviewActionItem.mm
206     UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.mm
207     UIProcess/API/Cocoa/WKPreviewElementInfo.mm
208     UIProcess/API/Cocoa/WKProcessGroup.mm
209     UIProcess/API/Cocoa/WKProcessPool.mm
210     UIProcess/API/Cocoa/WKScriptMessage.mm
211     UIProcess/API/Cocoa/WKSecurityOrigin.mm
212     UIProcess/API/Cocoa/WKTypeRefWrapper.mm
213     UIProcess/API/Cocoa/WKURLSchemeTask.mm
214     UIProcess/API/Cocoa/WKUserContentController.mm
215     UIProcess/API/Cocoa/WKUserScript.mm
216     UIProcess/API/Cocoa/WKWebView.mm
217     UIProcess/API/Cocoa/WKWebViewConfiguration.mm
218     UIProcess/API/Cocoa/WKWebsiteDataRecord.mm
219     UIProcess/API/Cocoa/WKWebsiteDataStore.mm
220     UIProcess/API/Cocoa/WKWindowFeatures.mm
221     UIProcess/API/Cocoa/_WKActivatedElementInfo.mm
222     UIProcess/API/Cocoa/_WKAutomationSession.mm
223     UIProcess/API/Cocoa/_WKContextMenuElementInfo.mm
224     UIProcess/API/Cocoa/_WKDownload.mm
225     UIProcess/API/Cocoa/_WKElementAction.mm
226     UIProcess/API/Cocoa/_WKErrorRecoveryAttempting.mm
227     UIProcess/API/Cocoa/_WKExperimentalFeature.mm
228     UIProcess/API/Cocoa/_WKLinkIconParameters.mm
229     UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm
230     UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm
231     UIProcess/API/Cocoa/_WKSessionState.mm
232     UIProcess/API/Cocoa/_WKThumbnailView.mm
233     UIProcess/API/Cocoa/_WKUserContentExtensionStore.mm
234     UIProcess/API/Cocoa/_WKUserContentFilter.mm
235     UIProcess/API/Cocoa/_WKUserContentWorld.mm
236     UIProcess/API/Cocoa/_WKUserInitiatedAction.mm
237     UIProcess/API/Cocoa/_WKUserStyleSheet.mm
238     UIProcess/API/Cocoa/_WKVisitedLinkProvider.mm
239     UIProcess/API/Cocoa/_WKVisitedLinkStore.mm
240     UIProcess/API/Cocoa/_WKWebsiteDataSize.mm
241     UIProcess/API/Cocoa/_WKWebsiteDataStore.mm
242     UIProcess/API/Cocoa/_WKWebsitePolicies.mm
243
244     UIProcess/API/mac/WKView.mm
245
246     UIProcess/Cocoa/AutomationClient.mm
247     UIProcess/Cocoa/AutomationSessionClient.mm
248     UIProcess/Cocoa/DiagnosticLoggingClient.mm
249     UIProcess/Cocoa/DownloadClient.mm
250     UIProcess/Cocoa/FindClient.mm
251     UIProcess/Cocoa/FullscreenClient.mm
252     UIProcess/Cocoa/IconLoadingDelegate.mm
253     UIProcess/Cocoa/LegacyCustomProtocolManagerClient.mm
254     UIProcess/Cocoa/NavigationState.mm
255     UIProcess/Cocoa/RemoteLayerTreeScrollingPerformanceData.mm
256     UIProcess/Cocoa/SessionStateCoding.mm
257     UIProcess/Cocoa/UIDelegate.mm
258     UIProcess/Cocoa/VersionChecks.mm
259     UIProcess/Cocoa/ViewGestureController.cpp
260     UIProcess/Cocoa/WKReloadFrameErrorRecoveryAttempter.mm
261     UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm
262     UIProcess/Cocoa/WebPageProxyCocoa.mm
263     UIProcess/Cocoa/WebPasteboardProxyCocoa.mm
264     UIProcess/Cocoa/WebProcessPoolCocoa.mm
265     UIProcess/Cocoa/WebProcessProxyCocoa.mm
266     UIProcess/Cocoa/WebResourceLoadStatisticsStoreCocoa.mm
267     UIProcess/Cocoa/WebURLSchemeHandlerCocoa.mm
268     UIProcess/Cocoa/WebViewImpl.mm
269
270     UIProcess/Launcher/mac/ProcessLauncherMac.mm
271
272     UIProcess/Network/mac/NetworkProcessProxyMac.mm
273
274     UIProcess/Plugins/mac/PluginInfoStoreMac.mm
275     UIProcess/Plugins/mac/PluginProcessManagerMac.mm
276     UIProcess/Plugins/mac/PluginProcessProxyMac.mm
277
278     UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp
279     UIProcess/Scrolling/RemoteScrollingTree.cpp
280
281     UIProcess/WebStorage/StorageManager.cpp
282
283     UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm
284
285     UIProcess/mac/CorrectionPanel.mm
286     UIProcess/mac/LegacySessionStateCoding.cpp
287     UIProcess/mac/PageClientImpl.mm
288     UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm
289     UIProcess/mac/RemoteLayerTreeHost.mm
290     UIProcess/mac/RemoteWebInspectorProxyMac.mm
291     UIProcess/mac/SecItemShimProxy.cpp
292     UIProcess/mac/ServicesController.mm
293     UIProcess/mac/TextCheckerMac.mm
294     UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm
295     UIProcess/mac/ViewGestureControllerMac.mm
296     UIProcess/mac/ViewSnapshotStore.mm
297     UIProcess/mac/WKFullKeyboardAccessWatcher.mm
298     UIProcess/mac/WKFullScreenWindowController.mm
299     UIProcess/mac/WKImmediateActionController.mm
300     UIProcess/mac/WKPrintingView.mm
301     UIProcess/mac/WKSharingServicePickerDelegate.mm
302     UIProcess/mac/WKTextFinderClient.mm
303     UIProcess/mac/WKTextInputWindowController.mm
304     UIProcess/mac/WKViewLayoutStrategy.mm
305     UIProcess/mac/WKWebInspectorWKWebView.mm
306     UIProcess/mac/WebColorPickerMac.mm
307     UIProcess/mac/WebContextMenuProxyMac.mm
308     UIProcess/mac/WebCookieManagerProxyMac.mm
309     UIProcess/mac/WebInspectorProxyMac.mm
310     UIProcess/mac/WebPageProxyMac.mm
311     UIProcess/mac/WebPopupMenuProxyMac.mm
312     UIProcess/mac/WebPreferencesMac.mm
313     UIProcess/mac/WebProcessProxyMac.mm
314     UIProcess/mac/WindowServerConnection.mm
315
316     WebProcess/Cookies/mac/WebCookieManagerMac.mm
317
318     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessBundleParameters.mm
319     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm
320     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInHitTestResult.mm
321     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm
322     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.mm
323     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInRangeHandle.mm
324     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm
325
326     WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm
327     WebProcess/InjectedBundle/API/mac/WKDOMElement.mm
328     WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm
329     WebProcess/InjectedBundle/API/mac/WKDOMNode.mm
330     WebProcess/InjectedBundle/API/mac/WKDOMRange.mm
331     WebProcess/InjectedBundle/API/mac/WKDOMText.mm
332     WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm
333     WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm
334     WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm
335
336     WebProcess/InjectedBundle/mac/InjectedBundleMac.mm
337
338     WebProcess/MediaCache/WebMediaKeyStorageManager.cpp
339
340     WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm
341     WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm
342
343     WebProcess/Plugins/PDF/PDFPlugin.mm
344     WebProcess/Plugins/PDF/PDFPluginAnnotation.mm
345     WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm
346     WebProcess/Plugins/PDF/PDFPluginPasswordField.mm
347     WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm
348
349     WebProcess/Scrolling/RemoteScrollingCoordinator.mm
350
351     WebProcess/WebCoreSupport/WebPasteboardOverrides.cpp
352     WebProcess/WebCoreSupport/WebValidationMessageClient.cpp
353
354     WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp
355     WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm
356     WebProcess/WebCoreSupport/mac/WebDragClientMac.mm
357     WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm
358     WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm
359     WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm
360     WebProcess/WebCoreSupport/mac/WebSystemInterface.mm
361
362     WebProcess/WebPage/ViewGestureGeometryCollector.cpp
363
364     WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm
365     WebProcess/WebPage/Cocoa/WebPageCocoa.mm
366
367     WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp
368     WebProcess/WebPage/mac/PageBannerMac.mm
369     WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm
370     WebProcess/WebPage/mac/PlatformCALayerRemote.cpp
371     WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm
372     WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp
373     WebProcess/WebPage/mac/RemoteLayerTreeContext.mm
374     WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm
375     WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm
376     WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm
377     WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm
378     WebProcess/WebPage/mac/WebInspectorUIMac.mm
379     WebProcess/WebPage/mac/WebPageMac.mm
380
381     WebProcess/cocoa/WebProcessCocoa.mm
382
383     WebProcess/mac/SecItemShimLibrary.mm
384 )
385
386 file(MAKE_DIRECTORY ${DERIVED_SOURCES_WEBKIT2_DIR})
387
388 list(APPEND WebKit2_INCLUDE_DIRECTORIES
389     "${PAL_DIR}"
390     "${WEBKIT2_DIR}/NetworkProcess/cocoa"
391     "${WEBKIT2_DIR}/NetworkProcess/mac"
392     "${WEBKIT2_DIR}/PluginProcess/mac"
393     "${WEBKIT2_DIR}/UIProcess/mac"
394     "${WEBKIT2_DIR}/UIProcess/API/C/mac"
395     "${WEBKIT2_DIR}/UIProcess/API/Cocoa"
396     "${WEBKIT2_DIR}/UIProcess/API/mac"
397     "${WEBKIT2_DIR}/UIProcess/Cocoa"
398     "${WEBKIT2_DIR}/UIProcess/Launcher/mac"
399     "${WEBKIT2_DIR}/UIProcess/Scrolling"
400     "${WEBKIT2_DIR}/UIProcess/ios"
401     "${WEBKIT2_DIR}/Platform/cg"
402     "${WEBKIT2_DIR}/Platform/classifier"
403     "${WEBKIT2_DIR}/Platform/classifier/cocoa"
404     "${WEBKIT2_DIR}/Platform/mac"
405     "${WEBKIT2_DIR}/Platform/unix"
406     "${WEBKIT2_DIR}/Platform/spi/Cocoa"
407     "${WEBKIT2_DIR}/Platform/spi/mac"
408     "${WEBKIT2_DIR}/Platform/IPC/mac"
409     "${WEBKIT2_DIR}/Platform/spi/Cocoa"
410     "${WEBKIT2_DIR}/Shared/API/Cocoa"
411     "${WEBKIT2_DIR}/Shared/API/c/cf"
412     "${WEBKIT2_DIR}/Shared/API/c/cg"
413     "${WEBKIT2_DIR}/Shared/API/c/mac"
414     "${WEBKIT2_DIR}/Shared/cf"
415     "${WEBKIT2_DIR}/Shared/Cocoa"
416     "${WEBKIT2_DIR}/Shared/EntryPointUtilities/mac/XPCService"
417     "${WEBKIT2_DIR}/Shared/mac"
418     "${WEBKIT2_DIR}/Shared/Plugins/mac"
419     "${WEBKIT2_DIR}/Shared/Scrolling"
420     "${WEBKIT2_DIR}/WebProcess/cocoa"
421     "${WEBKIT2_DIR}/WebProcess/mac"
422     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/Cocoa"
423     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/mac"
424     "${WEBKIT2_DIR}/WebProcess/Plugins/PDF"
425     "${WEBKIT2_DIR}/WebProcess/Plugins/Netscape/mac"
426     "${WEBKIT2_DIR}/WebProcess/Scrolling"
427     "${WEBKIT2_DIR}/WebProcess/WebPage/Cocoa"
428     "${WEBKIT2_DIR}/WebProcess/WebPage/mac"
429     "${WEBKIT2_DIR}/WebProcess/WebCoreSupport/mac"
430     "${FORWARDING_HEADERS_DIR}/WebCore"
431     "${DERIVED_SOURCES_WEBCORE_DIR}"
432 )
433
434 set(XPCService_SOURCES
435     Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm
436     Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm
437 )
438
439 set(WebProcess_SOURCES
440     WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm
441     ${XPCService_SOURCES}
442 )
443
444 set(PluginProcess_SOURCES
445     PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm
446     ${XPCService_SOURCES}
447 )
448
449 list(APPEND NetworkProcess_SOURCES
450     NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm
451     ${XPCService_SOURCES}
452 )
453
454 list(APPEND StorageProcess_SOURCES
455     StorageProcess/EntryPoint/mac/XPCService/StorageServiceEntryPoint.mm
456     ${XPCService_SOURCES}
457 )
458
459 # FIXME: These should not have Development in production builds.
460 set(WebKit2_WebProcess_OUTPUT_NAME com.apple.WebKit.WebContent.Development)
461 set(WebKit2_NetworkProcess_OUTPUT_NAME com.apple.WebKit.Networking.Development)
462
463 add_definitions("-include WebKit2Prefix.h")
464
465 set(WebKit2_FORWARDING_HEADERS_FILES
466     Shared/API/c/WKDiagnosticLoggingResultType.h
467
468     UIProcess/API/C/WKPageDiagnosticLoggingClient.h
469     UIProcess/API/C/WKPageNavigationClient.h
470     UIProcess/API/C/WKPageRenderingProgressEvents.h
471 )
472
473 list(APPEND WebKit2_MESSAGES_IN_FILES
474     Shared/API/Cocoa/RemoteObjectRegistry.messages.in
475
476     UIProcess/Cocoa/ViewGestureController.messages.in
477     UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in
478
479     UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in
480     UIProcess/mac/SecItemShimProxy.messages.in
481
482     WebProcess/Scrolling/RemoteScrollingCoordinator.messages.in
483     WebProcess/WebPage/ViewGestureGeometryCollector.messages.in
484 )
485
486 set(WebKit2_FORWARDING_HEADERS_DIRECTORIES
487     Platform
488     Shared
489
490     NetworkProcess/Downloads
491
492     Platform/IPC
493
494     Shared/API
495     Shared/Cocoa
496
497     Shared/API/Cocoa
498     Shared/API/c
499
500     Shared/API/c/cf
501     Shared/API/c/mac
502
503     UIProcess/Cocoa
504
505     UIProcess/API/C
506
507     UIProcess/API/C/Cocoa
508     UIProcess/API/C/mac
509     UIProcess/API/cpp
510
511     WebProcess/WebPage
512
513     WebProcess/InjectedBundle/API/Cocoa
514     WebProcess/InjectedBundle/API/c
515     WebProcess/InjectedBundle/API/mac
516 )
517
518 WEBKIT_CREATE_FORWARDING_HEADERS(WebKit FILES ${WebKit2_FORWARDING_HEADERS_FILES} DIRECTORIES ${WebKit2_FORWARDING_HEADERS_DIRECTORIES})
519
520 # This is needed right now to import ObjC headers instead of including them.
521 # FIXME: Forwarding headers should be copies of actual headers.
522 file(GLOB ObjCHeaders UIProcess/API/Cocoa/*.h)
523 foreach (_file ${ObjCHeaders})
524     get_filename_component(_name ${_file} NAME)
525     if (NOT EXISTS ${FORWARDING_HEADERS_DIR}/WebKit/${_name})
526         file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_name} "#import <WebKit2/UIProcess/API/Cocoa/${_name}>")
527     endif ()
528 endforeach ()
529
530 # FIXME: Forwarding headers should be complete copies of the header.
531 set(WebKitLegacyForwardingHeaders
532     DOM.h
533     DOMCore.h
534     DOMElement.h
535     DOMException.h
536     DOMObject.h
537     DOMPrivate.h
538     WebApplicationCache.h
539     WebCache.h
540     WebCoreStatistics.h
541     WebDOMOperations.h
542     WebDOMOperationsPrivate.h
543     WebDataSource.h
544     WebDataSourcePrivate.h
545     WebDefaultPolicyDelegate.h
546     WebDeviceOrientation.h
547     WebDeviceOrientationProviderMock.h
548     WebDocument.h
549     WebDocumentPrivate.h
550     WebDynamicScrollBarsView.h
551     WebEditingDelegate.h
552     WebFrame.h
553     WebFramePrivate.h
554     WebFrameViewPrivate.h
555     WebGeolocationPosition.h
556     WebHTMLRepresentation.h
557     WebHTMLView.h
558     WebHTMLViewPrivate.h
559     WebHistory.h
560     WebHistoryItem.h
561     WebHistoryItemPrivate.h
562     WebHistoryPrivate.h
563     WebIconDatabasePrivate.h
564     WebInspectorPrivate.h
565     WebKitNSStringExtras.h
566     WebNSURLExtras.h
567     WebNavigationData.h
568     WebNotification.h
569     WebPluginDatabase.h
570     WebPolicyDelegate.h
571     WebPolicyDelegatePrivate.h
572     WebPreferenceKeysPrivate.h
573     WebPreferences.h
574     WebPreferencesPrivate.h
575     WebQuotaManager.h
576     WebScriptWorld.h
577     WebSecurityOriginPrivate.h
578     WebTypesInternal.h
579     WebUIDelegate.h
580     WebUIDelegatePrivate.h
581     WebView.h
582     WebViewPrivate
583     WebViewPrivate.h
584 )
585 foreach (_file ${WebKitLegacyForwardingHeaders})
586     file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_file} "#import <WebKitLegacy/${_file}>")
587 endforeach ()
588
589 set(ObjCForwardingHeaders
590     DOMAbstractView.h
591     DOMAttr.h
592     DOMBeforeLoadEvent.h
593     DOMBlob.h
594     DOMCDATASection.h
595     DOMCSSCharsetRule.h
596     DOMCSSFontFaceRule.h
597     DOMCSSImportRule.h
598     DOMCSSKeyframeRule.h
599     DOMCSSKeyframesRule.h
600     DOMCSSMediaRule.h
601     DOMCSSPageRule.h
602     DOMCSSPrimitiveValue.h
603     DOMCSSRule.h
604     DOMCSSRuleList.h
605     DOMCSSStyleDeclaration.h
606     DOMCSSStyleRule.h
607     DOMCSSStyleSheet.h
608     DOMCSSSupportsRule.h
609     DOMCSSUnknownRule.h
610     DOMCSSValue.h
611     DOMCSSValueList.h
612     DOMCharacterData.h
613     DOMComment.h
614     DOMCounter.h
615     DOMDOMImplementation.h
616     DOMDOMNamedFlowCollection.h
617     DOMDOMTokenList.h
618     DOMDocument.h
619     DOMDocumentFragment.h
620     DOMDocumentType.h
621     DOMElement.h
622     DOMEntity.h
623     DOMEntityReference.h
624     DOMEvent.h
625     DOMEventException.h
626     DOMEventListener.h
627     DOMEventTarget.h
628     DOMFile.h
629     DOMFileList.h
630     DOMHTMLAnchorElement.h
631     DOMHTMLAppletElement.h
632     DOMHTMLAreaElement.h
633     DOMHTMLBRElement.h
634     DOMHTMLBaseElement.h
635     DOMHTMLBaseFontElement.h
636     DOMHTMLBodyElement.h
637     DOMHTMLButtonElement.h
638     DOMHTMLCanvasElement.h
639     DOMHTMLCollection.h
640     DOMHTMLDListElement.h
641     DOMHTMLDirectoryElement.h
642     DOMHTMLDivElement.h
643     DOMHTMLDocument.h
644     DOMHTMLElement.h
645     DOMHTMLEmbedElement.h
646     DOMHTMLFieldSetElement.h
647     DOMHTMLFontElement.h
648     DOMHTMLFormElement.h
649     DOMHTMLFrameElement.h
650     DOMHTMLFrameSetElement.h
651     DOMHTMLHRElement.h
652     DOMHTMLHeadElement.h
653     DOMHTMLHeadingElement.h
654     DOMHTMLHtmlElement.h
655     DOMHTMLIFrameElement.h
656     DOMHTMLImageElement.h
657     DOMHTMLInputElement.h
658     DOMHTMLInputElementPrivate.h
659     DOMHTMLLIElement.h
660     DOMHTMLLabelElement.h
661     DOMHTMLLegendElement.h
662     DOMHTMLLinkElement.h
663     DOMHTMLMapElement.h
664     DOMHTMLMarqueeElement.h
665     DOMHTMLMediaElement.h
666     DOMHTMLMenuElement.h
667     DOMHTMLMetaElement.h
668     DOMHTMLModElement.h
669     DOMHTMLOListElement.h
670     DOMHTMLObjectElement.h
671     DOMHTMLOptGroupElement.h
672     DOMHTMLOptionElement.h
673     DOMHTMLOptionsCollection.h
674     DOMHTMLParagraphElement.h
675     DOMHTMLParamElement.h
676     DOMHTMLPreElement.h
677     DOMHTMLQuoteElement.h
678     DOMHTMLScriptElement.h
679     DOMHTMLSelectElement.h
680     DOMHTMLStyleElement.h
681     DOMHTMLTableCaptionElement.h
682     DOMHTMLTableCellElement.h
683     DOMHTMLTableColElement.h
684     DOMHTMLTableElement.h
685     DOMHTMLTableRowElement.h
686     DOMHTMLTableSectionElement.h
687     DOMHTMLTextAreaElement.h
688     DOMHTMLTitleElement.h
689     DOMHTMLUListElement.h
690     DOMHTMLVideoElement.h
691     DOMImplementation.h
692     DOMKeyboardEvent.h
693     DOMMediaError.h
694     DOMMediaList.h
695     DOMMessageEvent.h
696     DOMMessagePort.h
697     DOMMouseEvent.h
698     DOMMutationEvent.h
699     DOMNamedNodeMap.h
700     DOMNode.h
701     DOMNodeFilter.h
702     DOMNodeIterator.h
703     DOMNodeList.h
704     DOMOverflowEvent.h
705     DOMProcessingInstruction.h
706     DOMProgressEvent.h
707     DOMRGBColor.h
708     DOMRange.h
709     DOMRangeException.h
710     DOMRect.h
711     DOMStyleSheet.h
712     DOMStyleSheetList.h
713     DOMText.h
714     DOMTextEvent.h
715     DOMTimeRanges.h
716     DOMTreeWalker.h
717     DOMUIEvent.h
718     DOMValidityState.h
719     DOMWebKitCSSFilterValue.h
720     DOMWebKitCSSRegionRule.h
721     DOMWebKitCSSTransformValue.h
722     DOMWebKitNamedFlow.h
723     DOMWheelEvent.h
724     DOMXPathException.h
725     DOMXPathExpression.h
726     DOMXPathNSResolver.h
727     DOMXPathResult.h
728 )
729 foreach (_file ${ObjCForwardingHeaders})
730     file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_file} "#import <WebKitLegacy/${_file}>")
731 endforeach ()
732
733 list(APPEND WebKit2_AUTOMATION_PROTOCOL_GENERATOR_EXTRA_FLAGS
734     --platform=macOS
735 )
736
737 # FIXME: These should not be necessary.
738 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WKImageCG.h "#import <WebKit2/Shared/API/c/cg/WKImageCG.h>")
739 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WebStorageManagerPrivate.h "#import <WebKit/mac/Storage/WebStorageManagerPrivate.h>")
740 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WebDatabaseManagerPrivate.h "#import <WebKit/mac/Storage/WebDatabaseManagerPrivate.h>")
741
742 set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-compatibility_version 1 -current_version ${WEBKIT_MAC_VERSION}")
743
744 set(WebKit2_OUTPUT_NAME WebKit)