From 305e4807a42075dca2447c82499cbc2584700fe2 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sun, 9 May 2021 18:14:12 -0700 Subject: [PATCH] Base the "extraclean" Make rule on "maintainer-clean" * Makefile.in (FIND_DELETE): New, set by configure. (extraclean_dirs): Remove. (extraclean): Make it just a small variation on maintainer-clean. * admin/charsets/Makefile.in (extraclean): * admin/grammars/Makefile.in (extraclean): * admin/unidata/Makefile.in (extraclean): * leim/Makefile.in (extraclean): * lib-src/Makefile.in (extraclean): * lisp/Makefile.in (extraclean): * lwlib/Makefile.in (extraclean): * nt/Makefile.in (extraclean): * src/Makefile.in (extraclean): Remove target. * lib/Makefile.in (extraclean): Merge into maintainer-clean. --- Makefile.in | 19 ++++++++----------- admin/charsets/Makefile.in | 3 +-- admin/grammars/Makefile.in | 3 +-- admin/unidata/Makefile.in | 3 +-- leim/Makefile.in | 4 +--- lib-src/Makefile.in | 4 +--- lib/Makefile.in | 1 - lisp/Makefile.in | 8 +------- lisp/vc/vc.el | 3 +++ lwlib/Makefile.in | 4 ++-- nt/Makefile.in | 5 +---- src/Makefile.in | 5 +---- 12 files changed, 21 insertions(+), 41 deletions(-) diff --git a/Makefile.in b/Makefile.in index 8d52cb58575..6a5513124f6 100644 --- a/Makefile.in +++ b/Makefile.in @@ -96,6 +96,8 @@ NTDIR=@NTDIR@ top_builddir = @top_builddir@ -include ${top_builddir}/src/verbose.mk +FIND_DELETE = @FIND_DELETE@ + HAVE_NATIVE_COMP = @HAVE_NATIVE_COMP@ # ==================== Where To Install Things ==================== @@ -932,19 +934,14 @@ maintainer-clean: bootstrap-clean $(maintainer_clean_dirs:=_maintainer-clean) ### says GCC supports it, and that's where the configuration part of ### the coding standards seem to come from. It's like distclean, but ### it deletes backup and autosave files too. -### Note that we abuse this in some subdirectories (eg leim), -### to delete some generated files that are slow to rebuild. -extraclean_dirs = ${NTDIR} lib-src src leim \ - admin/charsets admin/grammars admin/unidata lisp lib lwlib - -$(foreach dir,$(extraclean_dirs),$(eval $(call submake_template,$(dir),extraclean))) - -extraclean: $(extraclean_dirs:=_extraclean) - ${top_maintainer_clean} - -rm -f config-tmp-* aclocal.m4 configure - -rm -f ./*~ \#* etc/refcards/emacsver.tex doc/emacs/emacsver.texi +extraclean: maintainer-clean + -rm -f config-tmp-* aclocal.m4 configure src/config.in + -rm -f etc/refcards/emacsver.tex doc/emacs/emacsver.texi -rm -f info/*.info info/dir -rmdir info 2>/dev/null + -[ "${srcdir}" = "." ] || \ + find ${srcdir} '(' -name '*~' -o -name '#*' ')' ${FIND_DELETE} + -find . '(' -name '*~' -o -name '#*' ')' ${FIND_DELETE} # The src subdir knows how to do the right thing # even when the build directory and source dir are different. diff --git a/admin/charsets/Makefile.in b/admin/charsets/Makefile.in index 00424843bc4..f043077e318 100644 --- a/admin/charsets/Makefile.in +++ b/admin/charsets/Makefile.in @@ -297,7 +297,7 @@ ${charsetdir}/%.map: ${GLIBC_CHARMAPS}/%.gz ${mapconv} ${compact} ${AM_V_GEN}${run_mapconv} $< '/^<.*[ ]\/x/' GLIBC-1 ${compact} > $@ -.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean +.PHONY: clean bootstrap-clean distclean maintainer-clean gen-clean clean: @@ -312,4 +312,3 @@ gen-clean: maintainer-clean: gen-clean distclean -extraclean: maintainer-clean diff --git a/admin/grammars/Makefile.in b/admin/grammars/Makefile.in index 4172411e034..aaf95c08973 100644 --- a/admin/grammars/Makefile.in +++ b/admin/grammars/Makefile.in @@ -95,7 +95,7 @@ ${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy ${grammar_wisent} $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@" $(AM_V_at)${make_wisent} -o "$@" $< -.PHONY: distclean bootstrap-clean maintainer-clean extraclean gen-clean +.PHONY: distclean bootstrap-clean maintainer-clean gen-clean distclean: rm -f Makefile @@ -108,7 +108,6 @@ gen-clean: maintainer-clean: gen-clean distclean -extraclean: maintainer-clean # Makefile.in ends here diff --git a/admin/unidata/Makefile.in b/admin/unidata/Makefile.in index b7a927d1919..357b8126783 100644 --- a/admin/unidata/Makefile.in +++ b/admin/unidata/Makefile.in @@ -85,7 +85,7 @@ ${unidir}/charscript.el: ${srcdir}/Blocks.txt ${blocks} $(AM_V_GEN)$(AWK) -f ${blocks} < $< > $@ -.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean +.PHONY: clean bootstrap-clean distclean maintainer-clean gen-clean clean: rm -f ${srcdir}/*.elc unidata.txt @@ -107,4 +107,3 @@ gen-clean: maintainer-clean: gen-clean distclean -extraclean: maintainer-clean diff --git a/leim/Makefile.in b/leim/Makefile.in index 2646abcfff9..ce1029abcfa 100644 --- a/leim/Makefile.in +++ b/leim/Makefile.in @@ -137,7 +137,7 @@ ${srcdir}/../lisp/language/pinyin.el: ${srcdir}/MISC-DIC/pinyin.map $(AM_V_GEN)${RUN_EMACS} -l titdic-cnv -f pinyin-convert $< $@ -.PHONY: bootstrap-clean distclean maintainer-clean extraclean gen-clean +.PHONY: bootstrap-clean distclean maintainer-clean gen-clean ## Perhaps this should run gen-clean. bootstrap-clean: @@ -154,6 +154,4 @@ gen-clean: rm -f ${TIT_MISC} ${leimdir}/leim-list.el rm -rf ${leimdir}/ja-dic -extraclean: maintainer-clean - ### Makefile.in ends here diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in index 923d0cf5e72..1beafafe0c1 100644 --- a/lib-src/Makefile.in +++ b/lib-src/Makefile.in @@ -315,7 +315,7 @@ $(DESTDIR)${archlibdir}: all fi .PHONY: install uninstall mostlyclean clean distclean maintainer-clean -.PHONY: bootstrap-clean extraclean check tags +.PHONY: bootstrap-clean check tags install: $(DESTDIR)${archlibdir} @echo @@ -350,8 +350,6 @@ distclean: clean bootstrap-clean maintainer-clean: distclean -extraclean: maintainer-clean - rm -f ./*~ \#* ## Test the contents of the directory. check: diff --git a/lib/Makefile.in b/lib/Makefile.in index 68a0247e9cb..825b3131d59 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -113,7 +113,6 @@ distclean bootstrap-clean: mostlyclean rm -fr $(DEPDIR) maintainer-clean: distclean rm -f TAGS gnulib.mk -extraclean: distclean -rmdir malloc sys 2>/dev/null .PHONY: mostlyclean clean distclean bootstrap-clean maintainer-clean diff --git a/lisp/Makefile.in b/lisp/Makefile.in index 052de266dcf..8e0d9c4e5be 100644 --- a/lisp/Makefile.in +++ b/lisp/Makefile.in @@ -467,7 +467,7 @@ $(CAL_DIR)/hol-loaddefs.el: $(CAL_SRC) $(CAL_DIR)/diary-loaddefs.el --eval "(setq generated-autoload-file (expand-file-name (unmsys--file-name \"$@\")))" \ -f batch-update-autoloads $(CAL_DIR) -.PHONY: bootstrap-clean distclean maintainer-clean extraclean +.PHONY: bootstrap-clean distclean maintainer-clean bootstrap-clean: find $(lisp) -name '*.elc' $(FIND_DELETE) @@ -479,12 +479,6 @@ distclean: maintainer-clean: distclean bootstrap-clean rm -f TAGS -extraclean: bootstrap-clean distclean - -for file in $(loaddefs); do rm -f $${file}~; done - -rm -f $(lisp)/loaddefs.el~ - -find $(lisp) -name '*~' $(FIND_DELETE) - -find $(lisp) -name '#*' $(FIND_DELETE) - .PHONY: check-declare check-declare: diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 95126fac100..9338b7191d0 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -979,6 +979,9 @@ be reported. If NO-ERROR is nil, signal an error that no VC backend is responsible for the given file." (or (and (not (file-directory-p file)) (vc-backend file)) + ;; FIXME it would be more efficient to walk up the directory tree, + ;; stopping the first time a backend is responsible. + ;; ;; First try: find a responsible backend. If this is for registration, ;; it must be a backend under which FILE is not yet registered. (let ((dirs (delq nil diff --git a/lwlib/Makefile.in b/lwlib/Makefile.in index ce77789db89..fb0ae0e1c21 100644 --- a/lwlib/Makefile.in +++ b/lwlib/Makefile.in @@ -93,9 +93,9 @@ globals_h = ../src/globals.h $(globals_h): $(MAKE) -C ../src globals.h -.PHONY: mostlyclean clean distclean bootstrap-clean maintainer-clean extraclean +.PHONY: mostlyclean clean distclean bootstrap-clean maintainer-clean -clean mostlyclean extraclean: +clean mostlyclean: rm -f ./*.o liblw.a \#* $(DEPDIR)/* distclean: clean diff --git a/nt/Makefile.in b/nt/Makefile.in index 0d448903ba5..3274ff924f9 100644 --- a/nt/Makefile.in +++ b/nt/Makefile.in @@ -170,7 +170,7 @@ $(DESTDIR)${archlibdir}: all fi .PHONY: install uninstall mostlyclean clean distclean maintainer-clean -.PHONY: bootstrap-clean extraclean check tags +.PHONY: bootstrap-clean check tags install: $(DESTDIR)${archlibdir} @echo @@ -203,9 +203,6 @@ distclean: clean bootstrap-clean maintainer-clean: distclean true -extraclean: maintainer-clean - -rm -f *~ \#* - ## Test the contents of the directory. check: @echo "We don't have any tests for the nt/ directory yet." diff --git a/src/Makefile.in b/src/Makefile.in index b8bad73b006..d9f65b5bd0e 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -671,7 +671,7 @@ ns-app: emacs$(EXEEXT) $(pdmp) $(MAKE) -C ../nextstep all .PHONY: mostlyclean clean bootstrap-clean distclean maintainer-clean -.PHONY: versionclean extraclean +.PHONY: versionclean mostlyclean: rm -f temacs$(EXEEXT) core ./*.core \#* ./*.o @@ -706,9 +706,6 @@ distclean: bootstrap-clean maintainer-clean: distclean rm -f TAGS -extraclean: distclean - rm -f ./*~ \#* TAGS config.in - ETAGS = ../lib-src/etags${EXEEXT} -- 2.39.2