aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCraig Scott <craig.scott@qt.io>2021-09-06 12:27:28 +1000
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-09-06 09:03:23 +0000
commit527f7b1f4b556507fecd551d95fca55f0f342d62 (patch)
tree2c6b4fdb35ae4a5841c959faaa37b93250344e48
parentbf8860b4993de7d2467be7af22bcdb1482844924 (diff)
Fix OUTPUT_TARGETS not being set in parent scope in all cases
Fix versionless wrapper functions that were previously not forwarding on any OUTPUT_TARGETS set by the versioned command they were wrapping. Also fix qt6_target_qml_sources() not explicitly setting the OUTPUT_TARGETS variable in the calling scope if no targets were added. Task-number: QTBUG-96219 Change-Id: I13c9e67125434267cb1e328fb735a0f8cde2792e Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 9e62b6a355b415db9b99ddfb2459fc0914d63a93) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/qml/Qt6QmlMacros.cmake10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/qml/Qt6QmlMacros.cmake b/src/qml/Qt6QmlMacros.cmake
index 7aee3d3a33..d970e5b954 100644
--- a/src/qml/Qt6QmlMacros.cmake
+++ b/src/qml/Qt6QmlMacros.cmake
@@ -597,6 +597,10 @@ endfunction()
if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS)
function(qt_add_qml_module)
qt6_add_qml_module(${ARGV})
+ cmake_parse_arguments(PARSE_ARGV 1 arg "" "OUTPUT_TARGETS" "")
+ if(arg_OUTPUT_TARGETS)
+ set(${arg_OUTPUT_TARGETS} ${${arg_OUTPUT_TARGETS}} PARENT_SCOPE)
+ endif()
endfunction()
endif()
@@ -1571,7 +1575,7 @@ function(qt6_target_qml_sources target)
set_target_properties(${target} PROPERTIES QT_QML_MODULE_RAW_QML_SETS ${counter})
list(APPEND output_targets ${resource_targets})
- if(arg_OUTPUT_TARGETS AND output_targets)
+ if(arg_OUTPUT_TARGETS)
set(${arg_OUTPUT_TARGETS} ${output_targets} PARENT_SCOPE)
endif()
@@ -1580,6 +1584,10 @@ endfunction()
if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS)
function(qt_target_qml_sources)
qt6_target_qml_sources(${ARGV})
+ cmake_parse_arguments(PARSE_ARGV 1 arg "" "OUTPUT_TARGETS" "")
+ if(arg_OUTPUT_TARGETS)
+ set(${arg_OUTPUT_TARGETS} ${${arg_OUTPUT_TARGETS}} PARENT_SCOPE)
+ endif()
endfunction()
endif()