summaryrefslogtreecommitdiff
path: root/zip/cmd/main.go
diff options
context:
space:
mode:
author Colin Cross <ccross@android.com> 2020-08-19 13:51:47 -0700
committer Colin Cross <ccross@android.com> 2020-08-19 21:18:56 +0000
commit053fca10c935b50cf803abdcff991ea574f2a2fc (patch)
tree0bfdba7df03588405a2d73a13b9e18bd39f3b99a /zip/cmd/main.go
parent2d815963ba597cce3b2401d405d0ed3a7beb5737 (diff)
Support ninja rsp files in soong_zip
Add a -r argument to soong_zip that reads a list of files from a file like the -l argument but treats it as a Ninja rsp file with escaping. Replace the -l arguments in Soong that are using rsp files with -r. Fixes: 162435077 Test: TestReadRespFile, TestZip Change-Id: I4605312e99406ab1bd0c37af9c5ad212393f0403
Diffstat (limited to 'zip/cmd/main.go')
-rw-r--r--zip/cmd/main.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/zip/cmd/main.go b/zip/cmd/main.go
index fba2e4b1e..d603586e6 100644
--- a/zip/cmd/main.go
+++ b/zip/cmd/main.go
@@ -62,6 +62,15 @@ func (listFiles) Set(s string) error {
return nil
}
+type rspFiles struct{}
+
+func (rspFiles) String() string { return `""` }
+
+func (rspFiles) Set(s string) error {
+ fileArgsBuilder.RspFile(s)
+ return nil
+}
+
type dir struct{}
func (dir) String() string { return `""` }
@@ -143,7 +152,8 @@ func main() {
traceFile := flags.String("trace", "", "write trace to file")
flags.Var(&rootPrefix{}, "P", "path prefix within the zip at which to place files")
- flags.Var(&listFiles{}, "l", "file containing list of .class files")
+ flags.Var(&listFiles{}, "l", "file containing list of files to zip")
+ flags.Var(&rspFiles{}, "r", "file containing list of files to zip with Ninja rsp file escaping")
flags.Var(&dir{}, "D", "directory to include in zip")
flags.Var(&file{}, "f", "file to include in zip")
flags.Var(&nonDeflatedFiles, "s", "file path to be stored within the zip without compression")