[libcxx-commits] [PATCH] D63457: [libc++] Re-export libc++abi as a whole instead of using lists

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Oct 1 08:56:03 PDT 2019


ldionne abandoned this revision.
ldionne marked an inline comment as done.
ldionne added a comment.

Okay, so after speaking to our linker folks a while ago, I decided to drop this.

The reason is that using `-lreexport-lc++abi` causes the whole library to be re-exported, and ld64 will hoist reexported public dylibs (those that appear in `/usr/lib`) into applications themselves. In other words, if we used `-lreexport-lc++abi`, applications linking against `/usr/lib/libc++.dylib` would start recording a dependency on `/usr/lib/libc++abi.dylib` directly. This would be new behavior since so far we've successfully hidden `libc++abi.dylib` behind `libc++.dylib` on our platform.

Instead, I'll opt for the approach of programmatically generating the list of symbols to be re-exported from `libc++.dylib` by using `nm` on the `libc++abi.dylib` that we link against.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D63457/new/

https://reviews.llvm.org/D63457





More information about the libcxx-commits mailing list