Define PLATFORM_VNDK_VERSION

PLATFORM_VNDK_VERSION means the VNDK version that current build
provides. This value will be set to PLATFORM_SDK_VERSION once the
version is release. Otherwise, it will be set to "current".

Bug: 69883025
Test: device boot
Change-Id: I3fde4943aa062d9d148a3d7fc2798948870a48c6
This commit is contained in:
Justin Yun 2017-12-07 17:08:19 +09:00
parent c0eabe6d34
commit 2a233b3b86
6 changed files with 32 additions and 22 deletions

View file

@ -444,6 +444,12 @@ $(call add-clean-step, rm -f $(OUT_DIR)/host/common/obj/*/*_intermediates/java-s
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*/flat-res)
# Remove old VNDK directories without version
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/vndk)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/vndk-sp)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/vndk)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/vndk-sp)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************

View file

@ -175,9 +175,13 @@ INSTALLED_VENDOR_DEFAULT_PROP_TARGET := $(TARGET_OUT_VENDOR)/default.prop
ALL_DEFAULT_INSTALLED_MODULES += $(INSTALLED_VENDOR_DEFAULT_PROP_TARGET)
ifdef BOARD_VNDK_VERSION
FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=${BOARD_VNDK_VERSION}
ifeq ($(BOARD_VNDK_VERSION),current)
FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(PLATFORM_VNDK_VERSION)
else
FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(BOARD_VNDK_VERSION)
endif
else
FINAL_VENDOR_DEFAULT_PROPERTIES :=
FINAL_VENDOR_DEFAULT_PROPERTIES :=
endif
FINAL_VENDOR_DEFAULT_PROPERTIES += \
$(call collapse-pairs, $(PRODUCT_DEFAULT_PROPERTY_OVERRIDES))

View file

@ -292,7 +292,7 @@ endef
ifdef BOARD_VNDK_VERSION
ifneq ($(BOARD_VNDK_VERSION),current)
$(call check_vndk_version,$(BOARD_VNDK_VERSION))
$(error BOARD_VNDK_VERSION: Only "current" is implemented)
endif
TARGET_VENDOR_TEST_SUFFIX := /vendor

View file

@ -112,6 +112,7 @@ $(call add_json_list, DeviceKernelHeaders, $(TARGET_PROJECT_SYSTEM
$(call add_json_bool, DevicePrefer32BitExecutables, $(filter true,$(TARGET_PREFER_32_BIT_EXECUTABLES)))
$(call add_json_val, DeviceUsesClang, $(if $(USE_CLANG_PLATFORM_BUILD),$(USE_CLANG_PLATFORM_BUILD),false))
$(call add_json_str, DeviceVndkVersion, $(BOARD_VNDK_VERSION))
$(call add_json_str, Platform_vndk_version, $(PLATFORM_VNDK_VERSION))
$(call add_json_list, ExtraVndkVersions, $(PRODUCT_EXTRA_VNDK_VERSIONS))
$(call add_json_bool, Malloc_not_svelte, $(call invert_bool,$(filter true,$(MALLOC_SVELTE))))
$(call add_json_str, Override_rs_driver, $(OVERRIDE_RS_DRIVER))

View file

@ -26,6 +26,7 @@
# BUILD_NUMBER
# BUILD_DATETIME
# PLATFORM_SECURITY_PATCH
# PLATFORM_VNDK_VERSION
#
# Look for an optional file containing overrides of the defaults,
@ -183,6 +184,23 @@ ifndef DEFAULT_APP_TARGET_SDK
endif
endif
ifndef PLATFORM_VNDK_VERSION
# This is the definition of the VNDK version for the current VNDK libraries.
# The version is only available when PLATFORM_VERSION_CODENAME == REL.
# Otherwise, it will be set to "current". The ABI is allowed to be changed
# only if PLATFORM_VNDK_VERSION == current. Once PLATFORM_VNDK_VERSION is set
# to actual version, the ABI for this version will be frozon and emit build
# errors if any ABI for the VNDK libs are changed.
# After that the snapshot of the VNDK with this version will be generated.
#
# The version follows PLATFORM_SDK_VERSION.
ifeq (REL,$(PLATFORM_VERSION_CODENAME))
PLATFORM_VNDK_VERSION := $(PLATFORM_SDK_VERSION)
else
PLATFORM_VNDK_VERSION := current
endif
endif
ifndef PLATFORM_SECURITY_PATCH
# Used to indicate the security patch that has been applied to the device.
# It must signify that the build includes all security patches issued up through the designated Android Public Security Bulletin.

View file

@ -1,25 +1,6 @@
ifneq ($(BOARD_VNDK_VERSION),)
LOCAL_PATH:= $(call my-dir)
#####################################################################
# Setting the VNDK version. Version is 10000.0 for not-yet-published
# platform and xx.y for released platform.
vndk_major_ver := 10000
vndk_minor_ver := 0
#TODO(b/68027291): Revive this check when we have stable VNDK in P or later.
#ifneq ($(vndk_major_ver), $(PLATFORM_SDK_VERSION))
#$(error vndk_major_version does not match PLATFORM_SDK_VERSION, please update.)
#endif
ifneq (REL,$(PLATFORM_VERSION_CODENAME))
vndk_major_ver := 10000
vndk_minor_ver := 0
endif
PLATFORM_VNDK_VERSION := $(vndk_major_ver).$(vndk_minor_ver)
vndk_major_ver :=
vndk_minor_ver :=
#####################################################################
# Create the list of vndk libraries from the source code.
INTERNAL_VNDK_LIB_LIST := $(call intermediates-dir-for,PACKAGING,vndk)/libs.txt