1# cmake file for glslang 2 3if (NOT DE_DEFS) 4 message(FATAL_ERROR "Include Defs.cmake") 5endif () 6 7if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/SPIRV/GlslangToSpv.cpp") 8 set(DEFAULT_GLSLANG_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src) 9else () 10 set(DEFAULT_GLSLANG_SRC_PATH "../glslang") 11endif () 12 13set(GLSLANG_SRC_PATH ${DEFAULT_GLSLANG_SRC_PATH} CACHE STRING "Path to glslang source tree") 14 15if (IS_ABSOLUTE ${GLSLANG_SRC_PATH}) 16 set(GLSLANG_ABS_PATH ${GLSLANG_SRC_PATH}) 17else () 18 set(GLSLANG_ABS_PATH "${CMAKE_SOURCE_DIR}/${GLSLANG_SRC_PATH}") 19endif () 20 21if (EXISTS ${GLSLANG_ABS_PATH}/glslang/GenericCodeGen/CodeGen.cpp) 22 message(STATUS "glslang found") 23 24 # Disable glslang install as part of cmake install. 25 set(SKIP_GLSLANG_INSTALL OFF CACHE BOOL "" FORCE) 26 27 # Do not build glslang binaries. 28 set(ENABLE_GLSLANG_BINARIES OFF CACHE BOOL "" FORCE) 29 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}) 33 34 add_subdirectory(${GLSLANG_ABS_PATH}) 35 36 add_definitions(-DENABLE_HLSL) 37 38 set(GLSLANG_INCLUDE_PATH ${GLSLANG_ABS_PATH} PARENT_SCOPE) 39 set(GLSLANG_LIBRARIES glslang SPIRV SPVRemapper PARENT_SCOPE) 40else () 41 message(FATAL_ERROR "glslang not found") 42endif () 43