From de5f4544ef2f371e3e526d813cdca2e9e67db2ae Mon Sep 17 00:00:00 2001 From: Sandy Carter Date: Sat, 20 Jul 2024 01:41:45 -0400 Subject: [PATCH] Change the output path of generated shaders The paths now for output shaders is the same of the shader file inside of a directory for the profile. --- cmake/bgfxToolUtils.cmake | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/cmake/bgfxToolUtils.cmake b/cmake/bgfxToolUtils.cmake index c63829b..5b4e188 100644 --- a/cmake/bgfxToolUtils.cmake +++ b/cmake/bgfxToolUtils.cmake @@ -598,9 +598,10 @@ if(TARGET bgfx::shaderc) # Build output targets and their commands set(OUTPUTS "") set(COMMANDS "") + set(MKDIR_COMMANDS "") foreach(PROFILE ${PROFILES}) _bgfx_get_profile_ext(${PROFILE} PROFILE_EXT) - set(OUTPUT ${ARGS_OUTPUT_DIR}/${SHADER_FILE_BASENAME}.${PROFILE_EXT}.bin$) + set(OUTPUT ${ARGS_OUTPUT_DIR}/${PROFILE_EXT}/${SHADER_FILE_BASENAME}.bin$<$:.h>) set(PLATFORM_I ${PLATFORM}) if(PROFILE STREQUAL "spirv") set(PLATFORM_I LINUX) @@ -622,12 +623,21 @@ if(TARGET bgfx::shaderc) ) list(APPEND OUTPUTS ${OUTPUT}) list(APPEND ALL_OUTPUTS ${OUTPUT}) + list( + APPEND + MKDIR_COMMANDS + COMMAND + ${CMAKE_COMMAND} + -E + make_directory + ${ARGS_OUTPUT_DIR}/${PROFILE_EXT} + ) list(APPEND COMMANDS COMMAND bgfx::shaderc ${CLI}) endforeach() add_custom_command( OUTPUT ${OUTPUTS} - COMMAND ${CMAKE_COMMAND} -E make_directory ${ARGS_OUTPUT_DIR} ${COMMANDS} + COMMAND ${MKDIR_COMMANDS} ${COMMANDS} MAIN_DEPENDENCY ${SHADER_FILE_ABSOLUTE} DEPENDS ${ARGS_VARYING_DEF} )