set(SRCS SPIRV-Cross/GLSL.std.450.h SPIRV-Cross/spirv.h SPIRV-Cross/spirv.hpp SPIRV-Cross/spirv_cfg.cpp SPIRV-Cross/spirv_cfg.hpp SPIRV-Cross/spirv_common.hpp SPIRV-Cross/spirv_cpp.cpp SPIRV-Cross/spirv_cpp.hpp SPIRV-Cross/spirv_cross.cpp SPIRV-Cross/spirv_cross.hpp SPIRV-Cross/spirv_cross_c.cpp SPIRV-Cross/spirv_cross_c.h SPIRV-Cross/spirv_cross_containers.hpp SPIRV-Cross/spirv_cross_error_handling.hpp SPIRV-Cross/spirv_cross_parsed_ir.cpp SPIRV-Cross/spirv_cross_parsed_ir.hpp SPIRV-Cross/spirv_cross_util.cpp SPIRV-Cross/spirv_cross_util.hpp SPIRV-Cross/spirv_glsl.cpp SPIRV-Cross/spirv_glsl.hpp SPIRV-Cross/spirv_hlsl.cpp SPIRV-Cross/spirv_hlsl.hpp SPIRV-Cross/spirv_msl.cpp SPIRV-Cross/spirv_msl.hpp SPIRV-Cross/spirv_parser.cpp SPIRV-Cross/spirv_parser.hpp SPIRV-Cross/spirv_reflect.cpp SPIRV-Cross/spirv_reflect.hpp ) if(NOT MSVC) # spirv_cross requires C++11 at a minimum to compile. add_compile_options(-std=c++11) # Silence some warnings that occur frequently to reduce noise in build logs. add_compile_options(-Wno-shadow) add_compile_options(-Wno-reorder) add_compile_options(-Wno-sign-compare) add_compile_options(-Wno-parentheses) add_compile_options(-Wno-unused-variable) if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") add_compile_options(-Wno-unused-but-set-variable) elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") add_compile_options(-Wno-missing-variable-declarations) endif() endif() add_library(spirv_cross STATIC ${SRCS}) dolphin_disable_warnings_msvc(spirv_cross) target_compile_definitions(spirv_cross PUBLIC SPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS) target_include_directories(spirv_cross PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/SPIRV-Cross/include ${CMAKE_CURRENT_SOURCE_DIR}/SPIRV-Cross)