diff --git a/.prev_configure.cmake b/.prev_configure.cmake index 02cd39e5a8d..3d76317909d 100644 --- a/.prev_configure.cmake +++ b/.prev_configure.cmake @@ -643,37 +643,37 @@ qt_feature("sse2" PRIVATE ) qt_feature_definition("sse2" "QT_COMPILER_SUPPORTS_SSE2" VALUE "1") qt_feature_config("sse2" QMAKE_PRIVATE_CONFIG) -qt_feature("sse3" +qt_feature("sse3" PRIVATE LABEL "SSE3" CONDITION QT_FEATURE_sse2 AND TEST_subarch_sse3 ) qt_feature_definition("sse3" "QT_COMPILER_SUPPORTS_SSE3" VALUE "1") qt_feature_config("sse3" QMAKE_PRIVATE_CONFIG) -qt_feature("ssse3" +qt_feature("ssse3" PRIVATE LABEL "SSSE3" CONDITION QT_FEATURE_sse3 AND TEST_subarch_ssse3 ) qt_feature_definition("ssse3" "QT_COMPILER_SUPPORTS_SSSE3" VALUE "1") qt_feature_config("ssse3" QMAKE_PRIVATE_CONFIG) -qt_feature("sse4_1" +qt_feature("sse4_1" PRIVATE LABEL "SSE4.1" CONDITION QT_FEATURE_ssse3 AND TEST_subarch_sse4_1 ) qt_feature_definition("sse4_1" "QT_COMPILER_SUPPORTS_SSE4_1" VALUE "1") qt_feature_config("sse4_1" QMAKE_PRIVATE_CONFIG) -qt_feature("sse4_2" +qt_feature("sse4_2" PRIVATE LABEL "SSE4.2" CONDITION QT_FEATURE_sse4_1 AND TEST_subarch_sse4_2 ) qt_feature_definition("sse4_2" "QT_COMPILER_SUPPORTS_SSE4_2" VALUE "1") qt_feature_config("sse4_2" QMAKE_PRIVATE_CONFIG) -qt_feature("avx" +qt_feature("avx" PRIVATE LABEL "AVX" CONDITION QT_FEATURE_sse4_2 AND TEST_subarch_avx AND ( NOT ANDROID OR NOT ( TEST_architecture_arch STREQUAL x86_64 ) ) ) qt_feature_definition("avx" "QT_COMPILER_SUPPORTS_AVX" VALUE "1") qt_feature_config("avx" QMAKE_PRIVATE_CONFIG) -qt_feature("f16c" +qt_feature("f16c" PRIVATE LABEL "F16C" CONDITION QT_FEATURE_avx AND TEST_subarch_f16c ) @@ -685,79 +685,79 @@ qt_feature("avx2" PRIVATE ) qt_feature_definition("avx2" "QT_COMPILER_SUPPORTS_AVX2" VALUE "1") qt_feature_config("avx2" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512f" +qt_feature("avx512f" PRIVATE LABEL "F" CONDITION QT_FEATURE_avx2 AND TEST_subarch_avx512f ) qt_feature_definition("avx512f" "QT_COMPILER_SUPPORTS_AVX512F" VALUE "1") qt_feature_config("avx512f" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512er" +qt_feature("avx512er" PRIVATE LABEL "ER" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512er ) qt_feature_definition("avx512er" "QT_COMPILER_SUPPORTS_AVX512ER" VALUE "1") qt_feature_config("avx512er" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512cd" +qt_feature("avx512cd" PRIVATE LABEL "CD" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512cd ) qt_feature_definition("avx512cd" "QT_COMPILER_SUPPORTS_AVX512CD" VALUE "1") qt_feature_config("avx512cd" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512pf" +qt_feature("avx512pf" PRIVATE LABEL "PF" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512pf ) qt_feature_definition("avx512pf" "QT_COMPILER_SUPPORTS_AVX512PF" VALUE "1") qt_feature_config("avx512pf" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512dq" +qt_feature("avx512dq" PRIVATE LABEL "DQ" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512dq ) qt_feature_definition("avx512dq" "QT_COMPILER_SUPPORTS_AVX512DQ" VALUE "1") qt_feature_config("avx512dq" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512bw" +qt_feature("avx512bw" PRIVATE LABEL "BW" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512bw ) qt_feature_definition("avx512bw" "QT_COMPILER_SUPPORTS_AVX512BW" VALUE "1") qt_feature_config("avx512bw" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512vl" +qt_feature("avx512vl" PRIVATE LABEL "VL" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512vl ) qt_feature_definition("avx512vl" "QT_COMPILER_SUPPORTS_AVX512VL" VALUE "1") qt_feature_config("avx512vl" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512ifma" +qt_feature("avx512ifma" PRIVATE LABEL "IFMA" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512ifma ) qt_feature_definition("avx512ifma" "QT_COMPILER_SUPPORTS_AVX512IFMA" VALUE "1") qt_feature_config("avx512ifma" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512vbmi" +qt_feature("avx512vbmi" PRIVATE LABEL "VBMI" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512vbmi ) qt_feature_definition("avx512vbmi" "QT_COMPILER_SUPPORTS_AVX512VBMI" VALUE "1") qt_feature_config("avx512vbmi" QMAKE_PRIVATE_CONFIG) -qt_feature("aesni" +qt_feature("aesni" PRIVATE LABEL "AES" CONDITION QT_FEATURE_sse2 AND TEST_subarch_aesni ) qt_feature_definition("aesni" "QT_COMPILER_SUPPORTS_AES" VALUE "1") qt_feature_config("aesni" QMAKE_PRIVATE_CONFIG) -qt_feature("rdrnd" +qt_feature("rdrnd" PRIVATE LABEL "RDRAND" CONDITION TEST_subarch_rdrnd ) qt_feature_definition("rdrnd" "QT_COMPILER_SUPPORTS_RDRND" VALUE "1") qt_feature_config("rdrnd" QMAKE_PRIVATE_CONFIG) -qt_feature("rdseed" +qt_feature("rdseed" PRIVATE LABEL "RDSEED" CONDITION TEST_subarch_rdseed ) qt_feature_definition("rdseed" "QT_COMPILER_SUPPORTS_RDSEED" VALUE "1") qt_feature_config("rdseed" QMAKE_PRIVATE_CONFIG) -qt_feature("shani" +qt_feature("shani" PRIVATE LABEL "SHA" CONDITION QT_FEATURE_sse2 AND TEST_subarch_shani ) @@ -769,19 +769,19 @@ qt_feature("x86SimdAlways" ) qt_feature_definition("x86SimdAlways" "QT_COMPILER_SUPPORTS_SIMD_ALWAYS" VALUE "1") qt_feature_config("x86SimdAlways" QMAKE_PRIVATE_CONFIG) -qt_feature("mips_dsp" +qt_feature("mips_dsp" PRIVATE LABEL "DSP" CONDITION ( TEST_architecture_arch STREQUAL mips ) AND TEST_arch_${TEST_architecture_arch}_subarch_dsp ) qt_feature_definition("mips_dsp" "QT_COMPILER_SUPPORTS_MIPS_DSP" VALUE "1") qt_feature_config("mips_dsp" QMAKE_PRIVATE_CONFIG) -qt_feature("mips_dspr2" +qt_feature("mips_dspr2" PRIVATE LABEL "DSPr2" CONDITION ( TEST_architecture_arch STREQUAL mips ) AND TEST_arch_${TEST_architecture_arch}_subarch_dspr2 ) qt_feature_definition("mips_dspr2" "QT_COMPILER_SUPPORTS_MIPS_DSPR2" VALUE "1") qt_feature_config("mips_dspr2" QMAKE_PRIVATE_CONFIG) -qt_feature("neon" +qt_feature("neon" PRIVATE LABEL "NEON" CONDITION ( ( TEST_architecture_arch STREQUAL arm ) OR ( TEST_architecture_arch STREQUAL arm64 ) ) AND TEST_arch_${TEST_architecture_arch}_subarch_neon ) diff --git a/cmake/QtBaseConfigureTests.cmake b/cmake/QtBaseConfigureTests.cmake index af18131fcd1..cbd482bd59e 100644 --- a/cmake/QtBaseConfigureTests.cmake +++ b/cmake/QtBaseConfigureTests.cmake @@ -9,16 +9,23 @@ function(qt_run_config_test_architecture) qt_get_platform_try_compile_vars(platform_try_compile_vars) list(APPEND flags ${platform_try_compile_vars}) + list(TRANSFORM flags PREPEND " " OUTPUT_VARIABLE flags_indented) + list(JOIN flags_indented "\n" flags_indented) + message(STATUS + "Building architecture extraction project with the following CMake arguments:\n${flags_indented}") + try_compile( _arch_result "${CMAKE_CURRENT_BINARY_DIR}/config.tests/arch" "${CMAKE_CURRENT_SOURCE_DIR}/config.tests/arch" arch CMAKE_FLAGS ${flags} + OUTPUT_VARIABLE arch_test_output ) if (NOT _arch_result) - message(FATAL_ERROR "Failed to compile architecture detection file.") + message(FATAL_ERROR + "Failed to build architecture extraction project. Build output:\n ${arch_test_output}") endif() set(_arch_file_suffix "${CMAKE_EXECUTABLE_SUFFIX}") @@ -34,11 +41,17 @@ function(qt_run_config_test_architecture) string(APPEND arch_test_location "/${QT_MULTI_CONFIG_FIRST_CONFIG}") endif() + set(arch_dir "${CMAKE_CURRENT_BINARY_DIR}/${arch_test_location}") + file(GLOB arch_dir_globbed_files RELATIVE "${arch_dir}" "${arch_dir}/*") + list(JOIN arch_dir_globbed_files "\n" arch_dir_globbed_files) + set(_arch_file "${CMAKE_CURRENT_BINARY_DIR}/${arch_test_location}/architecture_test${_arch_file_suffix}") if (NOT EXISTS "${_arch_file}") message(FATAL_ERROR - "Failed to find compiled architecture detection executable at ${_arch_file}.") + "Failed to find compiled architecture detection executable at ${_arch_file}. \ + The following files were found at: ${arch_dir} \ + ${arch_dir_globbed_files}") endif() message(STATUS "Extracting architecture info from ${_arch_file}.") @@ -66,7 +79,12 @@ function(qt_run_config_test_architecture) endforeach() if (NOT _architecture OR NOT _build_abi) - message(FATAL_ERROR "Failed to extract architecture data from file.") + list(SUBLIST _arch_lines 0 5 arch_lines_fewer) + list(JOIN arch_lines_fewer "\n" arch_lines_output) + + message(FATAL_ERROR + "Failed to extract architecture data from file. \ + Here are the first few lines extracted:\n${arch_lines_output}") endif() set(TEST_architecture 1 CACHE INTERNAL "Ran the architecture test") diff --git a/configure.cmake b/configure.cmake index 26e887c5590..7d015717ed5 100644 --- a/configure.cmake +++ b/configure.cmake @@ -654,37 +654,37 @@ qt_feature("sse2" PRIVATE ) qt_feature_definition("sse2" "QT_COMPILER_SUPPORTS_SSE2" VALUE "1") qt_feature_config("sse2" QMAKE_PRIVATE_CONFIG) -qt_feature("sse3" +qt_feature("sse3" PRIVATE LABEL "SSE3" CONDITION QT_FEATURE_sse2 AND TEST_subarch_sse3 ) qt_feature_definition("sse3" "QT_COMPILER_SUPPORTS_SSE3" VALUE "1") qt_feature_config("sse3" QMAKE_PRIVATE_CONFIG) -qt_feature("ssse3" +qt_feature("ssse3" PRIVATE LABEL "SSSE3" CONDITION QT_FEATURE_sse3 AND TEST_subarch_ssse3 ) qt_feature_definition("ssse3" "QT_COMPILER_SUPPORTS_SSSE3" VALUE "1") qt_feature_config("ssse3" QMAKE_PRIVATE_CONFIG) -qt_feature("sse4_1" +qt_feature("sse4_1" PRIVATE LABEL "SSE4.1" CONDITION QT_FEATURE_ssse3 AND TEST_subarch_sse4_1 ) qt_feature_definition("sse4_1" "QT_COMPILER_SUPPORTS_SSE4_1" VALUE "1") qt_feature_config("sse4_1" QMAKE_PRIVATE_CONFIG) -qt_feature("sse4_2" +qt_feature("sse4_2" PRIVATE LABEL "SSE4.2" CONDITION QT_FEATURE_sse4_1 AND TEST_subarch_sse4_2 ) qt_feature_definition("sse4_2" "QT_COMPILER_SUPPORTS_SSE4_2" VALUE "1") qt_feature_config("sse4_2" QMAKE_PRIVATE_CONFIG) -qt_feature("avx" +qt_feature("avx" PRIVATE LABEL "AVX" CONDITION QT_FEATURE_sse4_2 AND TEST_subarch_avx AND ( NOT ANDROID OR NOT ( TEST_architecture_arch STREQUAL x86_64 ) ) ) qt_feature_definition("avx" "QT_COMPILER_SUPPORTS_AVX" VALUE "1") qt_feature_config("avx" QMAKE_PRIVATE_CONFIG) -qt_feature("f16c" +qt_feature("f16c" PRIVATE LABEL "F16C" CONDITION QT_FEATURE_avx AND TEST_subarch_f16c ) @@ -696,79 +696,79 @@ qt_feature("avx2" PRIVATE ) qt_feature_definition("avx2" "QT_COMPILER_SUPPORTS_AVX2" VALUE "1") qt_feature_config("avx2" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512f" +qt_feature("avx512f" PRIVATE LABEL "F" CONDITION QT_FEATURE_avx2 AND TEST_subarch_avx512f ) qt_feature_definition("avx512f" "QT_COMPILER_SUPPORTS_AVX512F" VALUE "1") qt_feature_config("avx512f" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512er" +qt_feature("avx512er" PRIVATE LABEL "ER" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512er ) qt_feature_definition("avx512er" "QT_COMPILER_SUPPORTS_AVX512ER" VALUE "1") qt_feature_config("avx512er" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512cd" +qt_feature("avx512cd" PRIVATE LABEL "CD" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512cd ) qt_feature_definition("avx512cd" "QT_COMPILER_SUPPORTS_AVX512CD" VALUE "1") qt_feature_config("avx512cd" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512pf" +qt_feature("avx512pf" PRIVATE LABEL "PF" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512pf ) qt_feature_definition("avx512pf" "QT_COMPILER_SUPPORTS_AVX512PF" VALUE "1") qt_feature_config("avx512pf" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512dq" +qt_feature("avx512dq" PRIVATE LABEL "DQ" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512dq ) qt_feature_definition("avx512dq" "QT_COMPILER_SUPPORTS_AVX512DQ" VALUE "1") qt_feature_config("avx512dq" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512bw" +qt_feature("avx512bw" PRIVATE LABEL "BW" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512bw ) qt_feature_definition("avx512bw" "QT_COMPILER_SUPPORTS_AVX512BW" VALUE "1") qt_feature_config("avx512bw" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512vl" +qt_feature("avx512vl" PRIVATE LABEL "VL" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512vl ) qt_feature_definition("avx512vl" "QT_COMPILER_SUPPORTS_AVX512VL" VALUE "1") qt_feature_config("avx512vl" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512ifma" +qt_feature("avx512ifma" PRIVATE LABEL "IFMA" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512ifma ) qt_feature_definition("avx512ifma" "QT_COMPILER_SUPPORTS_AVX512IFMA" VALUE "1") qt_feature_config("avx512ifma" QMAKE_PRIVATE_CONFIG) -qt_feature("avx512vbmi" +qt_feature("avx512vbmi" PRIVATE LABEL "VBMI" CONDITION QT_FEATURE_avx512f AND TEST_subarch_avx512vbmi ) qt_feature_definition("avx512vbmi" "QT_COMPILER_SUPPORTS_AVX512VBMI" VALUE "1") qt_feature_config("avx512vbmi" QMAKE_PRIVATE_CONFIG) -qt_feature("aesni" +qt_feature("aesni" PRIVATE LABEL "AES" CONDITION QT_FEATURE_sse2 AND TEST_subarch_aesni ) qt_feature_definition("aesni" "QT_COMPILER_SUPPORTS_AES" VALUE "1") qt_feature_config("aesni" QMAKE_PRIVATE_CONFIG) -qt_feature("rdrnd" +qt_feature("rdrnd" PRIVATE LABEL "RDRAND" CONDITION TEST_subarch_rdrnd ) qt_feature_definition("rdrnd" "QT_COMPILER_SUPPORTS_RDRND" VALUE "1") qt_feature_config("rdrnd" QMAKE_PRIVATE_CONFIG) -qt_feature("rdseed" +qt_feature("rdseed" PRIVATE LABEL "RDSEED" CONDITION TEST_subarch_rdseed ) qt_feature_definition("rdseed" "QT_COMPILER_SUPPORTS_RDSEED" VALUE "1") qt_feature_config("rdseed" QMAKE_PRIVATE_CONFIG) -qt_feature("shani" +qt_feature("shani" PRIVATE LABEL "SHA" CONDITION QT_FEATURE_sse2 AND TEST_subarch_shani ) @@ -780,19 +780,19 @@ qt_feature("x86SimdAlways" ) qt_feature_definition("x86SimdAlways" "QT_COMPILER_SUPPORTS_SIMD_ALWAYS" VALUE "1") qt_feature_config("x86SimdAlways" QMAKE_PRIVATE_CONFIG) -qt_feature("mips_dsp" +qt_feature("mips_dsp" PRIVATE LABEL "DSP" CONDITION ( TEST_architecture_arch STREQUAL mips ) AND TEST_arch_${TEST_architecture_arch}_subarch_dsp ) qt_feature_definition("mips_dsp" "QT_COMPILER_SUPPORTS_MIPS_DSP" VALUE "1") qt_feature_config("mips_dsp" QMAKE_PRIVATE_CONFIG) -qt_feature("mips_dspr2" +qt_feature("mips_dspr2" PRIVATE LABEL "DSPr2" CONDITION ( TEST_architecture_arch STREQUAL mips ) AND TEST_arch_${TEST_architecture_arch}_subarch_dspr2 ) qt_feature_definition("mips_dspr2" "QT_COMPILER_SUPPORTS_MIPS_DSPR2" VALUE "1") qt_feature_config("mips_dspr2" QMAKE_PRIVATE_CONFIG) -qt_feature("neon" +qt_feature("neon" PRIVATE LABEL "NEON" CONDITION ( ( TEST_architecture_arch STREQUAL arm ) OR ( TEST_architecture_arch STREQUAL arm64 ) ) AND TEST_arch_${TEST_architecture_arch}_subarch_neon ) diff --git a/configure.json b/configure.json index fabe8c3b452..c6790eab780 100644 --- a/configure.json +++ b/configure.json @@ -1068,6 +1068,7 @@ "condition": "features.sse2 && tests.sse3", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_SSE3", "value": 1 } ] }, @@ -1076,6 +1077,7 @@ "condition": "features.sse3 && tests.ssse3", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_SSSE3", "value": 1 } ] }, @@ -1084,6 +1086,7 @@ "condition": "features.ssse3 && tests.sse4_1", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_SSE4_1", "value": 1 } ] }, @@ -1092,6 +1095,7 @@ "condition": "features.sse4_1 && tests.sse4_2", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_SSE4_2", "value": 1 } ] }, @@ -1100,6 +1104,7 @@ "condition": "features.sse4_2 && tests.avx && (!config.android || !arch.x86_64)", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX", "value": 1 } ] }, @@ -1108,6 +1113,7 @@ "condition": "features.avx && tests.f16c", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_F16C", "value": 1 } ] }, @@ -1125,6 +1131,7 @@ "condition": "features.avx2 && tests.avx512f", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512F", "value": 1 } ] }, @@ -1133,6 +1140,7 @@ "condition": "features.avx512f && tests.avx512er", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512ER", "value": 1 } ] }, @@ -1141,6 +1149,7 @@ "condition": "features.avx512f && tests.avx512cd", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512CD", "value": 1 } ] }, @@ -1149,6 +1158,7 @@ "condition": "features.avx512f && tests.avx512pf", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512PF", "value": 1 } ] }, @@ -1157,6 +1167,7 @@ "condition": "features.avx512f && tests.avx512dq", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512DQ", "value": 1 } ] }, @@ -1165,6 +1176,7 @@ "condition": "features.avx512f && tests.avx512bw", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512BW", "value": 1 } ] }, @@ -1173,6 +1185,7 @@ "condition": "features.avx512f && tests.avx512vl", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512VL", "value": 1 } ] }, @@ -1181,6 +1194,7 @@ "condition": "features.avx512f && tests.avx512ifma", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512IFMA", "value": 1 } ] }, @@ -1189,6 +1203,7 @@ "condition": "features.avx512f && tests.avx512vbmi", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AVX512VBMI", "value": 1 } ] }, @@ -1197,6 +1212,7 @@ "condition": "features.sse2 && tests.aesni", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_AES", "value": 1 } ] }, @@ -1205,6 +1221,7 @@ "condition": "tests.rdrnd", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_RDRND", "value": 1 } ] }, @@ -1213,6 +1230,7 @@ "condition": "tests.rdseed", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_RDSEED", "value": 1 } ] }, @@ -1221,6 +1239,7 @@ "condition": "features.sse2 && tests.shani", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_SHA", "value": 1 } ] }, @@ -1237,6 +1256,7 @@ "condition": "arch.mips && subarch.dsp", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_MIPS_DSP", "value": 1 } ] }, @@ -1245,6 +1265,7 @@ "condition": "arch.mips && subarch.dspr2", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_MIPS_DSPR2", "value": 1 } ] }, @@ -1253,6 +1274,7 @@ "condition": "(arch.arm || arch.arm64) && subarch.neon", "output": [ "privateConfig", + "privateFeature", { "type": "define", "name": "QT_COMPILER_SUPPORTS_NEON", "value": 1 } ] }, diff --git a/src/corelib/.prev_configure.cmake b/src/corelib/.prev_configure.cmake index 9052acf87b7..893acda9538 100644 --- a/src/corelib/.prev_configure.cmake +++ b/src/corelib/.prev_configure.cmake @@ -14,6 +14,9 @@ set_property(CACHE INPUT_libb2 PROPERTY STRINGS undefined no qt system) #### Libraries +if((UNIX) OR QT_FIND_ALL_PACKAGES_ALWAYS) + qt_find_package(WrapBacktrace PROVIDED_TARGETS WrapBacktrace::WrapBacktrace MODULE_NAME core QMAKE_LIB backtrace) +endif() qt_find_package(WrapDoubleConversion PROVIDED_TARGETS WrapDoubleConversion::WrapDoubleConversion MODULE_NAME core QMAKE_LIB doubleconversion) qt_find_package(GLIB2 PROVIDED_TARGETS GLIB2::GLIB2 MODULE_NAME core QMAKE_LIB glib) qt_find_package(ICU COMPONENTS i18n uc data PROVIDED_TARGETS ICU::i18n ICU::uc ICU::data MODULE_NAME core QMAKE_LIB icu) @@ -668,6 +671,10 @@ qt_feature("regularexpression" PUBLIC CONDITION QT_FEATURE_system_pcre2 OR QT_FEATURE_pcre2 ) qt_feature_definition("regularexpression" "QT_NO_REGULAREXPRESSION" NEGATE VALUE "1") +qt_feature("backtrace" PRIVATE + LABEL "backtrace" + CONDITION UNIX AND QT_FEATURE_regularexpression AND WrapBacktrace_FOUND +) qt_feature("sharedmemory" PUBLIC SECTION "Kernel" LABEL "QSharedMemory" @@ -903,6 +910,7 @@ qt_feature("cborstreamwriter" PUBLIC PURPOSE "Provides support for writing the CBOR binary format." ) qt_configure_add_summary_section(NAME "Qt Core") +qt_configure_add_summary_entry(ARGS "backtrace") qt_configure_add_summary_entry(ARGS "doubleconversion") qt_configure_add_summary_entry(ARGS "system-doubleconversion") qt_configure_add_summary_entry(ARGS "glib") diff --git a/src/gui/.prev_configure.cmake b/src/gui/.prev_configure.cmake index 5665bea9db8..9ce8b6f45e7 100644 --- a/src/gui/.prev_configure.cmake +++ b/src/gui/.prev_configure.cmake @@ -53,78 +53,78 @@ qt_find_package(Vulkan PROVIDED_TARGETS Vulkan::Vulkan MODULE_NAME gui QMAKE_LIB if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(Wayland PROVIDED_TARGETS Wayland::Server MODULE_NAME gui QMAKE_LIB wayland_server) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(X11 PROVIDED_TARGETS X11::X11 MODULE_NAME gui QMAKE_LIB xlib) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(X11 PROVIDED_TARGETS ${X11_SM_LIB} ${X11_ICE_LIB} MODULE_NAME gui QMAKE_LIB x11sm) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 1.11 PROVIDED_TARGETS XCB::XCB MODULE_NAME gui QMAKE_LIB xcb) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 0.3.9 COMPONENTS ICCCM PROVIDED_TARGETS XCB::ICCCM MODULE_NAME gui QMAKE_LIB xcb_icccm) endif() qt_add_qmake_lib_dependency(xcb_icccm xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 0.3.9 COMPONENTS IMAGE PROVIDED_TARGETS XCB::IMAGE MODULE_NAME gui QMAKE_LIB xcb_image) endif() qt_add_qmake_lib_dependency(xcb_image xcb_shm xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 0.3.9 COMPONENTS KEYSYMS PROVIDED_TARGETS XCB::KEYSYMS MODULE_NAME gui QMAKE_LIB xcb_keysyms) endif() qt_add_qmake_lib_dependency(xcb_keysyms xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 0.3.9 COMPONENTS RENDERUTIL PROVIDED_TARGETS XCB::RENDERUTIL MODULE_NAME gui QMAKE_LIB xcb_renderutil) endif() qt_add_qmake_lib_dependency(xcb_renderutil xcb xcb_render) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS RANDR PROVIDED_TARGETS XCB::RANDR MODULE_NAME gui QMAKE_LIB xcb_randr) endif() qt_add_qmake_lib_dependency(xcb_randr xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS SHAPE PROVIDED_TARGETS XCB::SHAPE MODULE_NAME gui QMAKE_LIB xcb_shape) endif() qt_add_qmake_lib_dependency(xcb_shape xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS SHM PROVIDED_TARGETS XCB::SHM MODULE_NAME gui QMAKE_LIB xcb_shm) endif() qt_add_qmake_lib_dependency(xcb_shm xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS SYNC PROVIDED_TARGETS XCB::SYNC MODULE_NAME gui QMAKE_LIB xcb_sync) endif() qt_add_qmake_lib_dependency(xcb_sync xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS XFIXES PROVIDED_TARGETS XCB::XFIXES MODULE_NAME gui QMAKE_LIB xcb_xfixes) endif() qt_add_qmake_lib_dependency(xcb_xfixes xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(X11_XCB PROVIDED_TARGETS X11::XCB MODULE_NAME gui QMAKE_LIB xcb_xlib) endif() qt_add_qmake_lib_dependency(xcb_xlib xcb xlib) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS XKB PROVIDED_TARGETS XCB::XKB MODULE_NAME gui QMAKE_LIB xcb_xkb) endif() qt_add_qmake_lib_dependency(xcb_xkb xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS RENDER PROVIDED_TARGETS XCB::RENDER MODULE_NAME gui QMAKE_LIB xcb_render) endif() qt_add_qmake_lib_dependency(xcb_render xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB COMPONENTS GLX PROVIDED_TARGETS XCB::GLX MODULE_NAME gui QMAKE_LIB xcb_glx) endif() qt_add_qmake_lib_dependency(xcb_glx xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 1.12 COMPONENTS XINPUT PROVIDED_TARGETS XCB::XINPUT MODULE_NAME gui QMAKE_LIB xcb_xinput) endif() qt_add_qmake_lib_dependency(xcb_xinput xcb) -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XKB 0.5.0 PROVIDED_TARGETS XKB::XKB MODULE_NAME gui QMAKE_LIB xkbcommon) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XKB_COMMON_X11 0.5.0 PROVIDED_TARGETS PkgConfig::XKB_COMMON_X11 MODULE_NAME gui QMAKE_LIB xkbcommon_x11) endif() -if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XRender 0.6 PROVIDED_TARGETS PkgConfig::XRender MODULE_NAME gui QMAKE_LIB xrender) endif() qt_add_qmake_lib_dependency(xrender xlib)