From b708a0b42a4977a9a99bf2023ddab6a32454d11d Mon Sep 17 00:00:00 2001 From: ladevieq Date: Sun, 27 Dec 2020 13:13:15 +0100 Subject: Target to compile shaders --- shaders/CMakeLists.txt | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 shaders/CMakeLists.txt (limited to 'shaders/CMakeLists.txt') 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) -- cgit v1.3