changeset 26145:760a5b91fe7f

(compile-files, backup-compiled-files): New targets. (bootstrap, bootstrap-clean): Ditto.
author Gerd Moellmann <gerd@gnu.org>
date Sat, 23 Oct 1999 13:22:02 +0000
parents 8fee653decdf
children 29159179b7fe
files lisp/Makefile
diffstat 1 files changed, 23 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/Makefile	Sat Oct 23 12:58:08 1999 +0000
+++ b/lisp/Makefile	Sat Oct 23 13:22:02 1999 +0000
@@ -21,6 +21,7 @@
 # to the `lisp' directory.
 # - emacs-lisp/cl-specs.el:  only contains `def-edebug-spec's so there's
 #   no point compiling it, although it doesn't hurt.
+
 DONTCOMPILE = bindings.el mail/blessmail.el play/bruce.el cus-load.el \
 	cus-start.el forms-d2.el forms-pass.el \
 	international/latin-1.el international/latin-2.el \
@@ -108,7 +109,7 @@
 # make sure require's and load's in the files being compiled find
 # the right files.
 
-compile: subdirs.el doit
+compile-files: subdirs.el doit
 	find . -name "*.elc" -print | xargs chmod +w;		\
 	wd=.; $(setwins);					\
 	elpat=`echo $$wins | tr '[ 	]' '[\012\012]' | 	\
@@ -117,6 +118,17 @@
 	echo $$els; \
 	EMACSLOADPATH=`pwd` $(emacs) -f batch-byte-compile $$els
 
+# Backup compiled Lisp files in elc.tar.gz.  If that file already
+# exists, make a backup of it.
+
+backup-compiled-files:
+	-mv elc.tar.gz elc.tar.gz~
+	tar czf elc.tar.gz *.elc */*.elc
+
+# Compile Lisp files, but save old compiled files first.
+
+compile: backup-compiled-files compile-files
+
 # Recompile all Lisp files which are newer than their .elc files.
 # Note that this doesn't create .elc files.  It only recompiles if an
 # .elc is present.
@@ -124,4 +136,14 @@
 recompile: doit
 	$(emacs) -f batch-byte-recompile-directory .
 
+# Remove files for a bootstrap.  Compiled Lisp files must be removed
+# because otherwise `bootstrap-emacs' would not be built from sources.
+
+bootstrap-clean:
+	-rm -f *.elc */*.elc
+
+# Generate/update files for the bootstrap process.
+
+bootstrap: compile-files autoloads custom-deps
+
 # Makefile ends here.