From 1fb225db13062e53548a11e274b3347a302700f3 Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Tue, 6 Feb 2024 11:52:11 +0100 Subject: [PATCH] Improve the QT_NAMESPACE definition in Qt6CoreExtras The perivous version generated weird condition, and seems changing the QT_NAMESPACE after qtbase configuration is noop, we may replace the generated condition with the conditional generation. Change-Id: Ifa09dba4db00099a07da2cff5505e6fd0b008289 Reviewed-by: Alexandru Croitor --- cmake/QtModuleHelpers.cmake | 8 ++++++++ src/corelib/Qt6CoreConfigExtras.cmake.in | 4 +--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake index d3a54b206c2..c09fc6c9c0f 100644 --- a/cmake/QtModuleHelpers.cmake +++ b/cmake/QtModuleHelpers.cmake @@ -683,8 +683,16 @@ function(qt_internal_add_module target) list(APPEND extra_cmake_files "${CMAKE_CURRENT_LIST_DIR}/${INSTALL_CMAKE_NAMESPACE}${target}Macros.cmake") list(APPEND extra_cmake_includes "${INSTALL_CMAKE_NAMESPACE}${target}Macros.cmake") endif() + if (EXISTS "${CMAKE_CURRENT_LIST_DIR}/${INSTALL_CMAKE_NAMESPACE}${target}ConfigExtras.cmake.in") if(target STREQUAL Core) + if(NOT "${QT_NAMESPACE}" STREQUAL "") + string(JOIN "" qtcore_namespace_definition + "set_property(TARGET \${__qt_core_target} " + "APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS QT_NAMESPACE=${QT_NAMESPACE})" + ) + endif() + set(extra_cmake_code "") # Add some variables for compatibility with Qt5 config files. if(QT_FEATURE_reduce_exports) diff --git a/src/corelib/Qt6CoreConfigExtras.cmake.in b/src/corelib/Qt6CoreConfigExtras.cmake.in index e5fea0401c5..a63af75d254 100644 --- a/src/corelib/Qt6CoreConfigExtras.cmake.in +++ b/src/corelib/Qt6CoreConfigExtras.cmake.in @@ -19,9 +19,7 @@ if (NOT QT_NO_CREATE_TARGETS) set(__qt_core_target "${__qt_core_aliased_target}") endif() unset(__qt_core_aliased_target) - if (NOT "@QT_NAMESPACE@" STREQUAL "") - set_property(TARGET ${__qt_core_target} APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS QT_NAMESPACE=@QT_NAMESPACE@) - endif() + @qtcore_namespace_definition@ set_property(TARGET ${__qt_core_target} APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS $<$>:QT_NO_DEBUG>) set_property(TARGET ${__qt_core_target} PROPERTY INTERFACE_COMPILE_FEATURES cxx_decltype) endif()