1 # cmake file for glslang
4 message(FATAL_ERROR "Include Defs.cmake")
7 if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/SPIRV/GlslangToSpv.cpp")
8 set(DEFAULT_GLSLANG_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src)
10 set(DEFAULT_GLSLANG_SRC_PATH "../glslang")
13 set(GLSLANG_SRC_PATH ${DEFAULT_GLSLANG_SRC_PATH} CACHE STRING "Path to glslang source tree")
15 if (IS_ABSOLUTE ${GLSLANG_SRC_PATH})
16 set(GLSLANG_ABS_PATH ${GLSLANG_SRC_PATH})
18 set(GLSLANG_ABS_PATH "${CMAKE_SOURCE_DIR}/${GLSLANG_SRC_PATH}")
21 if (EXISTS ${GLSLANG_ABS_PATH}/glslang/GenericCodeGen/CodeGen.cpp)
22 message(STATUS "glslang found")
24 # Disable glslang install as part of cmake install.
25 set(SKIP_GLSLANG_INSTALL OFF CACHE BOOL "" FORCE)
27 # Do not build glslang binaries.
28 set(ENABLE_GLSLANG_BINARIES OFF CACHE BOOL "" FORCE)
30 # Overwrite the CMake flags for glslang with the our 3rd party ones.
31 set(CMAKE_C_FLAGS ${DE_3RD_PARTY_C_FLAGS})
32 set(CMAKE_CXX_FLAGS ${DE_3RD_PARTY_CXX_FLAGS})
34 add_subdirectory(${GLSLANG_ABS_PATH})
36 add_definitions(-DENABLE_HLSL)
38 set(GLSLANG_INCLUDE_PATH ${GLSLANG_ABS_PATH} PARENT_SCOPE)
39 set(GLSLANG_LIBRARIES glslang SPIRV SPVRemapper PARENT_SCOPE)
41 message(FATAL_ERROR "glslang not found")