Loading apex/builder.go +9 −7 Original line number Diff line number Diff line Loading @@ -382,15 +382,17 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { } 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) minSdkVersion := ctx.Config().DefaultAppTargetSdk() if java.UseApiFingerprint(ctx, targetSdkVersion) { targetSdkVersion += fmt.Sprintf(".$$(cat %s)", java.ApiFingerprintPath(ctx).String()) implicitInputs = append(implicitInputs, java.ApiFingerprintPath(ctx)) } if java.UseApiFingerprint(ctx, minSdkVersion) { minSdkVersion += fmt.Sprintf(".$$(cat %s)", java.ApiFingerprintPath(ctx).String()) implicitInputs = append(implicitInputs, java.ApiFingerprintPath(ctx)) } optFlags = append(optFlags, "--target_sdk_version "+targetSdkVersion) optFlags = append(optFlags, "--min_sdk_version "+minSdkVersion) noticeFile := a.buildNoticeFile(ctx, a.Name()+suffix) if noticeFile.Valid() { Loading java/android_manifest.go +6 −8 Original line number Diff line number Diff line Loading @@ -93,12 +93,10 @@ func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext var deps android.Paths targetSdkVersion := sdkVersionOrDefault(ctx, sdkContext.targetSdkVersion()) if targetSdkVersion == ctx.Config().PlatformSdkCodename() && ctx.Config().UnbundledBuild() && !ctx.Config().UnbundledBuildUsePrebuiltSdks() && ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") { minSdkVersion := sdkVersionOrDefault(ctx, sdkContext.minSdkVersion()) if (UseApiFingerprint(ctx, sdkContext.targetSdkVersion()) || UseApiFingerprint(ctx, sdkContext.minSdkVersion())) { apiFingerprint := ApiFingerprintPath(ctx) targetSdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String()) deps = append(deps, apiFingerprint) } Loading @@ -110,7 +108,7 @@ func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext Implicits: deps, Output: fixedManifest, Args: map[string]string{ "minSdkVersion": sdkVersionOrDefault(ctx, sdkContext.minSdkVersion()), "minSdkVersion": minSdkVersion, "targetSdkVersion": targetSdkVersion, "args": strings.Join(args, " "), }, Loading java/sdk.go +18 −2 Original line number Diff line number Diff line Loading @@ -48,13 +48,29 @@ type sdkContext interface { targetSdkVersion() string } func UseApiFingerprint(ctx android.BaseModuleContext, v string) bool { if v == ctx.Config().PlatformSdkCodename() && ctx.Config().UnbundledBuild() && !ctx.Config().UnbundledBuildUsePrebuiltSdks() && ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") { return true } return false } func sdkVersionOrDefault(ctx android.BaseModuleContext, v string) string { var sdkVersion string switch v { case "", "none", "current", "test_current", "system_current", "core_current", "core_platform": return ctx.Config().DefaultAppTargetSdk() sdkVersion = ctx.Config().DefaultAppTargetSdk() default: return v sdkVersion = v } if UseApiFingerprint(ctx, sdkVersion) { apiFingerprint := ApiFingerprintPath(ctx) sdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String()) } return sdkVersion } // Returns a sdk version as a number. For modules targeting an unreleased SDK (meaning it does not yet have a number) Loading Loading
apex/builder.go +9 −7 Original line number Diff line number Diff line Loading @@ -382,15 +382,17 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { } 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) minSdkVersion := ctx.Config().DefaultAppTargetSdk() if java.UseApiFingerprint(ctx, targetSdkVersion) { targetSdkVersion += fmt.Sprintf(".$$(cat %s)", java.ApiFingerprintPath(ctx).String()) implicitInputs = append(implicitInputs, java.ApiFingerprintPath(ctx)) } if java.UseApiFingerprint(ctx, minSdkVersion) { minSdkVersion += fmt.Sprintf(".$$(cat %s)", java.ApiFingerprintPath(ctx).String()) implicitInputs = append(implicitInputs, java.ApiFingerprintPath(ctx)) } optFlags = append(optFlags, "--target_sdk_version "+targetSdkVersion) optFlags = append(optFlags, "--min_sdk_version "+minSdkVersion) noticeFile := a.buildNoticeFile(ctx, a.Name()+suffix) if noticeFile.Valid() { Loading
java/android_manifest.go +6 −8 Original line number Diff line number Diff line Loading @@ -93,12 +93,10 @@ func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext var deps android.Paths targetSdkVersion := sdkVersionOrDefault(ctx, sdkContext.targetSdkVersion()) if targetSdkVersion == ctx.Config().PlatformSdkCodename() && ctx.Config().UnbundledBuild() && !ctx.Config().UnbundledBuildUsePrebuiltSdks() && ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") { minSdkVersion := sdkVersionOrDefault(ctx, sdkContext.minSdkVersion()) if (UseApiFingerprint(ctx, sdkContext.targetSdkVersion()) || UseApiFingerprint(ctx, sdkContext.minSdkVersion())) { apiFingerprint := ApiFingerprintPath(ctx) targetSdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String()) deps = append(deps, apiFingerprint) } Loading @@ -110,7 +108,7 @@ func manifestFixer(ctx android.ModuleContext, manifest android.Path, sdkContext Implicits: deps, Output: fixedManifest, Args: map[string]string{ "minSdkVersion": sdkVersionOrDefault(ctx, sdkContext.minSdkVersion()), "minSdkVersion": minSdkVersion, "targetSdkVersion": targetSdkVersion, "args": strings.Join(args, " "), }, Loading
java/sdk.go +18 −2 Original line number Diff line number Diff line Loading @@ -48,13 +48,29 @@ type sdkContext interface { targetSdkVersion() string } func UseApiFingerprint(ctx android.BaseModuleContext, v string) bool { if v == ctx.Config().PlatformSdkCodename() && ctx.Config().UnbundledBuild() && !ctx.Config().UnbundledBuildUsePrebuiltSdks() && ctx.Config().IsEnvTrue("UNBUNDLED_BUILD_TARGET_SDK_WITH_API_FINGERPRINT") { return true } return false } func sdkVersionOrDefault(ctx android.BaseModuleContext, v string) string { var sdkVersion string switch v { case "", "none", "current", "test_current", "system_current", "core_current", "core_platform": return ctx.Config().DefaultAppTargetSdk() sdkVersion = ctx.Config().DefaultAppTargetSdk() default: return v sdkVersion = v } if UseApiFingerprint(ctx, sdkVersion) { apiFingerprint := ApiFingerprintPath(ctx) sdkVersion += fmt.Sprintf(".$$(cat %s)", apiFingerprint.String()) } return sdkVersion } // Returns a sdk version as a number. For modules targeting an unreleased SDK (meaning it does not yet have a number) Loading