Merge "Set default target SDK version for APEX" am: 6fa6dfa25d
am: 83b88315f7
Change-Id: I3d6dcbaf1c7aa38ce6c7a1a57e35355edf94ff54
This commit is contained in:
commit
725cb5442d
11
apex/apex.go
11
apex/apex.go
|
@ -977,6 +977,17 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext, apexType ap
|
||||||
optFlags = append(optFlags, "--android_manifest "+androidManifestFile.String())
|
optFlags = append(optFlags, "--android_manifest "+androidManifestFile.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
targetSdkVersion := ctx.Config().DefaultAppTargetSdk()
|
||||||
|
if targetSdkVersion == ctx.Config().PlatformSdkCodename() &&
|
||||||
|
ctx.Config().UnbundledBuild() &&
|
||||||
|
!ctx.Config().UnbundledBuildUsePrebuiltSdks() &&
|
||||||
|
ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") {
|
||||||
|
apiFingerprint := java.ApiFingerprintPath(ctx)
|
||||||
|
targetSdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String())
|
||||||
|
implicitInputs = append(implicitInputs, apiFingerprint)
|
||||||
|
}
|
||||||
|
optFlags = append(optFlags, "--target_sdk_version "+targetSdkVersion)
|
||||||
|
|
||||||
ctx.Build(pctx, android.BuildParams{
|
ctx.Build(pctx, android.BuildParams{
|
||||||
Rule: apexRule,
|
Rule: apexRule,
|
||||||
Implicits: implicitInputs,
|
Implicits: implicitInputs,
|
||||||
|
|
|
@ -171,6 +171,7 @@ func testApex(t *testing.T, bp string) *android.TestContext {
|
||||||
"testkey2.pem": nil,
|
"testkey2.pem": nil,
|
||||||
"myapex-arm64.apex": nil,
|
"myapex-arm64.apex": nil,
|
||||||
"myapex-arm.apex": nil,
|
"myapex-arm.apex": nil,
|
||||||
|
"frameworks/base/api/current.txt": nil,
|
||||||
})
|
})
|
||||||
_, errs := ctx.ParseFileList(".", []string{"Android.bp"})
|
_, errs := ctx.ParseFileList(".", []string{"Android.bp"})
|
||||||
android.FailIfErrored(t, errs)
|
android.FailIfErrored(t, errs)
|
||||||
|
@ -190,6 +191,8 @@ func setup(t *testing.T) (config android.Config, buildDir string) {
|
||||||
config.TestProductVariables.DeviceVndkVersion = proptools.StringPtr("current")
|
config.TestProductVariables.DeviceVndkVersion = proptools.StringPtr("current")
|
||||||
config.TestProductVariables.DefaultAppCertificate = proptools.StringPtr("vendor/foo/devkeys/test")
|
config.TestProductVariables.DefaultAppCertificate = proptools.StringPtr("vendor/foo/devkeys/test")
|
||||||
config.TestProductVariables.CertificateOverrides = []string{"myapex_keytest:myapex.certificate.override"}
|
config.TestProductVariables.CertificateOverrides = []string{"myapex_keytest:myapex.certificate.override"}
|
||||||
|
config.TestProductVariables.Platform_sdk_codename = proptools.StringPtr("Q")
|
||||||
|
config.TestProductVariables.Platform_sdk_final = proptools.BoolPtr(false)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -74,7 +74,7 @@ func manifestMerger(ctx android.ModuleContext, manifest android.Path, sdkContext
|
||||||
ctx.Config().UnbundledBuild() &&
|
ctx.Config().UnbundledBuild() &&
|
||||||
!ctx.Config().UnbundledBuildUsePrebuiltSdks() &&
|
!ctx.Config().UnbundledBuildUsePrebuiltSdks() &&
|
||||||
ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") {
|
ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") {
|
||||||
apiFingerprint := apiFingerprintPath(ctx)
|
apiFingerprint := ApiFingerprintPath(ctx)
|
||||||
targetSdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String())
|
targetSdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String())
|
||||||
deps = append(deps, apiFingerprint)
|
deps = append(deps, apiFingerprint)
|
||||||
}
|
}
|
||||||
|
|
|
@ -316,7 +316,7 @@ func sdkFrameworkAidlPath(ctx android.PathContext) android.OutputPath {
|
||||||
|
|
||||||
// Create api_fingerprint.txt
|
// Create api_fingerprint.txt
|
||||||
func createAPIFingerprint(ctx android.SingletonContext) {
|
func createAPIFingerprint(ctx android.SingletonContext) {
|
||||||
out := apiFingerprintPath(ctx)
|
out := ApiFingerprintPath(ctx)
|
||||||
|
|
||||||
rule := android.NewRuleBuilder()
|
rule := android.NewRuleBuilder()
|
||||||
|
|
||||||
|
@ -359,7 +359,7 @@ func createAPIFingerprint(ctx android.SingletonContext) {
|
||||||
rule.Build(pctx, ctx, "api_fingerprint", "generate api_fingerprint.txt")
|
rule.Build(pctx, ctx, "api_fingerprint", "generate api_fingerprint.txt")
|
||||||
}
|
}
|
||||||
|
|
||||||
func apiFingerprintPath(ctx android.PathContext) android.OutputPath {
|
func ApiFingerprintPath(ctx android.PathContext) android.OutputPath {
|
||||||
return ctx.Config().Once(apiFingerprintPathKey, func() interface{} {
|
return ctx.Config().Once(apiFingerprintPathKey, func() interface{} {
|
||||||
return android.PathForOutput(ctx, "api_fingerprint.txt")
|
return android.PathForOutput(ctx, "api_fingerprint.txt")
|
||||||
}).(android.OutputPath)
|
}).(android.OutputPath)
|
||||||
|
@ -371,5 +371,5 @@ func sdkMakeVars(ctx android.MakeVarsContext) {
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx.Strict("FRAMEWORK_AIDL", sdkFrameworkAidlPath(ctx).String())
|
ctx.Strict("FRAMEWORK_AIDL", sdkFrameworkAidlPath(ctx).String())
|
||||||
ctx.Strict("API_FINGERPRINT", apiFingerprintPath(ctx).String())
|
ctx.Strict("API_FINGERPRINT", ApiFingerprintPath(ctx).String())
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue