diff options
author | Craig Scott <craig.scott@qt.io> | 2021-09-06 12:27:28 +1000 |
---|---|---|
committer | Craig Scott <craig.scott@qt.io> | 2021-09-06 16:59:32 +1000 |
commit | 9e62b6a355b415db9b99ddfb2459fc0914d63a93 (patch) | |
tree | 03711c93642d4f6e325829f651d70b2a5c4c11d6 /src/qml/Qt6QmlMacros.cmake | |
parent | 995a254f9727352f84889ceabead58a12f659455 (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
Pick-to: 6.2
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>
Diffstat (limited to 'src/qml/Qt6QmlMacros.cmake')
-rw-r--r-- | src/qml/Qt6QmlMacros.cmake | 10 |
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() |