From ad99149a629a01f0fda63e3efe282529205cf320 Mon Sep 17 00:00:00 2001 From: satayev Date: Fri, 3 Dec 2021 18:58:32 +0000 Subject: [PATCH] Add MinSdkVersion(ctx) method to ModuleWithMinSdkVersionCheck interface. Bug: 205923322 Test: presubmit Change-Id: I469d655823e12a14bc0abaeb544a5dd2a6d3622f --- android/apex.go | 1 + apex/apex.go | 12 +++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/android/apex.go b/android/apex.go index d5fd92257..567d5c6da 100644 --- a/android/apex.go +++ b/android/apex.go @@ -913,6 +913,7 @@ type WalkPayloadDepsFunc func(ctx ModuleContext, do PayloadDepsCallback) // ModuleWithMinSdkVersionCheck represents a module that implements min_sdk_version checks type ModuleWithMinSdkVersionCheck interface { Module + MinSdkVersion(ctx EarlyModuleContext) SdkSpec CheckMinSdkVersion(ctx ModuleContext) } diff --git a/apex/apex.go b/apex/apex.go index 4ecb104e4..bb9207dc2 100644 --- a/apex/apex.go +++ b/apex/apex.go @@ -2346,6 +2346,8 @@ func overrideApexFactory() android.Module { // // TODO(jiyong): move these checks to a separate go file. +var _ android.ModuleWithMinSdkVersionCheck = (*apexBundle)(nil) + // Entures that min_sdk_version of the included modules are equal or less than the min_sdk_version // of this apexBundle. func (a *apexBundle) CheckMinSdkVersion(ctx android.ModuleContext) { @@ -2357,7 +2359,15 @@ func (a *apexBundle) CheckMinSdkVersion(ctx android.ModuleContext) { android.CheckMinSdkVersion(ctx, minSdkVersion, a.WalkPayloadDeps) } -func (a *apexBundle) minSdkVersion(ctx android.BaseModuleContext) android.ApiLevel { +func (a *apexBundle) MinSdkVersion(ctx android.EarlyModuleContext) android.SdkSpec { + return android.SdkSpec{ + Kind: android.SdkNone, + ApiLevel: a.minSdkVersion(ctx), + Raw: String(a.properties.Min_sdk_version), + } +} + +func (a *apexBundle) minSdkVersion(ctx android.EarlyModuleContext) android.ApiLevel { ver := proptools.String(a.properties.Min_sdk_version) if ver == "" { return android.NoneApiLevel