Merge "Expose the minimum supported SDK version to make."
This commit is contained in:
@@ -378,6 +378,10 @@ func (c *config) PlatformSdkVersion() string {
|
||||
return strconv.Itoa(c.PlatformSdkVersionInt())
|
||||
}
|
||||
|
||||
func (c *config) MinSupportedSdkVersion() int {
|
||||
return 9
|
||||
}
|
||||
|
||||
// Codenames that are active in the current lunch target.
|
||||
func (c *config) PlatformVersionActiveCodenames() []string {
|
||||
return c.ProductVariables.Platform_version_active_codenames
|
||||
|
@@ -19,11 +19,20 @@ import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"strconv"
|
||||
|
||||
"github.com/google/blueprint"
|
||||
"github.com/google/blueprint/proptools"
|
||||
)
|
||||
|
||||
func init() {
|
||||
RegisterMakeVarsProvider(pctx, androidMakeVarsProvider)
|
||||
}
|
||||
|
||||
func androidMakeVarsProvider(ctx MakeVarsContext) {
|
||||
ctx.Strict("MIN_SUPPORTED_SDK_VERSION", strconv.Itoa(ctx.Config().MinSupportedSdkVersion()))
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Interface for other packages to use to declare make variables
|
||||
type MakeVarsContext interface {
|
||||
|
2
cc/cc.go
2
cc/cc.go
@@ -638,7 +638,7 @@ func (c *Module) begin(ctx BaseModuleContext) {
|
||||
feature.begin(ctx)
|
||||
}
|
||||
if ctx.sdk() {
|
||||
version, err := normalizeNdkApiLevel(ctx.sdkVersion(), ctx.Arch())
|
||||
version, err := normalizeNdkApiLevel(ctx, ctx.sdkVersion(), ctx.Arch())
|
||||
if err != nil {
|
||||
ctx.PropertyErrorf("sdk_version", err.Error())
|
||||
}
|
||||
|
@@ -110,18 +110,20 @@ func intMax(a int, b int) int {
|
||||
}
|
||||
}
|
||||
|
||||
func normalizeNdkApiLevel(apiLevel string, arch android.Arch) (string, error) {
|
||||
func normalizeNdkApiLevel(ctx android.BaseContext, apiLevel string,
|
||||
arch android.Arch) (string, error) {
|
||||
|
||||
if apiLevel == "current" {
|
||||
return apiLevel, nil
|
||||
}
|
||||
|
||||
minVersion := 9 // Minimum version supported by the NDK.
|
||||
minVersion := ctx.AConfig().MinSupportedSdkVersion()
|
||||
firstArchVersions := map[android.ArchType]int{
|
||||
android.Arm: 9,
|
||||
android.Arm: minVersion,
|
||||
android.Arm64: 21,
|
||||
android.Mips: 9,
|
||||
android.Mips: minVersion,
|
||||
android.Mips64: 21,
|
||||
android.X86: 9,
|
||||
android.X86: minVersion,
|
||||
android.X86_64: 21,
|
||||
}
|
||||
|
||||
@@ -188,7 +190,7 @@ func shouldUseVersionScript(stub *stubDecorator) (bool, error) {
|
||||
func generateStubApiVariants(mctx android.BottomUpMutatorContext, c *stubDecorator) {
|
||||
platformVersion := mctx.AConfig().PlatformSdkVersionInt()
|
||||
|
||||
firstSupportedVersion, err := normalizeNdkApiLevel(c.properties.First_version,
|
||||
firstSupportedVersion, err := normalizeNdkApiLevel(mctx, c.properties.First_version,
|
||||
mctx.Arch())
|
||||
if err != nil {
|
||||
mctx.PropertyErrorf("first_version", err.Error())
|
||||
|
Reference in New Issue
Block a user