Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04bbf98e authored by Jiyong Park's avatar Jiyong Park
Browse files

-l option soong_zip can accept a file having space separated list

-l option of soong_zip is used to specify the list of input files that
should be zipped. However, it only accepted newline-separated list in the
file. This prevented us from using a rspfile as paths in rspfile are
space-separated in a single line. Fixing the problem by splitting the
file content by any unicode whitespace character including newline and
space.

Test: zip_test
Change-Id: Iba572109e30c01540eacf20bd2794ba60c870fa3
parent f68f98ee
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ func (b *FileArgsBuilder) List(name string) *FileArgsBuilder {
	}

	arg := b.state
	arg.SourceFiles = strings.Split(string(list), "\n")
	arg.SourceFiles = strings.Fields(string(list))
	b.fileArgs = append(b.fileArgs, arg)
	return b
}
+15 −2
Original line number Diff line number Diff line
@@ -46,7 +46,8 @@ var mockFs = pathtools.MockFs(map[string][]byte{
	"dangling -> missing": nil,
	"a/a/d -> b":          nil,
	"c":                   fileC,
	"l":                   []byte("a/a/a\na/a/b\nc\n"),
	"l_nl":                []byte("a/a/a\na/a/b\nc\n"),
	"l_sp":                []byte("a/a/a a/a/b c"),
	"l2":                  []byte("missing\n"),
	"manifest.txt":        fileCustomManifest,
})
@@ -224,7 +225,19 @@ func TestZip(t *testing.T) {
		{
			name: "list",
			args: fileArgsBuilder().
				List("l"),
				List("l_nl"),
			compressionLevel: 9,

			files: []zip.FileHeader{
				fh("a/a/a", fileA, zip.Deflate),
				fh("a/a/b", fileB, zip.Deflate),
				fh("c", fileC, zip.Deflate),
			},
		},
		{
			name: "list",
			args: fileArgsBuilder().
				List("l_sp"),
			compressionLevel: 9,

			files: []zip.FileHeader{