summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmake/QtConfig.cmake.in10
-rw-r--r--cmake/QtModuleDependencies.cmake.in6
-rw-r--r--cmake/QtPlatformAndroid.cmake4
-rw-r--r--cmake/QtSetup.cmake5
-rw-r--r--cmake/QtSyncQtHelpers.cmake2
-rw-r--r--cmake/QtTargetHelpers.cmake2
-rw-r--r--cmake/QtToolchainHelpers.cmake6
-rw-r--r--src/corelib/Qt6AndroidMacros.cmake6
-rw-r--r--src/gui/CMakeLists.txt2
9 files changed, 27 insertions, 16 deletions
diff --git a/cmake/QtConfig.cmake.in b/cmake/QtConfig.cmake.in
index a43583e4cb..57c252091d 100644
--- a/cmake/QtConfig.cmake.in
+++ b/cmake/QtConfig.cmake.in
@@ -19,6 +19,16 @@ else()
QT_VERSION_PATCH @PROJECT_VERSION_PATCH@)
endif()
+if(NOT "${QT_HOST_PATH}" STREQUAL "")
+ find_package(Qt@PROJECT_VERSION_MAJOR@HostInfo
+ CONFIG
+ REQUIRED
+ PATHS "${QT_HOST_PATH}"
+ "${QT_HOST_PATH_CMAKE_DIR}"
+ NO_CMAKE_FIND_ROOT_PATH
+ NO_DEFAULT_PATH)
+endif()
+
# if (NOT @INSTALL_CMAKE_NAMESPACE@_FIND_COMPONENTS)
# set(@INSTALL_CMAKE_NAMESPACE@_NOT_FOUND_MESSAGE "The Qt package requires at least one component")
# set(@INSTALL_CMAKE_NAMESPACE@_FOUND False)
diff --git a/cmake/QtModuleDependencies.cmake.in b/cmake/QtModuleDependencies.cmake.in
index 01cf9d5b3c..8f7960059a 100644
--- a/cmake/QtModuleDependencies.cmake.in
+++ b/cmake/QtModuleDependencies.cmake.in
@@ -43,7 +43,7 @@ endforeach()
# Find Qt tool package.
set(_tool_deps "@main_module_tool_deps@")
-if(QT_HOST_PATH)
+if(NOT "${QT_HOST_PATH}" STREQUAL "")
# Make sure that the tools find the host tools first
set(BACKUP_@target@_CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH})
set(BACKUP_@target@_CMAKE_FIND_ROOT_PATH ${CMAKE_FIND_ROOT_PATH})
@@ -64,14 +64,14 @@ foreach(_target_dep ${_tool_deps})
endif()
find_package(${pkg} ${version} ${find_package_args})
if (NOT ${pkg}_FOUND)
- if(QT_HOST_PATH)
+ if(NOT "${QT_HOST_PATH}" STREQUAL "")
set(CMAKE_PREFIX_PATH ${BACKUP_@target@_CMAKE_PREFIX_PATH})
set(CMAKE_FIND_ROOT_PATH ${BACKUP_@target@_CMAKE_FIND_ROOT_PATH})
endif()
return()
endif()
endforeach()
-if(QT_HOST_PATH)
+if(NOT "${QT_HOST_PATH}" STREQUAL "")
set(CMAKE_PREFIX_PATH ${BACKUP_@target@_CMAKE_PREFIX_PATH})
set(CMAKE_FIND_ROOT_PATH ${BACKUP_@target@_CMAKE_FIND_ROOT_PATH})
endif()
diff --git a/cmake/QtPlatformAndroid.cmake b/cmake/QtPlatformAndroid.cmake
index 517b442873..1bca423d9e 100644
--- a/cmake/QtPlatformAndroid.cmake
+++ b/cmake/QtPlatformAndroid.cmake
@@ -127,8 +127,8 @@ define_property(TARGET
# Returns test execution arguments for Android targets
function(qt_internal_android_test_arguments target out_test_runner out_test_arguments)
- set(${out_test_runner} "${QT_HOST_PATH}/bin/androidtestrunner" PARENT_SCOPE)
- set(deployment_tool "${QT_HOST_PATH}/bin/androiddeployqt")
+ set(${out_test_runner} "${QT_HOST_PATH}/${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_BINDIR}/androidtestrunner" PARENT_SCOPE)
+ set(deployment_tool "${QT_HOST_PATH}/${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_BINDIR}/androiddeployqt")
get_target_property(deployment_file ${target} QT_ANDROID_DEPLOYMENT_SETTINGS_FILE)
if (NOT deployment_file)
diff --git a/cmake/QtSetup.cmake b/cmake/QtSetup.cmake
index 13daf40381..e08ce69947 100644
--- a/cmake/QtSetup.cmake
+++ b/cmake/QtSetup.cmake
@@ -174,11 +174,12 @@ if (CMAKE_CROSSCOMPILING)
endif()
endif()
-if(QT_HOST_PATH)
+if(NOT "${QT_HOST_PATH}" STREQUAL "")
find_package(Qt${PROJECT_VERSION_MAJOR}HostInfo
CONFIG
REQUIRED
- PATHS "${QT_HOST_PATH}" "${QT_HOST_PATH}/lib/cmake"
+ PATHS "${QT_HOST_PATH}"
+ "${QT_HOST_PATH_CMAKE_DIR}"
NO_CMAKE_FIND_ROOT_PATH
NO_DEFAULT_PATH)
endif()
diff --git a/cmake/QtSyncQtHelpers.cmake b/cmake/QtSyncQtHelpers.cmake
index c8d89d64ee..91ed7f2832 100644
--- a/cmake/QtSyncQtHelpers.cmake
+++ b/cmake/QtSyncQtHelpers.cmake
@@ -27,7 +27,7 @@ function(qt_ensure_sync_qt)
qt_path_join(syncqt_install_dir ${QT_INSTALL_DIR} ${INSTALL_BINDIR})
qt_copy_or_install(PROGRAMS "${SYNCQT_FROM_SOURCE}"
DESTINATION "${syncqt_install_dir}")
- elseif(QT_HOST_PATH)
+ elseif(NOT "${QT_HOST_PATH}" STREQUAL "")
get_filename_component(syncqt_absolute_path
"${QT_HOST_PATH}/${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_LIBEXECDIR}/syncqt.pl"
ABSOLUTE)
diff --git a/cmake/QtTargetHelpers.cmake b/cmake/QtTargetHelpers.cmake
index e4f885a512..2a0a22f682 100644
--- a/cmake/QtTargetHelpers.cmake
+++ b/cmake/QtTargetHelpers.cmake
@@ -501,7 +501,7 @@ function(qt_internal_create_tracepoints name tracepoints_file)
set(tracegen_arg "etw")
endif()
- if(QT_HOST_PATH)
+ if(NOT "${QT_HOST_PATH}" STREQUAL "")
qt_path_join(tracegen
"${QT_HOST_PATH}"
"${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_BINDIR}"
diff --git a/cmake/QtToolchainHelpers.cmake b/cmake/QtToolchainHelpers.cmake
index a0897696bd..5495cbf6c5 100644
--- a/cmake/QtToolchainHelpers.cmake
+++ b/cmake/QtToolchainHelpers.cmake
@@ -2,7 +2,7 @@
# as well as CMake application projects.
# Expects various global variables to be set.
function(qt_internal_create_toolchain_file)
- if(QT_HOST_PATH)
+ if(NOT "${QT_HOST_PATH}" STREQUAL "")
# TODO: Figure out how to make these relocatable.
get_filename_component(__qt_host_path_absolute "${QT_HOST_PATH}" ABSOLUTE)
@@ -22,10 +22,10 @@ function(qt_internal_create_toolchain_file)
endif()")
set(init_qt_host_path_checks "
- if(NOT QT_HOST_PATH OR NOT EXISTS \"\${QT_HOST_PATH}\")
+ if(\"\${QT_HOST_PATH}\" STREQUAL \"\" OR NOT EXISTS \"\${QT_HOST_PATH}\")
message(FATAL_ERROR \"To use a cross-compiled Qt, please specify a path to a host Qt installation by setting the QT_HOST_PATH cache variable.\")
endif()
- if(NOT QT_HOST_PATH_CMAKE_DIR OR NOT EXISTS \"\${QT_HOST_PATH_CMAKE_DIR}\")
+ if(\"\${QT_HOST_PATH_CMAKE_DIR}\" STREQUAL \"\" OR NOT EXISTS \"\${QT_HOST_PATH_CMAKE_DIR}\")
message(FATAL_ERROR \"To use a cross-compiled Qt, please specify a path to a host Qt installation CMake directory by setting the QT_HOST_PATH_CMAKE_DIR cache variable.\")
endif()")
endif()
diff --git a/src/corelib/Qt6AndroidMacros.cmake b/src/corelib/Qt6AndroidMacros.cmake
index e1f17a73b0..0ecde09d7c 100644
--- a/src/corelib/Qt6AndroidMacros.cmake
+++ b/src/corelib/Qt6AndroidMacros.cmake
@@ -180,7 +180,7 @@ function(qt6_android_generate_deployment_settings target)
endif()
# Override qmlimportscanner binary path
- set(qml_importscanner_binary_path "${QT_HOST_PATH}/bin/qmlimportscanner")
+ set(qml_importscanner_binary_path "${QT_HOST_PATH}/${QT6_HOST_INFO_BINDIR}/qmlimportscanner")
if (WIN32)
string(APPEND qml_importscanner_binary_path ".exe")
endif()
@@ -189,7 +189,7 @@ function(qt6_android_generate_deployment_settings target)
" \"qml-importscanner-binary\" : \"${qml_importscanner_binary_path_native}\",\n")
# Override rcc binary path
- set(rcc_binary_path "${QT_HOST_PATH}/bin/rcc")
+ set(rcc_binary_path "${QT_HOST_PATH}/${QT6_HOST_INFO_BINDIR}/rcc")
if (WIN32)
string(APPEND rcc_binary_path ".exe")
endif()
@@ -269,7 +269,7 @@ function(qt6_android_add_apk_target target)
set(should_add_to_global_apk TRUE)
endif()
- set(deployment_tool "${QT_HOST_PATH}/bin/androiddeployqt")
+ set(deployment_tool "${QT_HOST_PATH}/${QT6_HOST_INFO_BINDIR}/androiddeployqt")
set(apk_dir "$<TARGET_PROPERTY:${target},BINARY_DIR>/android-build")
add_custom_target(${target}_prepare_apk_dir
DEPENDS ${target}
diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt
index b6b1bb439c..b2a682781d 100644
--- a/src/gui/CMakeLists.txt
+++ b/src/gui/CMakeLists.txt
@@ -885,7 +885,7 @@ if (QT_FEATURE_vulkan)
set(vulkan_fun_p_cpp "qvulkanfunctions_p.cpp")
list(APPEND vulkan_fun_outputs "vulkan/${vulkan_fun_p_cpp}")
- if(QT_HOST_PATH)
+ if(NOT "${QT_HOST_PATH}" STREQUAL "")
qt_path_join(qvkgen
"${QT_HOST_PATH}"
"${QT${PROJECT_VERSION_MAJOR}_HOST_INFO_BINDIR}"