]> Cypherpunks.ru repositories - goredo.git/blobdiff - main.go
Dashes are valid targets
[goredo.git] / main.go
diff --git a/main.go b/main.go
index c579a0f6ec935414ff18815fa3eaf0aea62ebcb1..41d8d30f0ded6473b600938207d1890e323ae74f 100644 (file)
--- a/main.go
+++ b/main.go
@@ -98,7 +98,18 @@ func main() {
        }
 
        flag.Usage = func() { usage(os.Args[0]) }
-       flag.Parse()
+
+       BuildUUIDStr := os.Getenv(EnvBuildUUID)
+       IsTopRedo = BuildUUIDStr == ""
+
+       var args []string
+       if IsTopRedo {
+               flag.Parse()
+               args = flag.Args()
+       } else {
+               args = os.Args[1:]
+       }
+
        if *warranty {
                fmt.Println(Warranty)
                return
@@ -279,13 +290,12 @@ func main() {
                fdDep = mustParseFd(v, EnvDepFd)
        }
 
-       tgts := make([]*Tgt, 0, len(flag.Args()))
-       for _, arg := range flag.Args() {
+       tgts := make([]*Tgt, 0, len(args))
+       for _, arg := range args {
                tgts = append(tgts, NewTgt(arg))
        }
        tgtsWasEmpty := len(tgts) == 0
-       if BuildUUIDStr := os.Getenv(EnvBuildUUID); BuildUUIDStr == "" {
-               IsTopRedo = true
+       if BuildUUIDStr == "" {
                BuildUUID = uuid.New()
                if tgtsWasEmpty {
                        tgts = append(tgts, NewTgt("all"))