Add sdk extension version info to prop templates

This adds two new properties alongside AndroidVersion.ApiLevel:
- AndroidVersion.ExtensionLevel: The sdk extension version if the SDK
- AndroidVersion.IsBaseSdk: Whether the extension level is the the one
  that the ApiLevel shipped with (true), or if is an extension SDK
  release (false).

While we're here, dedupe the recipe that processes these templates.

Bug: 195281582
Test: m out/host/linux-x86/development/sdk/platform_source.properties
      and inspect the substitution is working
Change-Id: Ieea20731aed2e0f35bbe4cfd8ca596cf11f4b3bc
Merged-In: Ieea20731aed2e0f35bbe4cfd8ca596cf11f4b3bc
(cherry picked from commit cf2f42c36b7997e9ce87682bb3a5511bdb72936f)
This commit is contained in:
Anton Hansson
2021-08-26 17:07:09 +01:00
parent 194b0f6ef7
commit 48c492ed9f
12 changed files with 46 additions and 29 deletions

View File

@@ -20,40 +20,35 @@ ALL_SDK_FILES += $(sdk_props) $(sample_props) $(sys_img_props)
# Rule to convert a source.prop template into the desired source.property # Rule to convert a source.prop template into the desired source.property
# This needs to vary based on the CPU ABI for the system-image files. # This needs to vary based on the CPU ABI for the system-image files.
# Rewritten variables: # Rewritten variables:
# - ${PLATFORM_VERSION} e.g. "1.0" # - ${PLATFORM_VERSION} e.g. "1.0"
# - ${PLATFORM_SDK_VERSION} e.g. "3", aka the API level # - ${PLATFORM_SDK_VERSION} e.g. "3", aka the API level
# - ${PLATFORM_VERSION_CODENAME} e.g. "REL" (transformed into "") or "Cupcake" # - ${PLATFORM_EXTENSION_SDK_VERSION} e.g. "7" -- the extension sdk level
# - ${TARGET_ARCH} e.g. "arm", "x86", "mips" and their 64-bit variants. # - ${PLATFORM_IS_BASE_SDK} bool. -- whether the current extension sdk is the base extension for this api level
# - ${TARGET_CPU_ABI} e.g. "armeabi", "x86", "mips" and their 64-bit variants. # - ${PLATFORM_VERSION_CODENAME} e.g. "REL" (transformed into "") or "Cupcake"
# - ${TARGET_ARCH} e.g. "arm", "x86", "mips" and their 64-bit variants.
# - ${TARGET_CPU_ABI} e.g. "armeabi", "x86", "mips" and their 64-bit variants.
define process_prop_template
@echo Generate $@
$(hide) mkdir -p $(dir $@)
$(hide) sed \
-e 's/$${PLATFORM_VERSION}/$(PLATFORM_VERSION)/' \
-e 's/$${PLATFORM_SDK_VERSION}/$(PLATFORM_SDK_VERSION)/' \
-e 's/$${PLATFORM_SDK_EXTENSION_VERSION}/$(PLATFORM_SDK_EXTENSION_VERSION)/' \
-e 's/$${PLATFORM_IS_BASE_SDK}/$(if $(filter $(PLATFORM_SDK_EXTENSION_VERSION),$(PLATFORM_BASE_SDK_EXTENSION_VERSION)),true,false)/' \
-e 's/$${PLATFORM_VERSION_CODENAME}/$(subst REL,,$(PLATFORM_VERSION_CODENAME))/' \
-e 's/$${TARGET_ARCH}/$(TARGET_ARCH)/' \
-e 's/$${TARGET_CPU_ABI}/$(TARGET_CPU_ABI)/' \
$< > $@ && sed -i -e '/^AndroidVersion.CodeName=\s*$$/d' $@
endef
$(sys_img_props) : $(HOST_OUT)/development/sys-img-$(TARGET_CPU_ABI)/%_source.properties : $(TOPDIR)development/sys-img/%_source.prop_template $(sys_img_props) : $(HOST_OUT)/development/sys-img-$(TARGET_CPU_ABI)/%_source.properties : $(TOPDIR)development/sys-img/%_source.prop_template
@echo Generate $@ $(process_prop_template)
$(hide) mkdir -p $(dir $@)
$(hide) sed \
-e 's/$${PLATFORM_VERSION}/$(PLATFORM_VERSION)/' \
-e 's/$${PLATFORM_SDK_VERSION}/$(PLATFORM_SDK_VERSION)/' \
-e 's/$${PLATFORM_VERSION_CODENAME}/$(subst REL,,$(PLATFORM_VERSION_CODENAME))/' \
-e 's/$${TARGET_ARCH}/$(TARGET_ARCH)/' \
-e 's/$${TARGET_CPU_ABI}/$(TARGET_CPU_ABI)/' \
$< > $@ && sed -i -e '/^AndroidVersion.CodeName=\s*$$/d' $@
$(sdk_props) : $(HOST_OUT)/development/sdk/%_source.properties : $(TOPDIR)development/sdk/%_source.prop_template $(sdk_props) : $(HOST_OUT)/development/sdk/%_source.properties : $(TOPDIR)development/sdk/%_source.prop_template
@echo Generate $@ $(process_prop_template)
$(hide) mkdir -p $(dir $@)
$(hide) sed \
-e 's/$${PLATFORM_VERSION}/$(PLATFORM_VERSION)/' \
-e 's/$${PLATFORM_SDK_VERSION}/$(PLATFORM_SDK_VERSION)/' \
-e 's/$${PLATFORM_VERSION_CODENAME}/$(subst REL,,$(PLATFORM_VERSION_CODENAME))/' \
$< > $@ && sed -i -e '/^AndroidVersion.CodeName=\s*$$/d' $@
$(sample_props) : $(HOST_OUT)/development/samples/%_source.properties : $(TOPDIR)development/samples/%_source.prop_template $(sample_props) : $(HOST_OUT)/development/samples/%_source.properties : $(TOPDIR)development/samples/%_source.prop_template
@echo Generate $@ $(process_prop_template)
$(hide) mkdir -p $(dir $@)
$(hide) sed\
-e 's/$${PLATFORM_VERSION}/$(PLATFORM_VERSION)/' \
-e 's/$${PLATFORM_SDK_VERSION}/$(PLATFORM_SDK_VERSION)/' \
-e 's/$${PLATFORM_VERSION_CODENAME}/$(subst REL,,$(PLATFORM_VERSION_CODENAME))/' \
$< > $@ && sed -i -e '/^AndroidVersion.CodeName=\s*$$/d' $@
# ===== SDK jar file of stubs ===== # ===== SDK jar file of stubs =====
# A.k.a the "current" version of the public SDK (android.jar inside the SDK package). # A.k.a the "current" version of the public SDK (android.jar inside the SDK package).

