diff options
author | Eric Fiselier <eric@efcs.ca> | 2015-05-20 03:15:01 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2015-05-20 03:15:01 +0000 |
commit | 1f294fd934c17ec9836cbde8293d3c51974cdb05 (patch) | |
tree | 1b04d601869e2b6ac114d3f79c5b3f9ce7abea16 /libcxx/cmake | |
parent | b0c5df902ef544f55addeeee1245e27934ce6e98 (diff) | |
download | bcm5719-llvm-1f294fd934c17ec9836cbde8293d3c51974cdb05.tar.gz bcm5719-llvm-1f294fd934c17ec9836cbde8293d3c51974cdb05.zip |
Fix building and testing libc++ with GCC.
The changes in src/exception.cpp and cmake/Modules/HandleLibCXXABI.cmake fix a
bug when building libc++ with GCC. Because GCC does not support __has_include
we need to explicitly tell it that we are building against libc++abi via the
preprocessor definition `LIBCXX_BUILDING_LIBCXXABI`.
The changes in include/ratio are to work around CWG defect
1712 (constexpr variable template declarations). GCC 4.8 and before has not
adopted the resolution to this defect.
The changes in include/exception work around an issue where is_final is used
without it being defined in type_traits.
llvm-svn: 237767
Diffstat (limited to 'libcxx/cmake')
-rw-r--r-- | libcxx/cmake/Modules/HandleLibCXXABI.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxx/cmake/Modules/HandleLibCXXABI.cmake b/libcxx/cmake/Modules/HandleLibCXXABI.cmake index ac426979419..73723e3559b 100644 --- a/libcxx/cmake/Modules/HandleLibCXXABI.cmake +++ b/libcxx/cmake/Modules/HandleLibCXXABI.cmake @@ -88,7 +88,7 @@ elseif ("${LIBCXX_CXX_ABI_LIBNAME}" STREQUAL "libcxxabi") # Assume c++abi is installed in the system, rely on -lc++abi link flag. set(CXXABI_LIBNAME "c++abi") endif() - setup_abi_lib("" + setup_abi_lib("-DLIBCXX_BUILDING_LIBCXXABI" ${CXXABI_LIBNAME} "cxxabi.h;__cxxabi_config.h" "" ) elseif ("${LIBCXX_CXX_ABI_LIBNAME}" STREQUAL "libcxxrt") |