aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2008-06-25 15:46:23 +0000
committerStefan Monnier2008-06-25 15:46:23 +0000
commitac935997e2a59b91ff18d894d47ba8a98202c22f (patch)
treeb6903dfce80df6918c068ff9bc6e32c82ba3793d
parent3af36712d152c38a31fd377115f33eeaddbb2495 (diff)
downloademacs-ac935997e2a59b91ff18d894d47ba8a98202c22f.tar.gz
emacs-ac935997e2a59b91ff18d894d47ba8a98202c22f.zip
* Makefile.in (Makefile): Use it for its timestamp value as well, and
make it depend on all other */.in files. (src/Makefile, src/config.stamp, lib-src/Makefile) (doc/emacs/Makefile, doc/misc/Makefile, doc/lispref/Makefile) (doc/lispintro/Makefile, oldXMenu/Makefile, lwlib/Makefile) (leim/Makefile, lisp/Makefile): Remove those overlapping targets. (leim, ${SUBDIR}, blessmail): Only depend on Makefile now. * configure.in: Don't create src/config.stamp any more.
-rw-r--r--ChangeLog12
-rw-r--r--Makefile.in58
-rw-r--r--configure.in3
3 files changed, 30 insertions, 43 deletions
diff --git a/ChangeLog b/ChangeLog
index 7c5bc7e10ff..63e11ba32e2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
12008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * Makefile.in (Makefile): Use it for its timestamp value as well, and
4 make it depend on all other */.in files.
5 (src/Makefile, src/config.stamp, lib-src/Makefile)
6 (doc/emacs/Makefile, doc/misc/Makefile, doc/lispref/Makefile)
7 (doc/lispintro/Makefile, oldXMenu/Makefile, lwlib/Makefile)
8 (leim/Makefile, lisp/Makefile): Remove those overlapping targets.
9 (leim, ${SUBDIR}, blessmail): Only depend on Makefile now.
10
11 * configure.in: Don't create src/config.stamp any more.
12
12008-06-22 Stefan Monnier <monnier@iro.umontreal.ca> 132008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
2 14
3 * Makefile.in (${SUBDIR}): Pass additional BOOTSTRAPEMACS argument. 15 * Makefile.in (${SUBDIR}): Pass additional BOOTSTRAPEMACS argument.
diff --git a/Makefile.in b/Makefile.in
index abd61490fbe..8e826394d43 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -301,15 +301,13 @@ epaths-force: FRC
301# "export PARALLEL=0" is for SGI's Make, to prevent it from 301# "export PARALLEL=0" is for SGI's Make, to prevent it from
302# running more than 1 process in the leim directory, especially for 302# running more than 1 process in the leim directory, especially for
303# the $TIT files there. 303# the $TIT files there.
304leim: src ${SUBDIR_MAKEFILES} FRC 304leim: src Makefile FRC
305 (export PARALLEL; PARALLEL=0; cd $@; $(MAKE) all $(MFLAGS) \ 305 (export PARALLEL; PARALLEL=0; cd $@; $(MAKE) all $(MFLAGS) \
306 CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \ 306 CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
307 LDFLAGS='${LDFLAGS}' MAKE='${MAKE}') 307 LDFLAGS='${LDFLAGS}' MAKE='${MAKE}')
308 308
309src: lib-src FRC 309src: lib-src FRC
310 310
311lib-src: FRC src/config.stamp
312
313.RECURSIVE: ${SUBDIR} leim 311.RECURSIVE: ${SUBDIR} leim
314 312
315# We need to build `emacs' in `src' to compile the *.elc files in `lisp'. 313# We need to build `emacs' in `src' to compile the *.elc files in `lisp'.
@@ -324,18 +322,32 @@ lisp: src
324# file src/foo.c forces dumping a new bootstrap-emacs, then re-byte-compiling 322# file src/foo.c forces dumping a new bootstrap-emacs, then re-byte-compiling
325# all preloaded elisp files, and only then dump the actual src/emacs, which 323# all preloaded elisp files, and only then dump the actual src/emacs, which
326# is not wrong, but is overkill in 99.99% of the cases. 324# is not wrong, but is overkill in 99.99% of the cases.
327${SUBDIR}: ${SUBDIR_MAKEFILES} FRC 325${SUBDIR}: Makefile FRC
328 boot=bootstrap-emacs$(EXEEXT); \ 326 boot=bootstrap-emacs$(EXEEXT); \
329 if [ -x "src/$$boot" ]; then boot=""; fi; \ 327 if [ -x "src/$$boot" ]; then boot=""; fi; \
330 cd $@; $(MAKE) all $(MFLAGS) \ 328 cd $@; $(MAKE) all $(MFLAGS) \
331 CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \ 329 CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
332 LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot" 330 LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"
333 331
334blessmail: ${SUBDIR_MAKEFILES} src FRC 332blessmail: Makefile src FRC
335 cd lib-src; $(MAKE) maybe-blessmail $(MFLAGS) \ 333 cd lib-src; $(MAKE) maybe-blessmail $(MFLAGS) \
336 MAKE='${MAKE}' archlibdir='$(archlibdir)' 334 MAKE='${MAKE}' archlibdir='$(archlibdir)'
337 335
338Makefile: $(srcdir)/Makefile.in config.status 336# We used to have one rule per */Makefile.in, but that leads to race
337# conditions with parallel makes, so let's assume that the time stamp on
338# ./Makefile is representative of the time stamp on all the other Makefiles.
339Makefile: config.status $(srcdir)/src/config.in \
340 $(srcdir)/Makefile.in \
341 $(srcdir)/src/Makefile.in \
342 $(srcdir)/lib-src/Makefile.in \
343 $(srcdir)/doc/emacs/Makefile.in \
344 $(srcdir)/doc/misc/Makefile.in \
345 $(srcdir)/doc/lispref/Makefile.in \
346 $(srcdir)/doc/lispintro/Makefile.in \
347 $(srcdir)/oldXMenu/Makefile.in \
348 $(srcdir)/lwlib/Makefile.in \
349 $(srcdir)/leim/Makefile.in \
350 $(srcdir)/lisp/Makefile.in
339 ./config.status 351 ./config.status
340 352
341config.status: ${srcdir}/configure ${srcdir}/lisp/version.el 353config.status: ${srcdir}/configure ${srcdir}/lisp/version.el
@@ -353,40 +365,6 @@ $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
353 rm -f $(srcdir)/src/stamp-h.in 365 rm -f $(srcdir)/src/stamp-h.in
354 echo timestamp > $(srcdir)/src/stamp-h.in 366 echo timestamp > $(srcdir)/src/stamp-h.in
355 367
356src/Makefile: $(srcdir)/src/Makefile.in config.status
357 ./config.status
358
359src/config.stamp: $(srcdir)/src/config.in config.status
360 ./config.status
361 touch src/config.stamp
362
363lib-src/Makefile: $(srcdir)/lib-src/Makefile.in config.status
364 ./config.status
365
366doc/emacs/Makefile: $(srcdir)/doc/emacs/Makefile.in config.status
367 ./config.status
368
369doc/misc/Makefile: $(srcdir)/doc/misc/Makefile.in config.status
370 ./config.status
371
372doc/lispref/Makefile: $(srcdir)/doc/lispref/Makefile.in config.status
373 ./config.status
374
375doc/lispintro/Makefile: $(srcdir)/doc/lispintro/Makefile.in config.status
376 ./config.status
377
378oldXMenu/Makefile: $(srcdir)/oldXMenu/Makefile.in config.status
379 ./config.status
380
381lwlib/Makefile: $(srcdir)/lwlib/Makefile.in config.status
382 ./config.status
383
384leim/Makefile: $(srcdir)/leim/Makefile.in config.status
385 ./config.status
386
387lisp/Makefile: $(srcdir)/lisp/Makefile.in config.status
388 ./config.status
389
390# ==================== Installation ==================== 368# ==================== Installation ====================
391 369
392## If we let lib-src do its own installation, that means we 370## If we let lib-src do its own installation, that means we
diff --git a/configure.in b/configure.in
index 944661707f9..7e90aa68cbf 100644
--- a/configure.in
+++ b/configure.in
@@ -3141,9 +3141,6 @@ if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
3141 echo source $srcdir/src/.gdbinit > src/.gdbinit 3141 echo source $srcdir/src/.gdbinit > src/.gdbinit
3142fi 3142fi
3143 3143
3144# This is how we know whether to re-run configure in certain cases.
3145touch src/config.stamp
3146
3147], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS"]) 3144], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS"])
3148 3145
3149m4_if(dnl Do not change this comment 3146m4_if(dnl Do not change this comment