changeset 102319:58c8067194da

(lib-src, lisp): Use simpler rule. (src): Be more specific to avoid recompiling all the .elc files just because the bootstrap-emacs is missing.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sat, 28 Feb 2009 04:44:50 +0000
parents c9c0d0cbf010
children d8f068bac680
files ChangeLog Makefile.in
diffstat 2 files changed, 19 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Feb 28 03:52:58 2009 +0000
+++ b/ChangeLog	Sat Feb 28 04:44:50 2009 +0000
@@ -1,3 +1,9 @@
+2009-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* Makefile.in (lib-src, lisp): Use simpler rule.
+	(src): Be more specific to avoid recompiling all the .elc files just
+	because the bootstrap-emacs is missing.
+
 2009-02-26  Chong Yidong  <cyd@stupidchicken.com>
 
 	* configure.in: Require librsvg >= 2.11.
--- a/Makefile.in	Sat Feb 28 03:52:58 2009 +0000
+++ b/Makefile.in	Sat Feb 28 04:44:50 2009 +0000
@@ -320,6 +320,12 @@
 # We need to build `emacs' in `src' to compile the *.elc files in `lisp'.
 lisp: src
 
+# These targets should be "${SUBDIR} without `src'".
+lib-src lisp: Makefile FRC
+	cd $@; $(MAKE) all $(MFLAGS)                           \
+	  CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
+	  LDFLAGS='${LDFLAGS}' MAKE='${MAKE}'
+
 # Pass to src/Makefile.in an additional BOOTSTRAPEMACS variable which
 # is either set to bootstrap-emacs (in case bootstrap-emacs has not been
 # constructed yet) or the empty string (otherwise).
@@ -329,12 +335,16 @@
 # file src/foo.c forces dumping a new bootstrap-emacs, then re-byte-compiling
 # all preloaded elisp files, and only then dump the actual src/emacs, which
 # is not wrong, but is overkill in 99.99% of the cases.
-${SUBDIR}: Makefile FRC
+src: Makefile FRC
 	boot=bootstrap-emacs$(EXEEXT);                         \
-	if [ -x "src/$$boot" ]; then boot=""; fi;                   \
+	if [ ! -x "src/$$boot" ]; then                                     \
+	    cd $@; $(MAKE) all $(MFLAGS)                                   \
+	      CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}'         \
+	      LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"; \
+	fi;                                                                \
 	cd $@; $(MAKE) all $(MFLAGS)                           \
 	  CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
-	  LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"
+	  LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS=""
 
 blessmail: Makefile src FRC
 	cd lib-src; $(MAKE) maybe-blessmail $(MFLAGS) \