From 19450e3a0b6f9a80d282a7a9f284e53b24bca8fc Mon Sep 17 00:00:00 2001 From: Tiffany Yang Date: Tue, 23 May 2023 17:36:54 -0700 Subject: [PATCH] Make common signature system property definitions optional This change allows ARC to define ARC-specific system properties in Android build without changing these property definitions for other Android builds. Please see go/arc-sigprop-changes and go/arc-android-sigprop-sync for additional details. Bug: 195609932 Test: built bertha_x86_64 with forward declarations Change-Id: I22bd9d60c2491506fe5c633dbbb9e7516f529b35 --- core/sysprop.mk | 11 +++++++---- tools/buildinfo.sh | 10 ++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/core/sysprop.mk b/core/sysprop.mk index cf4b1f64b4..8877743642 100644 --- a/core/sysprop.mk +++ b/core/sysprop.mk @@ -66,9 +66,12 @@ define generate-common-build-props )\ echo "ro.$(1).build.date=`$(DATE_FROM_FILE)`" >> $(2);\ echo "ro.$(1).build.date.utc=`$(DATE_FROM_FILE) +%s`" >> $(2);\ - echo "ro.$(1).build.fingerprint=$(BUILD_FINGERPRINT_FROM_FILE)" >> $(2);\ - echo "ro.$(1).build.id=$(BUILD_ID)" >> $(2);\ - echo "ro.$(1).build.tags=$(BUILD_VERSION_TAGS)" >> $(2);\ + # Allow optional assignments for ARC forward-declarations (b/249168657) + # TODO: Remove any tag-related inconsistencies once the goals from + # go/arc-android-sigprop-changes have been achieved. + echo "ro.$(1).build.fingerprint?=$(BUILD_FINGERPRINT_FROM_FILE)" >> $(2);\ + echo "ro.$(1).build.id?=$(BUILD_ID)" >> $(2);\ + echo "ro.$(1).build.tags?=$(BUILD_VERSION_TAGS)" >> $(2);\ echo "ro.$(1).build.type=$(TARGET_BUILD_VARIANT)" >> $(2);\ echo "ro.$(1).build.version.incremental=$(BUILD_NUMBER_FROM_FILE)" >> $(2);\ echo "ro.$(1).build.version.release=$(PLATFORM_VERSION_LAST_STABLE)" >> $(2);\ @@ -565,4 +568,4 @@ ALL_INSTALLED_BUILD_PROP_FILES := \ # $1 installed file path, e.g. out/target/product/vsoc_x86_64/system/build.prop define is-build-prop $(if $(findstring $1,$(ALL_INSTALLED_BUILD_PROP_FILES)),Y) -endef \ No newline at end of file +endef diff --git a/tools/buildinfo.sh b/tools/buildinfo.sh index c2e36dfeee..0ed9453e8d 100755 --- a/tools/buildinfo.sh +++ b/tools/buildinfo.sh @@ -7,9 +7,9 @@ echo "# autogenerated by buildinfo.sh" if [ "$BOARD_USE_VBMETA_DIGTEST_IN_FINGERPRINT" = "true" ] ; then echo "ro.build.legacy.id=$BUILD_ID" else - echo "ro.build.id=$BUILD_ID" + echo "ro.build.id?=$BUILD_ID" fi -echo "ro.build.display.id=$BUILD_DISPLAY_ID" +echo "ro.build.display.id?=$BUILD_DISPLAY_ID" echo "ro.build.version.incremental=$BUILD_NUMBER" echo "ro.build.version.sdk=$PLATFORM_SDK_VERSION" echo "ro.build.version.preview_sdk=$PLATFORM_PREVIEW_SDK_VERSION" @@ -28,7 +28,9 @@ echo "ro.build.date.utc=`$DATE +%s`" echo "ro.build.type=$TARGET_BUILD_TYPE" echo "ro.build.user=$BUILD_USERNAME" echo "ro.build.host=$BUILD_HOSTNAME" -echo "ro.build.tags=$BUILD_VERSION_TAGS" +# TODO: Remove any tag-related optional property declarations once the goals +# from go/arc-android-sigprop-changes have been achieved. +echo "ro.build.tags?=$BUILD_VERSION_TAGS" echo "ro.build.flavor=$TARGET_BUILD_FLAVOR" # These values are deprecated, use "ro.product.cpu.abilist" @@ -49,7 +51,7 @@ echo "# ro.build.product is obsolete; use ro.product.device" echo "ro.build.product=$TARGET_DEVICE" echo "# Do not try to parse description or thumbprint" -echo "ro.build.description=$PRIVATE_BUILD_DESC" +echo "ro.build.description?=$PRIVATE_BUILD_DESC" if [ -n "$BUILD_THUMBPRINT" ] ; then echo "ro.build.thumbprint=$BUILD_THUMBPRINT" fi