blob: 211cc2236d705acfd6b0ddb6e3ce6a59d2a8e36e [file] [log] [blame]
add_definitions("-ObjC++ -std=c++17 -D__STDC_WANT_LIB_EXT1__")
find_library(APPLICATIONSERVICES_LIBRARY ApplicationServices)
find_library(CARBON_LIBRARY Carbon)
find_library(CORESERVICES_LIBRARY CoreServices)
find_library(NETWORK_LIBRARY Network)
find_library(SECURITY_LIBRARY Security)
find_library(SECURITYINTERFACE_LIBRARY SecurityInterface)
find_library(QUARTZ_LIBRARY Quartz)
find_library(AVFOUNDATION_LIBRARY AVFoundation)
find_library(AVFAUDIO_LIBRARY AVFAudio HINTS ${AVFOUNDATION_LIBRARY}/Versions/*/Frameworks)
find_library(DEVICEIDENTITY_LIBRARY DeviceIdentity HINTS ${CMAKE_OSX_SYSROOT}/System/Library/PrivateFrameworks)
add_definitions(-iframework ${QUARTZ_LIBRARY}/Frameworks)
add_definitions(-iframework ${CARBON_LIBRARY}/Frameworks)
add_definitions(-iframework ${APPLICATIONSERVICES_LIBRARY}/Versions/Current/Frameworks)
add_definitions(-DWK_XPC_SERVICE_SUFFIX=".Development")
set(MACOSX_FRAMEWORK_IDENTIFIER com.apple.WebKit)
add_definitions(-iframework ${CORESERVICES_LIBRARY}/Versions/Current/Frameworks)
include(Headers.cmake)
list(APPEND WebKit_PRIVATE_LIBRARIES
Accessibility
PAL
WebKitLegacy
${APPLICATIONSERVICES_LIBRARY}
${CORESERVICES_LIBRARY}
${DEVICEIDENTITY_LIBRARY}
${NETWORK_LIBRARY}
${SECURITYINTERFACE_LIBRARY}
)
if (NOT AVFAUDIO_LIBRARY-NOTFOUND)
list(APPEND WebKit_LIBRARIES ${AVFAUDIO_LIBRARY})
endif ()
list(APPEND WebKit_UNIFIED_SOURCE_LIST_FILES
"SourcesCocoa.txt"
)
list(APPEND WebKit_SOURCES
GPUProcess/media/RemoteAudioDestinationManager.cpp
NetworkProcess/cocoa/LaunchServicesDatabaseObserver.mm
NetworkProcess/cocoa/WebSocketTaskCocoa.mm
NetworkProcess/mac/NetworkConnectionToWebProcessMac.mm
NetworkProcess/webrtc/NetworkRTCProvider.mm
NetworkProcess/webrtc/NetworkRTCTCPSocketCocoa.mm
NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm
NetworkProcess/webrtc/NetworkRTCUtilitiesCocoa.mm
NetworkProcess/Downloads/cocoa/WKDownloadProgress.mm
Shared/API/Cocoa/WKMain.mm
Shared/Cocoa/DefaultWebBrowserChecks.mm
Shared/Cocoa/XPCEndpoint.mm
Shared/Cocoa/XPCEndpointClient.mm
UIProcess/QuickLookThumbnailLoader.mm
UIProcess/QuickLookThumbnailingSoftLink.mm
UIProcess/API/Cocoa/_WKAuthenticationExtensionsClientOutputs.mm
UIProcess/API/Cocoa/_WKAuthenticatorAssertionResponse.mm
UIProcess/API/Cocoa/_WKAuthenticatorAttestationResponse.mm
UIProcess/API/Cocoa/_WKAuthenticatorResponse.mm
UIProcess/Cocoa/PreferenceObserver.mm
UIProcess/Cocoa/WKSafeBrowsingWarning.mm
UIProcess/Cocoa/WKShareSheet.mm
UIProcess/Cocoa/WKStorageAccessAlert.mm
UIProcess/Cocoa/WebInspectorPreferenceObserver.mm
UIProcess/PDF/WKPDFHUDView.mm
WebProcess/InjectedBundle/API/c/mac/WKBundlePageMac.mm
WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp
WebProcess/cocoa/AudioSessionRoutingArbitrator.cpp
WebProcess/cocoa/HandleXPCEndpointMessages.mm
WebProcess/cocoa/LaunchServicesDatabaseManager.mm
)
list(APPEND WebKit_SOURCES
UIProcess/API/Cocoa/WKContentWorld.mm
UIProcess/API/Cocoa/_WKResourceLoadStatisticsFirstParty.mm
UIProcess/API/Cocoa/_WKResourceLoadStatisticsThirdParty.mm
)
list(APPEND WebKit_PRIVATE_INCLUDE_DIRECTORIES
"${CMAKE_BINARY_DIR}/libwebrtc/PrivateHeaders"
"${ICU_INCLUDE_DIRS}"
"${WEBKIT_DIR}/GPUProcess/mac"
"${WEBKIT_DIR}/NetworkProcess/cocoa"
"${WEBKIT_DIR}/NetworkProcess/mac"
"${WEBKIT_DIR}/NetworkProcess/PrivateClickMeasurement/cocoa"
"${WEBKIT_DIR}/PluginProcess/mac"
"${WEBKIT_DIR}/UIProcess/mac"
"${WEBKIT_DIR}/UIProcess/API/C/mac"
"${WEBKIT_DIR}/UIProcess/API/Cocoa"
"${WEBKIT_DIR}/UIProcess/API/mac"
"${WEBKIT_DIR}/UIProcess/API/ios"
"${WEBKIT_DIR}/UIProcess/Authentication/cocoa"
"${WEBKIT_DIR}/UIProcess/Cocoa"
"${WEBKIT_DIR}/UIProcess/Cocoa/SOAuthorization"
"${WEBKIT_DIR}/UIProcess/Inspector/Cocoa"
"${WEBKIT_DIR}/UIProcess/Inspector/mac"
"${WEBKIT_DIR}/UIProcess/Launcher/mac"
"${WEBKIT_DIR}/UIProcess/Media/cocoa"
"${WEBKIT_DIR}/UIProcess/PDF"
"${WEBKIT_DIR}/UIProcess/RemoteLayerTree"
"${WEBKIT_DIR}/UIProcess/RemoteLayerTree/cocoa"
"${WEBKIT_DIR}/UIProcess/RemoteLayerTree/ios"
"${WEBKIT_DIR}/UIProcess/RemoteLayerTree/mac"
"${WEBKIT_DIR}/UIProcess/WebAuthentication/Cocoa"
"${WEBKIT_DIR}/UIProcess/ios"
"${WEBKIT_DIR}/Platform/cg"
"${WEBKIT_DIR}/Platform/classifier"
"${WEBKIT_DIR}/Platform/classifier/cocoa"
"${WEBKIT_DIR}/Platform/cocoa"
"${WEBKIT_DIR}/Platform/mac"
"${WEBKIT_DIR}/Platform/unix"
"${WEBKIT_DIR}/Platform/spi/Cocoa"
"${WEBKIT_DIR}/Platform/spi/ios"
"${WEBKIT_DIR}/Platform/spi/mac"
"${WEBKIT_DIR}/Platform/IPC/mac"
"${WEBKIT_DIR}/Platform/IPC/cocoa"
"${WEBKIT_DIR}/Platform/spi/Cocoa"
"${WEBKIT_DIR}/Shared/API/Cocoa"
"${WEBKIT_DIR}/Shared/API/c/cf"
"${WEBKIT_DIR}/Shared/API/c/cg"
"${WEBKIT_DIR}/Shared/API/c/mac"
"${WEBKIT_DIR}/Shared/ApplePay/cocoa/"
"${WEBKIT_DIR}/Shared/Authentication/cocoa"
"${WEBKIT_DIR}/Shared/ios"
"${WEBKIT_DIR}/Shared/cf"
"${WEBKIT_DIR}/Shared/Cocoa"
"${WEBKIT_DIR}/Shared/EntryPointUtilities/Cocoa/Daemon"
"${WEBKIT_DIR}/Shared/EntryPointUtilities/Cocoa/XPCService"
"${WEBKIT_DIR}/Shared/mac"
"${WEBKIT_DIR}/Shared/mac/MediaFormatReader"
"${WEBKIT_DIR}/Shared/Plugins/mac"
"${WEBKIT_DIR}/Shared/Scrolling"
"${WEBKIT_DIR}/UIProcess/Media"
"${WEBKIT_DIR}/UIProcess/WebAuthentication/fido"
"${WEBKIT_DIR}/WebProcess/WebAuthentication"
"${WEBKIT_DIR}/WebProcess/cocoa"
"${WEBKIT_DIR}/WebProcess/mac"
"${WEBKIT_DIR}/WebProcess/GPU/graphics/cocoa"
"${WEBKIT_DIR}/WebProcess/Inspector/mac"
"${WEBKIT_DIR}/WebProcess/InjectedBundle/API/Cocoa"
"${WEBKIT_DIR}/WebProcess/InjectedBundle/API/mac"
"${WEBKIT_DIR}/WebProcess/MediaSession"
"${WEBKIT_DIR}/WebProcess/Plugins/PDF"
"${WEBKIT_DIR}/WebProcess/Plugins/Netscape/mac"
"${WEBKIT_DIR}/WebProcess/WebPage/Cocoa"
"${WEBKIT_DIR}/WebProcess/WebPage/RemoteLayerTree"
"${WEBKIT_DIR}/WebProcess/WebPage/mac"
"${WEBKIT_DIR}/WebProcess/WebCoreSupport/mac"
"${WEBKITLEGACY_DIR}"
"${WebKitLegacy_FRAMEWORK_HEADERS_DIR}"
)
set(XPCService_SOURCES
Shared/EntryPointUtilities/Cocoa/AuxiliaryProcessMain.cpp
Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm
Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm
)
set(WebProcess_SOURCES
WebProcess/EntryPoint/Cocoa/XPCService/WebContentServiceEntryPoint.mm
${XPCService_SOURCES}
)
set(PluginProcess_SOURCES
PluginProcess/EntryPoint/Cocoa/XPCService/PluginServiceEntryPoint.mm
${XPCService_SOURCES}
)
set(GPUProcess_SOURCES
GPUProcess/EntryPoint/Cocoa/XPCService/GPUServiceEntryPoint.mm
${XPCService_SOURCES}
)
list(APPEND NetworkProcess_SOURCES
NetworkProcess/EntryPoint/Cocoa/XPCService/NetworkServiceEntryPoint.mm
${XPCService_SOURCES}
)
# FIXME: These should not have Development in production builds.
set(WebProcess_OUTPUT_NAME com.apple.WebKit.WebContent.Development)
set(NetworkProcess_OUTPUT_NAME com.apple.WebKit.Networking.Development)
set(WebProcess_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR})
set(NetworkProcess_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR})
set(PluginProcess_INCLUDE_DIRECTORIES ${CMAKE_BINARY_DIR})
add_definitions("-include WebKit2Prefix.h")
set(WebKit_FORWARDING_HEADERS_FILES
Platform/cocoa/WKCrashReporter.h
Shared/API/c/WKDiagnosticLoggingResultType.h
UIProcess/API/C/WKPageDiagnosticLoggingClient.h
UIProcess/API/C/WKPageNavigationClient.h
UIProcess/API/C/WKPageRenderingProgressEvents.h
)
list(APPEND WebKit_MESSAGES_IN_FILES
GPUProcess/media/RemoteImageDecoderAVFProxy
GPUProcess/media/ios/RemoteMediaSessionHelperProxy
NetworkProcess/CustomProtocols/LegacyCustomProtocolManager
Shared/API/Cocoa/RemoteObjectRegistry
Shared/ApplePay/WebPaymentCoordinatorProxy
UIProcess/ViewGestureController
UIProcess/Cocoa/PlaybackSessionManagerProxy
UIProcess/Cocoa/UserMediaCaptureManagerProxy
UIProcess/Cocoa/VideoFullscreenManagerProxy
UIProcess/Inspector/WebInspectorUIExtensionControllerProxy
UIProcess/Media/AudioSessionRoutingArbitratorProxy
UIProcess/Network/CustomProtocols/LegacyCustomProtocolManagerProxy
UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy
UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy
UIProcess/WebAuthentication/WebAuthnProcessProxy
UIProcess/mac/SecItemShimProxy
WebAuthnProcess/WebAuthnConnectionToWebProcess
WebAuthnProcess/WebAuthnProcess
WebProcess/ApplePay/WebPaymentCoordinator
WebProcess/GPU/media/RemoteImageDecoderAVFManager
WebProcess/GPU/media/ios/RemoteMediaSessionHelper
WebProcess/Inspector/WebInspectorUIExtensionController
WebProcess/WebAuthentication/WebAuthnProcessConnection
WebProcess/WebPage/ViewGestureGeometryCollector
WebProcess/WebPage/ViewUpdateDispatcher
WebProcess/WebPage/Cocoa/TextCheckingControllerProxy
WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator
WebProcess/cocoa/PlaybackSessionManager
WebProcess/cocoa/RemoteCaptureSampleManager
WebProcess/cocoa/UserMediaCaptureManager
WebProcess/cocoa/VideoFullscreenManager
)
list(APPEND WebKit_PUBLIC_FRAMEWORK_HEADERS
Shared/API/Cocoa/RemoteObjectInvocation.h
Shared/API/Cocoa/RemoteObjectRegistry.h
Shared/API/Cocoa/WKBrowsingContextHandle.h
Shared/API/Cocoa/WKDataDetectorTypes.h
Shared/API/Cocoa/WKDragDestinationAction.h
Shared/API/Cocoa/WKFoundation.h
Shared/API/Cocoa/WKMain.h
Shared/API/Cocoa/WKRemoteObject.h
Shared/API/Cocoa/WKRemoteObjectCoder.h
Shared/API/Cocoa/WebKit.h
Shared/API/Cocoa/WebKitPrivate.h
Shared/API/Cocoa/_WKFrameHandle.h
Shared/API/Cocoa/_WKHitTestResult.h
Shared/API/Cocoa/_WKNSFileManagerExtras.h
Shared/API/Cocoa/_WKNSWindowExtras.h
Shared/API/Cocoa/_WKRemoteObjectInterface.h
Shared/API/Cocoa/_WKRemoteObjectRegistry.h
Shared/API/Cocoa/_WKRenderingProgressEvents.h
Shared/API/Cocoa/_WKSameDocumentNavigationType.h
Shared/API/c/mac/WKBaseMac.h
Shared/API/c/mac/WKCertificateInfoMac.h
Shared/API/c/mac/WKMediaFormatReader.h
Shared/API/c/mac/WKObjCTypeWrapperRef.h
Shared/API/c/mac/WKURLRequestNS.h
Shared/API/c/mac/WKURLResponseNS.h
Shared/API/c/mac/WKWebArchiveRef.h
Shared/API/c/mac/WKWebArchiveResource.h
UIProcess/API/Cocoa/NSAttributedString.h
UIProcess/API/Cocoa/NSAttributedStringPrivate.h
UIProcess/API/Cocoa/PageLoadStateObserver.h
UIProcess/API/Cocoa/WKBackForwardList.h
UIProcess/API/Cocoa/WKBackForwardListItem.h
UIProcess/API/Cocoa/WKBackForwardListItemPrivate.h
UIProcess/API/Cocoa/WKBackForwardListPrivate.h
UIProcess/API/Cocoa/WKBrowsingContextController.h
UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h
UIProcess/API/Cocoa/WKBrowsingContextGroup.h
UIProcess/API/Cocoa/WKBrowsingContextGroupPrivate.h
UIProcess/API/Cocoa/WKBrowsingContextHistoryDelegate.h
UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h
UIProcess/API/Cocoa/WKBrowsingContextLoadDelegatePrivate.h
UIProcess/API/Cocoa/WKBrowsingContextPolicyDelegate.h
UIProcess/API/Cocoa/WKConnection.h
UIProcess/API/Cocoa/WKContentRuleList.h
UIProcess/API/Cocoa/WKContentRuleListPrivate.h
UIProcess/API/Cocoa/WKContentRuleListStore.h
UIProcess/API/Cocoa/WKContentRuleListStorePrivate.h
UIProcess/API/Cocoa/WKContentWorld.h
UIProcess/API/Cocoa/WKContentWorldPrivate.h
UIProcess/API/Cocoa/WKContextMenuElementInfo.h
UIProcess/API/Cocoa/WKContextMenuElementInfoPrivate.h
UIProcess/API/Cocoa/WKDownload.h
UIProcess/API/Cocoa/WKDownloadDelegate.h
UIProcess/API/Cocoa/WKError.h
UIProcess/API/Cocoa/WKErrorPrivate.h
UIProcess/API/Cocoa/WKFindConfiguration.h
UIProcess/API/Cocoa/WKFindResult.h
UIProcess/API/Cocoa/WKFrameInfo.h
UIProcess/API/Cocoa/WKFrameInfoPrivate.h
UIProcess/API/Cocoa/WKHTTPCookieStore.h
UIProcess/API/Cocoa/WKHTTPCookieStorePrivate.h
UIProcess/API/Cocoa/WKHistoryDelegatePrivate.h
UIProcess/API/Cocoa/WKMenuItemIdentifiersPrivate.h
UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.h
UIProcess/API/Cocoa/WKNavigation.h
UIProcess/API/Cocoa/WKNavigationAction.h
UIProcess/API/Cocoa/WKNavigationActionPrivate.h
UIProcess/API/Cocoa/WKNavigationData.h
UIProcess/API/Cocoa/WKNavigationDelegate.h
UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h
UIProcess/API/Cocoa/WKNavigationPrivate.h
UIProcess/API/Cocoa/WKNavigationResponse.h
UIProcess/API/Cocoa/WKNavigationResponsePrivate.h
UIProcess/API/Cocoa/WKOpenPanelParameters.h
UIProcess/API/Cocoa/WKOpenPanelParametersPrivate.h
UIProcess/API/Cocoa/WKPDFConfiguration.h
UIProcess/API/Cocoa/WKPreferences.h
UIProcess/API/Cocoa/WKPreferencesPrivate.h
UIProcess/API/Cocoa/WKPreviewActionItem.h
UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.h
UIProcess/API/Cocoa/WKPreviewElementInfo.h
UIProcess/API/Cocoa/WKProcessGroup.h
UIProcess/API/Cocoa/WKProcessGroupPrivate.h
UIProcess/API/Cocoa/WKProcessPool.h
UIProcess/API/Cocoa/WKProcessPoolPrivate.h
UIProcess/API/Cocoa/WKScriptMessage.h
UIProcess/API/Cocoa/WKScriptMessageHandler.h
UIProcess/API/Cocoa/WKScriptMessageHandlerWithReply.h
UIProcess/API/Cocoa/WKSecurityOrigin.h
UIProcess/API/Cocoa/WKSnapshotConfiguration.h
UIProcess/API/Cocoa/WKTypeRefWrapper.h
UIProcess/API/Cocoa/WKUIDelegate.h
UIProcess/API/Cocoa/WKUIDelegatePrivate.h
UIProcess/API/Cocoa/WKURLSchemeHandler.h
UIProcess/API/Cocoa/WKURLSchemeTask.h
UIProcess/API/Cocoa/WKURLSchemeTaskPrivate.h
UIProcess/API/Cocoa/WKUserContentController.h
UIProcess/API/Cocoa/WKUserContentControllerPrivate.h
UIProcess/API/Cocoa/WKUserScript.h
UIProcess/API/Cocoa/WKUserScriptPrivate.h
UIProcess/API/Cocoa/WKView.h
UIProcess/API/Cocoa/WKViewPrivate.h
UIProcess/API/Cocoa/WKWebArchive.h
UIProcess/API/Cocoa/WKWebView.h
UIProcess/API/Cocoa/WKWebViewConfiguration.h
UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h
UIProcess/API/Cocoa/WKWebViewPrivate.h
UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h
UIProcess/API/Cocoa/WKWebpagePreferences.h
UIProcess/API/Cocoa/WKWebpagePreferencesPrivate.h
UIProcess/API/Cocoa/WKWebsiteDataRecord.h
UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h
UIProcess/API/Cocoa/WKWebsiteDataStore.h
UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h
UIProcess/API/Cocoa/WKWindowFeatures.h
UIProcess/API/Cocoa/WKWindowFeaturesPrivate.h
UIProcess/API/Cocoa/WebKitLegacy.h
UIProcess/API/Cocoa/_WKActivatedElementInfo.h
UIProcess/API/Cocoa/_WKAppHighlight.h
UIProcess/API/Cocoa/_WKAppHighlightDelegate.h
UIProcess/API/Cocoa/_WKApplicationManifest.h
UIProcess/API/Cocoa/_WKAttachment.h
UIProcess/API/Cocoa/_WKAuthenticationExtensionsClientInputs.h
UIProcess/API/Cocoa/_WKAuthenticationExtensionsClientOutputs.h
UIProcess/API/Cocoa/_WKAuthenticatorAssertionResponse.h
UIProcess/API/Cocoa/_WKAuthenticatorAttachment.h
UIProcess/API/Cocoa/_WKAuthenticatorAttestationResponse.h
UIProcess/API/Cocoa/_WKAuthenticatorResponse.h
UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.h
UIProcess/API/Cocoa/_WKAutomationDelegate.h
UIProcess/API/Cocoa/_WKAutomationSession.h
UIProcess/API/Cocoa/_WKAutomationSessionConfiguration.h
UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h
UIProcess/API/Cocoa/_WKContentRuleListAction.h
UIProcess/API/Cocoa/_WKContextMenuElementInfo.h
UIProcess/API/Cocoa/_WKCustomHeaderFields.h
UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h
UIProcess/API/Cocoa/_WKDownload.h
UIProcess/API/Cocoa/_WKDownloadDelegate.h
UIProcess/API/Cocoa/_WKElementAction.h
UIProcess/API/Cocoa/_WKErrorRecoveryAttempting.h
UIProcess/API/Cocoa/_WKExperimentalFeature.h
UIProcess/API/Cocoa/_WKFindDelegate.h
UIProcess/API/Cocoa/_WKFindOptions.h
UIProcess/API/Cocoa/_WKFocusedElementInfo.h
UIProcess/API/Cocoa/_WKFormInputSession.h
UIProcess/API/Cocoa/_WKFrameTreeNode.h
UIProcess/API/Cocoa/_WKFullscreenDelegate.h
UIProcess/API/Cocoa/_WKGeolocationCoreLocationProvider.h
UIProcess/API/Cocoa/_WKGeolocationPosition.h
UIProcess/API/Cocoa/_WKIconLoadingDelegate.h
UIProcess/API/Cocoa/_WKInputDelegate.h
UIProcess/API/Cocoa/_WKInspector.h
UIProcess/API/Cocoa/_WKInspectorConfiguration.h
UIProcess/API/Cocoa/_WKInspectorDebuggableInfo.h
UIProcess/API/Cocoa/_WKInspectorDelegate.h
UIProcess/API/Cocoa/_WKInspectorExtension.h
UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h
UIProcess/API/Cocoa/_WKInspectorExtensionHost.h
UIProcess/API/Cocoa/_WKInspectorPrivate.h
UIProcess/API/Cocoa/_WKInspectorPrivateForTesting.h
UIProcess/API/Cocoa/_WKInspectorWindow.h
UIProcess/API/Cocoa/_WKInternalDebugFeature.h
UIProcess/API/Cocoa/_WKLayoutMode.h
UIProcess/API/Cocoa/_WKLinkIconParameters.h
UIProcess/API/Cocoa/_WKOverlayScrollbarStyle.h
UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialCreationOptions.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialDescriptor.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialEntity.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialParameters.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialRelyingPartyEntity.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialRequestOptions.h
UIProcess/API/Cocoa/_WKPublicKeyCredentialUserEntity.h
UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.h
UIProcess/API/Cocoa/_WKRemoteWebInspectorViewControllerPrivate.h
UIProcess/API/Cocoa/_WKResourceLoadDelegate.h
UIProcess/API/Cocoa/_WKResourceLoadInfo.h
UIProcess/API/Cocoa/_WKResourceLoadStatisticsFirstParty.h
UIProcess/API/Cocoa/_WKResourceLoadStatisticsThirdParty.h
UIProcess/API/Cocoa/_WKSessionState.h
UIProcess/API/Cocoa/_WKTapHandlingResult.h
UIProcess/API/Cocoa/_WKTextInputContext.h
UIProcess/API/Cocoa/_WKTextManipulationConfiguration.h
UIProcess/API/Cocoa/_WKTextManipulationDelegate.h
UIProcess/API/Cocoa/_WKTextManipulationExclusionRule.h
UIProcess/API/Cocoa/_WKTextManipulationItem.h
UIProcess/API/Cocoa/_WKTextManipulationToken.h
UIProcess/API/Cocoa/_WKThumbnailView.h
UIProcess/API/Cocoa/_WKUserContentExtensionStore.h
UIProcess/API/Cocoa/_WKUserContentExtensionStorePrivate.h
UIProcess/API/Cocoa/_WKUserContentFilter.h
UIProcess/API/Cocoa/_WKUserContentFilterPrivate.h
UIProcess/API/Cocoa/_WKUserContentWorld.h
UIProcess/API/Cocoa/_WKUserInitiatedAction.h
UIProcess/API/Cocoa/_WKUserStyleSheet.h
UIProcess/API/Cocoa/_WKUserVerificationRequirement.h
UIProcess/API/Cocoa/_WKVisitedLinkStore.h
UIProcess/API/Cocoa/_WKWebAuthenticationAssertionResponse.h
UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h
UIProcess/API/Cocoa/_WKWebAuthenticationPanelForTesting.h
UIProcess/API/Cocoa/_WKWebsiteDataSize.h
UIProcess/API/Cocoa/_WKWebsiteDataStore.h
UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h
UIProcess/API/Cocoa/_WKWebsiteDataStoreDelegate.h
UIProcess/API/ios/WKWebViewPrivateForTestingIOS.h
UIProcess/API/mac/WKWebViewPrivateForTestingMac.h
UIProcess/Cocoa/WKShareSheet.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessBundleParameters.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInEditingDelegate.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInHitTestResult.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandlePrivate.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInRangeHandle.h
WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.h
WebProcess/InjectedBundle/API/mac/WKDOMDocument.h
WebProcess/InjectedBundle/API/mac/WKDOMElement.h
WebProcess/InjectedBundle/API/mac/WKDOMInternals.h
WebProcess/InjectedBundle/API/mac/WKDOMNode.h
WebProcess/InjectedBundle/API/mac/WKDOMNodePrivate.h
WebProcess/InjectedBundle/API/mac/WKDOMRange.h
WebProcess/InjectedBundle/API/mac/WKDOMRangePrivate.h
WebProcess/InjectedBundle/API/mac/WKDOMText.h
WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h
WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h
WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h
WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h
WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h
)
set(WebKit_FORWARDING_HEADERS_DIRECTORIES
Platform
Shared
NetworkProcess/Downloads
Platform/IPC
Shared/API
Shared/Cocoa
Shared/API/Cocoa
Shared/API/c
Shared/API/c/cf
Shared/API/c/mac
UIProcess/Cocoa
UIProcess/API/C
UIProcess/API/C/Cocoa
UIProcess/API/C/mac
UIProcess/API/cpp
UIProcess/API/ios
WebProcess/InjectedBundle/API/Cocoa
WebProcess/InjectedBundle/API/c
WebProcess/InjectedBundle/API/mac
)
# FIXME: Forwarding headers should be complete copies of the header.
set(WebKitLegacyForwardingHeaders
DOM.h
DOMCore.h
DOMElement.h
DOMException.h
DOMObject.h
DOMPrivate.h
WebApplicationCache.h
WebCache.h
WebCoreStatistics.h
WebDOMOperations.h
WebDOMOperationsPrivate.h
WebDatabaseManagerPrivate.h
WebDataSource.h
WebDataSourcePrivate.h
WebDefaultPolicyDelegate.h
WebDeviceOrientation.h
WebDeviceOrientationProviderMock.h
WebDocument.h
WebDocumentPrivate.h
WebDynamicScrollBarsView.h
WebEditingDelegate.h
WebFrame.h
WebFramePrivate.h
WebFrameViewPrivate.h
WebGeolocationPosition.h
WebHTMLRepresentation.h
WebHTMLView.h
WebHTMLViewPrivate.h
WebHistory.h
WebHistoryItem.h
WebHistoryItemPrivate.h
WebHistoryPrivate.h
WebIconDatabasePrivate.h
WebInspector.h
WebInspectorPrivate.h
WebKitNSStringExtras.h
WebNSURLExtras.h
WebNavigationData.h
WebNotification.h
WebPluginDatabase.h
WebPolicyDelegate.h
WebPolicyDelegatePrivate.h
WebPreferenceKeysPrivate.h
WebPreferences.h
WebPreferencesPrivate.h
WebQuotaManager.h
WebScriptWorld.h
WebSecurityOriginPrivate.h
WebStorageManagerPrivate.h
WebTypesInternal.h
WebUIDelegate.h
WebUIDelegatePrivate.h
WebView.h
WebViewPrivate
WebViewPrivate.h
)
set(ObjCForwardingHeaders
DOMAbstractView.h
DOMAttr.h
DOMBeforeLoadEvent.h
DOMBlob.h
DOMCDATASection.h
DOMCSSCharsetRule.h
DOMCSSFontFaceRule.h
DOMCSSImportRule.h
DOMCSSKeyframeRule.h
DOMCSSKeyframesRule.h
DOMCSSMediaRule.h
DOMCSSPageRule.h
DOMCSSPrimitiveValue.h
DOMCSSRule.h
DOMCSSRuleList.h
DOMCSSStyleDeclaration.h
DOMCSSStyleRule.h
DOMCSSStyleSheet.h
DOMCSSSupportsRule.h
DOMCSSUnknownRule.h
DOMCSSValue.h
DOMCSSValueList.h
DOMCharacterData.h
DOMComment.h
DOMCounter.h
DOMDOMImplementation.h
DOMDOMNamedFlowCollection.h
DOMDOMTokenList.h
DOMDocument.h
DOMDocumentFragment.h
DOMDocumentType.h
DOMElement.h
DOMEntity.h
DOMEntityReference.h
DOMEvent.h
DOMEventException.h
DOMEventListener.h
DOMEventTarget.h
DOMFile.h
DOMFileList.h
DOMHTMLAnchorElement.h
DOMHTMLAppletElement.h
DOMHTMLAreaElement.h
DOMHTMLBRElement.h
DOMHTMLBaseElement.h
DOMHTMLBaseFontElement.h
DOMHTMLBodyElement.h
DOMHTMLButtonElement.h
DOMHTMLCanvasElement.h
DOMHTMLCollection.h
DOMHTMLDListElement.h
DOMHTMLDirectoryElement.h
DOMHTMLDivElement.h
DOMHTMLDocument.h
DOMHTMLElement.h
DOMHTMLEmbedElement.h
DOMHTMLFieldSetElement.h
DOMHTMLFontElement.h
DOMHTMLFormElement.h
DOMHTMLFrameElement.h
DOMHTMLFrameSetElement.h
DOMHTMLHRElement.h
DOMHTMLHeadElement.h
DOMHTMLHeadingElement.h
DOMHTMLHtmlElement.h
DOMHTMLIFrameElement.h
DOMHTMLImageElement.h
DOMHTMLInputElement.h
DOMHTMLInputElementPrivate.h
DOMHTMLLIElement.h
DOMHTMLLabelElement.h
DOMHTMLLegendElement.h
DOMHTMLLinkElement.h
DOMHTMLMapElement.h
DOMHTMLMarqueeElement.h
DOMHTMLMediaElement.h
DOMHTMLMenuElement.h
DOMHTMLMetaElement.h
DOMHTMLModElement.h
DOMHTMLOListElement.h
DOMHTMLObjectElement.h
DOMHTMLOptGroupElement.h
DOMHTMLOptionElement.h
DOMHTMLOptionsCollection.h
DOMHTMLParagraphElement.h
DOMHTMLParamElement.h
DOMHTMLPreElement.h
DOMHTMLQuoteElement.h
DOMHTMLScriptElement.h
DOMHTMLSelectElement.h
DOMHTMLStyleElement.h
DOMHTMLTableCaptionElement.h
DOMHTMLTableCellElement.h
DOMHTMLTableColElement.h
DOMHTMLTableElement.h
DOMHTMLTableRowElement.h
DOMHTMLTableSectionElement.h
DOMHTMLTextAreaElement.h
DOMHTMLTitleElement.h
DOMHTMLUListElement.h
DOMHTMLVideoElement.h
DOMImplementation.h
DOMKeyboardEvent.h
DOMMediaError.h
DOMMediaList.h
DOMMessageEvent.h
DOMMessagePort.h
DOMMouseEvent.h
DOMMutationEvent.h
DOMNamedNodeMap.h
DOMNode.h
DOMNodeFilter.h
DOMNodeIterator.h
DOMNodeList.h
DOMOverflowEvent.h
DOMProcessingInstruction.h
DOMProgressEvent.h
DOMRGBColor.h
DOMRange.h
DOMRangeException.h
DOMRect.h
DOMStyleSheet.h
DOMStyleSheetList.h
DOMText.h
DOMTextEvent.h
DOMTimeRanges.h
DOMTreeWalker.h
DOMUIEvent.h
DOMValidityState.h
DOMWebKitCSSFilterValue.h
DOMWebKitCSSRegionRule.h
DOMWebKitCSSTransformValue.h
DOMWebKitNamedFlow.h
DOMWheelEvent.h
DOMXPathException.h
DOMXPathExpression.h
DOMXPathNSResolver.h
DOMXPathResult.h
)
set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-compatibility_version 1 -current_version ${WEBKIT_MAC_VERSION}")
target_link_options(WebKit PRIVATE -weak_framework SafariSafeBrowsing -lsandbox -framework AuthKit)
set(WebKit_OUTPUT_NAME WebKit)
# XPC Services
function(WEBKIT_DEFINE_XPC_SERVICES)
set(RUNLOOP_TYPE _WebKit)
set(WebKit_XPC_SERVICE_DIR ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/WebKit.framework/Versions/A/XPCServices)
WEBKIT_CREATE_SYMLINK(WebProcess ${WebKit_XPC_SERVICE_DIR} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/WebKit.framework/XPCServices)
function(WEBKIT_XPC_SERVICE _target _bundle_identifier _info_plist _executable_name)
set(_service_dir ${WebKit_XPC_SERVICE_DIR}/${_bundle_identifier}.xpc/Contents)
make_directory(${_service_dir}/MacOS)
make_directory(${_service_dir}/_CodeSignature)
make_directory(${_service_dir}/Resources)
# FIXME: These version strings don't match Xcode's.
set(BUNDLE_VERSION ${WEBKIT_VERSION})
set(SHORT_VERSION_STRING ${WEBKIT_VERSION_MAJOR})
set(BUNDLE_VERSION ${WEBKIT_VERSION})
set(EXECUTABLE_NAME ${_executable_name})
set(PRODUCT_BUNDLE_IDENTIFIER ${_bundle_identifier})
set(PRODUCT_NAME ${_bundle_identifier})
configure_file(${_info_plist} ${_service_dir}/Info.plist)
set_target_properties(${_target} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${_service_dir}/MacOS")
endfunction()
WEBKIT_XPC_SERVICE(WebProcess
"com.apple.WebKit.WebContent"
${WEBKIT_DIR}/WebProcess/EntryPoint/Cocoa/XPCService/WebContentService/Info-OSX.plist
${WebProcess_OUTPUT_NAME})
WEBKIT_XPC_SERVICE(NetworkProcess
"com.apple.WebKit.Networking"
${WEBKIT_DIR}/NetworkProcess/EntryPoint/Cocoa/XPCService/NetworkService/Info-OSX.plist
${NetworkProcess_OUTPUT_NAME})
set(WebKit_RESOURCES_DIR ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/WebKit.framework/Versions/A/Resources)
add_custom_command(OUTPUT ${WebKit_RESOURCES_DIR}/com.apple.WebProcess.sb COMMAND
grep -o "^[^;]*" ${WEBKIT_DIR}/WebProcess/com.apple.WebProcess.sb.in | clang -E -P -w -include wtf/Platform.h -I ${WTF_FRAMEWORK_HEADERS_DIR} -I ${bmalloc_FRAMEWORK_HEADERS_DIR} -I ${WEBKIT_DIR} - > ${WebKit_RESOURCES_DIR}/com.apple.WebProcess.sb
VERBATIM)
add_custom_command(OUTPUT ${WebKit_RESOURCES_DIR}/com.apple.WebKit.NetworkProcess.sb COMMAND
grep -o "^[^;]*" ${WEBKIT_DIR}/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in | clang -E -P -w -include wtf/Platform.h -I ${WTF_FRAMEWORK_HEADERS_DIR} -I ${bmalloc_FRAMEWORK_HEADERS_DIR} -I ${WEBKIT_DIR} - > ${WebKit_RESOURCES_DIR}/com.apple.WebKit.NetworkProcess.sb
VERBATIM)
add_custom_target(WebKitSandboxProfiles ALL DEPENDS ${WebKit_RESOURCES_DIR}/com.apple.WebProcess.sb ${WebKit_RESOURCES_DIR}/com.apple.WebKit.NetworkProcess.sb)
add_dependencies(WebKit WebKitSandboxProfiles)
add_custom_command(OUTPUT ${WebKit_XPC_SERVICE_DIR}/com.apple.WebKit.WebContent.xpc/Contents/Resources/WebContentProcess.nib COMMAND
ibtool --compile ${WebKit_XPC_SERVICE_DIR}/com.apple.WebKit.WebContent.xpc/Contents/Resources/WebContentProcess.nib ${WEBKIT_DIR}/Resources/WebContentProcess.xib
VERBATIM)
add_custom_target(WebContentProcessNib ALL DEPENDS ${WebKit_XPC_SERVICE_DIR}/com.apple.WebKit.WebContent.xpc/Contents/Resources/WebContentProcess.nib)
add_dependencies(WebKit WebContentProcessNib)
endfunction()