aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2022-11-07 14:56:08 +0200
committerSamuli Piippo <samuli.piippo@qt.io>2022-11-11 16:07:31 +0200
commit0afc9626d0c450a3c14130ca6f6d88656101e1e0 (patch)
tree6d8207eda33f375259accc867b362f6e0b64724d
parentc65b97cd3ddf096e5d5ebad59d586c100988b0d6 (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.cmake16
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