diff --git a/cmd/goversioninfo/main.go b/cmd/goversioninfo/main.go index 3dff76c..b1f3f94 100644 --- a/cmd/goversioninfo/main.go +++ b/cmd/goversioninfo/main.go @@ -42,6 +42,11 @@ func main() { flagVerPatch := flag.Int("ver-patch", -1, "FileVersion.Patch") flagVerBuild := flag.Int("ver-build", -1, "FileVersion.Build") + flagProductVerMajor := flag.Int("product-ver-major", -1, "ProductVersion.Major") + flagProductVerMinor := flag.Int("product-ver-minor", -1, "ProductVersion.Minor") + flagProductVerPatch := flag.Int("product-ver-patch", -1, "ProductVersion.Patch") + flagProductVerBuild := flag.Int("product-ver-build", -1, "ProductVersion.Build") + flag.Usage = func() { fmt.Fprintf(os.Stderr, "Usage: %s [flags] \n\nPossible flags:\n", os.Args[0]) flag.PrintDefaults() @@ -146,6 +151,19 @@ func main() { vi.FixedFileInfo.FileVersion.Build = *flagVerBuild } + if *flagProductVerMajor >= 0 { + vi.FixedFileInfo.ProductVersion.Major = *flagProductVerMajor + } + if *flagProductVerMinor >= 0 { + vi.FixedFileInfo.ProductVersion.Minor = *flagProductVerMinor + } + if *flagProductVerPatch >= 0 { + vi.FixedFileInfo.ProductVersion.Patch = *flagProductVerPatch + } + if *flagProductVerBuild >= 0 { + vi.FixedFileInfo.ProductVersion.Build = *flagProductVerBuild + } + // Fill the structures with config data vi.Build()