@@ -3,34 +3,37 @@ cmake_minimum_required(VERSION 4.0.0)
3
3
find_package (Vulkan REQUIRED )
4
4
5
5
set (SHADER_DIR ${CMAKE_CURRENT_SOURCE_DIR} )
6
- set (VERT_SHADER ${SHADER_DIR} /shader.vert )
7
- set (FRAG_SHADER ${SHADER_DIR} /shader.frag )
8
- set (COMP_SHADER ${SHADER_DIR} /shader.comp )
9
- set (SPIRV_VERT ${SHADER_DIR} /vert.spv )
10
- set (SPIRV_FRAG ${SHADER_DIR} /frag.spv )
11
- set (SPIRV_COMP ${SHADER_DIR} /comp.spv )
6
+ set (STAGE_VERT "-fshader-stage=vert" )
7
+ set (STAGE_FRAG "-fshader-stage=frag" )
8
+ set (STAGE_COMP "-fshader-stage=comp" )
9
+ set (GRAPHICS_VERT_SHADER ${SHADER_DIR} /graphics.vert.glsl )
10
+ set (GRAPHICS_FRAG_SHADER ${SHADER_DIR} /graphics.frag.glsl )
11
+ set (COMPUTE_COMP_SHADER ${SHADER_DIR} /compute.comp.glsl )
12
+ set (GRAPHICS_SPIRV_VERT ${SHADER_DIR} /graphics.vert.spv )
13
+ set (GRAPHICS_SPIRV_FRAG ${SHADER_DIR} /graphics.frag.spv )
14
+ set (COMPUTE_SPIRV_COMP ${SHADER_DIR} /compute.comp.spv )
12
15
13
16
add_custom_command (
14
- OUTPUT ${SPIRV_VERT }
15
- COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${VERT_SHADER} -o ${SPIRV_VERT }
16
- COMMENT "Compiling shader .vert to vert.spv"
17
- DEPENDS ${VERT_SHADER }
17
+ OUTPUT ${GRAPHICS_SPIRV_VERT }
18
+ COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${STAGE_VERT} ${GRAPHICS_VERT_SHADER} -o ${GRAPHICS_SPIRV_VERT }
19
+ COMMENT "Compiling graphics .vert.glsl to graphics. vert.spv"
20
+ DEPENDS ${GRAPHICS_VERT_SHADER }
18
21
)
19
22
20
23
add_custom_command (
21
- OUTPUT ${SPIRV_FRAG }
22
- COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${FRAG_SHADER} -o ${SPIRV_FRAG }
23
- COMMENT "Compiling shader .frag to frag.spv"
24
- DEPENDS ${FRAG_SHADER }
24
+ OUTPUT ${GRAPHICS_SPIRV_FRAG }
25
+ COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${STAGE_FRAG} ${GRAPHICS_FRAG_SHADER} -o ${GRAPHICS_SPIRV_FRAG }
26
+ COMMENT "Compiling graphics .frag.glsl to graphics. frag.spv"
27
+ DEPENDS ${GRAPHICS_FRAG_SHADER }
25
28
)
26
29
27
30
add_custom_command (
28
- OUTPUT ${SPIRV_COMP }
29
- COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${COMP_SHADER} -o ${SPIRV_COMP }
30
- COMMENT "Compiling shader .comp to comp.spv"
31
- DEPENDS ${COMP_SHADER }
31
+ OUTPUT ${COMPUTE_SPIRV_COMP }
32
+ COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${STAGE_COMP} ${COMPUTE_COMP_SHADER} -o ${COMPUTE_SPIRV_COMP }
33
+ COMMENT "Compiling compute .comp.glsl to compute. comp.spv"
34
+ DEPENDS ${COMPUTE_COMP_SHADER }
32
35
)
33
36
34
37
add_custom_target (CompileShaders ALL
35
- DEPENDS ${SPIRV_VERT } ${SPIRV_FRAG } ${SPIRV_COMP }
36
- )
38
+ DEPENDS ${GRAPHICS_SPIRV_VERT } ${GRAPHICS_SPIRV_FRAG } ${COMPUTE_SPIRV_COMP }
39
+ )
0 commit comments