diff options
Diffstat (limited to 'shaders/CMakeLists.txt')
| -rw-r--r-- | shaders/CMakeLists.txt | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/shaders/CMakeLists.txt b/shaders/CMakeLists.txt new file mode 100644 index 0000000..99284e5 --- /dev/null +++ b/shaders/CMakeLists.txt @@ -0,0 +1,26 @@ +file(GLOB_RECURSE GLSL_SOURCE_FILES + "./*.frag" + "./*.vert" + "./*.geom" + "./*.comp" + "./*.glsl" +) + +message(STATUS ${GLSL_SOURCE_FILES}) + +foreach(GLSL ${GLSL_SOURCE_FILES}) + get_filename_component(FILE_NAME ${GLSL} NAME) + set(SPIRV "${PROJECT_BINARY_DIR}/shaders/${FILE_NAME}.spv") + add_custom_command( + OUTPUT ${SPIRV} + COMMAND glslc --target-env=vulkan1.2 -std=460 ${GLSL} -o ${SPIRV} -I "../shaders/include" # relative to build directory + DEPENDS ${GLSL}) + list(APPEND SPIRV_BINARY_FILES ${SPIRV}) +endforeach(GLSL) + +add_custom_target( + shaders + DEPENDS ${SPIRV_BINARY_FILES} + ) + +add_dependencies(path-tracer shaders) |
