diff options
author | Alexey Edelev <[email protected]> | 2024-07-02 18:04:14 +0200 |
---|---|---|
committer | Alexey Edelev <[email protected]> | 2024-07-04 20:29:21 +0200 |
commit | ff391b5c17309ca8b7bbbaef9028d8b31b847683 (patch) | |
tree | 5c5df1a05763b9e9b0cd15857ef2a4306b94b79a | |
parent | ecf8843720a0240dc310c169a4dd605f8f0cab45 (diff) |
Manage the <module>_DEFINITIONS transformation accurately
Ensure that -D is not prepended to the special sequences like generator
expressions.
Pick-to: 6.5 6.7 6.8
Change-Id: I295c289e3d188780d697ff8c62d8c8fc2df6522c
Reviewed-by: Alexandru Croitor <[email protected]>
-rw-r--r-- | cmake/QtModuleConfig.cmake.in | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cmake/QtModuleConfig.cmake.in b/cmake/QtModuleConfig.cmake.in index 06a7daad71e..004e6a88515 100644 --- a/cmake/QtModuleConfig.cmake.in +++ b/cmake/QtModuleConfig.cmake.in @@ -58,7 +58,16 @@ if (NOT QT_NO_CREATE_TARGETS AND @INSTALL_CMAKE_NAMESPACE@@target@_FOUND) if(NOT @QT_CMAKE_EXPORT_NAMESPACE@@target@_DEFINITIONS) set(@QT_CMAKE_EXPORT_NAMESPACE@@target@_DEFINITIONS "") else() - list(TRANSFORM @QT_CMAKE_EXPORT_NAMESPACE@@target@_DEFINITIONS PREPEND "-D") + set(updated_defs "") + foreach(def IN LISTS @QT_CMAKE_EXPORT_NAMESPACE@@target@_DEFINITIONS) + if(def MATCHES "^[A-Za-z_]") + list(APPEND updated_defs "-D${def}") + else() + list(APPEND updated_defs "${def}") + endif() + endforeach() + set(@QT_CMAKE_EXPORT_NAMESPACE@@target@_DEFINITIONS "${updated_defs}") + unset(updated_defs) endif() get_target_property(@QT_CMAKE_EXPORT_NAMESPACE@@target@_COMPILE_DEFINITIONS |