* 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.
+2013-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <jan.h.d@swipnet.se>
* configure.ac: Add ns_check_file.
-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'.
# 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
+2013-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <eggert@cs.ucla.edu>
Fix minor problems found by static checking.
-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)
+2013-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <eggert@cs.ucla.edu>
Include <config.h> uniformly in oldXMenu sources.
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) \
rm -f Makefile
maintainer-clean: distclean
-tags::
+tags:
$(TAGS) -t *.[ch]
+.PHONY: tags
+2013-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <dmantipov@yandex.ru>
* xterm.h (struct x_display_info): Do not track X connection
$(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
## 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)