From 925a7cd20ea62c9a1afd169f8f39682ada659205 Mon Sep 17 00:00:00 2001 From: GregF Date: Fri, 10 Jul 2015 12:35:41 -0600 Subject: demos: add code to compile spv files in separate directories. This enables parallel build. --- demos/CMakeLists.txt | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/demos/CMakeLists.txt b/demos/CMakeLists.txt index d03a0ea0..6b48fcdd 100644 --- a/demos/CMakeLists.txt +++ b/demos/CMakeLists.txt @@ -52,20 +52,44 @@ if(WIN32) endif() if(NOT WIN32) add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/tri-vert.spv - COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/tri.vert && mv vert.spv ${CMAKE_BINARY_DIR}/demos/tri-vert.spv + COMMAND rm -rf tri-vert-dir + COMMAND mkdir tri-vert-dir + COMMAND cd tri-vert-dir + COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/tri.vert + COMMAND mv vert.spv ${CMAKE_BINARY_DIR}/demos/tri-vert.spv + COMMAND cd .. + COMMAND rm -rf tri-vert-dir DEPENDS tri.vert ${GLSLANG_PREFIX}/build/install/bin/glslangValidator ) add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/tri-frag.spv - COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/tri.frag && mv frag.spv ${CMAKE_BINARY_DIR}/demos/tri-frag.spv + COMMAND rm -rf tri-frag-dir + COMMAND mkdir tri-frag-dir + COMMAND cd tri-frag-dir + COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/tri.frag + COMMAND mv frag.spv ${CMAKE_BINARY_DIR}/demos/tri-frag.spv + COMMAND cd .. + COMMAND rm -rf tri-frag-dir DEPENDS tri.frag ${GLSLANG_PREFIX}/build/install/bin/glslangValidator ) add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv - COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/cube.vert && mv vert.spv ${CMAKE_BINARY_DIR}/demos/cube-vert.spv + COMMAND rm -rf cube-vert-dir + COMMAND mkdir cube-vert-dir + COMMAND cd cube-vert-dir + COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/cube.vert + COMMAND mv vert.spv ${CMAKE_BINARY_DIR}/demos/cube-vert.spv + COMMAND cd .. + COMMAND rm -rf cube-vert-dir DEPENDS cube.vert ${GLSLANG_PREFIX}/build/install/bin/glslangValidator ) add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv - COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/cube.frag && mv frag.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv + COMMAND rm -rf cube-frag-dir + COMMAND mkdir cube-frag-dir + COMMAND cd cube-frag-dir + COMMAND ${GLSLANG_PREFIX}/build/install/bin/glslangValidator -s -V ${PROJECT_SOURCE_DIR}/demos/cube.frag + COMMAND mv frag.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv + COMMAND cd .. + COMMAND rm -rf cube-frag-dir DEPENDS cube.frag ${GLSLANG_PREFIX}/build/install/bin/glslangValidator ) endif() -- cgit v1.2.3