Skip to content

Commit e465e4a

Browse files
committed
Quickfix for Linux llvm-21
1 parent 2ecdb07 commit e465e4a

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

cmake/prelude.cmake

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,16 @@ if($ENV{CXX} MATCHES "clang" OR CMAKE_CXX_COMPILER MATCHES "clang")
3939
set(CMAKE_CXX_STDLIB_MODULES_JSON
4040
${LLVM_DIR}/lib/c++/libc++.modules.json
4141
)
42-
elseif(LINUX)
42+
elseif(LINUX AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 21.0)
4343
execute_process(
4444
OUTPUT_VARIABLE LLVM_MODULES
4545
COMMAND clang++ -print-file-name=c++/libc++.modules.json
4646
COMMAND_ECHO STDOUT
4747
OUTPUT_STRIP_TRAILING_WHITESPACE
4848
)
49-
file(REAL_PATH ${LLVM_MODULES} CMAKE_CXX_STDLIB_MODULES_JSON)
49+
if(NOT DEFINED CMAKE_CXX_STDLIB_MODULES_JSON AND EXISTS ${LLVM_MODULES})
50+
set(CMAKE_CXX_STDLIB_MODULES_JSON ${LLVM_MODULES})
51+
endif()
5052
message(
5153
STATUS
5254
"CMAKE_CXX_STDLIB_MODULES_JSON=${CMAKE_CXX_STDLIB_MODULES_JSON}"

0 commit comments

Comments
 (0)