@@ -51,12 +51,12 @@ if(ENABLE_CPP20_MODULE)
5151 endif ()
5252
5353 target_sources (VulkanCppModule
54- PUBLIC
55- FILE_SET cxx_modules TYPE CXX_MODULES
56- BASE_DIRS
57- "${Vulkan_INCLUDE_DIR} "
58- FILES
59- "${Vulkan_INCLUDE_DIR} /vulkan/vulkan.cppm"
54+ PUBLIC
55+ FILE_SET cxx_modules TYPE CXX_MODULES
56+ BASE_DIRS
57+ "${Vulkan_INCLUDE_DIR} "
58+ FILES
59+ "${Vulkan_INCLUDE_DIR} /vulkan/vulkan.cppm"
6060 )
6161
6262
@@ -85,7 +85,7 @@ find_program(SLANGC_EXECUTABLE slangc HINTS $ENV{VULKAN_SDK}/bin REQUIRED)
8585
8686function (add_shaders_target TARGET )
8787 cmake_parse_arguments ("SHADER" "" "CHAPTER_NAME" "SOURCES" ${ARGN} )
88- set (SHADERS_DIR ${SHADER_CHAPTER_NAME} /shaders)
88+ set (SHADERS_DIR ${CMAKE_BINARY_DIR} / ${ SHADER_CHAPTER_NAME} /shaders)
8989 add_custom_command (
9090 OUTPUT ${SHADERS_DIR}
9191 COMMAND ${CMAKE_COMMAND} -E make_directory ${SHADERS_DIR}
@@ -96,31 +96,31 @@ function (add_shaders_target TARGET)
9696 ARGS --target-env vulkan1.0 ${SHADER_SOURCES} --quiet
9797 WORKING_DIRECTORY ${SHADERS_DIR}
9898 DEPENDS ${SHADER_SOURCES}
99- COMMENT "Compiling Shaders"
99+ COMMENT "Compiling Shaders for ${TARGET} "
100100 VERBATIM
101101 )
102102 add_custom_target (${TARGET} DEPENDS ${SHADERS_DIR} /frag.spv ${SHADERS_DIR} /vert.spv )
103103endfunction ()
104104
105105function (add_slang_shader_target TARGET )
106106 cmake_parse_arguments ("SHADER" "" "CHAPTER_NAME" "SOURCES" ${ARGN} )
107- set (SHADERS_DIR ${SHADER_CHAPTER_NAME} /shaders)
107+ set (SHADERS_DIR ${CMAKE_BINARY_DIR} / ${ SHADER_CHAPTER_NAME} /shaders)
108108 file (GLOB HAS_COMPUTE ${CHAPTER_SHADER} .comp )
109109 set (ENTRY_POINTS -entry vertMain -entry fragMain)
110110 if (HAS_COMPUTE)
111111 list (APPEND ENTRY_POINTS -entry compMain)
112112 endif ()
113113 add_custom_command (
114- OUTPUT ${SHADERS_DIR}
115- COMMAND ${CMAKE_COMMAND} -E make_directory ${SHADERS_DIR}
114+ OUTPUT ${SHADERS_DIR}
115+ COMMAND ${CMAKE_COMMAND} -E make_directory ${SHADERS_DIR}
116116 )
117117 add_custom_command (
118- OUTPUT ${SHADERS_DIR} /slang.spv
119- COMMAND ${SLANGC_EXECUTABLE} ${SHADER_SOURCES} -target spirv -profile spirv_1_4+spvRayQueryKHR -emit-spirv-directly -fvk-use-entrypoint-name ${ENTRY_POINTS} -o slang.spv
120- WORKING_DIRECTORY ${SHADERS_DIR}
121- DEPENDS ${SHADER_SOURCES}
122- COMMENT "Compiling Slang Shaders"
123- VERBATIM
118+ OUTPUT ${SHADERS_DIR} /slang.spv
119+ COMMAND ${SLANGC_EXECUTABLE} ${SHADER_SOURCES} -target spirv -profile spirv_1_4+spvRayQueryKHR -emit-spirv-directly -fvk-use-entrypoint-name ${ENTRY_POINTS} -o slang.spv
120+ WORKING_DIRECTORY ${SHADERS_DIR}
121+ DEPENDS ${SHADER_SOURCES}
122+ COMMENT "Compiling Slang Shaders for ${TARGET} "
123+ VERBATIM
124124 )
125125 add_custom_target (${TARGET} DEPENDS ${SHADERS_DIR} /slang.spv )
126126endfunction ()
0 commit comments