diff options
author | Matt Morehouse <mascasa@google.com> | 2019-04-25 18:14:24 +0000 |
---|---|---|
committer | Matt Morehouse <mascasa@google.com> | 2019-04-25 18:14:24 +0000 |
commit | 05464958cda109fa202b30ead983e860377f2fbf (patch) | |
tree | 5f072d4517efcb27345a752798b8c4b71454fbb0 /cmake/Modules | |
parent | b59c91240d1016647f4b5ff928d432000906759e (diff) | |
download | compiler-rt-05464958cda109fa202b30ead983e860377f2fbf.tar.gz |
[compiler-rt] Build custom libc++abi without exceptions.
Summary:
Since neither compiler-rt nor the libc++ we build use exceptions, we
don't need libc++abi to have them either.
This resolves an issue where libFuzzer's private libc++ contains
implementations for __cxa_throw and friends, causing fuzz targets built
with their own C++ library to segfault during exception unwinding.
See https://github.com/google/oss-fuzz/issues/2328.
Reviewers: phosek, EricWF, kcc
Reviewed By: phosek
Subscribers: kcc, dberris, mgorny, christof, llvm-commits, metzman
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D61053
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@359218 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake/Modules')
-rw-r--r-- | cmake/Modules/CustomLibcxx/CMakeLists.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/cmake/Modules/CustomLibcxx/CMakeLists.txt b/cmake/Modules/CustomLibcxx/CMakeLists.txt index 683b88e02..3b1eb910e 100644 --- a/cmake/Modules/CustomLibcxx/CMakeLists.txt +++ b/cmake/Modules/CustomLibcxx/CMakeLists.txt @@ -4,6 +4,7 @@ project(custom-libcxx C CXX) # Build static libcxxabi. set(LIBCXXABI_STANDALONE_BUILD 1) set(LIBCXXABI_ENABLE_SHARED OFF CACHE BOOL "") +set(LIBCXXABI_ENABLE_EXCEPTIONS OFF CACHE BOOL "") set(LIBCXXABI_HERMETIC_STATIC_LIBRARY ON CACHE STRING "") set(LIBCXXABI_LIBCXX_PATH ${COMPILER_RT_LIBCXX_PATH} CACHE PATH "") set(LIBCXXABI_INCLUDE_TESTS OFF CACHE BOOL "") |