diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2021-06-16 11:00:32 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-06-16 20:00:51 +0000 |
commit | f193f1551863137d60a7b59d1994603e1e6b9a42 (patch) | |
tree | 90983c8a039b14b8568a9c90e440c9d255f5694c | |
parent | 1ca34b06633c80f9baa9f7d852c181fc4ec96ab7 (diff) |
Add RESOURCES argument to qt_add_qml_module
This way you can pass QML-related resources without triggering a
warning.
Change-Id: I4b7db5007f1f2ecf0eb556bc4e5bc67f8ac9148d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
(cherry picked from commit 0b7d6fe82fc1a5bcd8a033ff4d0c80dbdc40a070)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/qml/Qt6QmlBuildInternals.cmake | 9 | ||||
-rw-r--r-- | src/qml/Qt6QmlMacros.cmake | 7 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/qml/Qt6QmlBuildInternals.cmake b/src/qml/Qt6QmlBuildInternals.cmake index 6f44eceab1..8bb69734aa 100644 --- a/src/qml/Qt6QmlBuildInternals.cmake +++ b/src/qml/Qt6QmlBuildInternals.cmake @@ -65,6 +65,7 @@ function(qt_internal_add_qml_module target) set(qml_module_multi_args # SOURCES will be handled by qt_internal_add_module() QML_FILES + RESOURCES IMPORTS IMPORT_PATH OPTIONAL_IMPORTS @@ -271,9 +272,9 @@ function(qt_internal_add_qml_module target) ) endif() - if(DEFINED arg_QML_FILES) - foreach(qml_file IN LISTS arg_QML_FILES) - __qt_get_relative_resource_path_for_file(file_resource_path ${qml_file}) + if(DEFINED arg_QML_FILES OR DEFINED arg_RESOURCES) + foreach(resource_file IN LISTS arg_QML_FILES arg_RESOURCES) + __qt_get_relative_resource_path_for_file(file_resource_path ${resource_file}) get_filename_component(resource_dir ${file_resource_path} DIRECTORY) get_filename_component(resource_name ${file_resource_path} NAME) if(resource_dir) @@ -282,7 +283,7 @@ function(qt_internal_add_qml_module target) set(dest "${arg_INSTALL_DIRECTORY}") endif() qt_install( - FILES ${qml_file} + FILES ${resource_file} DESTINATION ${dest} RENAME ${resource_name} ) diff --git a/src/qml/Qt6QmlMacros.cmake b/src/qml/Qt6QmlMacros.cmake index b7cc657e68..6bbc92b972 100644 --- a/src/qml/Qt6QmlMacros.cmake +++ b/src/qml/Qt6QmlMacros.cmake @@ -120,6 +120,8 @@ set(__qt_qml_macros_module_base_dir "${CMAKE_CURRENT_LIST_DIR}" CACHE INTERNAL " # QML_FILES: List of Qml files. See qt6_target_qml_sources() for more # information on how to specify additional properties on qml files. (OPTIONAL) # +# RESOURCES: Resources used in QML, for example images. (OPTIONAL) +# # NO_LINT: By default, this function will create a separate ${target}_qmllint # target if any .qml files are added to ${target} (see qt6_add_qml_sources()). # Provide the NO_LINT option to disable this behavior. (OPTIONAL) @@ -167,6 +169,7 @@ function(qt6_add_qml_module target) set(args_multi SOURCES QML_FILES + RESOURCES IMPORTS IMPORT_PATH OPTIONAL_IMPORTS @@ -503,6 +506,7 @@ function(qt6_add_qml_module target) qt6_target_qml_sources(${target} __QT_INTERNAL_FORCE_DEFER_QMLDIR FILES ${arg_QML_FILES} + RESOURCES ${arg_RESOURCES} OUTPUT_TARGETS cache_target ) list(APPEND output_targets ${cache_target}) @@ -1129,6 +1133,7 @@ function(qt6_target_qml_sources target) set(args_multi FILES + RESOURCES ) cmake_parse_arguments(PARSE_ARGV 1 arg @@ -1404,7 +1409,7 @@ function(qt6_target_qml_sources target) set(resource_targets) qt6_add_resources(${target} ${resource_name} PREFIX ${arg_PREFIX} - FILES ${arg_FILES} + FILES ${arg_FILES} ${arg_RESOURCES} OUTPUT_TARGETS resource_targets ) math(EXPR counter "${counter} + 1") |