diff options
Diffstat (limited to 'chromium/version.mk')
-rw-r--r-- | chromium/version.mk | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/chromium/version.mk b/chromium/version.mk new file mode 100644 index 0000000..8737b0f --- /dev/null +++ b/chromium/version.mk @@ -0,0 +1,79 @@ +# +# Copyright (C) 2014 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# The current version code scheme for the package apk is: +# Mbbbba +# where +# M - Chromium milestone number minus 36. (1 or more digits). This is to +# ensure that our version codes are lower than the ones currently used by +# Chrome for Android, so that we can adopt their scheme in future. +# bbbb - manually specified build number (exactly 4 digits). This defaults to +# 0000, or 9999 in local builds. +# a - device architecture (exactly 1 digit). Current valid values are: +# 1 : armv7-a +# 2 : armv8-a (arm64) +# 4 : mips +# 7 : x86 +# 8 : x86_64 +# 64-bit architectures must be higher than their corresponding 32-bit +# architectures to ensure that 64-bit devices receive the multiarch APK. +# x86 must be higher than ARM to avoid x86 devices receiving ARM APKs +# and running them in emulation. + +# TODO(torne): get this from Chromium automatically. +version_milestone := 39 +version_offset_milestone := $(shell echo $(version_milestone) \ + | awk '{print $$1 - 36}') + +ifneq "" "$(filter eng.%,$(BUILD_NUMBER))" + version_build_number := 9999 + # BUILD_NUMBER has a timestamp in it, which means that + # it will change every time. Pick a stable value. + version_name_tag := eng.$(USER) +else + ifeq "$(version_build_number)" "" + version_build_number := 0000 + endif + version_name_tag := $(BUILD_NUMBER) +endif + +ifeq "$(TARGET_ARCH)" "x86_64" + version_arch := 8 +else ifeq "$(TARGET_ARCH)" "x86" + version_arch := 7 +else ifeq "$(TARGET_ARCH)" "mips" + version_arch := 4 +else ifeq "$(TARGET_ARCH)" "arm64" + version_arch := 2 +else ifeq "$(TARGET_ARCH)" "arm" + version_arch := 1 +else + version_arch := 0 + $(warning Could not determine target architecture for versioning) +endif + +version_code := $(version_offset_milestone)$(version_build_number)$(version_arch) + +# Use the milestone, build number and architecture to construct a version +# name like "37 (1424323-arm64)". +# TODO(torne): get the full version number from Chromium. +version_name := $(version_milestone) ($(version_name_tag)-$(TARGET_ARCH)) + +# Clean up locals +version_milestone := +version_build_number := +version_name_tag := +version_arch := |