diff options
-rw-r--r-- | cmake/QtBuild.cmake | 2 | ||||
-rw-r--r-- | cmake/QtBuildInternals/QtBuildInternalsConfig.cmake | 10 | ||||
-rw-r--r-- | cmake/QtSetup.cmake | 5 |
3 files changed, 10 insertions, 7 deletions
diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index d293c0d083..d5eb7c22cd 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -140,7 +140,7 @@ qt_configure_process_path(INSTALL_DESCRIPTIONSDIR "${INSTALL_DATADIR}/modules" "Module description files directory") -if(CMAKE_CROSSCOMPILING AND NOT "${CMAKE_STAGING_PREFIX}" STREQUAL "") +if(NOT "${CMAKE_STAGING_PREFIX}" STREQUAL "") set(QT_STAGING_PREFIX "${CMAKE_STAGING_PREFIX}") else() set(QT_STAGING_PREFIX "${CMAKE_INSTALL_PREFIX}") diff --git a/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake b/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake index f833a66f78..49c5581509 100644 --- a/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake +++ b/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake @@ -666,15 +666,21 @@ function(qt_compute_relative_path_from_cmake_config_dir_to_prefix) # # Similar code exists in Qt6CoreConfigExtras.cmake.in and src/corelib/CMakeLists.txt which # might not be needed anymore. + if(CMAKE_STAGING_PREFIX) + set(__qt_prefix "${CMAKE_STAGING_PREFIX}") + else() + set(__qt_prefix "${CMAKE_INSTALL_PREFIX}") + endif() + if(QT_WILL_INSTALL) get_filename_component(clean_config_prefix - "${CMAKE_INSTALL_PREFIX}/${QT_CONFIG_INSTALL_DIR}" ABSOLUTE) + "${__qt_prefix}/${QT_CONFIG_INSTALL_DIR}" ABSOLUTE) else() get_filename_component(clean_config_prefix "${QT_CONFIG_BUILD_DIR}" ABSOLUTE) endif() file(RELATIVE_PATH qt_path_from_cmake_config_dir_to_prefix - "${clean_config_prefix}" "${CMAKE_INSTALL_PREFIX}") + "${clean_config_prefix}" "${__qt_prefix}") set(qt_path_from_cmake_config_dir_to_prefix "${qt_path_from_cmake_config_dir_to_prefix}" PARENT_SCOPE) endfunction() diff --git a/cmake/QtSetup.cmake b/cmake/QtSetup.cmake index 17b81e9d49..85bd27a2da 100644 --- a/cmake/QtSetup.cmake +++ b/cmake/QtSetup.cmake @@ -137,12 +137,9 @@ if (PROJECT_NAME STREQUAL "QtBase" AND NOT QT_BUILD_STANDALONE_TESTS) "Install path prefix, prepended onto install directories." FORCE) unset(__qt_default_prefix) endif() - if(CMAKE_CROSSCOMPILING) + if(CMAKE_STAGING_PREFIX) set(__qt_prefix "${CMAKE_STAGING_PREFIX}") else() - set(__qt_prefix "") - endif() - if(__qt_prefix STREQUAL "") set(__qt_prefix "${CMAKE_INSTALL_PREFIX}") endif() if(__qt_prefix STREQUAL QtBase_BINARY_DIR) |