diff options
author | 2024-03-26 22:46:48 +0000 | |
---|---|---|
committer | 2024-03-26 22:46:48 +0000 | |
commit | 58d9063b66f5c1d2e2163026e71b966d097b48ed (patch) | |
tree | cae74385eaf65b8b837f08b8d46de0a85698a811 /java/sdk.go | |
parent | 41da84b2e63502d1823c956316626fa1d28d869e (diff) | |
parent | 465549b5795866dd3927ee1a648f8ae749601379 (diff) |
Merge "Revert "Migrate buildinfo.sh script into Soong"" into main
Diffstat (limited to 'java/sdk.go')
-rw-r--r-- | java/sdk.go | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/java/sdk.go b/java/sdk.go index d972c19bd..3591ccdb6 100644 --- a/java/sdk.go +++ b/java/sdk.go @@ -31,6 +31,7 @@ func init() { var sdkFrameworkAidlPathKey = android.NewOnceKey("sdkFrameworkAidlPathKey") var nonUpdatableFrameworkAidlPathKey = android.NewOnceKey("nonUpdatableFrameworkAidlPathKey") +var apiFingerprintPathKey = android.NewOnceKey("apiFingerprintPathKey") func UseApiFingerprint(ctx android.BaseModuleContext) (useApiFingerprint bool, fingerprintSdkVersion string, fingerprintDeps android.OutputPath) { if ctx.Config().UnbundledBuild() && !ctx.Config().AlwaysUsePrebuiltSdks() { @@ -44,8 +45,8 @@ func UseApiFingerprint(ctx android.BaseModuleContext) (useApiFingerprint bool, f useApiFingerprint = apiFingerprintTrue || dessertShaIsSet if apiFingerprintTrue { - fingerprintSdkVersion = ctx.Config().PlatformSdkCodename() + fmt.Sprintf(".$$(cat %s)", android.ApiFingerprintPath(ctx).String()) - fingerprintDeps = android.ApiFingerprintPath(ctx) + fingerprintSdkVersion = ctx.Config().PlatformSdkCodename() + fmt.Sprintf(".$$(cat %s)", ApiFingerprintPath(ctx).String()) + fingerprintDeps = ApiFingerprintPath(ctx) } if dessertShaIsSet { fingerprintSdkVersion = ctx.Config().Getenv("UNBUNDLED_BUILD_TARGET_SDK_WITH_DESSERT_SHA") @@ -336,7 +337,7 @@ func nonUpdatableFrameworkAidlPath(ctx android.PathContext) android.OutputPath { // Create api_fingerprint.txt func createAPIFingerprint(ctx android.SingletonContext) { - out := android.ApiFingerprintPath(ctx) + out := ApiFingerprintPath(ctx) rule := android.NewRuleBuilder(pctx, ctx) @@ -377,11 +378,17 @@ func createAPIFingerprint(ctx android.SingletonContext) { rule.Build("api_fingerprint", "generate api_fingerprint.txt") } +func ApiFingerprintPath(ctx android.PathContext) android.OutputPath { + return ctx.Config().Once(apiFingerprintPathKey, func() interface{} { + return android.PathForOutput(ctx, "api_fingerprint.txt") + }).(android.OutputPath) +} + func sdkMakeVars(ctx android.MakeVarsContext) { if ctx.Config().AlwaysUsePrebuiltSdks() { return } ctx.Strict("FRAMEWORK_AIDL", sdkFrameworkAidlPath(ctx).String()) - ctx.Strict("API_FINGERPRINT", android.ApiFingerprintPath(ctx).String()) + ctx.Strict("API_FINGERPRINT", ApiFingerprintPath(ctx).String()) } |