diff options
author | Petr Hosek <phosek@chromium.org> | 2017-02-09 02:20:25 +0000 |
---|---|---|
committer | Petr Hosek <phosek@chromium.org> | 2017-02-09 02:20:25 +0000 |
commit | 42bf29501dfa79f211841de060386d539933e811 (patch) | |
tree | c4720774a80cdd9606857e3d0614fbecad9b407f /CMakeLists.txt | |
parent | 42129c34c4374523a52333d0f90bef6795811d00 (diff) | |
download | libunwind_llvm-42bf29501dfa79f211841de060386d539933e811.tar.gz |
[libunwind][CMake] Use libc++ headers when available
libunwind depends on C++ library headers. When building libunwind
as part of LLVM and libc++ is available, use its headers.
Differential Revision: https://reviews.llvm.org/D29573
git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@294554 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 3ba4b65..7f1a118 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -282,4 +282,23 @@ endif() include_directories(include) +find_path( + LIBUNWIND_LIBCXX_INCLUDES_INTERNAL + __libcpp_version + PATHS ${LLVM_MAIN_SRC_DIR}/projects/libcxx/include + ${LLVM_MAIN_SRC_DIR}/runtimes/libcxx/include + NO_DEFAULT_PATH +) +if ((NOT LIBUNWIND_STANDALONE_BUILD OR HAVE_LIBCXX) AND + IS_DIRECTORY "${LIBUNWIND_LIBCXX_INCLUDES_INTERNAL}") + set(LIBUNWIND_CXX_INCLUDE_PATHS_DEFAULT "${LIBUNWIND_LIBCXX_INCLUDES_INTERNAL}") +endif() + +set(LIBUNWIND_CXX_INCLUDE_PATHS "${LIBUNWIND_CXX_INCLUDE_PATHS_DEFAULT}" CACHE PATH + "Paths to C++ header directories separated by ';'.") + +if (NOT LIBUNWIND_CXX_INCLUDE_PATHS STREQUAL "") + include_directories("${LIBUNWIND_CXX_INCLUDE_PATHS}") +endif() + add_subdirectory(src) |