summaryrefslogtreecommitdiff
path: root/java/java.go
diff options
context:
space:
mode:
authorKousik Kumar <kousikk@google.com>2020-05-20 11:27:16 -0700
committerKousik Kumar <kousikk@google.com>2020-05-28 11:56:48 -0700
commit366afc5011ca300d6bd14246c29e08b77387a12d (patch)
tree14ac254d861149ecb5ef995c6b3a07450ea26d0c /java/java.go
parent8f37ec82d9384bfcaa243c0a75174c067e05ab35 (diff)
Add support for remote-execution / caching of jar/zip actions
Test: Ran a build with `RBE_JAR="true" RBE_JAR_EXEC_STRATEGY="remote" RBE_ZIP="true" RBE_ZIP_EXEC_STRATEGY="remote" ... use_rbe m` and that succeeded. Bug: b/156765207 Change-Id: Ia17b532fbb282be414adf879914870082dd0841b
Diffstat (limited to 'java/java.go')
-rw-r--r--java/java.go14
1 files changed, 10 insertions, 4 deletions
diff --git a/java/java.go b/java/java.go
index 466132e1e..a54ca767e 100644
--- a/java/java.go
+++ b/java/java.go
@@ -1456,13 +1456,19 @@ func (j *Module) compile(ctx android.ModuleContext, aaptSrcJar android.Path) {
serviceFile := file.String()
zipargs = append(zipargs, "-C", filepath.Dir(serviceFile), "-f", serviceFile)
}
+ rule := zip
+ args := map[string]string{
+ "jarArgs": "-P META-INF/services/ " + strings.Join(proptools.NinjaAndShellEscapeList(zipargs), " "),
+ }
+ if ctx.Config().IsEnvTrue("RBE_ZIP") {
+ rule = zipRE
+ args["implicits"] = strings.Join(services.Strings(), ",")
+ }
ctx.Build(pctx, android.BuildParams{
- Rule: zip,
+ Rule: rule,
Output: servicesJar,
Implicits: services,
- Args: map[string]string{
- "jarArgs": "-P META-INF/services/ " + strings.Join(proptools.NinjaAndShellEscapeList(zipargs), " "),
- },
+ Args: args,
})
jars = append(jars, servicesJar)
}