Loading core/clear_vars.mk +1 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ LOCAL_BUILT_MODULE_STEM:= LOCAL_CC:= LOCAL_CERTIFICATE:= LOCAL_CFLAGS:= LOCAL_CHECK_SAME_VNDK_VARIANTS:= LOCAL_CHECKED_MODULE:= LOCAL_C_INCLUDES:= LOCAL_CLANG:= Loading core/soong_cc_prebuilt.mk +21 −19 Original line number Diff line number Diff line Loading @@ -104,33 +104,35 @@ ifdef LOCAL_INSTALLED_MODULE endif endif ifeq ($(LOCAL_VNDK_DEPEND_ON_CORE_VARIANT),true) # Add $(LOCAL_BUILT_MODULE) as a dependency to no_vendor_variant_vndk_check so # that the vendor variant will be built and checked against the core variant. no_vendor_variant_vndk_check: $(LOCAL_BUILT_MODULE) my_check_same_vndk_variants := ifeq ($(LOCAL_CHECK_SAME_VNDK_VARIANTS),true) ifneq ($(filter hwaddress, $(SANITIZE_TARGET)),hwaddress) my_check_same_vndk_variants := true endif endif ifeq ($(my_check_same_vndk_variants),true) same_vndk_variants_stamp := $(intermediates)/same_vndk_variants.timestamp my_core_register_name := $(subst .vendor,,$(my_register_name)) my_core_register_name := $(subst .vendor,,$(subst .product,,$(my_register_name))) my_core_variant_files := $(call module-target-built-files,$(my_core_register_name)) my_core_shared_lib := $(sort $(filter %.so,$(my_core_variant_files))) $(LOCAL_BUILT_MODULE): PRIVATE_CORE_VARIANT := $(my_core_shared_lib) # The built vendor variant library needs to depend on the built core variant # so that we can perform identity check against the core variant. $(LOCAL_BUILT_MODULE): $(my_core_shared_lib) endif $(same_vndk_variants_stamp): PRIVATE_CORE_VARIANT := $(my_core_shared_lib) $(same_vndk_variants_stamp): PRIVATE_VENDOR_VARIANT := $(LOCAL_PREBUILT_MODULE_FILE) $(same_vndk_variants_stamp): PRIVATE_TOOLS_PREFIX := $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)TOOLS_PREFIX) ifeq ($(LOCAL_VNDK_DEPEND_ON_CORE_VARIANT),true) $(LOCAL_BUILT_MODULE): PRIVATE_TOOLS_PREFIX := $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)TOOLS_PREFIX) $(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE) $(LIBRARY_IDENTITY_CHECK_SCRIPT) $(same_vndk_variants_stamp): $(my_core_shared_lib) $(LOCAL_PREBUILT_MODULE_FILE) $(call verify-vndk-libs-identical,\ $(PRIVATE_CORE_VARIANT),\ $<,\ $(PRIVATE_VENDOR_VARIANT)\ $(PRIVATE_TOOLS_PREFIX)) $(copy-file-to-target) else $(LOCAL_BUILT_MODULE): $(same_vndk_variants_stamp) endif $(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE) $(transform-prebuilt-to-target) endif ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),) $(hide) chmod +x $@ endif Loading tools/check_identical_lib.sh +5 −3 Original line number Diff line number Diff line Loading @@ -5,11 +5,13 @@ STRIP_PATH="${1}" CORE="${2}" VENDOR="${3}" stripped_core="${CORE}.vndk_lib_check.stripped" stripped_vendor="${VENDOR}.vndk_lib_check.stripped" TMPDIR="$(mktemp -d ${CORE}.vndk_lib_check.XXXXXXXX)" stripped_core="${TMPDIR}/core" stripped_vendor="${TMPDIR}/vendor" function cleanup() { rm -f ${stripped_core} ${stripped_vendor} rm -f "${stripped_core}" "${stripped_vendor}" rmdir "${TMPDIR}" } trap cleanup EXIT Loading Loading
core/clear_vars.mk +1 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ LOCAL_BUILT_MODULE_STEM:= LOCAL_CC:= LOCAL_CERTIFICATE:= LOCAL_CFLAGS:= LOCAL_CHECK_SAME_VNDK_VARIANTS:= LOCAL_CHECKED_MODULE:= LOCAL_C_INCLUDES:= LOCAL_CLANG:= Loading
core/soong_cc_prebuilt.mk +21 −19 Original line number Diff line number Diff line Loading @@ -104,33 +104,35 @@ ifdef LOCAL_INSTALLED_MODULE endif endif ifeq ($(LOCAL_VNDK_DEPEND_ON_CORE_VARIANT),true) # Add $(LOCAL_BUILT_MODULE) as a dependency to no_vendor_variant_vndk_check so # that the vendor variant will be built and checked against the core variant. no_vendor_variant_vndk_check: $(LOCAL_BUILT_MODULE) my_check_same_vndk_variants := ifeq ($(LOCAL_CHECK_SAME_VNDK_VARIANTS),true) ifneq ($(filter hwaddress, $(SANITIZE_TARGET)),hwaddress) my_check_same_vndk_variants := true endif endif ifeq ($(my_check_same_vndk_variants),true) same_vndk_variants_stamp := $(intermediates)/same_vndk_variants.timestamp my_core_register_name := $(subst .vendor,,$(my_register_name)) my_core_register_name := $(subst .vendor,,$(subst .product,,$(my_register_name))) my_core_variant_files := $(call module-target-built-files,$(my_core_register_name)) my_core_shared_lib := $(sort $(filter %.so,$(my_core_variant_files))) $(LOCAL_BUILT_MODULE): PRIVATE_CORE_VARIANT := $(my_core_shared_lib) # The built vendor variant library needs to depend on the built core variant # so that we can perform identity check against the core variant. $(LOCAL_BUILT_MODULE): $(my_core_shared_lib) endif $(same_vndk_variants_stamp): PRIVATE_CORE_VARIANT := $(my_core_shared_lib) $(same_vndk_variants_stamp): PRIVATE_VENDOR_VARIANT := $(LOCAL_PREBUILT_MODULE_FILE) $(same_vndk_variants_stamp): PRIVATE_TOOLS_PREFIX := $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)TOOLS_PREFIX) ifeq ($(LOCAL_VNDK_DEPEND_ON_CORE_VARIANT),true) $(LOCAL_BUILT_MODULE): PRIVATE_TOOLS_PREFIX := $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)TOOLS_PREFIX) $(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE) $(LIBRARY_IDENTITY_CHECK_SCRIPT) $(same_vndk_variants_stamp): $(my_core_shared_lib) $(LOCAL_PREBUILT_MODULE_FILE) $(call verify-vndk-libs-identical,\ $(PRIVATE_CORE_VARIANT),\ $<,\ $(PRIVATE_VENDOR_VARIANT)\ $(PRIVATE_TOOLS_PREFIX)) $(copy-file-to-target) else $(LOCAL_BUILT_MODULE): $(same_vndk_variants_stamp) endif $(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE) $(transform-prebuilt-to-target) endif ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),) $(hide) chmod +x $@ endif Loading
tools/check_identical_lib.sh +5 −3 Original line number Diff line number Diff line Loading @@ -5,11 +5,13 @@ STRIP_PATH="${1}" CORE="${2}" VENDOR="${3}" stripped_core="${CORE}.vndk_lib_check.stripped" stripped_vendor="${VENDOR}.vndk_lib_check.stripped" TMPDIR="$(mktemp -d ${CORE}.vndk_lib_check.XXXXXXXX)" stripped_core="${TMPDIR}/core" stripped_vendor="${TMPDIR}/vendor" function cleanup() { rm -f ${stripped_core} ${stripped_vendor} rm -f "${stripped_core}" "${stripped_vendor}" rmdir "${TMPDIR}" } trap cleanup EXIT Loading