From c733f89eaf0c6bf70ab35666a4ef38490abca828 Mon Sep 17 00:00:00 2001 From: Michal Klocek Date: Thu, 30 Sep 2021 08:09:21 +0200 Subject: Fix setup for 'no-prefix' builds QT_SUPERBUILD is never cached and user can run only qtbase as super build and compile any other module as separate module build, moreover this can be also 'no prefix' build. Fix missing checks to support that case and clean up install of resources. For mac framework builds copy bundle to right place in case of 'no-prefix' builds. Fixes: QTBUG-94604 Task-number: QTBUG-96375 Pick-to: 6.2 Change-Id: I4ab7d4fed2c2be93f2a048a510419849361883ba Reviewed-by: Allan Sandfeld Jensen --- src/core/api/CMakeLists.txt | 35 ++++++++++++++--------------------- src/process/CMakeLists.txt | 17 +++++++++++++---- 2 files changed, 27 insertions(+), 25 deletions(-) (limited to 'src') diff --git a/src/core/api/CMakeLists.txt b/src/core/api/CMakeLists.txt index c74ac84ee..4ef5d0c67 100644 --- a/src/core/api/CMakeLists.txt +++ b/src/core/api/CMakeLists.txt @@ -141,27 +141,20 @@ if(QT_FEATURE_framework) add_custom_command(OUTPUT ${allResourceFiles} DEPENDS ${buildDir}/${config}/${arch}/QtWebEngineCore.stamp) add_custom_target(generate_resources_${config} DEPENDS ${allResourceFiles}) else() - if(NOT QT_WILL_INSTALL) - set(rootPath ${CMAKE_INSTALL_PREFIX}) - else() - if(NOT QT_SUPERBUILD) - set(rootPath ${PROJECT_BINARY_DIR}) - else() - set(rootPath ${QT_BUILD_DIR}) - endif() - install(FILES ${localeFiles} - DESTINATION ${INSTALL_TRANSLATIONSDIR}/qtwebengine_locales - CONFIGURATIONS ${config} - ) - install(FILES ${resourceFiles} - DESTINATION ${INSTALL_DATADIR}/resources - CONFIGURATIONS ${config} - ) - endif() - addCopyCommand(WebEngineCore "${localeFiles}" - ${rootPath}/${INSTALL_TRANSLATIONSDIR}/qtwebengine_locales + install(FILES ${localeFiles} + DESTINATION ${INSTALL_TRANSLATIONSDIR}/qtwebengine_locales + CONFIGURATIONS ${config} ) - addCopyCommand(WebEngineCore "${resourceFiles}" - ${rootPath}/${INSTALL_DATADIR}/resources + install(FILES ${resourceFiles} + DESTINATION ${INSTALL_DATADIR}/resources + CONFIGURATIONS ${config} ) + if(QT_SUPERBUILD OR NOT QT_WILL_INSTALL) + addCopyCommand(WebEngineCore "${localeFiles}" + ${QT_BUILD_DIR}/${INSTALL_TRANSLATIONSDIR}/qtwebengine_locales + ) + addCopyCommand(WebEngineCore "${resourceFiles}" + ${QT_BUILD_DIR}/${INSTALL_DATADIR}/resources + ) + endif() endif() diff --git a/src/process/CMakeLists.txt b/src/process/CMakeLists.txt index 8d146aa61..8628500c0 100644 --- a/src/process/CMakeLists.txt +++ b/src/process/CMakeLists.txt @@ -44,12 +44,14 @@ 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}") + 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}) + OUTPUT_NAME_DEBUG ${qtWebEngineProcessName}${CMAKE_DEBUG_POSTFIX} + ) endif() if(isFramework) @@ -70,10 +72,17 @@ if(isFramework) USES_TERMINAL ) install(TARGETS ${qtWebEngineProcessName} - BUNDLE DESTINATION ./lib/QtWebEngineCore.framework/Versions/A/Helpers + BUNDLE DESTINATION "${INSTALL_LIBDIR}/QtWebEngineCore.framework/Versions/A/Helpers" COMPONENT Runtime ) - qt_enable_separate_debug_info(${qtWebEngineProcessName} ./lib/QtWebEngineCore.framework/Versions/A/Helpers QT_EXECUTABLE) + if(QT_SUPERBUILD OR NOT QT_WILL_INSTALL) + addCopyDirCommand(${qtWebEngineProcessName} "${QT_BUILD_DIR}/${INSTALL_LIBEXECDIR}/${qtWebEngineProcessName}.app" + "${QT_BUILD_DIR}/${INSTALL_LIBDIR}/QtWebEngineCore.framework/Versions/A/Helpers/${qtWebEngineProcessName}.app/" + ) + endif() + qt_enable_separate_debug_info(${qtWebEngineProcessName} + "${INSTALL_LIBDIR}/QtWebEngineCore.framework/Versions/A/Helpers" QT_EXECUTABLE + ) else() qt_apply_rpaths(TARGET ${qtWebEngineProcessName} INSTALL_PATH "${INSTALL_LIBEXECDIR}" RELATIVE_RPATH) install(TARGETS ${qtWebEngineProcessName} -- cgit v1.2.3