Make first_release required

Defaulting the first_release to LATEST is dangerous because it is easy
to forget and any module that does not provide it will not be built for
a release specific build.

Adds Tiramisu for the mainline modules that were missing it and
defaults it to LATEST for BundledMainlineModules as they don't need to
be built for a previous release.

Ignore-AOSP-First: tm-dev does not merge from AOSP.

Bug: 228807460
Test: packages/modules/common/build/mainline_modules_sdks.py
Change-Id: I151773f80e37a6dd7de7b6df9cfa3f0a624d38f4
This commit is contained in:
Paul Duffin
2022-05-12 13:25:10 +00:00
parent d1b2fc083b
commit 33e9399445

View File

@@ -611,11 +611,7 @@ class MainlineModule:
# source was first included. So, a module that was added in build T # source was first included. So, a module that was added in build T
# could potentially be used in an S release and so its SDK will need # could potentially be used in an S release and so its SDK will need
# to be made available for S builds. # to be made available for S builds.
# first_release: BuildRelease
# Defaults to the latest build, i.e. the build on which this script is run
# as the snapshot is assumed to be needed in the build containing the sdk
# source.
first_release: BuildRelease = LATEST
# The configuration variable, defaults to ANDROID:module_build_from_source # The configuration variable, defaults to ANDROID:module_build_from_source
configVar: ConfigVar = ConfigVar( configVar: ConfigVar = ConfigVar(
@@ -660,6 +656,10 @@ class BundledMainlineModule(MainlineModule):
A bundled module is always preloaded into the platform images. A bundled module is always preloaded into the platform images.
""" """
# Defaults to the latest build, i.e. the build on which this script is run
# as bundled modules are, by definition, only needed in this build.
first_release: BuildRelease = LATEST
def is_bundled(self): def is_bundled(self):
return True return True
@@ -762,6 +762,7 @@ MAINLINE_MODULES = [
MainlineModule( MainlineModule(
apex="com.android.scheduling", apex="com.android.scheduling",
sdks=["scheduling-sdk"], sdks=["scheduling-sdk"],
first_release=S,
), ),
MainlineModule( MainlineModule(
apex="com.android.sdkext", apex="com.android.sdkext",
@@ -790,6 +791,7 @@ MAINLINE_MODULES = [
MainlineModule( MainlineModule(
apex="com.android.uwb", apex="com.android.uwb",
sdks=["uwb-module-sdk"], sdks=["uwb-module-sdk"],
first_release=Tiramisu,
), ),
MainlineModule( MainlineModule(
apex="com.android.wifi", apex="com.android.wifi",
@@ -801,7 +803,7 @@ MAINLINE_MODULES = [
), ),
] ]
# List of Mainline modules that currently are never built unbundled. They should # List of Mainline modules that currently are never built unbundled. They must
# not specify first_release, and they don't have com.google.android # not specify first_release, and they don't have com.google.android
# counterparts. # counterparts.
BUNDLED_MAINLINE_MODULES = [ BUNDLED_MAINLINE_MODULES = [