emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r114126: Makefile improvements.


From: Paul Eggert
Subject: [Emacs-diffs] trunk r114126: Makefile improvements.
Date: Wed, 04 Sep 2013 06:45:59 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114126
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Tue 2013-09-03 23:45:44 -0700
message:
  Makefile improvements.
  
  * Makefile.in (lib): Depend on am--refresh, to avoid a race.
  (src): Remove duplicate dependency on FRC.
  Invoke just one submake, not two.  Avoid the need for 'pwd'.
  * lwlib/Makefile.in (all): Put this first.  Don't use double-colon
  rules, as they are not portable according to POSIX.  Mark as phony.
  * oldXMenu/Makefile.in (all, tags): Don't use double-colon rules, as they
  are not portable according to POSIX.  Mark as phony.
  * src/Makefile.in (config.status): Don't use double-colon rules, as
  they are not portable according to POSIX.  Fix shell typo with `;
  I guess this rule has never been tested?
  (VCSWITNESS): New macro, to override any environment var.
modified:
  ChangeLog                      changelog-20091113204419-o5vbwnq5f7feedwu-1538
  Makefile.in                    makefile.in-20091113204419-o5vbwnq5f7feedwu-446
  lwlib/ChangeLog                changelog-20091113204419-o5vbwnq5f7feedwu-1447
  lwlib/Makefile.in              makefile.in-20091113204419-o5vbwnq5f7feedwu-662
  oldXMenu/ChangeLog             changelog-20091113204419-o5vbwnq5f7feedwu-1572
  oldXMenu/Makefile.in           
makefile.in-20091113204419-o5vbwnq5f7feedwu-1588
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/Makefile.in                makefile.in-20091113204419-o5vbwnq5f7feedwu-631
=== modified file 'ChangeLog'
--- a/ChangeLog 2013-09-02 07:01:53 +0000
+++ b/ChangeLog 2013-09-04 06:45:44 +0000
@@ -1,3 +1,10 @@
+2013-09-04  Paul Eggert  <address@hidden>
+
+       Makefile improvements.
+       * Makefile.in (lib): Depend on am--refresh, to avoid a race.
+       (src): Remove duplicate dependency on FRC.
+       Invoke just one submake, not two.  Avoid the need for 'pwd'.
+
 2013-09-02  Jan Djärv  <address@hidden>
 
        * configure.ac: Add ns_check_file.

=== modified file 'Makefile.in'
--- a/Makefile.in       2013-08-28 06:01:52 +0000
+++ b/Makefile.in       2013-09-04 06:45:44 +0000
@@ -352,9 +352,13 @@
          -e "/^.*#/s|@SRC@|$${w32srcdir}|g") &&                \
        ${srcdir}/build-aux/move-if-change epaths.h.$$$$ src/epaths.h
 
+# If lib/Makefile would build files in '.', then build them before
+# building 'lib', to avoid races with parallel makes.
+lib: am--refresh
+
 lib-src src: $(NTDIR) lib
 
-src:   lib-src FRC
+src: lib-src
 
 # We need to build `emacs' in `src' to compile the *.elc files in `lisp'
 # and `leim'.
@@ -376,18 +380,15 @@
 # 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.
 src: Makefile FRC
-       boot=bootstrap-emacs$(EXEEXT);                         \
-       if [ ! -x "src/$$boot" ]; then                                     \
-           cd $@; $(MAKE) all $(MFLAGS)                                   \
-             CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}'         \
-             LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"; \
-       fi;
-       if [ -r .bzr/checkout/dirstate ]; then                  \
-           vcswitness="`pwd`/.bzr/checkout/dirstate";  \
-       fi;                                                     \
-       cd $@; $(MAKE) all $(MFLAGS)                           \
-         CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
-         LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="" \
+       dirstate='.bzr/checkout/dirstate';                              \
+       vcswitness='$$(srcdir)/../'$$dirstate;                          \
+       [ -r "$(srcdir)/$$dirstate" ] || vcswitness='';                 \
+       cd $@ || exit;                                                  \
+       boot=bootstrap-emacs$(EXEEXT);                                  \
+       [ ! -x "$$boot" ] || boot='';                                   \
+       $(MAKE) all $(MFLAGS)                                           \
+         CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}'          \
+         LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"   \
          VCSWITNESS="$$vcswitness"
 
 blessmail: Makefile src FRC

