X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=dgit;h=b3c95c7c52544ef9c2a75a71d78cd42dddb2851f;hp=eca2303e86add5d5aa9677fc5cff529b97eddc81;hb=340a659359f6e9537513355fcbd7309c4d45a10d;hpb=67e3687e3223a97f2d2952ba2aba32d0c177966b diff --git a/dgit b/dgit index eca2303e..b3c95c7c 100755 --- a/dgit +++ b/dgit @@ -166,7 +166,7 @@ our $keyid; autoflush STDOUT 1; our $supplementary_message = ''; -our $need_split_build_invocation = 0; +our $need_split_build_invocation = 1; our $split_brain = 0; END { @@ -4756,8 +4756,12 @@ sub cmd_push { dopush(); } +our $sourcechanges; + sub cmd_push_source { prep_push(); + fail "dgit push-source: --include-dirty/--ignore-dirty does not make". + "sense with push-source!" if $includedirty; if ($changesfile) { my $changes = parsecontrol("$buildproductsdir/$changesfile", "source changes file"); @@ -5060,7 +5064,6 @@ sub i_want_signed_dsc_changes { #---------- building etc. ---------- our $version; -our $sourcechanges; our $dscfn; #----- `3.0 (quilt)' handling ----- @@ -6106,6 +6109,10 @@ sub cmd_clean () { maybe_unapply_patches_again(); } +# return values from massage_dbp_args are one or both of these flags +sub WANTSRC_SOURCE () { 01; } # caller should build source (separately) +sub WANTSRC_BUILDER () { 02; } # caller should run dpkg-buildpackage + sub build_or_push_prep_early () { our $build_or_push_prep_early_done //= 0; return if $build_or_push_prep_early_done++; @@ -6181,10 +6188,6 @@ sub changesopts () { return (changesopts_initial(), changesopts_version()); } -# return values from massage_dbp_args are one or both of these flags -sub WANTSRC_SOURCE () { 01; } # caller should build source (separately) -sub WANTSRC_BUILDER () { 02; } # caller should run dpkg-buildpackage - sub massage_dbp_args ($;$) { my ($cmd,$xargs) = @_; # We need to: @@ -6247,7 +6250,7 @@ sub postbuild_mergechanges ($) { # or if that is undef, be a no-op. # Returns the changes file to report to the user. my $pat = changespat $version; - my @changesfiles = glob $pat; + my @changesfiles = grep { !m/_multi\.changes/ } glob $pat; @changesfiles = sort { ($b =~ m/_source\.changes$/ <=> $a =~ m/_source\.changes$/) or $a cmp $b @@ -6284,7 +6287,10 @@ sub midbuild_checkchanges () { my $pat = changespat $version; return if $rmchanges; my @unwanted = map { s#.*/##; $_; } glob "$bpd_glob/$pat"; - @unwanted = grep { $_ ne changespat $version,'source' } @unwanted; + @unwanted = grep { + $_ ne changespat $version,'source' and + $_ ne changespat $version,'multi' + } @unwanted; fail <