diff options
author | 2021-02-15 11:31:37 +0000 | |
---|---|---|
committer | 2021-02-15 11:31:37 +0000 | |
commit | 404adeefdc26c833d27e290592214c2a2d541938 (patch) | |
tree | 8e5f5810aeb3464a15ab556462fa6104359e5ba2 /java/sdk.go | |
parent | 36eb24b3ab47fb0822739bb0c811de569b774750 (diff) | |
parent | 973d31c75711b36a9e5300a5daad3258f163a34b (diff) |
Merge "Fix api_fingerprint.txt generation"
Diffstat (limited to 'java/sdk.go')
-rw-r--r-- | java/sdk.go | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/java/sdk.go b/java/sdk.go index 729071165..74d5a81a9 100644 --- a/java/sdk.go +++ b/java/sdk.go @@ -641,14 +641,26 @@ func createAPIFingerprint(ctx android.SingletonContext) { if ctx.Config().PlatformSdkCodename() == "REL" { cmd.Text("echo REL >").Output(out) - } else if !ctx.Config().AlwaysUsePrebuiltSdks() { - in, err := ctx.GlobWithDeps("frameworks/base/api/*current.txt", nil) - if err != nil { - ctx.Errorf("error globbing API files: %s", err) + } else if ctx.Config().FrameworksBaseDirExists(ctx) && !ctx.Config().AlwaysUsePrebuiltSdks() { + cmd.Text("cat") + apiTxtFileModules := []string{ + "frameworks-base-api-current.txt", + "frameworks-base-api-system-current.txt", + "frameworks-base-api-module-lib-current.txt", } - - cmd.Text("cat"). - Inputs(android.PathsForSource(ctx, in)). + count := 0 + ctx.VisitAllModules(func(module android.Module) { + name := ctx.ModuleName(module) + if android.InList(name, apiTxtFileModules) { + cmd.Inputs(android.OutputFilesForModule(ctx, module, "")) + count++ + } + }) + if count != len(apiTxtFileModules) { + ctx.Errorf("Could not find all the expected API modules %v, found %d\n", apiTxtFileModules, count) + return + } + cmd.Input(android.PathForSource(ctx, "frameworks/base/services/api/current.txt")). Text("| md5sum | cut -d' ' -f1 >"). Output(out) } else { |