(cmdr *commander.Command, args []string)
| 43 | } |
| 44 | |
| 45 | func gopyRunCmdGen(cmdr *commander.Command, args []string) error { |
| 46 | var err error |
| 47 | |
| 48 | if len(args) == 0 { |
| 49 | err := fmt.Errorf("gopy: expect a fully qualified go package name as argument") |
| 50 | log.Println(err) |
| 51 | return err |
| 52 | } |
| 53 | |
| 54 | cfg := NewBuildCfg() |
| 55 | cfg.OutputDir = cmdr.Flag.Lookup("output").Value.Get().(string) |
| 56 | cfg.VM = cmdr.Flag.Lookup("vm").Value.Get().(string) |
| 57 | cfg.Name = cmdr.Flag.Lookup("name").Value.Get().(string) |
| 58 | cfg.Main = cmdr.Flag.Lookup("main").Value.Get().(string) |
| 59 | cfg.PkgPrefix = cmdr.Flag.Lookup("package-prefix").Value.Get().(string) |
| 60 | cfg.RenameCase = cmdr.Flag.Lookup("rename").Value.Get().(bool) |
| 61 | cfg.NoWarn = cmdr.Flag.Lookup("no-warn").Value.Get().(bool) |
| 62 | cfg.NoMake = cmdr.Flag.Lookup("no-make").Value.Get().(bool) |
| 63 | cfg.DynamicLinking = cmdr.Flag.Lookup("dynamic-link").Value.Get().(bool) |
| 64 | cfg.BuildTags = cmdr.Flag.Lookup("build-tags").Value.Get().(string) |
| 65 | |
| 66 | if cfg.VM == "" { |
| 67 | cfg.VM = "python" |
| 68 | } |
| 69 | |
| 70 | bind.NoWarn = cfg.NoWarn |
| 71 | bind.NoMake = cfg.NoMake |
| 72 | |
| 73 | for _, path := range args { |
| 74 | bpkg, err := loadPackage(path, true, cfg.BuildTags) // build first |
| 75 | if err != nil { |
| 76 | return fmt.Errorf("gopy-gen: go build / load of package failed with path=%q: %v", path, err) |
| 77 | } |
| 78 | pkg, err := parsePackage(bpkg) |
| 79 | if cfg.Name == "" { |
| 80 | cfg.Name = pkg.Name() |
| 81 | } |
| 82 | if err != nil { |
| 83 | return err |
| 84 | } |
| 85 | } |
| 86 | |
| 87 | err = genPkg(bind.ModeGen, cfg) |
| 88 | if err != nil { |
| 89 | return err |
| 90 | } |
| 91 | |
| 92 | return err |
| 93 | } |
nothing calls this directly
no test coverage detected