emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master dd1aa7b: Make maintainer-clean delete generated files, as per sta


From: Glenn Morris
Subject: master dd1aa7b: Make maintainer-clean delete generated files, as per standards
Date: Sun, 4 Apr 2021 12:19:34 -0400 (EDT)

branch: master
commit dd1aa7bc4ca6c1df1713ccac7c66e681d8444c21
Author: Glenn Morris <rgm@gnu.org>
Commit: Glenn Morris <rgm@gnu.org>

    Make maintainer-clean delete generated files, as per standards
    
    These are generated files that were once kept in the repository.
    When they were removed from the repository, as a half-way measure
    they were only deleted by "extraclean", but this was never
    necessary and was not a proper use of that rule.
    * admin/charsets/Makefile.in (gen-clean): New phony target.
    (maintainer-clean): Delete generated files.
    * admin/grammars/Makefile.in (gen-clean): New phony target.
    (maintainer-clean): Delete generated files.
    * admin/unidata/Makefile.in (gen-clean): New phony target.
    (maintainer-clean): Delete generated files.
    * leim/Makefile.in (gen-clean): New phony target.
    (maintainer-clean): Delete generated files.
    * GNUmakefile: Doc fix.
---
 GNUmakefile                |  4 ++--
 Makefile.in                |  2 --
 admin/charsets/Makefile.in | 12 +++++++-----
 admin/grammars/Makefile.in | 19 +++++++++++--------
 admin/unidata/Makefile.in  | 16 ++++++++--------
 leim/Makefile.in           | 14 +++++++++-----
 6 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/GNUmakefile b/GNUmakefile
index 0e01b80..5155487 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -50,8 +50,8 @@ help:
        @echo "make distclean        -- delete all build and configuration 
files,"
        @echo "                         leave only files included in source 
distribution"
        @echo "make maintainer-clean -- delete almost everything that can be 
regenerated"
-       @echo "make extraclean       -- like maintainer-clean, and also delete 
all generated"
-       @echo "                         files, backup files and autosave files"
+       @echo "make extraclean       -- like maintainer-clean, and also delete"
+       @echo "                         backup and autosave files"
        @echo "make bootstrap        -- delete all compiled files to force a 
new bootstrap"
        @echo "                         from a clean slate, then build in the 
normal way"
        @echo "make uninstall        -- remove files installed by 'make 
install'"
diff --git a/Makefile.in b/Makefile.in
index f3ba50c..6385483 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -48,8 +48,6 @@
 #
 # make extraclean
 #      Still more severe - delete backup and autosave files, too.
-#      Also generated files that do not normally change and can be slow
-#      to rebuild (eg leim/ja-dic).
 #
 # make bootstrap
 #      Removes all the compiled files to force a new bootstrap from a
diff --git a/admin/charsets/Makefile.in b/admin/charsets/Makefile.in
index 1fe0299..0042484 100644
--- a/admin/charsets/Makefile.in
+++ b/admin/charsets/Makefile.in
@@ -297,17 +297,19 @@ ${charsetdir}/%.map: ${GLIBC_CHARMAPS}/%.gz ${mapconv} 
${compact}
        ${AM_V_GEN}${run_mapconv} $< '/^<.*[    ]\/x/' GLIBC-1 ${compact} > $@
 
 
-.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean
+.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean
 
 clean:
 
+## IMO this should also run gen-clean.
 bootstrap-clean: clean
 
 distclean: clean
        rm -f Makefile
 
-maintainer-clean: distclean
-
-## Do not remove these files, even in a bootstrap.  They rarely change.
-extraclean:
+gen-clean:
        rm -f ${CHARSETS} ${SED_SCRIPT} ${TRANS_TABLE} ${srcdir}/charsets.stamp
