From 78bf7c395e4ed03e27d10bb44bd6a53e779a999f Mon Sep 17 00:00:00 2001 From: Chao Shen Date: Mon, 7 May 2018 11:16:32 +0800 Subject: [PATCH] Option to let clang use libc++. --- CMakeLists.txt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 13659132..324b8395 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,7 @@ set(CLANG_DOWNLOAD_LOCATION ${CMAKE_BINARY_DIR} option(SYSTEM_CLANG "Use system installation of Clang instead of \ downloading Clang" OFF) option(ASAN "Compile with address sanitizers" OFF) +option(CLANG_USE_BUNDLED_LIBC++ "Let Clang use bundled libc++" OFF) # Sources for the executable are specified at end of CMakeLists.txt add_executable(ccls "") @@ -81,6 +82,14 @@ if(NOT SYSTEM_CLANG) download_and_extract_clang(${CLANG_VERSION} ${CLANG_DOWNLOAD_LOCATION}) # Used by FindClang set(CLANG_ROOT ${DOWNLOADED_CLANG_DIR}) + + if(CLANG_USE_BUNDLED_LIBC++) + target_compile_options(ccls PRIVATE -stdlib=libc++) + target_link_libraries(ccls PRIVATE ${CLANG_ROOT}/lib/libc++.a + ${CLANG_ROOT}/lib/libc++abi.a + ${CLANG_ROOT}/lib/libc++experimental.a) + endif() + else() message(STATUS "Using system Clang") endif()