SANITIZE_TARGET: allow undef symbols in non-sanitized shared libraries.
These symbols are defined in the ASan runtime library, which is always present at runtime. Bug:21785137 Change-Id: Ib8418c66323fd4cdfdc05548048f32380cb84ee5
This commit is contained in:
parent
8f180b904f
commit
5adfcb166e
1 changed files with 14 additions and 0 deletions
|
@ -34,6 +34,20 @@ ifeq ($(my_sanitize),never)
|
|||
my_sanitize :=
|
||||
endif
|
||||
|
||||
# Undefined symbols can occur if a non-sanitized library links
|
||||
# sanitized static libraries. That's OK, because the executable
|
||||
# always depends on the ASan runtime library, which defines these
|
||||
# symbols.
|
||||
ifneq ($(strip $(SANITIZE_TARGET)),)
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
ifeq ($(LOCAL_MODULE_CLASS),SHARED_LIBRARIES)
|
||||
ifeq ($(my_sanitize),)
|
||||
my_allow_undefined_symbols := true
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
# Sanitizers can only be used with clang.
|
||||
ifneq ($(my_clang),true)
|
||||
ifneq ($(my_sanitize),)
|
||||
|
|
Loading…
Reference in a new issue