diff options
author | Louis Dionne <ldionne@apple.com> | 2019-10-04 18:32:46 +0000 |
---|---|---|
committer | Louis Dionne <ldionne@apple.com> | 2019-10-04 18:32:46 +0000 |
commit | ce452b1ca9fdb12604db3dc2059246e189e55d7b (patch) | |
tree | 2a8a580abd323cf0770f5a887540b50ac48af77c | |
parent | 5fd467feb813e9999efe3558da434cb038213582 (diff) | |
download | bcm5719-llvm-ce452b1ca9fdb12604db3dc2059246e189e55d7b.tar.gz bcm5719-llvm-ce452b1ca9fdb12604db3dc2059246e189e55d7b.zip |
[libc++abi] Link against libSystem on Apple platforms
On Apple platforms, libSystem is an umbrella for all other system
libraries, and libpthread (and friends) are actually just symlinks
to libSystem.
llvm-svn: 373770
-rw-r--r-- | libcxxabi/cmake/config-ix.cmake | 1 | ||||
-rw-r--r-- | libcxxabi/src/CMakeLists.txt | 11 |
2 files changed, 9 insertions, 3 deletions
diff --git a/libcxxabi/cmake/config-ix.cmake b/libcxxabi/cmake/config-ix.cmake index 94f89bedd97..496ed346375 100644 --- a/libcxxabi/cmake/config-ix.cmake +++ b/libcxxabi/cmake/config-ix.cmake @@ -75,3 +75,4 @@ check_library_exists(dl dladdr "" LIBCXXABI_HAS_DL_LIB) check_library_exists(pthread pthread_once "" LIBCXXABI_HAS_PTHREAD_LIB) check_library_exists(c __cxa_thread_atexit_impl "" LIBCXXABI_HAS_CXA_THREAD_ATEXIT_IMPL) +check_library_exists(System write "" LIBCXXABI_HAS_SYSTEM_LIB) diff --git a/libcxxabi/src/CMakeLists.txt b/libcxxabi/src/CMakeLists.txt index 6cfcb9cb3df..cbf4b21c31f 100644 --- a/libcxxabi/src/CMakeLists.txt +++ b/libcxxabi/src/CMakeLists.txt @@ -60,11 +60,16 @@ if (LIBCXXABI_HAS_CXA_THREAD_ATEXIT_IMPL) add_definitions(-DHAVE___CXA_THREAD_ATEXIT_IMPL) endif() -if (LIBCXXABI_ENABLE_THREADS) - add_library_flags_if(LIBCXXABI_HAS_PTHREAD_LIB pthread) +if (APPLE) + add_library_flags_if(LIBCXXABI_HAS_SYSTEM_LIB System) +else() + if (LIBCXXABI_ENABLE_THREADS) + add_library_flags_if(LIBCXXABI_HAS_PTHREAD_LIB pthread) + endif() + + add_library_flags_if(LIBCXXABI_HAS_C_LIB c) endif() -add_library_flags_if(LIBCXXABI_HAS_C_LIB c) if (LIBCXXABI_USE_LLVM_UNWINDER) # Prefer using the in-tree version of libunwind, either shared or static. If # none are found fall back to using -lunwind. |