On Tue, Nov 22, 2016 at 4:43 AM, Pádraig Brady <[email protected]> wrote: > On 22/11/16 05:28, Jim Meyering wrote: >> * Makefile.am (my-distcheck): Remove all .deps directories before >> recursive diff search for left-behind files. Otherwise, with >> automake master (v1.15-165-g5fac9a3), "make distcheck" would fail >> due to those directories being left behind after "make clean". > > `make clean` generally doesn't remove .dep dirs, while > `make distclean` does. I verified `make distclean` removes > all .dep dirs here. Is this a regression in automake? > Did you mean "make distclean" above? > If it's unexpected behavior it's probably worth mentioning > that in a comment on the line. > Anyway +1 to the workaround.
Right. I meant "make distclean". Amended in the attached. Yes, it is a regression. Here's what's left after "make distclean" when bootstrapped with latest automake: $ find . -name .deps ./lib/.deps ./lib/glthread/.deps ./lib/unistr/.deps ./lib/uniwidth/.deps ./src/.deps ./gnulib-tests/.deps ./gnulib-tests/glthread/.deps ./gnulib-tests/unistr/.deps ./gnulib-tests/uniwidth/.deps
From 5d7fd9bb04767407ee813facaadefd5d32b10fc9 Mon Sep 17 00:00:00 2001 From: Jim Meyering <[email protected]> Date: Wed, 14 Sep 2016 14:16:40 -0700 Subject: [PATCH] maint: avoid "make distcheck" failure due to excess .deps directories * Makefile.am (my-distcheck): Remove all .deps directories before the recursive diff that searches for left-behind files. Otherwise, with automake master (some time after v1.15), "make distcheck" would fail due to those directories being left behind after "make distclean". --- dist-check.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dist-check.mk b/dist-check.mk index 533b7f9..9f8db13 100644 --- a/dist-check.mk +++ b/dist-check.mk @@ -120,6 +120,10 @@ my-distcheck: $(DIST_ARCHIVES) $(local-check) ) (cd $(t) && mv $(distdir) $(distdir).old \ && $(amtar_extract_) - ) < $(preferred_tarball_) +# With post-v1.15 automake, "distclean" would fail to remove .deps +# directories, leading to a spurious failure of the following recursive diff. +# FIXME: remove this, once automake is fixed. + find $(t)/$(distdir).old $(t)/$(distdir) -name .deps | xargs rmdir diff -ur $(t)/$(distdir).old $(t)/$(distdir) -rm -rf $(t) rmdir $(tmpdir)/$(PACKAGE) $(tmpdir) -- 2.9.3
