forked from mirror/pkger
add -o flag
This commit is contained in:
parent
2a3000b896
commit
9da9f00821
|
@ -4,10 +4,12 @@ import (
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"path/filepath"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/markbates/pkger"
|
"github.com/markbates/pkger"
|
||||||
|
"github.com/markbates/pkger/here"
|
||||||
"github.com/markbates/pkger/parser"
|
"github.com/markbates/pkger/parser"
|
||||||
"github.com/markbates/pkger/pkging/pkgutil"
|
"github.com/markbates/pkger/pkging/pkgutil"
|
||||||
)
|
)
|
||||||
|
@ -16,6 +18,7 @@ const outName = "pkged.go"
|
||||||
|
|
||||||
type packCmd struct {
|
type packCmd struct {
|
||||||
*flag.FlagSet
|
*flag.FlagSet
|
||||||
|
out string
|
||||||
help bool
|
help bool
|
||||||
subs []command
|
subs []command
|
||||||
}
|
}
|
||||||
|
@ -30,7 +33,7 @@ func (e *packCmd) Exec(args []string) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
fp := info.FilePath(outName)
|
fp := filepath.Join(info.Dir, e.out, outName)
|
||||||
os.RemoveAll(fp)
|
os.RemoveAll(fp)
|
||||||
|
|
||||||
decls, err := parser.Parse(info)
|
decls, err := parser.Parse(info)
|
||||||
|
@ -88,6 +91,7 @@ func New() (*packCmd, error) {
|
||||||
|
|
||||||
c.FlagSet = flag.NewFlagSet("pkger", flag.ExitOnError)
|
c.FlagSet = flag.NewFlagSet("pkger", flag.ExitOnError)
|
||||||
c.BoolVar(&c.help, "h", false, "prints help information")
|
c.BoolVar(&c.help, "h", false, "prints help information")
|
||||||
|
c.StringVar(&c.out, "o", "", "output directory for pkged.go")
|
||||||
c.Usage = func() {
|
c.Usage = func() {
|
||||||
fmt.Fprintf(os.Stderr, "Usage:\n\n")
|
fmt.Fprintf(os.Stderr, "Usage:\n\n")
|
||||||
Usage(os.Stderr, c.FlagSet)()
|
Usage(os.Stderr, c.FlagSet)()
|
||||||
|
@ -115,7 +119,7 @@ func Package(out string, decls parser.Decls) error {
|
||||||
}
|
}
|
||||||
defer f.Close()
|
defer f.Close()
|
||||||
|
|
||||||
c, err := pkger.Current()
|
c, err := here.Dir(filepath.Dir(out))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue