Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 46b70a9b authored by Ricardo Cerqueira's avatar Ricardo Cerqueira
Browse files

Add a unique build number to every build

SDK-readable via android.os.Build.INCREMENTAL

Change-Id: If9885adebe12a56b2b2e353285721be695bc411b

Fix exporting the unique build identifier

Change-Id: Ie58e981b7e83a4351d137dfd8995dce7d365d950

build: Prevent some auto-generated variables from being overridden

These variables are used by internal processes for build indexing
and identification, and those processes expect either specific patterns,
or uniqueness.
So prevent accidental overriding of these by device configurations:
BUILD_DISPLAY_ID, BUILD_NUMBER, PLATFORM_VERSION, PLATFORM_SDK_VERSION,
PLATFORM_VERSION_CODENAME, BUILD_VERSION_TAGS

Change-Id: I06252f2687a5e5fd97ee21a98f26c739fd0ef6e4

Fix incremental build number on Darwin

Darwin does not include sha1sum, but it should have openssl.

Change-Id: If2b685c1478f9486bed21dfba0c655d9e02db72b
parent 2f689a40
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -182,12 +182,6 @@ $(INSTALLED_BUILD_PROP_TARGET): $(BUILDINFO_SH) $(INTERNAL_BUILD_ID_MAKEFILE) $(
			PRODUCT_MANUFACTURER="$(PRODUCT_MANUFACTURER)" \
			PRIVATE_BUILD_DESC="$(PRIVATE_BUILD_DESC)" \
			BUILD_ID="$(BUILD_ID)" \
			BUILD_DISPLAY_ID="$(BUILD_DISPLAY_ID)" \
			BUILD_NUMBER="$(BUILD_NUMBER)" \
			PLATFORM_VERSION="$(PLATFORM_VERSION)" \
			PLATFORM_SDK_VERSION="$(PLATFORM_SDK_VERSION)" \
			PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
			BUILD_VERSION_TAGS="$(BUILD_VERSION_TAGS)" \
			TARGET_BOOTLOADER_BOARD_NAME="$(TARGET_BOOTLOADER_BOARD_NAME)" \
			BUILD_FINGERPRINT="$(BUILD_FINGERPRINT)" \
			TARGET_BOARD_PLATFORM="$(TARGET_BOARD_PLATFORM)" \
@@ -195,6 +189,12 @@ $(INSTALLED_BUILD_PROP_TARGET): $(BUILDINFO_SH) $(INTERNAL_BUILD_ID_MAKEFILE) $(
			TARGET_CPU_ABI2="$(TARGET_CPU_ABI2)" \
			TARGET_AAPT_CHARACTERISTICS="$(TARGET_AAPT_CHARACTERISTICS)" \
			$(PRODUCT_BUILD_PROP_OVERRIDES) \
			BUILD_DISPLAY_ID="$(BUILD_DISPLAY_ID)" \
			BUILD_NUMBER="$(BUILD_NUMBER)" \
			PLATFORM_VERSION="$(PLATFORM_VERSION)" \
			PLATFORM_SDK_VERSION="$(PLATFORM_SDK_VERSION)" \
			PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
			BUILD_VERSION_TAGS="$(BUILD_VERSION_TAGS)" \
	        bash $(BUILDINFO_SH) > $@
	$(hide) if [ -f $(TARGET_DEVICE_DIR)/system.prop ]; then \
	          cat $(TARGET_DEVICE_DIR)/system.prop >> $@; \
+5 −0
Original line number Diff line number Diff line
@@ -72,6 +72,11 @@ function check_product()

    if (echo -n $1 | grep -q -e "^cm_") ; then
       CM_BUILD=$(echo -n $1 | sed -e 's/^cm_//g')
       if [ `uname` == "Darwin" ]; then
           export BUILD_NUMBER=$((date +%s%N ; echo $CM_BUILD; hostname) | openssl sha1 | cut -c1-10)
       else
           export BUILD_NUMBER=$((date +%s%N ; echo $CM_BUILD; hostname) | sha1sum | cut -c1-10)
       fi
    else
       CM_BUILD=
    fi
+11 −10
Original line number Diff line number Diff line
@@ -185,16 +185,17 @@ def RewriteProps(data):
    original_line = line
    if line and line[0] != '#':
      key, value = line.split("=", 1)
      if key == "ro.build.fingerprint":
        pieces = value.split("/")
        pieces[-1] = EditTags(pieces[-1])
        value = "/".join(pieces)
      elif key == "ro.build.description":
        pieces = value.split(" ")
        assert len(pieces) == 5
        pieces[-1] = EditTags(pieces[-1])
        value = " ".join(pieces)
      elif key == "ro.build.tags":
      #if key == "ro.build.fingerprint":
      #  pieces = value.split("/")
      #  pieces[-1] = EditTags(pieces[-1])
      #  value = "/".join(pieces)
      #elif key == "ro.build.description":
      #  pieces = value.split(" ")
      #  assert len(pieces) == 5
      #  pieces[-1] = EditTags(pieces[-1])
      #  value = " ".join(pieces)
      #elif key == "ro.build.tags":
      if key == "ro.build.tags":
        value = EditTags(value)
      line = key + "=" + value
    if line != original_line: