Skip to content

Commit

Permalink
cmake: Support using system SPIRV-Headers
Browse files Browse the repository at this point in the history
  • Loading branch information
abouvier authored and ReinUsesLisp committed May 14, 2022
1 parent b8f133b commit aa292d5
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
11 changes: 10 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
set(MASTER_PROJECT ON)
endif()

# Sirit project options
option(SIRIT_TESTS "Build tests" OFF)
option(SIRIT_USE_SYSTEM_SPIRV_HEADERS "Use system SPIR-V headers" OFF)

# Default to a Release build
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel." FORCE)
Expand Down Expand Up @@ -81,7 +85,12 @@ endif()
enable_testing(true)

# SPIR-V headers
add_subdirectory(externals/SPIRV-Headers EXCLUDE_FROM_ALL)
if (SIRIT_USE_SYSTEM_SPIRV_HEADERS)
find_package(SPIRV-Headers REQUIRED)
else()
add_subdirectory(externals/SPIRV-Headers EXCLUDE_FROM_ALL)
add_library(SPIRV-Headers::SPIRV-Headers ALIAS SPIRV-Headers)
endif()

# Sirit project files
add_subdirectory(src)
Expand Down
5 changes: 3 additions & 2 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,6 @@ target_compile_options(sirit PRIVATE ${SIRIT_CXX_FLAGS})

target_include_directories(sirit
PUBLIC ../include
PRIVATE . ${SPIRV-Headers_SOURCE_DIR}/include
INTERFACE ${SPIRV-Headers_SOURCE_DIR}/include)
PRIVATE .)

target_link_libraries(sirit PUBLIC SPIRV-Headers::SPIRV-Headers)

0 comments on commit aa292d5

Please sign in to comment.