summaryrefslogtreecommitdiff
path: root/dgit
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2013-08-22 14:00:12 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2013-08-22 14:00:12 +0100
commite4ff2dddf705d2025b5cf03d1af2ef9161ed54f4 (patch)
treed1a0716592fdd5e648f155fc7a23f882361a99a8 /dgit
parent8c50bd93d6dd644c0eef242046e0f818083e206f (diff)
support _multi.changes
Diffstat (limited to 'dgit')
-rwxr-xr-xdgit18
1 files changed, 12 insertions, 6 deletions
diff --git a/dgit b/dgit
index eb263b1..d61cea7 100755
--- a/dgit
+++ b/dgit
@@ -772,12 +772,18 @@ sub dopush () {
$dsc->{$ourdscfield} = rev_parse('HEAD');
$dsc->save("../$dscfn.tmp") or die $!;
if (!$changesfile) {
- my $pat = "${package}_c$version_*.changes";
- my @cs = glob "../$pat";
- fail "failed to find unique changes file".
- " (looked for $pat in ..); perhaps you need to use dgit -C"
- unless @cs==1;
- ($changesfile) = @cs;
+ my $multi = "${package}_${cversion}_multi.changes";
+ if (stat $multi) {
+ $changesfile = $multi;
+ } else {
+ $!==&ENOENT or die "$multi: $!";
+ my $pat = "${package}_${cversion}_*.changes";
+ my @cs = glob "../$pat";
+ fail "failed to find unique changes file".
+ " (looked for $pat in ..); perhaps you need to use dgit -C"
+ unless @cs==1;
+ ($changesfile) = @cs;
+ }
}
my $tag = debiantag($dversion);
if (!check_for_git()) {