Merge "Use the .cfi variant of a static library where needed." am: 061fcfc254

am: 9cdabdad04

Change-Id: I74bf38385e3a1102549774fae60219f92943043b
This commit is contained in:
Vishwath Mohan 2017-11-22 00:16:00 +00:00 committed by android-build-merger
commit d949357589
2 changed files with 22 additions and 0 deletions

View File

@ -1330,6 +1330,22 @@ $(call track-src-file-obj,$(asm_sources_asm),$(asm_objects_asm))
asm_objects += $(asm_objects_asm)
endif
###################################################################
## When compiling a CFI enabled target, use the .cfi variant of any
## static dependencies (where they exist).
##################################################################
define use_soong_cfi_static_libraries
$(foreach l,$(1),$(if $(filter $(l),$(SOONG_CFI_STATIC_LIBRARIES)),\
$(l).cfi,$(l)))
endef
ifneq ($(filter cfi,$(my_sanitize)),)
my_whole_static_libraries := $(call use_soong_cfi_static_libraries,\
$(my_whole_static_libraries))
my_static_libraries := $(call use_soong_cfi_static_libraries,\
$(my_static_libraries))
endif
###########################################################
## When compiling against the VNDK, use LL-NDK libraries
###########################################################

View File

@ -132,6 +132,12 @@ ifneq ($(filter mips mips64,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)),)
my_sanitize_diag := $(filter-out cfi,$(my_sanitize_diag))
endif
# Disable CFI for host targets
ifdef LOCAL_IS_HOST_MODULE
my_sanitize := $(filter-out cfi,$(my_sanitize))
my_sanitize_diag := $(filter-out cfi,$(my_sanitize_diag))
endif
# Support for local sanitize blacklist paths.
ifneq ($(my_sanitize)$(my_global_sanitize),)
ifneq ($(LOCAL_SANITIZE_BLACKLIST),)