From 1aa17023819216dae77c7798510f178dae07a57f Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Fri, 6 Dec 2019 11:11:31 -0800 Subject: [PATCH] [libcxx{,abi}] Don't link libpthread and libdl on Fuchsia These are a part of the libc so linking these explicitly isn't necessary and embedding these as deplibs causes link time error. This issues was introduced in a9b5fff which changed how we emit deplibs. Differential Revision: https://reviews.llvm.org/D71135 --- libcxx/cmake/config-ix.cmake | 5 +++++ libcxxabi/cmake/config-ix.cmake | 18 +++++++++++++----- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/libcxx/cmake/config-ix.cmake b/libcxx/cmake/config-ix.cmake index a7a684c9d5f0..89e5d17c60f2 100644 --- a/libcxx/cmake/config-ix.cmake +++ b/libcxx/cmake/config-ix.cmake @@ -89,6 +89,11 @@ elseif(APPLE) set(LIBCXX_HAS_PTHREAD_LIB NO) set(LIBCXX_HAS_M_LIB NO) set(LIBCXX_HAS_RT_LIB NO) +elseif(FUCHSIA) + set(LIBCXX_HAS_M_LIB NO) + set(LIBCXX_HAS_PTHREAD_LIB NO) + set(LIBCXX_HAS_RT_LIB NO) + set(LIBCXX_HAS_SYSTEM_LIB NO) else() check_library_exists(pthread pthread_create "" LIBCXX_HAS_PTHREAD_LIB) check_library_exists(m ccos "" LIBCXX_HAS_M_LIB) diff --git a/libcxxabi/cmake/config-ix.cmake b/libcxxabi/cmake/config-ix.cmake index 496ed3463755..8892964ad376 100644 --- a/libcxxabi/cmake/config-ix.cmake +++ b/libcxxabi/cmake/config-ix.cmake @@ -71,8 +71,16 @@ endif() check_cxx_compiler_flag(-nostdinc++ LIBCXXABI_HAS_NOSTDINCXX_FLAG) # Check libraries -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) +if(FUCHSIA) + set(LIBCXXABI_HAS_DL_LIB NO) + set(LIBCXXABI_HAS_PTHREAD_LIB NO) + check_library_exists(c __cxa_thread_atexit_impl "" + LIBCXXABI_HAS_CXA_THREAD_ATEXIT_IMPL) + set(LIBCXXABI_HAS_SYSTEM_LIB NO) +else() + 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) +endif()