Merge "Add support for building with AddressSanitizer."
This commit is contained in:
committed by
Android (Google) Code Review
commit
eebcef64ec
@@ -123,6 +123,15 @@ LOCAL_REQUIRED_MODULES += $(installed_shared_library_module_names)
|
||||
#######################################
|
||||
include $(BUILD_SYSTEM)/base_rules.mk
|
||||
#######################################
|
||||
|
||||
ifeq ($(strip $(LOCAL_ADDRESS_SANITIZER)),true)
|
||||
LOCAL_CLANG := true
|
||||
LOCAL_CFLAGS += $(ADDRESS_SANITIZER_CONFIG_EXTRA_CFLAGS)
|
||||
LOCAL_LDFLAGS += $(ADDRESS_SANITIZER_CONFIG_EXTRA_LDFLAGS)
|
||||
LOCAL_SHARED_LIBRARIES += $(ADDRESS_SANITIZER_CONFIG_EXTRA_SHARED_LIBRARIES)
|
||||
LOCAL_STATIC_LIBRARIES += $(ADDRESS_SANITIZER_CONFIG_EXTRA_STATIC_LIBRARIES)
|
||||
endif
|
||||
|
||||
my_compiler_dependencies :=
|
||||
ifeq ($(strip $(LOCAL_CLANG)),true)
|
||||
LOCAL_CFLAGS += $(CLANG_CONFIG_EXTRA_CFLAGS)
|
||||
|
@@ -119,6 +119,7 @@ LOCAL_MODULE_OWNER:=
|
||||
LOCAL_CTS_TEST_PACKAGE:=
|
||||
LOCAL_CTS_TEST_RUNNER:=
|
||||
LOCAL_CLANG:=
|
||||
LOCAL_ADDRESS_SANITIZER:=
|
||||
|
||||
# Trim MAKEFILE_LIST so that $(call my-dir) doesn't need to
|
||||
# iterate over thousands of entries every time.
|
||||
|
@@ -59,3 +59,8 @@ HOST_GLOBAL_CLANG_FLAGS += $(filter-out $(CLANG_CONFIG_UNKNOWN_CFLAGS),$(HOST_GL
|
||||
# llvm does not yet support -march=armv5e nor -march=armv5te, fall back to armv5 or armv5t
|
||||
$(call clang-flags-subst,-march=armv5te,-march=armv5t)
|
||||
$(call clang-flags-subst,-march=armv5e,-march=armv5)
|
||||
|
||||
ADDRESS_SANITIZER_CONFIG_EXTRA_CFLAGS := -faddress-sanitizer
|
||||
ADDRESS_SANITIZER_CONFIG_EXTRA_LDFLAGS := -Wl,-u,__asan_preinit
|
||||
ADDRESS_SANITIZER_CONFIG_EXTRA_SHARED_LIBRARIES := libdl libasan_preload
|
||||
ADDRESS_SANITIZER_CONFIG_EXTRA_STATIC_LIBRARIES := libasan
|
||||
|
Reference in New Issue
Block a user