| include(InspectorGResources.cmake) |
| include(GNUInstallDirs) |
| |
| set(WebKit_OUTPUT_NAME WPEWebKit-${WPE_API_VERSION}) |
| set(WebKit_WebProcess_OUTPUT_NAME WPEWebProcess) |
| set(WebKit_NetworkProcess_OUTPUT_NAME WPENetworkProcess) |
| |
| file(MAKE_DIRECTORY ${DERIVED_SOURCES_WPE_API_DIR}) |
| file(MAKE_DIRECTORY ${FORWARDING_HEADERS_WPE_DIR}) |
| file(MAKE_DIRECTORY ${FORWARDING_HEADERS_WPE_EXTENSION_DIR}) |
| file(MAKE_DIRECTORY ${FORWARDING_HEADERS_WPE_DOM_DIR}) |
| |
| configure_file(UIProcess/API/wpe/WebKitVersion.h.in ${DERIVED_SOURCES_WPE_API_DIR}/WebKitVersion.h) |
| configure_file(wpe/wpe-webkit.pc.in ${WPE_PKGCONFIG_FILE} @ONLY) |
| configure_file(wpe/wpe-web-extension.pc.in ${WPEWebExtension_PKGCONFIG_FILE} @ONLY) |
| |
| add_definitions(-DWEBKIT2_COMPILATION) |
| |
| add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}") |
| add_definitions(-DPKGLIBDIR="${LIB_INSTALL_DIR}/wpe-webkit-${WPE_API_VERSION}") |
| add_definitions(-DPKGLIBEXECDIR="${LIBEXEC_INSTALL_DIR}") |
| add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}") |
| add_definitions(-DLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}") |
| |
| if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin") |
| WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map") |
| endif () |
| |
| set(WebKit_USE_PREFIX_HEADER ON) |
| |
| add_custom_target(webkitwpe-forwarding-headers |
| COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/Scripts/generate-forwarding-headers.pl --include-path ${WEBKIT_DIR} --output ${FORWARDING_HEADERS_DIR} --platform wpe --platform soup |
| ) |
| |
| # These symbolic link allows includes like #include <wpe/WebkitWebView.h> which simulates installed headers. |
| add_custom_command( |
| OUTPUT ${FORWARDING_HEADERS_WPE_DIR}/wpe |
| DEPENDS ${WEBKIT_DIR}/UIProcess/API/wpe |
| COMMAND ln -n -s -f ${WEBKIT_DIR}/UIProcess/API/wpe ${FORWARDING_HEADERS_WPE_DIR}/wpe |
| ) |
| |
| add_custom_command( |
| OUTPUT ${FORWARDING_HEADERS_WPE_EXTENSION_DIR}/wpe |
| DEPENDS ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe |
| COMMAND ln -n -s -f ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe ${FORWARDING_HEADERS_WPE_EXTENSION_DIR}/wpe |
| ) |
| |
| add_custom_command( |
| OUTPUT ${FORWARDING_HEADERS_WPE_DOM_DIR}/wpe |
| DEPENDS ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM |
| COMMAND ln -n -s -f ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM ${FORWARDING_HEADERS_WPE_DOM_DIR}/wpe |
| VERBATIM |
| ) |
| |
| add_custom_target(webkitwpe-fake-api-headers |
| DEPENDS ${FORWARDING_HEADERS_WPE_DIR}/wpe |
| ${FORWARDING_HEADERS_WPE_EXTENSION_DIR}/wpe |
| ${FORWARDING_HEADERS_WPE_DOM_DIR}/wpe |
| ) |
| |
| set(WEBKIT_EXTRA_DEPENDENCIES |
| webkitwpe-fake-api-headers |
| webkitwpe-forwarding-headers |
| ) |
| |
| list(APPEND WebProcess_SOURCES |
| WebProcess/EntryPoint/unix/WebProcessMain.cpp |
| ) |
| |
| list(APPEND NetworkProcess_SOURCES |
| NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp |
| ) |
| |
| list(APPEND WebKit_UNIFIED_SOURCE_LIST_FILES |
| "SourcesWPE.txt" |
| ) |
| |
| list(APPEND WebKit_MESSAGES_IN_FILES |
| NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.messages.in |
| |
| UIProcess/Network/CustomProtocols/LegacyCustomProtocolManagerProxy.messages.in |
| ) |
| |
| list(APPEND WebKit_DERIVED_SOURCES |
| ${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.c |
| |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.cpp |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.cpp |
| ) |
| |
| set(WPE_API_INSTALLED_HEADERS |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.h |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitVersion.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitApplicationInfo.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitAuthenticationRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitAutocleanups.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitAutomationSession.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitBackForwardList.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitBackForwardListItem.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitCredential.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitColor.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitContextMenu.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitContextMenuActions.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitContextMenuItem.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitCookieManager.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitDefines.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitDeviceInfoPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitDownload.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitEditingCommands.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitEditorState.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitError.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitFaviconDatabase.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitFileChooserRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitFindController.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitFormSubmissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitGeolocationManager.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitGeolocationPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitHitTestResult.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitInstallMissingMediaPluginsPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitJavascriptResult.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitMimeInfo.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitNavigationAction.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitNavigationPolicyDecision.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitNetworkProxySettings.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitNotificationPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitNotification.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitPlugin.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitPolicyDecision.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitResponsePolicyDecision.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitScriptDialog.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitSecurityManager.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitSecurityOrigin.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitSettings.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitURIRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitURIResponse.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitURISchemeRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitURIUtilities.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitUserContent.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitUserContentFilterStore.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitUserContentManager.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitUserMediaPermissionRequest.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebContext.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebResource.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebView.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebViewBackend.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebViewSessionState.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebsiteData.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWebsiteDataManager.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitWindowProperties.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/webkit.h |
| ) |
| |
| set(WPE_WEB_EXTENSION_API_INSTALLED_HEADERS |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitConsoleMessage.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitFrame.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitScriptWorld.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebEditor.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebExtension.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebExtensionAutocleanups.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebHitTestResult.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebPage.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/webkit-web-extension.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/webkitdom.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/WebKitDOMDefines.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/WebKitDOMDocument.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/WebKitDOMElement.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/WebKitDOMNode.h |
| ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM/WebKitDOMObject.h |
| ) |
| |
| # To generate WebKitEnumTypes.h we want to use all installed headers, except WebKitEnumTypes.h itself. |
| set(WPE_ENUM_GENERATION_HEADERS ${WPE_API_INSTALLED_HEADERS}) |
| list(REMOVE_ITEM WPE_ENUM_GENERATION_HEADERS ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.h) |
| add_custom_command( |
| OUTPUT ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.h |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.cpp |
| DEPENDS ${WPE_ENUM_GENERATION_HEADERS} |
| |
| COMMAND glib-mkenums --template ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitEnumTypes.h.template ${WPE_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ | sed s/WEBKIT_TYPE_KIT/WEBKIT_TYPE/ > ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.h |
| |
| COMMAND glib-mkenums --template ${WEBKIT_DIR}/UIProcess/API/wpe/WebKitEnumTypes.cpp.template ${WPE_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ > ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.cpp |
| VERBATIM |
| ) |
| |
| set(WPE_WEB_PROCESS_ENUM_GENERATION_HEADERS ${WPE_WEB_EXTENSION_API_INSTALLED_HEADERS}) |
| list(REMOVE_ITEM WPE_WEB_PROCESS_ENUM_GENERATION_HEADERS ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.h) |
| add_custom_command( |
| OUTPUT ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.h |
| ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.cpp |
| DEPENDS ${WPE_WEB_PROCESS_ENUM_GENERATION_HEADERS} |
| |
| COMMAND glib-mkenums --template ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebProcessEnumTypes.h.template ${WPE_WEB_PROCESS_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ | sed s/WEBKIT_TYPE_KIT/WEBKIT_TYPE/ > ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.h |
| |
| COMMAND glib-mkenums --template ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/WebKitWebProcessEnumTypes.cpp.template ${WPE_WEB_PROCESS_ENUM_GENERATION_HEADERS} | sed s/web_kit/webkit/ > ${DERIVED_SOURCES_WPE_API_DIR}/WebKitWebProcessEnumTypes.cpp |
| VERBATIM |
| ) |
| |
| set(WebKitResources |
| ) |
| |
| if (ENABLE_WEB_AUDIO) |
| list(APPEND WebKitResources |
| " <file alias=\"audio/Composite\">Composite.wav</file>\n" |
| ) |
| endif () |
| |
| file(WRITE ${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.xml |
| "<?xml version=1.0 encoding=UTF-8?>\n" |
| "<gresources>\n" |
| " <gresource prefix=\"/org/webkitwpe/resources\">\n" |
| ${WebKitResources} |
| " </gresource>\n" |
| "</gresources>\n" |
| ) |
| |
| add_custom_command( |
| OUTPUT ${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.c |
| DEPENDS ${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.xml |
| COMMAND glib-compile-resources --generate --sourcedir=${CMAKE_SOURCE_DIR}/Source/WebCore/Resources --sourcedir=${CMAKE_SOURCE_DIR}/Source/WebCore/platform/audio/resources --target=${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.c ${WebKit_DERIVED_SOURCES_DIR}/WebKitResourcesGResourceBundle.xml |
| VERBATIM |
| ) |
| |
| list(APPEND WebKit_INCLUDE_DIRECTORIES |
| "${DERIVED_SOURCES_JAVASCRIPCOREWPE_DIR}" |
| "${FORWARDING_HEADERS_DIR}" |
| "${FORWARDING_HEADERS_DIR}/JavaScriptCore/" |
| "${FORWARDING_HEADERS_DIR}/JavaScriptCore/glib" |
| "${FORWARDING_HEADERS_WPE_DIR}" |
| "${FORWARDING_HEADERS_WPE_EXTENSION_DIR}" |
| "${FORWARDING_HEADERS_WPE_DOM_DIR}" |
| "${DERIVED_SOURCES_DIR}" |
| "${DERIVED_SOURCES_WPE_API_DIR}" |
| "${WEBKIT_DIR}/NetworkProcess/CustomProtocols/soup" |
| "${WEBKIT_DIR}/NetworkProcess/soup" |
| "${WEBKIT_DIR}/NetworkProcess/unix" |
| "${WEBKIT_DIR}/Platform/IPC/glib" |
| "${WEBKIT_DIR}/Platform/IPC/unix" |
| "${WEBKIT_DIR}/Platform/classifier" |
| "${WEBKIT_DIR}/Shared/API/c/wpe" |
| "${WEBKIT_DIR}/Shared/API/glib" |
| "${WEBKIT_DIR}/Shared/CoordinatedGraphics" |
| "${WEBKIT_DIR}/Shared/CoordinatedGraphics/threadedcompositor" |
| "${WEBKIT_DIR}/Shared/glib" |
| "${WEBKIT_DIR}/Shared/libwpe" |
| "${WEBKIT_DIR}/Shared/soup" |
| "${WEBKIT_DIR}/Shared/unix" |
| "${WEBKIT_DIR}/UIProcess/API/C/cairo" |
| "${WEBKIT_DIR}/UIProcess/API/C/wpe" |
| "${WEBKIT_DIR}/UIProcess/API/glib" |
| "${WEBKIT_DIR}/UIProcess/API/wpe" |
| "${WEBKIT_DIR}/UIProcess/CoordinatedGraphics" |
| "${WEBKIT_DIR}/UIProcess/Network/CustomProtocols/soup" |
| "${WEBKIT_DIR}/UIProcess/geoclue" |
| "${WEBKIT_DIR}/UIProcess/gstreamer" |
| "${WEBKIT_DIR}/UIProcess/linux" |
| "${WEBKIT_DIR}/UIProcess/soup" |
| "${WEBKIT_DIR}/UIProcess/wpe" |
| "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib" |
| "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib/DOM" |
| "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe" |
| "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM" |
| "${WEBKIT_DIR}/WebProcess/soup" |
| "${WEBKIT_DIR}/WebProcess/unix" |
| "${WEBKIT_DIR}/WebProcess/WebCoreSupport/soup" |
| "${WEBKIT_DIR}/WebProcess/WebPage/CoordinatedGraphics" |
| "${WEBKIT_DIR}/WebProcess/WebPage/wpe" |
| "${WTF_DIR}/wtf/gtk/" |
| "${WTF_DIR}/wtf/gobject" |
| "${WTF_DIR}" |
| ) |
| |
| list(APPEND WebKit_SYSTEM_INCLUDE_DIRECTORIES |
| ${CAIRO_INCLUDE_DIRS} |
| ${FREETYPE_INCLUDE_DIRS} |
| ${GLIB_INCLUDE_DIRS} |
| ${GSTREAMER_INCLUDE_DIRS} |
| ${HARFBUZZ_INCLUDE_DIRS} |
| ${LIBSECCOMP_INCLUDE_DIRS} |
| ${LIBSOUP_INCLUDE_DIRS} |
| ${WPE_INCLUDE_DIRS} |
| ) |
| |
| list(APPEND WebKit_LIBRARIES |
| PRIVATE |
| ${CAIRO_LIBRARIES} |
| ${FREETYPE_LIBRARIES} |
| ${GLIB_LIBRARIES} |
| ${GLIB_GMODULE_LIBRARIES} |
| ${GSTREAMER_LIBRARIES} |
| ${HARFBUZZ_LIBRARIES} |
| ${LIBSECCOMP_LIBRARIES} |
| ${LIBSOUP_LIBRARIES} |
| ${WPE_LIBRARIES} |
| ) |
| |
| WEBKIT_BUILD_INSPECTOR_GRESOURCES(${DERIVED_SOURCES_WEBINSPECTORUI_DIR}) |
| list(APPEND WPEWebInspectorResources_DERIVED_SOURCES |
| ${DERIVED_SOURCES_WEBINSPECTORUI_DIR}/InspectorGResourceBundle.c |
| ) |
| |
| list(APPEND WPEWebInspectorResources_LIBRARIES |
| ${GLIB_GIO_LIBRARIES} |
| ) |
| |
| list(APPEND WPEWebInspectorResources_SYSTEM_INCLUDE_DIRECTORIES |
| ${GLIB_INCLUDE_DIRS} |
| ) |
| |
| add_library(WPEWebInspectorResources SHARED ${WPEWebInspectorResources_DERIVED_SOURCES}) |
| add_dependencies(WPEWebInspectorResources WebKit) |
| target_link_libraries(WPEWebInspectorResources ${WPEWebInspectorResources_LIBRARIES}) |
| target_include_directories(WPEWebInspectorResources SYSTEM PUBLIC ${WPEWebInspectorResources_SYSTEM_INCLUDE_DIRECTORIES}) |
| install(TARGETS WPEWebInspectorResources DESTINATION "${LIB_INSTALL_DIR}/wpe-webkit-${WPE_API_VERSION}") |
| |
| add_library(WPEInjectedBundle MODULE "${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib/WebKitInjectedBundleMain.cpp") |
| ADD_WEBKIT_PREFIX_HEADER(WPEInjectedBundle) |
| target_link_libraries(WPEInjectedBundle WebKit) |
| |
| target_include_directories(WPEInjectedBundle PRIVATE ${WebKit_INCLUDE_DIRECTORIES}) |
| target_include_directories(WPEInjectedBundle SYSTEM PRIVATE ${WebKit_SYSTEM_INCLUDE_DIRECTORIES}) |
| |
| file(WRITE ${CMAKE_BINARY_DIR}/gtkdoc-wpe.cfg |
| "[wpe-${WPE_API_VERSION}]\n" |
| "pkgconfig_file=${WPE_PKGCONFIG_FILE}\n" |
| "decorator=WEBKIT_API|WEBKIT_DEPRECATED|WEBKIT_DEPRECATED_FOR\\(.+\\)\n" |
| "deprecation_guard=WEBKIT_DISABLE_DEPRECATED\n" |
| "namespace=webkit\n" |
| "cflags=-I${CMAKE_SOURCE_DIR}/Source\n" |
| " -I${WEBKIT_DIR}/Shared/API/glib\n" |
| " -I${WEBKIT_DIR}/UIProcess/API/glib\n" |
| " -I${WEBKIT_DIR}/UIProcess/API/wpe\n" |
| " -I${FORWARDING_HEADERS_WPE_DIR}\n" |
| "doc_dir=${WEBKIT_DIR}/UIProcess/API/wpe/docs\n" |
| "source_dirs=${WEBKIT_DIR}/Shared/API/glib\n" |
| " ${WEBKIT_DIR}/UIProcess/API/glib\n" |
| " ${WEBKIT_DIR}/UIProcess/API/wpe\n" |
| " ${DERIVED_SOURCES_WPE_API_DIR}\n" |
| "headers=${WPE_ENUM_GENERATION_HEADERS}\n" |
| "main_sgml_file=wpe-docs.sgml\n" |
| ) |
| |
| file(WRITE ${CMAKE_BINARY_DIR}/gtkdoc-webextensions.cfg |
| "[wpe-webextensions-${WPE_API_VERSION}]\n" |
| "pkgconfig_file=${WPEWebExtension_PKGCONFIG_FILE}\n" |
| "decorator=WEBKIT_API|WEBKIT_DEPRECATED|WEBKIT_DEPRECATED_FOR\\(.+\\)\n" |
| "deprecation_guard=WEBKIT_DISABLE_DEPRECATED\n" |
| "namespace=webkit_webextensions\n" |
| "cflags=-I${CMAKE_SOURCE_DIR}/Source\n" |
| " -I${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe\n" |
| " -I${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM\n" |
| " -I${FORWARDING_HEADERS_WPE_DIR}\n" |
| "doc_dir=${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/docs\n" |
| "source_dirs=${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib\n" |
| " ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/glib/DOM\n" |
| " ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe\n" |
| " ${WEBKIT_DIR}/WebProcess/InjectedBundle/API/wpe/DOM\n" |
| "headers=${WPE_WEB_EXTENSION_API_INSTALLED_HEADERS}\n" |
| "main_sgml_file=wpe-webextensions-docs.sgml\n" |
| ) |
| |
| if (ENABLE_WPE_QT_API) |
| set(qtwpe_SOURCES |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQtViewBackend.cpp |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQmlExtensionPlugin.cpp |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQtView.cpp |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQtViewLoadRequest.cpp |
| ) |
| |
| set(qtwpe_LIBRARIES |
| Qt5::Core Qt5::Quick |
| WebKit |
| ${LIBEPOXY_LIBRARIES} |
| ${WPE_BACKEND_FDO_LIBRARIES} |
| ) |
| |
| set(qtwpe_INCLUDE_DIRECTORIES |
| ${Qt5_INCLUDE_DIRS} |
| ${Qt5Gui_PRIVATE_INCLUDE_DIRS} |
| ${LIBEPOXY_INCLUDE_DIRS} |
| ${WPE_BACKEND_FDO_INCLUDE_DIRS} |
| ) |
| |
| list(APPEND WPE_API_INSTALLED_HEADERS |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQtView.h |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/WPEQtViewLoadRequest.h |
| ) |
| |
| add_library(qtwpe SHARED ${qtwpe_SOURCES}) |
| set_target_properties(qtwpe PROPERTIES |
| OUTPUT_NAME qtwpe |
| AUTOMOC ON |
| CXX_STANDARD 14 |
| ) |
| target_compile_definitions(qtwpe PUBLIC QT_NO_KEYWORDS=1) |
| target_link_libraries(qtwpe ${qtwpe_LIBRARIES}) |
| target_include_directories(qtwpe SYSTEM PRIVATE ${qtwpe_INCLUDE_DIRECTORIES}) |
| install(TARGETS qtwpe DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/qml/org/wpewebkit/qtwpe/") |
| install(FILES ${WEBKIT_DIR}/UIProcess/API/wpe/qt/qmldir DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/qml/org/wpewebkit/qtwpe/") |
| |
| file(MAKE_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/qml/org/wpewebkit/qtwpe) |
| add_custom_command(TARGET qtwpe POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy |
| ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libqtwpe.so |
| ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/qml/org/wpewebkit/qtwpe) |
| add_custom_command(TARGET qtwpe POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy |
| ${WEBKIT_DIR}/UIProcess/API/wpe/qt/qmldir |
| ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/qml/org/wpewebkit/qtwpe) |
| endif () |
| |
| install(TARGETS WPEInjectedBundle |
| DESTINATION "${LIB_INSTALL_DIR}/wpe-webkit-${WPE_API_VERSION}/injected-bundle" |
| ) |
| |
| install(FILES "${CMAKE_BINARY_DIR}/wpe-webkit-${WPE_API_VERSION}.pc" |
| "${CMAKE_BINARY_DIR}/wpe-web-extension-${WPE_API_VERSION}.pc" |
| DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" |
| COMPONENT "Development" |
| ) |
| |
| install(FILES ${WPE_API_INSTALLED_HEADERS} |
| ${WPE_WEB_EXTENSION_API_INSTALLED_HEADERS} |
| DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/wpe-webkit-${WPE_API_VERSION}/wpe" |
| COMPONENT "Development" |
| ) |