Make '**' implicit

am: 06382991e0

Change-Id: I14a9b619b874e5e3e823cbd7b5dd31d2d7b7154c
This commit is contained in:
Colin Cross
2017-06-23 23:39:22 +00:00
committed by android-build-merger
2 changed files with 34 additions and 3 deletions

View File

@@ -47,15 +47,17 @@ func main() {
fmt.Fprintln(os.Stderr, " <glob>:<out_dir>/")
fmt.Fprintln(os.Stderr, "")
fmt.Fprintln(os.Stderr, "<glob> uses the rules at https://golang.org/pkg/path/filepath/#Match")
fmt.Fprintln(os.Stderr, "As a special exception, '**' is supported to specify all files in the input zip")
fmt.Fprintln(os.Stderr, "As a special exception, '**' is supported to specify all files in the input zip.")
fmt.Fprintln(os.Stderr, "")
fmt.Fprintln(os.Stderr, "Files will be copied with their existing compression from the input zipfile to")
fmt.Fprintln(os.Stderr, "the output zipfile, in the order of filespec arguments")
fmt.Fprintln(os.Stderr, "the output zipfile, in the order of filespec arguments.")
fmt.Fprintln(os.Stderr, "")
fmt.Fprintln(os.Stderr, "If no filepsec is provided all files are copied (equivalent to '**').")
}
flag.Parse()
if flag.NArg() == 0 || *input == "" || *output == "" {
if *input == "" || *output == "" {
flag.Usage()
os.Exit(1)
}
@@ -93,6 +95,10 @@ type pair struct {
}
func zip2zip(reader *zip.Reader, writer *zip.Writer, sortGlobs, sortJava, setTime bool, args []string) error {
if len(args) == 0 {
// If no filespec is provided, default to copying everything
args = []string{"**"}
}
for _, arg := range args {
var input string
var output string

View File

@@ -116,6 +116,31 @@ var testCases = []struct {
"RADIO/a",
},
},
{
name: "sort all implicit",
inputFiles: []string{
"RADIO/a",
"IMAGES/system.img",
"IMAGES/b.txt",
"IMAGES/recovery.img",
"IMAGES/vendor.img",
"OTA/b",
"OTA/android-info.txt",
},
sortGlobs: true,
args: nil,
outputFiles: []string{
"IMAGES/b.txt",
"IMAGES/recovery.img",
"IMAGES/system.img",
"IMAGES/vendor.img",
"OTA/android-info.txt",
"OTA/b",
"RADIO/a",
},
},
{
name: "sort jar",