summaryrefslogtreecommitdiff
path: root/libcxx/cmake
diff options
context:
space:
mode:
authorLouis Dionne <ldionne.2@gmail.com>2022-08-24 10:27:42 -0400
committerLouis Dionne <ldionne.2@gmail.com>2022-08-24 10:33:10 -0400
commit690a4692d1f34bd410f987acc9afcffd8c79bfa8 (patch)
tree18caf66fbfb55c9eab0dccbf60abb882419e769f /libcxx/cmake
parentc360955c4804e9b25017372cb4c6be7adcb216ce (diff)
downloadllvm-690a4692d1f34bd410f987acc9afcffd8c79bfa8.tar.gz
[runtimes] Don't link against compiler-rt when we don't find it
Otherwise, we would end up passing `-lNOTFOUND` to the compiler, which caused various compiler checks to fail and ended up breaking the build in the most obscure ways. For example, checks for -faligned-allocation would fail because the compiler would complain about an unknown library called NOTFOUND, and we would end up not passing -faligned-allocation anywhere in our build. This is madness. An even better alternative would be to simply FATAL_ERROR if we don't find the builtins library. However, it seems like our build has been working fine without finding it for a while, so instead of making a bunch of builds fail, we can figure out why linking against compiler-rt doesn't actually seem to be required in a follow-up, and perhaps relax that.
Diffstat (limited to 'libcxx/cmake')
-rw-r--r--libcxx/cmake/config-ix.cmake6
1 files changed, 5 insertions, 1 deletions
diff --git a/libcxx/cmake/config-ix.cmake b/libcxx/cmake/config-ix.cmake
index 209e6214a471..a5ce4745a5f6 100644
--- a/libcxx/cmake/config-ix.cmake
+++ b/libcxx/cmake/config-ix.cmake
@@ -61,7 +61,11 @@ if (CXX_SUPPORTS_NOSTDLIBXX_FLAG OR C_SUPPORTS_NODEFAULTLIBS_FLAG)
include(HandleCompilerRT)
find_compiler_rt_library(builtins LIBCXX_BUILTINS_LIBRARY
FLAGS ${LIBCXX_COMPILE_FLAGS})
- list(APPEND CMAKE_REQUIRED_LIBRARIES "${LIBCXX_BUILTINS_LIBRARY}")
+ if (LIBCXX_BUILTINS_LIBRARY)
+ list(APPEND CMAKE_REQUIRED_LIBRARIES "${LIBCXX_BUILTINS_LIBRARY}")
+ else()
+ message(WARNING "Could not find builtins library from libc++")
+ endif()
elseif (LIBCXX_HAS_GCC_LIB)
list(APPEND CMAKE_REQUIRED_LIBRARIES gcc)
elseif (LIBCXX_HAS_GCC_S_LIB)