summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmake/QtBaseConfigureTests.cmake6
-rw-r--r--cmake/QtBuildInternalsExtra.cmake.in3
-rw-r--r--cmake/QtPostProcess.cmake4
3 files changed, 12 insertions, 1 deletions
diff --git a/cmake/QtBaseConfigureTests.cmake b/cmake/QtBaseConfigureTests.cmake
index 2787edaecd..ffa5019ca0 100644
--- a/cmake/QtBaseConfigureTests.cmake
+++ b/cmake/QtBaseConfigureTests.cmake
@@ -1,6 +1,6 @@
include(CheckCXXSourceCompiles)
-
function(run_config_test_architecture)
+ set(qt_base_configure_tests_vars_to_export)
# Test architecture
set(_arch_file "${CMAKE_CURRENT_BINARY_DIR}/architecture_test")
try_compile(_arch_result "${CMAKE_CURRENT_BINARY_DIR}"
@@ -38,12 +38,16 @@ function(run_config_test_architecture)
set(TEST_architecture 1 CACHE INTERNAL "Ran the architecture test")
set(TEST_architecture_arch "${_architecture}" CACHE INTERNAL "Target machine architecture")
+ list(APPEND qt_base_configure_tests_vars_to_export TEST_architecture_arch)
set(TEST_subarch 1 CACHE INTERNAL "Ran machine subArchitecture test")
foreach(it ${_sub_architecture})
# Equivalent to qmake's QT_CPU_FEATURES.$arch.
set(TEST_arch_${TEST_architecture_arch}_subarch_${it} 1 CACHE INTERNAL "Target sub architecture result")
+ list(APPEND qt_base_configure_tests_vars_to_export TEST_arch_${TEST_architecture_arch}_subarch_${it})
endforeach()
set(TEST_buildAbi "${_build_abi}" CACHE INTERNAL "Target machine buildAbi")
+ list(APPEND qt_base_configure_tests_vars_to_export TEST_buildAbi)
+ set(qt_base_configure_tests_vars_to_export ${qt_base_configure_tests_vars_to_export} CACHE INTERNAL "Test variables that should be exported")
endfunction()
diff --git a/cmake/QtBuildInternalsExtra.cmake.in b/cmake/QtBuildInternalsExtra.cmake.in
index 8ec5c95d56..165978e680 100644
--- a/cmake/QtBuildInternalsExtra.cmake.in
+++ b/cmake/QtBuildInternalsExtra.cmake.in
@@ -22,3 +22,6 @@ set(QT_WILL_INSTALL @QT_WILL_INSTALL@ CACHE BOOL
set(QT_SOURCE_TREE "@QT_SOURCE_TREE@" CACHE PATH
"A path to the source tree of the previously configured QtBase project." FORCE)
+
+# Extra set of exported variables
+@QT_EXTRA_BUILD_INTERNALS_VARS@
diff --git a/cmake/QtPostProcess.cmake b/cmake/QtPostProcess.cmake
index c10f827575..d0f370775f 100644
--- a/cmake/QtPostProcess.cmake
+++ b/cmake/QtPostProcess.cmake
@@ -265,6 +265,10 @@ endfunction()
function(qt_generate_build_internals_extra_cmake_code)
if(PROJECT_NAME STREQUAL "QtBase")
+ set(QT_EXTRA_BUILD_INTERNALS_VARS)
+ foreach(var IN LISTS qt_base_configure_tests_vars_to_export)
+ string(APPEND QT_EXTRA_BUILD_INTERNALS_VARS "set(${var} \"${${var}}\" CACHE INTERNAL \"\")\n")
+ endforeach()
set(QT_SOURCE_TREE "${QtBase_SOURCE_DIR}")
qt_path_join(extra_file_path