changeset 52512:c7ef303c76f2

Revision: miles@gnu.org--gnu-2003/emacs--cvs-trunk--0--patch-48 Add loaddefs.el bootstrapping to lisp/makefile.w32-in
author Miles Bader <miles@gnu.org>
date Tue, 16 Sep 2003 02:40:49 +0000
parents 261a321c464e
children 5a24881a4775
files lisp/ChangeLog lisp/makefile.w32-in
diffstat 2 files changed, 24 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Mon Sep 15 19:14:00 2003 +0000
+++ b/lisp/ChangeLog	Tue Sep 16 02:40:49 2003 +0000
@@ -1,3 +1,10 @@
+2003-09-16  Miles Bader  <miles@gnu.ai.mit.edu>
+
+	From David Ponce <david.ponce@wanadoo.fr>:
+	* makefile.w32-in (DONTCOMPILE): Add loaddefs-boot.el.
+	(bootstrap-clean-CMD, bootstrap-clean-SH): Recreate loaddefs.el
+	from loaddefs-boot.el if necessary.
+
 2003-09-15  Zoltan Kemenczy <kemenczy@rogers.com>
 
 	* progmodes/gud.el (gud-find-class): Make jdb work again since
--- a/lisp/makefile.w32-in	Mon Sep 15 19:14:00 2003 +0000
+++ b/lisp/makefile.w32-in	Tue Sep 16 02:40:49 2003 +0000
@@ -87,6 +87,7 @@
 	$(lisp)/language/utf-8-lang.el \
 	$(lisp)/language/georgian.el \
 	$(lisp)/loaddefs.el \
+	$(lisp)/loaddefs-boot.el \
 	$(lisp)/loadup.el \
 	$(lisp)/mail/blessmail.el \
 	$(lisp)/patcomp.el \
@@ -352,22 +353,33 @@
 recompile: doit
 	$(emacs) -f batch-byte-recompile-directory $(lisp)
 
-# Prepare a bootstrap in the lisp subdirectory.  Build loaddefs.el,
-# because it's not sure it's up-to-date, and if it's not, that might
-# lead to errors during the bootstrap because something fails to
-# autoload as expected.  Remove compiled Lisp files so that
-# bootstrap-emacs will be built from sources only.
+# Prepare a bootstrap in the lisp subdirectory.
+#
+# Build loaddefs.el, because it's not sure it's up-to-date, and if it's not,
+# that might lead to errors during the bootstrap because something fails to
+# autoload as expected.  However, if there is no emacs binary, then we can't
+# build autoloads yet, so just make sure there's some loaddefs.el file, as
+# it's necessary for generating the binary (because loaddefs.el is an
+# automatically generated file, we don't want to store it in the source
+# repository).
+#
+# Remove compiled Lisp files so that bootstrap-emacs will be built from
+# sources only.
 
 # Need separate version for sh and native cmd.exe
 bootstrap-clean: bootstrap-clean-$(SHELLTYPE) loaddefs.el
 
 bootstrap-clean-CMD:
 #	if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads
+	if not exist $(lisp)\loaddefs.el cp $(lisp)/loaddefs-boot.el $(lisp)/loaddefs.el
 	-for %f in (. $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g
 
 bootstrap-clean-SH:
 #	if test -f $(EMACS); then $(MAKE) $(MFLAGS) autoloads; fi
 #	-rm -f $(lisp)/*.elc $(lisp)/*/*.elc
+	if ! test -r $(lisp)/loaddefs.el; then \
+	  cp $(lisp)/loaddefs-boot.el $(lisp)/loaddefs.el; \
+	fi
 	-for dir in . $(WINS); do rm -f $$dir/*.elc; done
 
 # Generate/update files for the bootstrap process.