Skip to content

Commit 74e3717

Browse files
committed
Add check for libc++ headers found
1 parent 18f8928 commit 74e3717

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

llvm/cmake/modules/HandleLLVMStdlib.cmake

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
# if the user has requested it.
33

44
include(DetermineGCCCompatible)
5+
include(CheckIncludeFiles)
56

67
if(NOT DEFINED LLVM_STDLIB_HANDLED)
78
set(LLVM_STDLIB_HANDLED ON)
@@ -19,7 +20,11 @@ if(NOT DEFINED LLVM_STDLIB_HANDLED)
1920
if(LLVM_COMPILER_IS_GCC_COMPATIBLE)
2021
check_cxx_compiler_flag("-stdlib=libc++" CXX_COMPILER_SUPPORTS_STDLIB)
2122
check_linker_flag(CXX "-stdlib=libc++" CXX_LINKER_SUPPORTS_STDLIB)
22-
if(CXX_COMPILER_SUPPORTS_STDLIB AND CXX_LINKER_SUPPORTS_STDLIB)
23+
cmake_push_check_state()
24+
set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -stdlib=libc++")
25+
check_include_files("chrono" CXX_COMPILER_SUPPORTS_STDLIB_CHRONO LANGUAGE CXX)
26+
cmake_pop_check_state()
27+
if(CXX_COMPILER_SUPPORTS_STDLIB AND CXX_LINKER_SUPPORTS_STDLIB AND CXX_COMPILER_SUPPORTS_STDLIB_CHRONO)
2328
append("-stdlib=libc++"
2429
CMAKE_CXX_FLAGS CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS
2530
CMAKE_MODULE_LINKER_FLAGS)

llvm/cmake/modules/LLVMConfig.cmake.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ endif()
5555

5656
set(LLVM_ENABLE_RTTI @LLVM_ENABLE_RTTI@)
5757

58+
set(LLVM_ENABLE_LIBCXX @LLVM_ENABLE_LIBCXX@)
59+
5860
set(LLVM_ENABLE_LIBEDIT @HAVE_LIBEDIT@)
5961
if(LLVM_ENABLE_LIBEDIT)
6062
find_package(LibEdit)

0 commit comments

Comments
 (0)