diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2022-11-07 14:56:08 +0200 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@qt.io> | 2022-11-11 16:07:31 +0200 |
commit | 0afc9626d0c450a3c14130ca6f6d88656101e1e0 (patch) | |
tree | 6d8207eda33f375259accc867b362f6e0b64724d | |
parent | c65b97cd3ddf096e5d5ebad59d586c100988b0d6 (diff) |
CMake: use correct output file for qt6_add_materials
Use the actual qrc file for output and dependency in qt6_add_materials.
This prevents running of shadergen repeatedly even when no changes
have been made.
Change-Id: I4999f382af2f9330b0baf9a6b9e4c48f794515b0
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
(cherry picked from commit bea2faa2196fb12b7b54e769d1f09a1e7edc83a7)
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
-rw-r--r-- | src/quick3d/Qt6Quick3DMacros.cmake | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/quick3d/Qt6Quick3DMacros.cmake b/src/quick3d/Qt6Quick3DMacros.cmake index f4e5c298..be71da32 100644 --- a/src/quick3d/Qt6Quick3DMacros.cmake +++ b/src/quick3d/Qt6Quick3DMacros.cmake @@ -1,9 +1,10 @@ #quick3d version of qrc to resource -function(_qt_internal_quick3d_generate_resource_from_qrc target qrcfile) - set(generatedResourceFile "${CMAKE_CURRENT_BINARY_DIR}/.rcc/generated_${qrcfile}.qrc") - set(generatedSourceCode "${CMAKE_CURRENT_BINARY_DIR}/.rcc/qrc_${qrcfile}.cpp") - set(rccArgs --name "${qrcfile}" --output "${generatedSourceCode}" "${generatedResourceFile}") +function(_qt_internal_quick3d_generate_resource_from_qrc target resource_name) + set(generatedResourceFile "${CMAKE_CURRENT_BINARY_DIR}/.rcc/generated_${resource_name}.qrc") + set(generatedSourceCode "${CMAKE_CURRENT_BINARY_DIR}/.rcc/qrc_${resource_name}.cpp") + set(rccArgs --name "${resource_name}" + --output "${generatedSourceCode}" "${generatedResourceFile}") if(NOT QT_FEATURE_zstd) list(APPEND rccArgs "--no-zstd") @@ -17,11 +18,12 @@ function(_qt_internal_quick3d_generate_resource_from_qrc target qrcfile) ARGS ${rccArgs} DEPENDS - "${qrcfile}" + "${generatedResourceFile}" $<TARGET_FILE:${QT_CMAKE_EXPORT_NAMESPACE}::rcc> $<TARGET_FILE:${QT_CMAKE_EXPORT_NAMESPACE}::shadergen> COMMENT - RCC ${qrcfile} VERBATIM + RCC ${resource_name} + VERBATIM ) get_target_property(type ${target} TYPE) @@ -40,7 +42,7 @@ function(qt6_add_materials target resource_name) set(output_dir "${CMAKE_CURRENT_BINARY_DIR}/.rcc") add_custom_command( - OUTPUT "${resource_name}" + OUTPUT "${output_dir}/${output_qrc}" ${QT_TOOL_PATH_SETUP_COMMAND} COMMAND ${QT_CMAKE_EXPORT_NAMESPACE}::shadergen |