libc++abi: work around layering violation

This papers over a layering violation currently between libc++abi and libunwind.
It reaches into the sources to get the declaration of an ABI defined function.
This should allow the ARM buildbot to continue building libc++abi again.

llvm-svn: 235965
This commit is contained in:
Saleem Abdulrasool 2015-04-28 02:52:47 +00:00
parent e5f6e2b671
commit 03b487bf19
2 changed files with 5 additions and 1 deletions

View File

@ -302,6 +302,10 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBCXXABI_C_FLAGS}")
include_directories(include) include_directories(include)
if (LIBCXXABI_USE_LLVM_UNWINDER OR ${LLVM_NATIVE_ARCH} MATCHES ARM) if (LIBCXXABI_USE_LLVM_UNWINDER OR ${LLVM_NATIVE_ARCH} MATCHES ARM)
include_directories(${LLVM_MAIN_SRC_DIR}/projects/libunwind/include) include_directories(${LLVM_MAIN_SRC_DIR}/projects/libunwind/include)
# TODO: libunwind does not place libunwind_ext.h into include, so we need to
# reach into its source directory. This is primarily for
# _Unwind_VRS_Interpret, which is part of ARM EHABI, and should be in unwind.h
include_directories(${LLVM_MAIN_SRC_DIR}/projects/libunwind/src)
endif () endif ()
# Add source code. This also contains all of the logic for deciding linker flags # Add source code. This also contains all of the logic for deciding linker flags

View File

@ -24,7 +24,7 @@
#include "unwind.h" #include "unwind.h"
#if LIBCXXABI_ARM_EHABI #if LIBCXXABI_ARM_EHABI
#include "Unwind/libunwind_ext.h" #include "libunwind_ext.h"
#endif #endif
/* /*