aboutsummaryrefslogtreecommitdiff
path: root/cube
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2018-05-15 14:11:53 -0600
committerMark Lobodzinski <mark@lunarg.com>2018-05-18 08:46:18 -0600
commit7f6dfb716780c964357b7548f0cc4be8a39c85ae (patch)
tree538861397059112fac57768e06481034f0b6d1c7 /cube
parent52def6dc2b42931aa7a544c7c6484b2aacce3ecb (diff)
downloadusermoji-7f6dfb716780c964357b7548f0cc4be8a39c85ae.tar.xz
cube: Download glslangValidator binary
Obviates the need to set GLSLANG_REPO_ROOT or to have glslang otherwise installed for building this repo.
Diffstat (limited to 'cube')
-rw-r--r--cube/CMakeLists.txt18
1 files changed, 16 insertions, 2 deletions
diff --git a/cube/CMakeLists.txt b/cube/CMakeLists.txt
index 42ab9930..f907a9a8 100644
--- a/cube/CMakeLists.txt
+++ b/cube/CMakeLists.txt
@@ -3,10 +3,24 @@ set(CUBE_INCLUDE_DIRS
${CMAKE_CURRENT_BINARY_DIR}/..
)
+find_package(PythonInterp 3 REQUIRED)
+set(PYTHON_CMD ${PYTHON_EXECUTABLE})
+
+set(SCRIPTS_DIR "${PROJECT_SOURCE_DIR}/scripts")
+
if(NOT DEFINED GLSLANG_REPO_ROOT)
+ set(GLSLANG_VALIDATOR_NAME "glslangValidator")
message(STATUS "Using cmake find_program to look for glslangValidator")
- find_program(GLSLANG_VALIDATOR NAMES glslangValidator
- HINTS "$ENV{VULKAN_SDK}/bin"
+ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
+ execute_process(COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/fetch_glslangvalidator.py glslang-master-windows-x64-Release.zip)
+ set(GLSLANG_VALIDATOR_NAME "glslangValidator.exe")
+ elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ execute_process(COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/fetch_glslangvalidator.py glslang-master-linux-Release.zip)
+ elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ execute_process(COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/fetch_glslangvalidator.py glslang-master-osx-Release.zip)
+ endif()
+ find_program(GLSLANG_VALIDATOR NAMES ${GLSLANG_VALIDATOR_NAME}
+ HINTS "${PROJECT_SOURCE_DIR}/glslang/bin"
)
else()
message(STATUS "Using glslang_repo_root to look for glslangValidator")