Sanitizer build tweaks.
-Wl,-no-undefined is currently disabled for any SANITIZE_TARGET. Limit that to the sanitizers with a runtime library (i.e. address, thread). Re-enable the relocation packer for ASan. This has been fixed upstream a long time ago. Bug: 27729263 Change-Id: I566df6104de816223dc1c519d41a87629ce9c47c
This commit is contained in:
@@ -55,17 +55,13 @@ endif
|
|||||||
# sanitized static libraries. That's OK, because the executable
|
# sanitized static libraries. That's OK, because the executable
|
||||||
# always depends on the ASan runtime library, which defines these
|
# always depends on the ASan runtime library, which defines these
|
||||||
# symbols.
|
# symbols.
|
||||||
ifneq ($(strip $(SANITIZE_TARGET)),)
|
ifneq ($(filter address thread,$(strip $(SANITIZE_TARGET))),)
|
||||||
ifndef LOCAL_IS_HOST_MODULE
|
ifndef LOCAL_IS_HOST_MODULE
|
||||||
ifeq ($(LOCAL_MODULE_CLASS),SHARED_LIBRARIES)
|
ifeq ($(LOCAL_MODULE_CLASS),SHARED_LIBRARIES)
|
||||||
ifeq ($(my_sanitize),)
|
ifeq ($(my_sanitize),)
|
||||||
my_allow_undefined_symbols := true
|
my_allow_undefined_symbols := true
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
# Workaround for a bug in AddressSanitizer that breaks stack unwinding.
|
|
||||||
# https://code.google.com/p/address-sanitizer/issues/detail?id=387
|
|
||||||
# Revert when external/compiler-rt is updated past r236014.
|
|
||||||
LOCAL_PACK_MODULE_RELOCATIONS := false
|
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user