Correctly configure __cxa_demangle visibility
This is a followup to [1]. __cxa_demangle was not getting exported for static
builds, which was gvr_shim to fail to link. This CL corrects the visibility so
that it's:
1. not exported for non-libc++ builds
2. not exported for static libc++ builds
3. exported for shared libc++ builds
Additionally, for static libc++ builds, android_crazy_linker also provides
__cxa_demangle. To allow it to override the one used here, __cxa_demangle is
made a weak symbol.
[1] https://chromium.googlesource.com/chromium/buildtools/+/ae5162d61ffc7b32555675447842e2313f454673
R=thakis
CC=pcc
BUG=767901
Change-Id: Id4b3ad3221fb1ad4c5367925241036b11e8427a4
2 files changed