Support target and max sdk version in app bp2build.

Test: Unit tests + CI
Bug: 285304294
Bug: 280465047
Change-Id: I9bb1b6f9729ad783a43837d77dcf2d02b50ca77e
This commit is contained in:
Romain Jobredeaux
2023-07-10 11:50:00 -04:00
parent 702ef0a07a
commit 496660d38a
2 changed files with 26 additions and 6 deletions

View File

@@ -1571,7 +1571,9 @@ func androidAppCertificateBp2Build(ctx android.TopDownMutatorContext, module *An
}
type manifestValueAttribute struct {
MinSdkVersion *string
MinSdkVersion *string
MaxSdkVersion *string
TargetSdkVersion *string
}
type bazelAndroidAppAttributes struct {
@@ -1601,12 +1603,25 @@ func (a *AndroidApp) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
// MinSdkVersion(ctx) calls SdkVersion(ctx) if no value for min_sdk_version is set
minSdkVersion := a.MinSdkVersion(ctx)
if !minSdkVersion.IsPreview() && !minSdkVersion.IsInvalid() {
minSdkStr, err := minSdkVersion.EffectiveVersionString(ctx)
if err == nil {
if minSdkStr, err := minSdkVersion.EffectiveVersionString(ctx); err == nil {
manifestValues.MinSdkVersion = &minSdkStr
}
}
maxSdkVersion := a.MaxSdkVersion(ctx)
if !maxSdkVersion.IsPreview() && !maxSdkVersion.IsInvalid() {
if maxSdkStr, err := maxSdkVersion.EffectiveVersionString(ctx); err == nil {
manifestValues.MaxSdkVersion = &maxSdkStr
}
}
targetSdkVersion := a.TargetSdkVersion(ctx)
if !targetSdkVersion.IsPreview() && !targetSdkVersion.IsInvalid() {
if targetSdkStr, err := targetSdkVersion.EffectiveVersionString(ctx); err == nil {
manifestValues.TargetSdkVersion = &targetSdkStr
}
}
appAttrs := &bazelAndroidAppAttributes{
// TODO(b/209576404): handle package name override by product variable PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES
Custom_package: a.overridableAppProperties.Package_name,