Merge "Separate lists of soong sanitize modules"
This commit is contained in:
commit
66b322cf6c
|
@ -77,6 +77,20 @@ LOCAL_SYSTEM_EXT_MODULE := true
|
||||||
endif
|
endif
|
||||||
_path :=
|
_path :=
|
||||||
|
|
||||||
|
ifeq ($(LOCAL_HOST_MODULE),true)
|
||||||
|
my_image_variant := host
|
||||||
|
else ifeq ($(LOCAL_VENDOR_MODULE),true)
|
||||||
|
my_image_variant := vendor
|
||||||
|
else ifeq ($(LOCAL_OEM_MODULE),true)
|
||||||
|
my_image_variant := vendor
|
||||||
|
else ifeq ($(LOCAL_ODM_MODULE),true)
|
||||||
|
my_image_variant := vendor
|
||||||
|
else ifeq ($(LOCAL_PRODUCT_MODULE),true)
|
||||||
|
my_image_variant := product
|
||||||
|
else
|
||||||
|
my_image_variant := core
|
||||||
|
endif
|
||||||
|
|
||||||
# TODO(b/135957588) Remove following workaround
|
# TODO(b/135957588) Remove following workaround
|
||||||
# LOCAL_PRODUCT_SERVICES_MODULE to LOCAL_PRODUCT_MODULE for all Android.mk
|
# LOCAL_PRODUCT_SERVICES_MODULE to LOCAL_PRODUCT_MODULE for all Android.mk
|
||||||
ifndef LOCAL_PRODUCT_MODULE
|
ifndef LOCAL_PRODUCT_MODULE
|
||||||
|
|
|
@ -102,6 +102,8 @@ my_ndk_sysroot_include :=
|
||||||
my_ndk_sysroot_lib :=
|
my_ndk_sysroot_lib :=
|
||||||
my_api_level := 10000
|
my_api_level := 10000
|
||||||
|
|
||||||
|
my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)
|
||||||
|
|
||||||
ifneq ($(LOCAL_SDK_VERSION),)
|
ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
ifdef LOCAL_IS_HOST_MODULE
|
ifdef LOCAL_IS_HOST_MODULE
|
||||||
$(error $(LOCAL_PATH): LOCAL_SDK_VERSION cannot be used in host module)
|
$(error $(LOCAL_PATH): LOCAL_SDK_VERSION cannot be used in host module)
|
||||||
|
@ -110,7 +112,6 @@ ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
# Make sure we've built the NDK.
|
# Make sure we've built the NDK.
|
||||||
my_additional_dependencies += $(SOONG_OUT_DIR)/ndk_base.timestamp
|
my_additional_dependencies += $(SOONG_OUT_DIR)/ndk_base.timestamp
|
||||||
|
|
||||||
my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)
|
|
||||||
ifneq (,$(filter arm64 x86_64,$(my_arch)))
|
ifneq (,$(filter arm64 x86_64,$(my_arch)))
|
||||||
my_min_sdk_version := 21
|
my_min_sdk_version := 21
|
||||||
else
|
else
|
||||||
|
@ -1059,38 +1060,40 @@ $(call track-src-file-obj,$(asm_sources_asm),$(asm_objects_asm))
|
||||||
asm_objects += $(asm_objects_asm)
|
asm_objects += $(asm_objects_asm)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
###################################################################
|
||||||
|
## Convert to sanitized names where they exist.
|
||||||
|
## These lists come from sanitizerStaticLibsMap; see
|
||||||
|
## build/soong/cc/sanitize.go
|
||||||
|
##
|
||||||
|
## $(1): list of static dependencies
|
||||||
|
## $(2): name of sanitizer (e.g. cfi, hwasan)
|
||||||
|
##################################################################
|
||||||
|
define use_soong_sanitized_static_libraries
|
||||||
|
$(foreach lib,$(1),$(if $(filter $(lib),\
|
||||||
|
$(SOONG_$(2)_$(my_image_variant)_$(my_arch)_STATIC_LIBRARIES)),\
|
||||||
|
$(lib).$(2),$(lib)))
|
||||||
|
endef
|
||||||
|
|
||||||
###################################################################
|
###################################################################
|
||||||
## When compiling a CFI enabled target, use the .cfi variant of any
|
## When compiling a CFI enabled target, use the .cfi variant of any
|
||||||
## static dependencies (where they exist).
|
## 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)),)
|
ifneq ($(filter cfi,$(my_sanitize)),)
|
||||||
my_whole_static_libraries := $(call use_soong_cfi_static_libraries,\
|
my_whole_static_libraries := $(call use_soong_sanitized_static_libraries,\
|
||||||
$(my_whole_static_libraries))
|
$(my_whole_static_libraries),cfi)
|
||||||
my_static_libraries := $(call use_soong_cfi_static_libraries,\
|
my_static_libraries := $(call use_soong_sanitized_static_libraries,\
|
||||||
$(my_static_libraries))
|
$(my_static_libraries),cfi)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(LOCAL_USE_VNDK),)
|
###################################################################
|
||||||
my_soong_hwasan_static_libraries := $(SOONG_HWASAN_VENDOR_STATIC_LIBRARIES)
|
## When compiling a hwasan enabled target, use the .hwasan variant
|
||||||
else
|
## of any static dependencies (where they exist).
|
||||||
my_soong_hwasan_static_libraries = $(SOONG_HWASAN_STATIC_LIBRARIES)
|
##################################################################
|
||||||
endif
|
|
||||||
|
|
||||||
define use_soong_hwasan_static_libraries
|
|
||||||
$(foreach l,$(1),$(if $(filter $(l),$(my_soong_hwasan_static_libraries)),\
|
|
||||||
$(l).hwasan,$(l)))
|
|
||||||
endef
|
|
||||||
|
|
||||||
ifneq ($(filter hwaddress,$(my_sanitize)),)
|
ifneq ($(filter hwaddress,$(my_sanitize)),)
|
||||||
my_whole_static_libraries := $(call use_soong_hwasan_static_libraries,\
|
my_whole_static_libraries := $(call use_soong_sanitized_static_libraries,\
|
||||||
$(my_whole_static_libraries))
|
$(my_whole_static_libraries),hwasan)
|
||||||
my_static_libraries := $(call use_soong_hwasan_static_libraries,\
|
my_static_libraries := $(call use_soong_sanitized_static_libraries,\
|
||||||
$(my_static_libraries))
|
$(my_static_libraries),hwasan)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
###########################################################
|
###########################################################
|
||||||
|
|
Loading…
Reference in New Issue