From b4b7bab7ca0cbe68d4a701e26c687af971f0ebb4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Sat, 28 Feb 2009 04:44:50 +0000 Subject: [PATCH] (lib-src, lisp): Use simpler rule. (src): Be more specific to avoid recompiling all the .elc files just because the bootstrap-emacs is missing. --- ChangeLog | 6 ++++++ Makefile.in | 16 +++++++++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1259dd1327..c3ee564cf1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2009-02-28 Stefan Monnier + + * 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 * configure.in: Require librsvg >= 2.11. diff --git a/Makefile.in b/Makefile.in index 4439e85bb1..14036608d6 100644 --- a/Makefile.in +++ b/Makefile.in @@ -320,6 +320,12 @@ src: lib-src FRC # 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 @@ lisp: src # 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) \ -- 2.20.1