From 3f8cbcb82cc9297488e0b95678550cbd960b1de4 Mon Sep 17 00:00:00 2001 From: Alexei Nicoara Date: Tue, 24 May 2022 16:16:22 +0100 Subject: [PATCH] Passing the default apex version to the apexer Test: presubmit Bug: 231691643 Change-Id: I900a6acde9f212bf785b0be35f422416c8b62792 --- apex/Android.bp | 1 + apex/builder.go | 2 ++ apex/constants.go | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 apex/constants.go diff --git a/apex/Android.bp b/apex/Android.bp index d3417c24d..fcdf8e6be 100644 --- a/apex/Android.bp +++ b/apex/Android.bp @@ -25,6 +25,7 @@ bootstrap_go_package { "apex.go", "apex_singleton.go", "builder.go", + "constants.go", "deapexer.go", "key.go", "prebuilt.go", diff --git a/apex/builder.go b/apex/builder.go index 91193637c..73e9b73bf 100644 --- a/apex/builder.go +++ b/apex/builder.go @@ -650,6 +650,8 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { optFlags = append(optFlags, "--manifest_json "+a.manifestJsonOut.String()) } + optFlags = append(optFlags, "--apex_version "+defaultManifestVersion) + optFlags = append(optFlags, "--payload_fs_type "+a.payloadFsType.string()) ctx.Build(pctx, android.BuildParams{ diff --git a/apex/constants.go b/apex/constants.go new file mode 100644 index 000000000..c68edb724 --- /dev/null +++ b/apex/constants.go @@ -0,0 +1,36 @@ +// Copyright (C) 2022 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. + +package apex + +// This file contains branch specific constants. They are stored in a separate +// file to minimise the potential of merge conflicts between branches when +// the code from the package is changed. + +// The default manifest version for all the modules on this branch. +// This version code will be used only if there is no version field in the +// module's apex_manifest.json. Release branches have their version injected +// into apex_manifest.json by the tooling and will not use the version set +// here. Developers can also set the version field locally in the +// apex_manifest.json to build a module with a specific version. +// +// The value follows the schema from go/mainline-version-codes, and is chosen +// based on the branch such that the builds from testing and development +// branches will have a version higher than the prebuilts. +// Versions per branch: +// * x-dev - xx0090000 (where xx is the branch SDK level) +// * AOSP - xx9990000 +// * x-mainline-prod - xx9990000 +// * master - 990090000 +const defaultManifestVersion = "339990000"