summaryrefslogtreecommitdiff
path: root/rust/rust.go
diff options
context:
space:
mode:
author Ryan Prichard <rprichard@google.com> 2019-10-11 15:03:34 -0700
committer Ryan Prichard <rprichard@google.com> 2019-10-24 22:25:54 -0700
commitb49fe1bde729e66e0c7766c2ac4a5ef1b426e5f7 (patch)
treed1e606c1e5e04c29b901c4c17b1071132371a194 /rust/rust.go
parentac1b07e2dc95f9d117cee7210d7d3b918cecdd50 (diff)
Stop linking libdl.a into static bins
libdl.a has a no-op dlopen, which breaks static libraries that need a real dlopen. Instead of automatically linking libdl.a into static executables, make it optional. Until recently, the libunwind_llvm.a unwinder, used on arm32, needed the no-op dladdr, but it's now built using -D_LIBUNWIND_USE_DLADDR=0. The HWASan run-time uses dlsym and dladdr, so add a libdl dependency for HWASan-built static binaries. We could also remove the dependency from libclang_rt.hwasan_static-*.a, but this is also easy to do. Bug: http://b/141485154 Test: bionic unit tests, device boots, verify that static and dynamic executables can throw/catch an exception Test: verify that a static executable using dlopen doesn't link (unless it adds an explicit dependency on libdl) Change-Id: Ic52c3f336b671b4ed335e99c94a64dfe8614b618
Diffstat (limited to 'rust/rust.go')
0 files changed, 0 insertions, 0 deletions