+
+maintainer-clean: gen-clean distclean
+
+extraclean: maintainer-clean
diff --git a/admin/grammars/Makefile.in b/admin/grammars/Makefile.in
index aa09d9e..1573eb3 100644
--- a/admin/grammars/Makefile.in
+++ b/admin/grammars/Makefile.in
@@ -51,7 +51,7 @@ BOVINE = \
 ## FIXME Should include this one too:
 ##     ${cedetdir}/semantic/grammar-wy.el
 ## but semantic/grammar.el (which is what we use to generate grammar-wy.el)
-## requires it!
+## requires it!  https://debbugs.gnu.org/16008
 WISENT = \
        ${wisentdir}/javat-wy.el \
        ${wisentdir}/js-wy.el \
@@ -68,6 +68,8 @@ bovine: ${BOVINE}
 
 wisent: ${WISENT}
 
+## TODO add dependencies on semantic/{bovine,wisent}/grammar.el
+
 ## c-by.el, make-by.el.
 ${bovinedir}/%-by.el: ${srcdir}/%.by
        $(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
@@ -96,19 +98,20 @@ ${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy
        $(AM_V_at)${make_wisent} -o "$@" $<
 
 
-.PHONY: distclean bootstrap-clean maintainer-clean extraclean
+.PHONY: distclean bootstrap-clean maintainer-clean extraclean gen-clean
 
 distclean:
        rm -f Makefile
 
-## Perhaps this should do what extraclean (qv) does.
+## IMO this should run gen-clean.
 bootstrap-clean:
 
-maintainer-clean: distclean
-
-## We do not normally delete the generated files, even in bootstrap.
-## Creating them does not take long, so we could easily change this.
-extraclean:
+gen-clean:
        rm -f ${ALL}
 
+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 183569f..b7a927d 100644
--- a/admin/unidata/Makefile.in
+++ b/admin/unidata/Makefile.in
@@ -85,26 +85,26 @@ ${unidir}/charscript.el: ${srcdir}/Blocks.txt ${blocks}
        $(AM_V_GEN)$(AWK) -f ${blocks} < $< > $@
 
 
-.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean
+.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean
 
 clean:
        rm -f ${srcdir}/*.elc unidata.txt
 
+## IMO this should also run gen-clean.
 bootstrap-clean: clean
 
 distclean: clean
        rm -f Makefile
 
-maintainer-clean: distclean
-
-## Do not remove these files, even in a bootstrap, because they rarely
-## change and it slows down bootstrap (a tiny bit).
-## Cf leim/ja-dic (which is much slower).
-
 ## macuvs.h is a generated file, but it's also checked in because
 ## macOS builds would need to do a headless bootstrap without it,
 ## which is currently awkward.  To avoid changing checked-in files
 ## from a make target, we don't delete it here.
-extraclean: distclean
+gen-clean:
        rm -f ${unidir}/charscript.el*
        rm -f ${unifiles} ${unidir}/charprop.el
+## ref: https://lists.gnu.org/r/emacs-devel/2013-11/msg01029.html
+
+maintainer-clean: gen-clean distclean
+
+extraclean: maintainer-clean
diff --git a/leim/Makefile.in b/leim/Makefile.in
index c2f9cf5..2646abc 100644
--- a/leim/Makefile.in
+++ b/leim/Makefile.in
@@ -137,19 +137,23 @@ ${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
+.PHONY: bootstrap-clean distclean maintainer-clean extraclean gen-clean
 
+## Perhaps this should run gen-clean.
 bootstrap-clean:
        rm -f ${TIT_MISC} ${leimdir}/leim-list.el
 
 distclean:
        rm -f Makefile
 
-maintainer-clean: distclean bootstrap-clean
+maintainer-clean: gen-clean distclean
 
-## We do not delete ja-dic, even in a bootstrap, because it rarely
-## changes and is slow to regenerate.
-extraclean: bootstrap-clean
+## ja-dic rarely changes and is slow to regenerate, and tends to be a
+## bottleneck in parallel builds.
+gen-clean:
+       rm -f ${TIT_MISC} ${leimdir}/leim-list.el
        rm -rf ${leimdir}/ja-dic
 
+extraclean: maintainer-clean
+
 ### Makefile.in ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]