diff --git a/make.go b/make.go index ffcd8b6..90a6f04 100644 --- a/make.go +++ b/make.go @@ -1,6 +1,7 @@ package main import ( + "bufio" "errors" "flag" "fmt" @@ -742,6 +743,24 @@ func copyFile(src, dest string) error { return output.Close() } +func checkWnpp(name string) { + cmd := exec.Command("wnpp-check", name) + cmd.Stderr = os.Stderr + out, err := cmd.Output() + if err != nil { + fmt.Fprintf(os.Stderr, "The following wnpp bug entries were found for \"%s\":\n%s", name, out) + fmt.Fprint(os.Stderr, "Would you like to proceed? (Y/n): ") + r := bufio.NewReader(os.Stdin) + input, err := r.ReadString('\n') + if err != nil { + log.Fatalf("error occurred while reading input: %v", err) + } + if strings.TrimSpace(input) == "n" { + log.Fatalf("Exiting...") + } + } +} + func execMake(args []string, usage func()) { fs := flag.NewFlagSet("make", flag.ExitOnError) if usage != nil { @@ -929,6 +948,9 @@ func execMake(args []string, usage func()) { gopkg, strings.ToLower(gopkg)) } + // Check if wnpp bug exists (using wnpp-check from devscripts) + checkWnpp(debsrc) + var ( eg errgroup.Group golangBinaries map[string]string // map[goImportPath]debianBinaryPackage