summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libcxxabi/CMakeLists.txt18
1 files changed, 14 insertions, 4 deletions
diff --git a/libcxxabi/CMakeLists.txt b/libcxxabi/CMakeLists.txt
index dcfdf0f550d..77f4202d2e4 100644
--- a/libcxxabi/CMakeLists.txt
+++ b/libcxxabi/CMakeLists.txt
@@ -138,18 +138,26 @@ if (NOT LIBCXXABI_ENABLE_SHARED AND NOT LIBCXXABI_ENABLE_STATIC)
endif()
if (LLVM_EXTERNAL_LIBCXX_SOURCE_DIR)
- set(LIBCXXABI_LIBCXX_SRC_DIR ${LLVM_EXTERNAL_LIBCXX_SOURCE_DIR})
+ set(LIBCXXABI_LIBCXX_SRC_DIRS ${LLVM_EXTERNAL_LIBCXX_SOURCE_DIR})
else()
- set(LIBCXXABI_LIBCXX_SRC_DIR ${LLVM_MAIN_SRC_DIR}/projects/libcxx)
+ set(LIBCXXABI_LIBCXX_SRC_DIRS
+ "${LLVM_MAIN_SRC_DIR}/projects/libcxx"
+ "${LLVM_MAIN_SRC_DIR}/runtimes/libcxx"
+ )
endif()
+set(LIBCXXABI_LIBCXX_INCLUDE_DIRS "")
+foreach(dir ${LIBCXXABI_LIBCXX_SRC_DIRS})
+ list(APPEND LIBCXXABI_LIBCXX_INCLUDE_DIRS "${dir}/include")
+endforeach()
+
find_path(
LIBCXXABI_LIBCXX_INCLUDES
vector
PATHS ${LIBCXXABI_LIBCXX_INCLUDES}
${LIBCXXABI_LIBCXX_PATH}/include
${CMAKE_BINARY_DIR}/${LIBCXXABI_LIBCXX_INCLUDES}
- ${LIBCXXABI_LIBCXX_SRC_DIR}/include
+ ${LIBCXXABI_LIBCXX_INCLUDE_DIRS}
${LLVM_INCLUDE_DIR}/c++/v1
)
@@ -161,7 +169,7 @@ find_path(
test/libcxx/__init__.py
PATHS ${LIBCXXABI_LIBCXX_PATH}
${LIBCXXABI_LIBCXX_INCLUDES}/../
- ${LIBCXXABI_LIBCXX_SRC_DIR}
+ ${LIBCXXABI_LIBCXX_SRC_DIRS}
NO_DEFAULT_PATH
)
@@ -380,6 +388,7 @@ if (LIBCXXABI_USE_LLVM_UNWINDER OR LLVM_NATIVE_ARCH MATCHES ARM)
${LIBCXXABI_LIBUNWIND_PATH}/include
${CMAKE_BINARY_DIR}/${LIBCXXABI_LIBUNWIND_INCLUDES}
${LLVM_MAIN_SRC_DIR}/projects/libunwind/include
+ ${LLVM_MAIN_SRC_DIR}/runtimes/libunwind/include
NO_DEFAULT_PATH
)
@@ -389,6 +398,7 @@ if (LIBCXXABI_USE_LLVM_UNWINDER OR LLVM_NATIVE_ARCH MATCHES ARM)
PATHS ${LIBCXXABI_LIBUNWIND_PATH}/src/
${LIBCXXABI_LIBUNWIND_INCLUDES}/../src/
${LLVM_MAIN_SRC_DIR}/projects/libunwind/src/
+ ${LLVM_MAIN_SRC_DIR}/runtimes/libunwind/src/
NO_DEFAULT_PATH
)
OpenPOWER on IntegriCloud