| … | … | @@ -140,18 +140,27 @@ ELSE (CLANG STREQUAL "CLANG-NOTFOUND") |
| 140 | 140 | MESSAGE(STATUS "clang found: ${CLANG}") |
| 141 | 141 | ADD_DEFINITIONS(-DHAVE_CLANG) |
| 142 | 142 | SET(HAVE_CLANG 1) |
| 143 | | ENDIF (CLANG STREQUAL "CLANG-NOTFOUND") |
| 144 | 143 | |
| 145 | | # TODO: also accept newer versions of llvm-spirv |
| 146 | | # Debian stable has llvm-spriv-15 available |
| 147 | | FIND_PROGRAM(LLVM_SPIRV llvm-spirv-14) |
| 148 | | IF (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 149 | | MESSAGE(STATUS "llvm-spirv not found; offline compile will not be done.") |
| 150 | | ELSE (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 151 | | MESSAGE(STATUS "llvm-spirv found: ${LLVM_SPIRV}") |
| 152 | | ADD_DEFINITIONS(-DHAVE_LLVM_SPIRV) |
| 153 | | SET(HAVE_LLVM_SPIRV 1) |
| 154 | | ENDIF (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 144 | # Look for version of llvm-spirv that matches clang. |
| 145 | # Bit of a mess, but whatever. |
| 146 | execute_process( |
| 147 | COMMAND ${CLANG} --version |
| 148 | OUTPUT_VARIABLE CLANG_VERSION_OUTPUT |
| 149 | OUTPUT_STRIP_TRAILING_WHITESPACE |
| 150 | ) |
| 151 | string(REGEX MATCH "[0-9]+" CLANG_MAJOR_VERSION "${CLANG_VERSION_OUTPUT}") |
| 152 | message(STATUS "Clang major version: ${CLANG_MAJOR_VERSION}") |
| 153 | |
| 154 | FIND_PROGRAM(LLVM_SPIRV llvm-spirv-${CLANG_MAJOR_VERSION}) |
| 155 | IF (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 156 | MESSAGE(STATUS "llvm-spirv not found; offline compile will not be done.") |
| 157 | ELSE (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 158 | MESSAGE(STATUS "llvm-spirv found: ${LLVM_SPIRV}") |
| 159 | ADD_DEFINITIONS(-DHAVE_LLVM_SPIRV) |
| 160 | SET(HAVE_LLVM_SPIRV 1) |
| 161 | ENDIF (LLVM_SPIRV STREQUAL "LLVM_SPIRV-NOTFOUND") |
| 162 | |
| 163 | ENDIF (CLANG STREQUAL "CLANG-NOTFOUND") |
| 155 | 164 | |
| 156 | 165 | # ---------------------------------------------------------- |
| 157 | 166 | # Find CUDA (optional; for experimental prototyping.) |