Merge "Fix crash when missing platform sdk version" am: 5a15e9522c

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2533719

Change-Id: I19150e195aa9c25f6c672e70637dc3032b3018b9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot
2023-04-12 21:43:34 +00:00
committed by Automerger Merge Worker
2 changed files with 12 additions and 2 deletions

View File

@@ -833,6 +833,10 @@ func (c *config) PlatformSdkVersion() ApiLevel {
return uncheckedFinalApiLevel(*c.productVariables.Platform_sdk_version)
}
func (c *config) RawPlatformSdkVersion() *int {
return c.productVariables.Platform_sdk_version
}
func (c *config) PlatformSdkFinal() bool {
return Bool(c.productVariables.Platform_sdk_final)
}

View File

@@ -5,6 +5,7 @@ import (
"encoding/json"
"fmt"
"reflect"
"strconv"
"strings"
"android/soong/android"
@@ -87,14 +88,19 @@ func platformVersionContents(cfg android.Config) string {
platformVersionActiveCodenames = append(platformVersionActiveCodenames, fmt.Sprintf("%q", codename))
}
platformSdkVersion := "None"
if cfg.RawPlatformSdkVersion() != nil {
platformSdkVersion = strconv.Itoa(*cfg.RawPlatformSdkVersion())
}
return fmt.Sprintf(`
platform_versions = struct(
platform_sdk_final = %s,
platform_sdk_version = %d,
platform_sdk_version = %s,
platform_sdk_codename = %q,
platform_version_active_codenames = [%s],
)
`, starlark_fmt.PrintBool(cfg.PlatformSdkFinal()), cfg.PlatformSdkVersion().FinalInt(), cfg.PlatformSdkCodename(), strings.Join(platformVersionActiveCodenames, ", "))
`, starlark_fmt.PrintBool(cfg.PlatformSdkFinal()), platformSdkVersion, cfg.PlatformSdkCodename(), strings.Join(platformVersionActiveCodenames, ", "))
}
func CreateBazelFiles(