summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2018-10-13 11:04:48 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2018-10-13 11:33:16 +0100
commite89cc82116db7648b78941ca028c24d0b5675ae4 (patch)
tree227be57cf0fd9d170799a503a7874770880412f6
parent0457c2d771ef6fe6c0883344add9dd4da0c60917 (diff)
dgit: Reorganise cleaning in build_prep
1. Replace the open-coded $includedirty with the equivalent building_source_in_playtree(), because the latter is what we actually care about here. 2. Reformat into if blocks. 3. Introuce and call clean_tree_check (currently a no-op). Now, writing clean_tree_check will be part of fixing #910705. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rwxr-xr-xdgit19
1 files changed, 16 insertions, 3 deletions
diff --git a/dgit b/dgit
index 8c7f288..a443e5d 100755
--- a/dgit
+++ b/dgit
@@ -6230,6 +6230,10 @@ sub clean_tree () {
}
}
+sub clean_tree_check () {
+ # Not yet implemented. The lack of this is part of #910705.
+}
+
sub cmd_clean () {
badusage __ "clean takes no additional arguments" if @ARGV;
notpushing();
@@ -6262,9 +6266,18 @@ sub build_prep_early () {
sub build_prep ($) {
my ($wantsrc) = @_;
build_prep_early();
- # clean the tree if we're trying to include dirty changes in the
- # source package, or we are running the builder in $maindir
- clean_tree() if $includedirty || ($wantsrc & WANTSRC_BUILDER);
+ if (!building_source_in_playtree() || ($wantsrc & WANTSRC_BUILDER)) {
+ # Clean the tree because we're going to use the contents of
+ # $maindir. (We trying to include dirty changes in the source
+ # package, or we are running the builder in $maindir.)
+ clean_tree();
+ } else {
+ # We don't actually need to do anything in $maindir, but we
+ # should do some kind of cleanliness check because (i) the
+ # user may have forgotten a `git add', and (ii) if the user
+ # said -wc we should still do the check.
+ clean_tree_check();
+ }
build_maybe_quilt_fixup();
if ($rmchanges) {
my $pat = changespat $version;