chiark / gitweb /
dgit: Improve two error messages relating to .changes handling and sbuild
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 7a4b391a2c1054ee262d04627d34accb01083f4d..deb77e061e6018d030dee5d1c74799cbf50addca 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -2,7 +2,7 @@
 # dgit
 # Integration between git and Debian-style archives
 #
-# Copyright (C)2013-2015 Ian Jackson
+# Copyright (C)2013-2016 Ian Jackson
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -4938,9 +4938,10 @@ sub cmd_sbuild {
     if (!$rmchanges) {
        my @unwanted = map { s#^\.\./##; $_; } glob "../$pat";
        @unwanted = grep { $_ ne changespat $version,'source' } @unwanted;
-       fail "changes files other than source matching $pat".
-           " already present (@unwanted);".
-           " building would result in ambiguity about the intended results"
+       fail <<END
+changes files other than source matching $pat already present; building would result in ambiguity about the intended results.
+Suggest you delete @unwanted.
+END
            if @unwanted;
     }
     my $wasdir = must_getcwd();
@@ -4956,6 +4957,11 @@ sub cmd_sbuild {
        ($b =~ m/_source\.changes$/ <=> $a =~ m/_source\.changes$/)
            or $a cmp $b
     } @changesfiles;
+    fail <<END if @changesfiles==1;
+only one changes file from sbuild (@changesfiles)
+perhaps you need to pass -A ?  (sbuild's default is to build only
+arch-specific binaries; dgit 1.4 used to override that.)
+END
     fail "wrong number of different changes files (@changesfiles)"
        unless @changesfiles==2;
     my $binchanges = parsecontrol($changesfiles[1], "binary changes file");