=== modified file 'lwlib/ChangeLog'
--- a/lwlib/ChangeLog   2013-06-30 16:14:22 +0000
+++ b/lwlib/ChangeLog   2013-09-04 06:45:44 +0000
@@ -1,3 +1,9 @@
+2013-09-04  Paul Eggert  <address@hidden>
+
+       Makefile improvements.
+       * Makefile.in (all): Put this first.  Don't use double-colon
+       rules, as they are not portable according to POSIX.  Mark as phony.
+
 2013-06-30  Paul Eggert  <address@hidden>
 
        Fix minor problems found by static checking.

=== modified file 'lwlib/Makefile.in'
--- a/lwlib/Makefile.in 2013-07-23 22:57:17 +0000
+++ b/lwlib/Makefile.in 2013-09-04 06:45:44 +0000
@@ -59,11 +59,12 @@
   -Demacs -I../src \
   -I$(srcdir) -I$(srcdir)/../src -I../lib -I$(srcdir)/../lib
 
+all: liblw.a
+.PHONY: all
+
 .c.o:
        $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $<
 
-all:: liblw.a
-
 liblw.a: $(OBJS)
        rm -f $@
        $(AR) $(ARFLAGS) $@ $(OBJS)

=== modified file 'oldXMenu/ChangeLog'
--- a/oldXMenu/ChangeLog        2013-03-11 16:31:55 +0000
+++ b/oldXMenu/ChangeLog        2013-09-04 06:45:44 +0000
@@ -1,3 +1,9 @@
+2013-09-04  Paul Eggert  <address@hidden>
+
+       Makefile improvements.
+       * Makefile.in (all, tags): Don't use double-colon rules, as they
+       are not portable according to POSIX.  Mark as phony.
+
 2012-12-04  Paul Eggert  <address@hidden>
 
        Include <config.h> uniformly in oldXMenu sources.

=== modified file 'oldXMenu/Makefile.in'
--- a/oldXMenu/Makefile.in      2013-07-23 22:55:38 +0000
+++ b/oldXMenu/Makefile.in      2013-09-04 06:45:44 +0000
@@ -85,7 +85,8 @@
        SetSel.o \
       XDelAssoc.o XLookAssoc.o XCrAssoc.o XDestAssoc.o XMakeAssoc.o
 
-all:: libXMenu11.a
+all: libXMenu11.a
+.PHONY: all
 
 ALL_CFLAGS=$(C_SWITCH_SYSTEM) $(C_SWITCH_MACHINE) \
   $(C_SWITCH_X_SITE) \
@@ -139,5 +140,6 @@
        rm -f Makefile
 maintainer-clean: distclean
 
-tags::
+tags:
        $(TAGS) -t *.[ch]
+.PHONY: tags

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-09-04 04:02:56 +0000
+++ b/src/ChangeLog     2013-09-04 06:45:44 +0000
@@ -1,3 +1,11 @@
+2013-09-04  Paul Eggert  <address@hidden>
+
+       Makefile improvements.
+       * Makefile.in (config.status): Don't use double-colon rules, as
+       they are not portable according to POSIX.  Fix shell typo with `;
+       I guess this rule has never been tested?
+       (VCSWITNESS): New macro, to override any environment var.
+
 2013-09-04  Dmitry Antipov  <address@hidden>
 
        * xterm.h (struct x_display_info): Do not track X connection

=== modified file 'src/Makefile.in'
--- a/src/Makefile.in   2013-08-28 06:01:52 +0000
+++ b/src/Makefile.in   2013-09-04 06:45:44 +0000
@@ -538,14 +538,9 @@
 
 $(OLDXMENU): $(OLDXMENU_TARGET)
 
-../config.status:: epaths.in
-       @echo "The file epaths.h needs to be set up from epaths.in."
-       @echo "Please run the `configure' script again."
-       exit 1
-
-../config.status:: config.in
-       @echo "The file config.h needs to be set up from config.in."
-       @echo "Please run the `configure' script again."
+../config.status: config.in epaths.in
+       @echo "The file ${?:.in=.h} needs to be set up from $?."
+       @echo "Please run the 'configure' script again."
        exit 1
 
 doc.o: buildobj.h
@@ -658,6 +653,9 @@
 
 ## VCSWITNESS points to the file that holds info about the current checkout.
 ## We use it as a heuristic to decide when to rebuild loaddefs.el.
+## If empty it is ignored; the parent makefile can set it to some other value.
+VCSWITNESS =
+
 $(lispsource)/loaddefs.el: $(BOOTSTRAPEMACS) $(VCSWITNESS)
        cd ../lisp; $(MAKE) $(MFLAGS) autoloads EMACS=$(bootstrap_exe)
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]