7f9a8953f43c4741c5fc378dc7a4696982ff2862
[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/PageClientImplCocoa.mm
256     UIProcess/Cocoa/RemoteLayerTreeScrollingPerformanceData.mm
257     UIProcess/Cocoa/SessionStateCoding.mm
258     UIProcess/Cocoa/UIDelegate.mm
259     UIProcess/Cocoa/VersionChecks.mm
260     UIProcess/Cocoa/ViewGestureController.cpp
261     UIProcess/Cocoa/WKReloadFrameErrorRecoveryAttempter.mm
262     UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm
263     UIProcess/Cocoa/WebPageProxyCocoa.mm
264     UIProcess/Cocoa/WebPasteboardProxyCocoa.mm
265     UIProcess/Cocoa/WebProcessPoolCocoa.mm
266     UIProcess/Cocoa/WebProcessProxyCocoa.mm
267     UIProcess/Cocoa/WebResourceLoadStatisticsStoreCocoa.mm
268     UIProcess/Cocoa/WebURLSchemeHandlerCocoa.mm
269     UIProcess/Cocoa/WebViewImpl.mm
270
271     UIProcess/Launcher/mac/ProcessLauncherMac.mm
272
273     UIProcess/Network/mac/NetworkProcessProxyMac.mm
274
275     UIProcess/Plugins/mac/PluginInfoStoreMac.mm
276     UIProcess/Plugins/mac/PluginProcessManagerMac.mm
277     UIProcess/Plugins/mac/PluginProcessProxyMac.mm
278
279     UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp
280     UIProcess/Scrolling/RemoteScrollingTree.cpp
281
282     UIProcess/WebStorage/StorageManager.cpp
283
284     UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm
285
286     UIProcess/mac/CorrectionPanel.mm
287     UIProcess/mac/LegacySessionStateCoding.cpp
288     UIProcess/mac/PageClientImpl.mm
289     UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm
290     UIProcess/mac/RemoteLayerTreeHost.mm
291     UIProcess/mac/RemoteWebInspectorProxyMac.mm
292     UIProcess/mac/SecItemShimProxy.cpp
293     UIProcess/mac/ServicesController.mm
294     UIProcess/mac/TextCheckerMac.mm
295     UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm
296     UIProcess/mac/ViewGestureControllerMac.mm
297     UIProcess/mac/ViewSnapshotStore.mm
298     UIProcess/mac/WKFullKeyboardAccessWatcher.mm
299     UIProcess/mac/WKFullScreenWindowController.mm
300     UIProcess/mac/WKImmediateActionController.mm
301     UIProcess/mac/WKPrintingView.mm
302     UIProcess/mac/WKSharingServicePickerDelegate.mm
303     UIProcess/mac/WKTextFinderClient.mm
304     UIProcess/mac/WKTextInputWindowController.mm
305     UIProcess/mac/WKViewLayoutStrategy.mm
306     UIProcess/mac/WKWebInspectorWKWebView.mm
307     UIProcess/mac/WebColorPickerMac.mm
308     UIProcess/mac/WebContextMenuProxyMac.mm
309     UIProcess/mac/WebCookieManagerProxyMac.mm
310     UIProcess/mac/WebInspectorProxyMac.mm
311     UIProcess/mac/WebPageProxyMac.mm
312     UIProcess/mac/WebPopupMenuProxyMac.mm
313     UIProcess/mac/WebPreferencesMac.mm
314     UIProcess/mac/WebProcessProxyMac.mm
315     UIProcess/mac/WindowServerConnection.mm
316
317     WebProcess/Cookies/mac/WebCookieManagerMac.mm
318
319     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessBundleParameters.mm
320     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm
321     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInHitTestResult.mm
322     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm
323     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.mm
324     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInRangeHandle.mm
325     WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm
326
327     WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm
328     WebProcess/InjectedBundle/API/mac/WKDOMElement.mm
329     WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm
330     WebProcess/InjectedBundle/API/mac/WKDOMNode.mm
331     WebProcess/InjectedBundle/API/mac/WKDOMRange.mm
332     WebProcess/InjectedBundle/API/mac/WKDOMText.mm
333     WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm
334     WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm
335     WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm
336
337     WebProcess/InjectedBundle/mac/InjectedBundleMac.mm
338
339     WebProcess/MediaCache/WebMediaKeyStorageManager.cpp
340
341     WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm
342     WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm
343
344     WebProcess/Plugins/PDF/PDFPlugin.mm
345     WebProcess/Plugins/PDF/PDFPluginAnnotation.mm
346     WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm
347     WebProcess/Plugins/PDF/PDFPluginPasswordField.mm
348     WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm
349
350     WebProcess/WebPage/RemoteLayerTree/GraphicsLayerCARemote.cpp
351     WebProcess/WebPage/RemoteLayerTree/PlatformCAAnimationRemote.mm
352     WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp
353     WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm
354     WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteTiledBacking.cpp
355     WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm
356     WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm
357     WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm
358     WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm
359
360     WebProcess/WebCoreSupport/WebPasteboardOverrides.cpp
361     WebProcess/WebCoreSupport/WebValidationMessageClient.cpp
362
363     WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp
364     WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm
365     WebProcess/WebCoreSupport/mac/WebDragClientMac.mm
366     WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm
367     WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm
368     WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm
369     WebProcess/WebCoreSupport/mac/WebSystemInterface.mm
370
371     WebProcess/WebPage/ViewGestureGeometryCollector.cpp
372
373     WebProcess/WebPage/Cocoa/WebPageCocoa.mm
374
375     WebProcess/WebPage/mac/PageBannerMac.mm
376     WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm
377     WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm
378     WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm
379     WebProcess/WebPage/mac/WebInspectorUIMac.mm
380     WebProcess/WebPage/mac/WebPageMac.mm
381
382     WebProcess/cocoa/WebProcessCocoa.mm
383
384     WebProcess/mac/SecItemShimLibrary.mm
385 )
386
387 list(APPEND WebKit2_INCLUDE_DIRECTORIES
388     "${PAL_DIR}"
389     "${WEBKIT2_DIR}/NetworkProcess/cocoa"
390     "${WEBKIT2_DIR}/NetworkProcess/mac"
391     "${WEBKIT2_DIR}/PluginProcess/mac"
392     "${WEBKIT2_DIR}/UIProcess/mac"
393     "${WEBKIT2_DIR}/UIProcess/API/C/mac"
394     "${WEBKIT2_DIR}/UIProcess/API/Cocoa"
395     "${WEBKIT2_DIR}/UIProcess/API/mac"
396     "${WEBKIT2_DIR}/UIProcess/Cocoa"
397     "${WEBKIT2_DIR}/UIProcess/Launcher/mac"
398     "${WEBKIT2_DIR}/UIProcess/Scrolling"
399     "${WEBKIT2_DIR}/UIProcess/ios"
400     "${WEBKIT2_DIR}/Platform/cg"
401     "${WEBKIT2_DIR}/Platform/classifier"
402     "${WEBKIT2_DIR}/Platform/classifier/cocoa"
403     "${WEBKIT2_DIR}/Platform/mac"
404     "${WEBKIT2_DIR}/Platform/unix"
405     "${WEBKIT2_DIR}/Platform/spi/Cocoa"
406     "${WEBKIT2_DIR}/Platform/spi/mac"
407     "${WEBKIT2_DIR}/Platform/IPC/mac"
408     "${WEBKIT2_DIR}/Platform/spi/Cocoa"
409     "${WEBKIT2_DIR}/Shared/API/Cocoa"
410     "${WEBKIT2_DIR}/Shared/API/c/cf"
411     "${WEBKIT2_DIR}/Shared/API/c/cg"
412     "${WEBKIT2_DIR}/Shared/API/c/mac"
413     "${WEBKIT2_DIR}/Shared/cf"
414     "${WEBKIT2_DIR}/Shared/Cocoa"
415     "${WEBKIT2_DIR}/Shared/EntryPointUtilities/mac/XPCService"
416     "${WEBKIT2_DIR}/Shared/mac"
417     "${WEBKIT2_DIR}/Shared/Plugins/mac"
418     "${WEBKIT2_DIR}/Shared/Scrolling"
419     "${WEBKIT2_DIR}/WebProcess/cocoa"
420     "${WEBKIT2_DIR}/WebProcess/mac"
421     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/Cocoa"
422     "${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/mac"
423     "${WEBKIT2_DIR}/WebProcess/Plugins/PDF"
424     "${WEBKIT2_DIR}/WebProcess/Plugins/Netscape/mac"
425     "${WEBKIT2_DIR}/WebProcess/WebPage/Cocoa"
426     "${WEBKIT2_DIR}/WebProcess/WebPage/RemoteLayerTree"
427     "${WEBKIT2_DIR}/WebProcess/WebPage/mac"
428     "${WEBKIT2_DIR}/WebProcess/WebCoreSupport/mac"
429     "${FORWARDING_HEADERS_DIR}/WebCore"
430     "${DERIVED_SOURCES_WEBCORE_DIR}"
431 )
432
433 set(XPCService_SOURCES
434     Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm
435     Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm
436 )
437
438 set(WebProcess_SOURCES
439     WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm
440     ${XPCService_SOURCES}
441 )
442
443 set(PluginProcess_SOURCES
444     PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm
445     ${XPCService_SOURCES}
446 )
447
448 list(APPEND NetworkProcess_SOURCES
449     NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm
450     ${XPCService_SOURCES}
451 )
452
453 list(APPEND StorageProcess_SOURCES
454     DatabaseProcess/EntryPoint/mac/XPCService/StorageServiceEntryPoint.mm
455     ${XPCService_SOURCES}
456 )
457
458 # FIXME: These should not have Development in production builds.
459 set(WebKit2_WebProcess_OUTPUT_NAME com.apple.WebKit.WebContent.Development)
460 set(WebKit2_NetworkProcess_OUTPUT_NAME com.apple.WebKit.Networking.Development)
461
462 add_definitions("-include WebKit2Prefix.h")
463
464 set(WebKit2_FORWARDING_HEADERS_FILES
465     Shared/API/c/WKDiagnosticLoggingResultType.h
466
467     UIProcess/API/C/WKPageDiagnosticLoggingClient.h
468     UIProcess/API/C/WKPageNavigationClient.h
469     UIProcess/API/C/WKPageRenderingProgressEvents.h
470 )
471
472 list(APPEND WebKit2_MESSAGES_IN_FILES
473     Shared/API/Cocoa/RemoteObjectRegistry.messages.in
474
475     UIProcess/Cocoa/ViewGestureController.messages.in
476     UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in
477
478     UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in
479     UIProcess/mac/SecItemShimProxy.messages.in
480
481     WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in
482     WebProcess/WebPage/ViewGestureGeometryCollector.messages.in
483 )
484
485 set(WebKit2_FORWARDING_HEADERS_DIRECTORIES
486     Platform
487     Shared
488
489     NetworkProcess/Downloads
490
491     Platform/IPC
492
493     Shared/API
494     Shared/Cocoa
495
496     Shared/API/Cocoa
497     Shared/API/c
498
499     Shared/API/c/cf
500     Shared/API/c/mac
501
502     UIProcess/Cocoa
503
504     UIProcess/API/C
505
506     UIProcess/API/C/Cocoa
507     UIProcess/API/C/mac
508     UIProcess/API/cpp
509
510     WebProcess/WebPage
511
512     WebProcess/InjectedBundle/API/Cocoa
513     WebProcess/InjectedBundle/API/c
514     WebProcess/InjectedBundle/API/mac
515 )
516
517 WEBKIT_CREATE_FORWARDING_HEADERS(WebKit FILES ${WebKit2_FORWARDING_HEADERS_FILES} DIRECTORIES ${WebKit2_FORWARDING_HEADERS_DIRECTORIES})
518
519 # This is needed right now to import ObjC headers instead of including them.
520 # FIXME: Forwarding headers should be copies of actual headers.
521 file(GLOB ObjCHeaders UIProcess/API/Cocoa/*.h)
522 foreach (_file ${ObjCHeaders})
523     get_filename_component(_name ${_file} NAME)
524     if (NOT EXISTS ${FORWARDING_HEADERS_DIR}/WebKit/${_name})
525         file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_name} "#import <WebKit2/UIProcess/API/Cocoa/${_name}>")
526     endif ()
527 endforeach ()
528
529 # FIXME: Forwarding headers should be complete copies of the header.
530 set(WebKitLegacyForwardingHeaders
531     DOM.h
532     DOMCore.h
533     DOMElement.h
534     DOMException.h
535     DOMObject.h
536     DOMPrivate.h
537     WebApplicationCache.h
538     WebCache.h
539     WebCoreStatistics.h
540     WebDOMOperations.h
541     WebDOMOperationsPrivate.h
542     WebDataSource.h
543     WebDataSourcePrivate.h
544     WebDefaultPolicyDelegate.h
545     WebDeviceOrientation.h
546     WebDeviceOrientationProviderMock.h
547     WebDocument.h
548     WebDocumentPrivate.h
549     WebDynamicScrollBarsView.h
550     WebEditingDelegate.h
551     WebFrame.h
552     WebFramePrivate.h
553     WebFrameViewPrivate.h
554     WebGeolocationPosition.h
555     WebHTMLRepresentation.h
556     WebHTMLView.h
557     WebHTMLViewPrivate.h
558     WebHistory.h
559     WebHistoryItem.h
560     WebHistoryItemPrivate.h
561     WebHistoryPrivate.h
562     WebIconDatabasePrivate.h
563     WebInspectorPrivate.h
564     WebKitNSStringExtras.h
565     WebNSURLExtras.h
566     WebNavigationData.h
567     WebNotification.h
568     WebPluginDatabase.h
569     WebPolicyDelegate.h
570     WebPolicyDelegatePrivate.h
571     WebPreferenceKeysPrivate.h
572     WebPreferences.h
573     WebPreferencesPrivate.h
574     WebQuotaManager.h
575     WebScriptWorld.h
576     WebSecurityOriginPrivate.h
577     WebTypesInternal.h
578     WebUIDelegate.h
579     WebUIDelegatePrivate.h
580     WebView.h
581     WebViewPrivate
582     WebViewPrivate.h
583 )
584 foreach (_file ${WebKitLegacyForwardingHeaders})
585     file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_file} "#import <WebKitLegacy/${_file}>")
586 endforeach ()
587
588 set(ObjCForwardingHeaders
589     DOMAbstractView.h
590     DOMAttr.h
591     DOMBeforeLoadEvent.h
592     DOMBlob.h
593     DOMCDATASection.h
594     DOMCSSCharsetRule.h
595     DOMCSSFontFaceRule.h
596     DOMCSSImportRule.h
597     DOMCSSKeyframeRule.h
598     DOMCSSKeyframesRule.h
599     DOMCSSMediaRule.h
600     DOMCSSPageRule.h
601     DOMCSSPrimitiveValue.h
602     DOMCSSRule.h
603     DOMCSSRuleList.h
604     DOMCSSStyleDeclaration.h
605     DOMCSSStyleRule.h
606     DOMCSSStyleSheet.h
607     DOMCSSSupportsRule.h
608     DOMCSSUnknownRule.h
609     DOMCSSValue.h
610     DOMCSSValueList.h
611     DOMCharacterData.h
612     DOMComment.h
613     DOMCounter.h
614     DOMDOMImplementation.h
615     DOMDOMNamedFlowCollection.h
616     DOMDOMTokenList.h
617     DOMDocument.h
618     DOMDocumentFragment.h
619     DOMDocumentType.h
620     DOMElement.h
621     DOMEntity.h
622     DOMEntityReference.h
623     DOMEvent.h
624     DOMEventException.h
625     DOMEventListener.h
626     DOMEventTarget.h
627     DOMFile.h
628     DOMFileList.h
629     DOMHTMLAnchorElement.h
630     DOMHTMLAppletElement.h
631     DOMHTMLAreaElement.h
632     DOMHTMLBRElement.h
633     DOMHTMLBaseElement.h
634     DOMHTMLBaseFontElement.h
635     DOMHTMLBodyElement.h
636     DOMHTMLButtonElement.h
637     DOMHTMLCanvasElement.h
638     DOMHTMLCollection.h
639     DOMHTMLDListElement.h
640     DOMHTMLDirectoryElement.h
641     DOMHTMLDivElement.h
642     DOMHTMLDocument.h
643     DOMHTMLElement.h
644     DOMHTMLEmbedElement.h
645     DOMHTMLFieldSetElement.h
646     DOMHTMLFontElement.h
647     DOMHTMLFormElement.h
648     DOMHTMLFrameElement.h
649     DOMHTMLFrameSetElement.h
650     DOMHTMLHRElement.h
651     DOMHTMLHeadElement.h
652     DOMHTMLHeadingElement.h
653     DOMHTMLHtmlElement.h
654     DOMHTMLIFrameElement.h
655     DOMHTMLImageElement.h
656     DOMHTMLInputElement.h
657     DOMHTMLInputElementPrivate.h
658     DOMHTMLLIElement.h
659     DOMHTMLLabelElement.h
660     DOMHTMLLegendElement.h
661     DOMHTMLLinkElement.h
662     DOMHTMLMapElement.h
663     DOMHTMLMarqueeElement.h
664     DOMHTMLMediaElement.h
665     DOMHTMLMenuElement.h
666     DOMHTMLMetaElement.h
667     DOMHTMLModElement.h
668     DOMHTMLOListElement.h
669     DOMHTMLObjectElement.h
670     DOMHTMLOptGroupElement.h
671     DOMHTMLOptionElement.h
672     DOMHTMLOptionsCollection.h
673     DOMHTMLParagraphElement.h
674     DOMHTMLParamElement.h
675     DOMHTMLPreElement.h
676     DOMHTMLQuoteElement.h
677     DOMHTMLScriptElement.h
678     DOMHTMLSelectElement.h
679     DOMHTMLStyleElement.h
680     DOMHTMLTableCaptionElement.h
681     DOMHTMLTableCellElement.h
682     DOMHTMLTableColElement.h
683     DOMHTMLTableElement.h
684     DOMHTMLTableRowElement.h
685     DOMHTMLTableSectionElement.h
686     DOMHTMLTextAreaElement.h
687     DOMHTMLTitleElement.h
688     DOMHTMLUListElement.h
689     DOMHTMLVideoElement.h
690     DOMImplementation.h
691     DOMKeyboardEvent.h
692     DOMMediaError.h
693     DOMMediaList.h
694     DOMMessageEvent.h
695     DOMMessagePort.h
696     DOMMouseEvent.h
697     DOMMutationEvent.h
698     DOMNamedNodeMap.h
699     DOMNode.h
700     DOMNodeFilter.h
701     DOMNodeIterator.h
702     DOMNodeList.h
703     DOMOverflowEvent.h
704     DOMProcessingInstruction.h
705     DOMProgressEvent.h
706     DOMRGBColor.h
707     DOMRange.h
708     DOMRangeException.h
709     DOMRect.h
710     DOMStyleSheet.h
711     DOMStyleSheetList.h
712     DOMText.h
713     DOMTextEvent.h
714     DOMTimeRanges.h
715     DOMTreeWalker.h
716     DOMUIEvent.h
717     DOMValidityState.h
718     DOMWebKitCSSFilterValue.h
719     DOMWebKitCSSRegionRule.h
720     DOMWebKitCSSTransformValue.h
721     DOMWebKitNamedFlow.h
722     DOMWheelEvent.h
723     DOMXPathException.h
724     DOMXPathExpression.h
725     DOMXPathNSResolver.h
726     DOMXPathResult.h
727 )
728 foreach (_file ${ObjCForwardingHeaders})
729     file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/${_file} "#import <WebKitLegacy/${_file}>")
730 endforeach ()
731
732 list(APPEND WebKit2_AUTOMATION_PROTOCOL_GENERATOR_EXTRA_FLAGS
733     --platform=macOS
734 )
735
736 # FIXME: These should not be necessary.
737 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WKImageCG.h "#import <WebKit2/Shared/API/c/cg/WKImageCG.h>")
738 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WebStorageManagerPrivate.h "#import <WebKit/mac/Storage/WebStorageManagerPrivate.h>")
739 file(WRITE ${FORWARDING_HEADERS_DIR}/WebKit/WebDatabaseManagerPrivate.h "#import <WebKit/mac/Storage/WebDatabaseManagerPrivate.h>")
740
741 set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-compatibility_version 1 -current_version ${WEBKIT_MAC_VERSION}")
742
743 set(WebKit2_OUTPUT_NAME WebKit)