View File

@@ -2,3 +2,5 @@ Pkg.UserSrc=false
Pkg.Revision=2 Pkg.Revision=2
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}

View File

@@ -2,3 +2,5 @@ Pkg.UserSrc=false
Pkg.Revision=1 Pkg.Revision=1
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}

View File

@@ -5,6 +5,8 @@ Platform.CodeName=
Pkg.Revision=1 Pkg.Revision=1
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
Layoutlib.Api=15 Layoutlib.Api=15
Layoutlib.Revision=1 Layoutlib.Revision=1
Platform.MinToolsRev=22 Platform.MinToolsRev=22

View File

@@ -2,3 +2,5 @@ Pkg.UserSrc=false
Pkg.Revision=1 Pkg.Revision=1
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}

View File

@@ -4,6 +4,8 @@ Pkg.Revision=2
Pkg.Dependencies=emulator#29.1.11 Pkg.Dependencies=emulator#29.1.11
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=arm64-v8a SystemImage.Abi=arm64-v8a
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -4,6 +4,8 @@ Pkg.Revision=2
Pkg.Dependencies=emulator#29.1.11 Pkg.Dependencies=emulator#29.1.11
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=armeabi-v7a SystemImage.Abi=armeabi-v7a
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -4,6 +4,8 @@ Pkg.Revision=2
Pkg.Dependencies=emulator#29.1.11 Pkg.Dependencies=emulator#29.1.11
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=armeabi SystemImage.Abi=armeabi
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -3,6 +3,8 @@ Pkg.UserSrc=false
Pkg.Revision=1 Pkg.Revision=1
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=mips64 SystemImage.Abi=mips64
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -3,6 +3,8 @@ Pkg.UserSrc=false
Pkg.Revision=1 Pkg.Revision=1
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=mips SystemImage.Abi=mips
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -4,6 +4,8 @@ Pkg.Revision=2
Pkg.Dependencies=emulator#29.1.11 Pkg.Dependencies=emulator#29.1.11
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=x86_64 SystemImage.Abi=x86_64
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default

View File

@@ -4,6 +4,8 @@ Pkg.Revision=2
Pkg.Dependencies=emulator#29.1.11 Pkg.Dependencies=emulator#29.1.11
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION} AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME} AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
AndroidVersion.ExtensionLevel=${PLATFORM_SDK_EXTENSION_VERSION}
AndroidVersion.IsBaseSdk=${PLATFORM_IS_BASE_SDK}
SystemImage.Abi=x86 SystemImage.Abi=x86
SystemImage.GpuSupport=true SystemImage.GpuSupport=true
SystemImage.TagId=default SystemImage.TagId=default