mirror of
https://github.com/KhronosGroup/OpenCL-CTS.git
synced 2026-03-25 08:19:02 +00:00
vulkan: Choose where Shaders are generated (#2226)
- generate spv files into VULKAN_TEST_RESOURCES directory - works with change that generates spv at build time Co-authored-by: dcrawley <dcrawley@qti.qualcomm.com>
This commit is contained in:
@@ -8,17 +8,21 @@ if(${Vulkan_glslang_binary} STREQUAL "Vulkan_glslang_binary-NOTFOUND")
|
|||||||
else()
|
else()
|
||||||
message(STATUS "Found glslang: ${Vulkan_glslang_binary}")
|
message(STATUS "Found glslang: ${Vulkan_glslang_binary}")
|
||||||
|
|
||||||
|
if(NOT DEFINED VULKAN_TEST_RESOURCES)
|
||||||
|
set(VULKAN_TEST_RESOURCES ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
set(vulkan_spirv_files "")
|
set(vulkan_spirv_files "")
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT buffer.spv
|
OUTPUT ${VULKAN_TEST_RESOURCES}/buffer.spv
|
||||||
COMMAND ${Vulkan_glslang_binary}
|
COMMAND ${Vulkan_glslang_binary}
|
||||||
--target-env vulkan1.0
|
--target-env vulkan1.0
|
||||||
-o ${CMAKE_CURRENT_BINARY_DIR}/buffer.spv
|
-o ${VULKAN_TEST_RESOURCES}/buffer.spv
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/buffer.comp
|
${CMAKE_CURRENT_SOURCE_DIR}/buffer.comp
|
||||||
DEPENDS buffer.comp
|
DEPENDS buffer.comp
|
||||||
VERBATIM)
|
VERBATIM)
|
||||||
list(APPEND vulkan_spirv_files ${CMAKE_CURRENT_BINARY_DIR}/buffer.spv)
|
list(APPEND vulkan_spirv_files ${VULKAN_TEST_RESOURCES}/buffer.spv)
|
||||||
|
|
||||||
file(STRINGS "image2D_test_formats.txt" image2D_formats)
|
file(STRINGS "image2D_test_formats.txt" image2D_formats)
|
||||||
|
|
||||||
@@ -29,14 +33,14 @@ else()
|
|||||||
configure_file(image2D.comp.in image2D_${GLSL_FORMAT}.comp)
|
configure_file(image2D.comp.in image2D_${GLSL_FORMAT}.comp)
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT image2D_${GLSL_FORMAT}.spv
|
OUTPUT ${VULKAN_TEST_RESOURCES}/image2D_${GLSL_FORMAT}.spv
|
||||||
COMMAND ${Vulkan_glslang_binary}
|
COMMAND ${Vulkan_glslang_binary}
|
||||||
--target-env vulkan1.0
|
--target-env vulkan1.0
|
||||||
-o ${CMAKE_CURRENT_BINARY_DIR}/image2D_${GLSL_FORMAT}.spv
|
-o ${VULKAN_TEST_RESOURCES}/image2D_${GLSL_FORMAT}.spv
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/image2D_${GLSL_FORMAT}.comp
|
${CMAKE_CURRENT_BINARY_DIR}/image2D_${GLSL_FORMAT}.comp
|
||||||
DEPENDS image2D_${GLSL_FORMAT}.comp
|
DEPENDS image2D_${GLSL_FORMAT}.comp
|
||||||
VERBATIM)
|
VERBATIM)
|
||||||
list(APPEND vulkan_spirv_files ${CMAKE_CURRENT_BINARY_DIR}/image2D_${GLSL_FORMAT}.spv)
|
list(APPEND vulkan_spirv_files ${VULKAN_TEST_RESOURCES}/image2D_${GLSL_FORMAT}.spv)
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
add_custom_target(vulkan_shaders DEPENDS ${vulkan_spirv_files})
|
add_custom_target(vulkan_shaders DEPENDS ${vulkan_spirv_files})
|
||||||
|
|||||||
Reference in New Issue
Block a user