diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2014-01-19 01:09:13 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2014-01-19 01:09:13 +0000 |
commit | c2a0ff7beedc33a80fa2e1eb4d09d7da170b0eb7 (patch) | |
tree | 21ade4af82817e940497b679618f701a92ce95b9 | |
parent | 5dbf5d3d2ef07b059c732abe77d1657e3fc3f714 (diff) |
Refuse to do quilt fixup (explicitly or as a result of build). Closes:#731632.
-rw-r--r-- | debian/changelog | 2 | ||||
-rwxr-xr-x | dgit | 11 |
2 files changed, 13 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index bfdb0e9..594eada 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,6 +10,8 @@ dgit (0.21~~iwj) unstable; urgency=low * Run a clean (of the specified type) before any build operation; do this with `dpkg-buildpackage -T' clean if necessary, so -wd now works with all the building methods. + * Refuse to do quilt fixup (explicitly or as a result of build). + Closes:#731632. -- @@ -1734,6 +1734,17 @@ sub build_maybe_quilt_fixup () { chomp; return unless madformat($_); # sigh + + my @cmd = (@git, qw(ls-files --exclude-standard -iodm)); + my $problems = cmdoutput @cmd; + if (length $problems) { + print STDERR "problematic files:\n"; + print STDERR " $_\n" foreach split /\n/, $problems; + fail "Cannot do quilt fixup in tree containing ignored files. ". + "Perhaps your package's clean target is broken, in which". + " case -wg (which says to use git-clean -xdf) may help."; + } + my $clogp = parsechangelog(); my $version = getfield $clogp, 'Version'; my $author = getfield $clogp, 'Maintainer'; |