diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2013-08-22 14:00:12 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2013-08-22 14:00:12 +0100 |
commit | e4ff2dddf705d2025b5cf03d1af2ef9161ed54f4 (patch) | |
tree | d1a0716592fdd5e648f155fc7a23f882361a99a8 | |
parent | 8c50bd93d6dd644c0eef242046e0f818083e206f (diff) |
support _multi.changes
-rwxr-xr-x | dgit | 18 | ||||
-rw-r--r-- | dgit.1 | 3 |
2 files changed, 14 insertions, 7 deletions
@@ -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()) { @@ -321,7 +321,8 @@ Can be repeated as necessary. .BI -C changesfile Specifies the .changes file which is to be uploaded. By default dgit push looks for single .changes file in the parent directory whose -filename suggests it is for the right package and version. +filename suggests it is for the right package and version - or, +if there is a _multi.changes file, dgit uses that. .TP .BI --existing-package= package dgit push needs to canonicalise the suite name. But currently |