diff options
Diffstat (limited to 'android/api_levels.go')
| -rw-r--r-- | android/api_levels.go | 84 |
1 files changed, 30 insertions, 54 deletions
diff --git a/android/api_levels.go b/android/api_levels.go index bf7b31736..6d7552ff7 100644 --- a/android/api_levels.go +++ b/android/api_levels.go @@ -302,31 +302,35 @@ func GetApiLevelsJson(ctx PathContext) WritablePath { return PathForOutput(ctx, "api_levels.json") } +func getApiLevelsMapReleasedVersions() map[string]int { + return map[string]int{ + "G": 9, + "I": 14, + "J": 16, + "J-MR1": 17, + "J-MR2": 18, + "K": 19, + "L": 21, + "L-MR1": 22, + "M": 23, + "N": 24, + "N-MR1": 25, + "O": 26, + "O-MR1": 27, + "P": 28, + "Q": 29, + "R": 30, + "S": 31, + "S-V2": 32, + "Tiramisu": 33, + } +} + var finalCodenamesMapKey = NewOnceKey("FinalCodenamesMap") func getFinalCodenamesMap(config Config) map[string]int { return config.Once(finalCodenamesMapKey, func() interface{} { - apiLevelsMap := map[string]int{ - "G": 9, - "I": 14, - "J": 16, - "J-MR1": 17, - "J-MR2": 18, - "K": 19, - "L": 21, - "L-MR1": 22, - "M": 23, - "N": 24, - "N-MR1": 25, - "O": 26, - "O-MR1": 27, - "P": 28, - "Q": 29, - "R": 30, - "S": 31, - "S-V2": 32, - "Tiramisu": 33, - } + apiLevelsMap := getApiLevelsMapReleasedVersions() // TODO: Differentiate "current" and "future". // The code base calls it FutureApiLevel, but the spelling is "current", @@ -349,29 +353,10 @@ func getFinalCodenamesMap(config Config) map[string]int { var apiLevelsMapKey = NewOnceKey("ApiLevelsMap") +// ApiLevelsMap has entries for preview API levels func GetApiLevelsMap(config Config) map[string]int { return config.Once(apiLevelsMapKey, func() interface{} { - apiLevelsMap := map[string]int{ - "G": 9, - "I": 14, - "J": 16, - "J-MR1": 17, - "J-MR2": 18, - "K": 19, - "L": 21, - "L-MR1": 22, - "M": 23, - "N": 24, - "N-MR1": 25, - "O": 26, - "O-MR1": 27, - "P": 28, - "Q": 29, - "R": 30, - "S": 31, - "S-V2": 32, - "Tiramisu": 33, - } + apiLevelsMap := getApiLevelsMapReleasedVersions() for i, codename := range config.PlatformVersionActiveCodenames() { apiLevelsMap[codename] = previewAPILevelBase + i } @@ -386,20 +371,11 @@ func (a *apiLevelsSingleton) GenerateBuildActions(ctx SingletonContext) { createApiLevelsJson(ctx, apiLevelsJson, apiLevelsMap) } -func printApiLevelsStarlarkDict(config Config) string { - apiLevelsMap := GetApiLevelsMap(config) - valDict := make(map[string]string, len(apiLevelsMap)) - for k, v := range apiLevelsMap { - valDict[k] = strconv.Itoa(v) - } - return starlark_fmt.PrintDict(valDict, 0) -} - func StarlarkApiLevelConfigs(config Config) string { return fmt.Sprintf(bazel.GeneratedBazelFileWarning+` -_api_levels = %s +_api_levels_released_versions = %s -api_levels = _api_levels -`, printApiLevelsStarlarkDict(config), +api_levels_released_versions = _api_levels_released_versions +`, starlark_fmt.PrintStringIntDict(getApiLevelsMapReleasedVersions(), 0), ) } |