[libcxx] [libcxxabi] [libunwind] [llvm] [libcxxabi][libunwind] Support for using LLVM libc (PR #134893)

Louis Dionne via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 26 13:46:30 PDT 2025


================
@@ -311,7 +313,7 @@ endif()
 
 add_library(cxxabi_static STATIC)
 if (LIBCXXABI_USE_LLVM_UNWINDER AND NOT LIBCXXABI_STATICALLY_LINK_UNWINDER_IN_STATIC_LIBRARY)
-  target_link_libraries(cxxabi_static PUBLIC unwind_static)
+  target_link_libraries(cxxabi_static PUBLIC unwind_static runtimes-libc-static)
----------------
ldionne wrote:

This raises an interesting question: right now, we link a static libc (let's call it `libc.a`) into `libunwind.a`, and `libc.so` into `libunwind.so`. Similarly, `libc++abi.so` gets `libc.so` and `libc++abi.a` gets `libc.a`, and same for libc++.

However, it would in theory make sense to allow e.g. `libc++.so` to use `libc.a`. This is a bit like we allow linking `libc++.so` against `libc++abi.a` if desired.

I'm not saying this patch has to fix that shortcoming since it's a pre-existing condition in libc++, but that should be on our radar.

https://github.com/llvm/llvm-project/pull/134893


More information about the llvm-commits mailing list