if(NOT DEFINED WEBENGINE_ROOT_SOURCE_DIR) get_filename_component(WEBENGINE_ROOT_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/../.." REALPATH) endif() include(${WEBENGINE_ROOT_SOURCE_DIR}/cmake/Functions.cmake) find_package(Qt6 COMPONENTS Gui) get_target_property(qtWebEngineProcessName WebEngineCore QTWEBENGINEPROCESS_NAME) get_target_property(isFramework WebEngineCore FRAMEWORK) qt_internal_add_executable(${qtWebEngineProcessName} NO_INSTALL SOURCES main.cpp ) if(WIN32) target_sources(${qtWebEngineProcessName} PRIVATE support_win.cpp) target_link_libraries(${qtWebEngineProcessName} PRIVATE WebEngineCoreSandbox) set_property(TARGET ${qtWebEngineProcessName} PROPERTY WIN32_EXECUTABLE TRUE) # get libs rsp file, since cmake is not aware of PUBLIC libs for WebEngineCore get_target_property(libs_rsp WebEngineCore LIBS_RSP) target_link_options(${qtWebEngineProcessName} PRIVATE "@${libs_rsp}") endif() qt_internal_extend_target(${qtWebEngineProcessName} PUBLIC_LIBRARIES Qt::Gui Qt::WebEngineCore LIBRARIES Qt::CorePrivate Qt::WebEngineCorePrivate ) target_include_directories(${qtWebEngineProcessName} PRIVATE ../core) qt_get_cmake_configurations(configs) foreach(config ${configs}) string(TOUPPER "${config}" config_upper) set_target_properties(${qtWebEngineProcessName} PROPERTIES RUNTIME_OUTPUT_DIRECTORY_${config_upper} "${QT_BUILD_DIR}/${INSTALL_LIBEXECDIR}") endforeach() if(QT_FEATURE_debug_and_release) set_target_properties(${qtWebEngineProcessName} PROPERTIES OUTPUT_NAME_DEBUG ${qtWebEngineProcessName}${CMAKE_DEBUG_POSTFIX}) endif() qt_apply_rpaths(TARGET ${qtWebEngineProcessName} INSTALL_PATH "${INSTALL_LIBEXECDIR}" RELATIVE_RPATH) if(isFramework) set_target_properties(${qtWebEngineProcessName} PROPERTIES MACOSX_BUNDLE TRUE) target_sources(${qtWebEngineProcessName} PRIVATE QtWebEngineProcess.entitlements) set_source_files_properties(QtWebEngineProcess.entitlements PROPERTIES MACOSX_PACKAGE_LOCATION Resources ) add_custom_command(TARGET ${qtWebEngineProcessName} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "$/Versions/A/Helpers/${qtWebEngineProcessName}.app" COMMAND ${CMAKE_COMMAND} -E create_symlink "Versions/Current/Helpers" "$/Helpers" USES_TERMINAL ) install(TARGETS ${qtWebEngineProcessName} BUNDLE DESTINATION ./lib/QtWebEngineCore.framework/Versions/A/Helpers COMPONENT Runtime ) else() install(TARGETS ${qtWebEngineProcessName} CONFIGURATIONS ${configs} RUNTIME DESTINATION "${INSTALL_LIBEXECDIR}" ) endif() if(MSVC) install(FILES "$" OPTIONAL DESTINATION "${INSTALL_LIBEXECDIR}" ) endif()