Add system_$(VER)

The system_$(VER) is added for vendor, similar to sdk.

Bug: 67724799
Test: build
Merged-In: I2545c92707591ca278066870c74e9f49e9825855
Change-Id: I2545c92707591ca278066870c74e9f49e9825855
(cherry picked from commit b8baff1fa3)
This commit is contained in:
Sundong Ahn 2017-10-17 16:34:51 +09:00
parent 85c87cef01
commit 0926fae350
4 changed files with 26 additions and 3 deletions

View File

@ -157,3 +157,10 @@ func callerName(skip int) (pkgPath, funcName string, ok bool) {
ok = true
return
}
func GetNumericSdkVersion(v string) string {
if strings.Contains(v, "system_") {
return strings.Replace(v, "system_", "", 1)
}
return v
}

View File

@ -86,7 +86,7 @@ func rsFlags(ctx ModuleContext, flags Flags, properties *BaseCompilerProperties)
case "current", "system_current", "test_current":
// Nothing
default:
targetApi = ctx.sdkVersion()
targetApi = android.GetNumericSdkVersion(ctx.sdkVersion())
}
}

View File

@ -251,7 +251,7 @@ func sdkStringToNumber(ctx android.BaseContext, v string) int {
case "", "current", "system_current", "test_current":
return 10000
default:
if i, err := strconv.Atoi(v); err != nil {
if i, err := strconv.Atoi(android.GetNumericSdkVersion(v)); err != nil {
ctx.PropertyErrorf("sdk_version", "invalid sdk version")
return -1
} else {
@ -275,6 +275,12 @@ func decodeSdkDep(ctx android.BaseContext, v string) sdkDep {
aidlPath := android.ExistentPathForSource(ctx, "sdkdir", aidl)
if (!jarPath.Valid() || !aidlPath.Valid()) && ctx.Config().AllowMissingDependencies() {
if strings.Contains(v, "system_") {
return sdkDep{
invalidVersion: true,
module: "vsdk_v" + strings.Replace(v, "system_", "", 1),
}
}
return sdkDep{
invalidVersion: true,
module: "sdk_v" + v,
@ -887,7 +893,7 @@ func (j *Module) minSdkVersionNumber(ctx android.ModuleContext) string {
case "", "current", "test_current", "system_current":
return strconv.Itoa(ctx.Config().DefaultAppTargetSdkInt())
default:
return String(j.deviceProperties.Sdk_version)
return android.GetNumericSdkVersion(String(j.deviceProperties.Sdk_version))
}
}

View File

@ -139,6 +139,8 @@ func testJavaWithEnvFs(t *testing.T, bp string,
"prebuilts/sdk/current/framework.aidl": nil,
"prebuilts/sdk/system_current/android.jar": nil,
"prebuilts/sdk/system_current/framework.aidl": nil,
"prebuilts/sdk/system_14/android.jar": nil,
"prebuilts/sdk/system_14/framework.aidl": nil,
"prebuilts/sdk/test_current/android.jar": nil,
"prebuilts/sdk/test_current/framework.aidl": nil,
@ -284,6 +286,14 @@ var classpathTestcases = []struct {
system: "bootclasspath", // special value to tell 1.9 test to expect bootclasspath
classpath: []string{"prebuilts/sdk/system_current/android.jar"},
},
{
name: "system_14",
properties: `sdk_version: "system_14",`,
bootclasspath: []string{`""`},
system: "bootclasspath", // special value to tell 1.9 test to expect bootclasspath
classpath: []string{"prebuilts/sdk/system_14/android.jar"},
},
{
name: "test_current",