am 35a8ae7b: am 8427c587: Merge "Make TSAN easier to use."

* commit '35a8ae7b734b18740c40d44983ad2536541a2c09':
  Make TSAN easier to use.
This commit is contained in:
Dan Albert 2015-07-30 19:02:27 +00:00 committed by Android Git Automerger
commit 08f911a7e9
1 changed files with 12 additions and 0 deletions

View File

@ -34,6 +34,18 @@ ifeq ($(my_sanitize),never)
my_sanitize :=
endif
# TSAN is not supported on 32-bit architectures. For non-multilib cases, make
# its use an error. For multilib cases, don't use it for the 32-bit case.
ifneq ($(filter thread,$(my_sanitize)),)
ifeq ($(my_32_64_bit_suffix),32)
ifeq ($(my_module_multilib),both)
my_sanitize := $(filter-out thread,$(my_sanitize))
else
$(error $(LOCAL_PATH): $(LOCAL_MODULE): TSAN cannot be used for 32-bit modules.)
endif
endif
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