aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregF <greg@LunarG.com>2015-07-10 12:35:41 -0600
committerGregF <greg@LunarG.com>2015-07-10 12:45:39 -0600
commit925a7cd20ea62c9a1afd169f8f39682ada659205 (patch)
treebce6357235fbc9bdcb44463952c3ad70364ed361
parent53f968f84558cd286d0cda9568a808cb97c14ec0 (diff)
downloadusermoji-925a7cd20ea62c9a1afd169f8f39682ada659205.tar.xz
demos: add code to compile spv files in separate directories.
This enables parallel build.
-rw-r--r--demos/CMakeLists.txt32
1 files 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()