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