1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-26 19:18:50 +00:00

With GNU make, MFLAGS is not needed

* Makefile.in (CC, CFLAGS, LDFLAGS, CPPFLAGS, abs_top_srcdir):
Remove, no longer used.
(lib, lib-src, lisp, nt, src, blessmail, install-arch-dep)
(install-nt, install-strip, uninstall, uninstall-nt)
(mostlyclean, clean, distclean, bootstrap-clean)
(maintainer-clean, extraclean, TAGS, tags, check, $(DOCS)):
($(INSTALL_DOC), $(UNINSTALL_DOC), info, bootstrap, check-declare):
GNU make automatically passes command-line arguments to sub-makes.

* admin/unidata/Makefile.in (${DSTDIR}/charprop.el):
GNU make automatically passes command-line arguments to sub-makes.

* lib-src/Makefile.in (../lib/libgnu.a):
GNU make automatically passes command-line arguments to sub-makes.

* lisp/Makefile.in ($(lisp)/cus-load.el, $(lisp)/finder-inf.el)
(autoloads, $(lisp)/subdirs.el, compile-main, leim, semantic, compile)
(compile-always): GNU make automatically passes
command-line arguments to sub-makes.

* lwlib/Makefile.in ($(globals_h)):
GNU make automatically passes command-line arguments to sub-makes.

* src/Makefile.in ($(leimdir)/leim-list.el, $(srcdir)/macuvs.h)
($(lispsource)/international/charprop.el)
($(libsrc)/make-docfile$(EXEEXT), $(lwlibdir)/liblw.a)
($(oldXMenudir)/libXMenu11.a, ns-app, .el.elc)
($(lispsource)/loaddefs.el, bootstrap-emacs$(EXEEXT)):
GNU make automatically passes command-line arguments to sub-makes.

* test/automated/Makefile.in (compile-main):
GNU make automatically passes command-line arguments to sub-makes.
This commit is contained in:
Glenn Morris 2014-06-13 19:05:00 -04:00
parent d736dd5630
commit f9d80c5110
14 changed files with 140 additions and 129 deletions

View File

@ -1,3 +1,14 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* Makefile.in (CC, CFLAGS, LDFLAGS, CPPFLAGS, abs_top_srcdir):
Remove, no longer used.
(lib, lib-src, lisp, nt, src, blessmail, install-arch-dep)
(install-nt, install-strip, uninstall, uninstall-nt)
(mostlyclean, clean, distclean, bootstrap-clean)
(maintainer-clean, extraclean, TAGS, tags, check, $(DOCS)):
($(INSTALL_DOC), $(UNINSTALL_DOC), info, bootstrap, check-declare):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-11 Paul Eggert <eggert@cs.ucla.edu>
Use a shell function in configure.ac to cut down on code duplication.

View File

@ -81,10 +81,6 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
ACLOCAL = @ACLOCAL@
CC=@CC@
CFLAGS=@CFLAGS@
LDFLAGS=@LDFLAGS@
CPPFLAGS=@CPPFLAGS@
EXEEXT=@EXEEXT@
### These help us choose version- and architecture-specific directories
@ -170,8 +166,6 @@ bitmapdir=@bitmapdir@
# We use $(srcdir) explicitly in dependencies so as not to depend on VPATH.
srcdir=@srcdir@
abs_srcdir=@abs_srcdir@
# MinGW CPPFLAGS may use this.
abs_top_srcdir=@abs_top_srcdir@
# Where the manpage source files are kept.
mansrcdir=$(srcdir)/doc/man
@ -364,9 +358,7 @@ lisp: src
# These targets should be "${SUBDIR} without `src'".
lib lib-src lisp nt: Makefile
cd $@ && $(MAKE) all $(MFLAGS) \
CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
LDFLAGS='${LDFLAGS}' MAKE='${MAKE}'
cd $@ && $(MAKE) all
# Pass to src/Makefile.in an additional BOOTSTRAPEMACS variable which
# is either set to bootstrap-emacs (in case bootstrap-emacs has not been
@ -389,14 +381,10 @@ src: Makefile
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"
$(MAKE) all BOOTSTRAPEMACS="$$boot" VCSWITNESS="$$vcswitness"
blessmail: Makefile src
cd lib-src && $(MAKE) maybe-blessmail $(MFLAGS) \
MAKE='${MAKE}' archlibdir='$(archlibdir)'
cd lib-src && $(MAKE) maybe-blessmail
# We used to have one rule per */Makefile.in, but that leads to race
# conditions with parallel makes, so let's assume that the time stamp on
@ -489,11 +477,7 @@ write_subdir=if [ -f "$${subdir}/subdirs.el" ]; \
### Lisp files and DOC file to work properly.
install-arch-dep: src install-arch-indep install-etcdoc install-$(NTDIR)
umask 022; ${MKDIR_P} "$(DESTDIR)${bindir}"
cd lib-src && \
$(MAKE) install $(MFLAGS) prefix="${prefix}" \
exec_prefix="${exec_prefix}" bindir="${bindir}" \
libexecdir="${libexecdir}" archlibdir="${archlibdir}" \
INSTALL_STRIP=${INSTALL_STRIP}
cd lib-src && $(MAKE) install
if test "${ns_self_contained}" = "no"; then \
${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} "$(DESTDIR)${bindir}/$(EMACSFULL)" || exit 1 ; \
chmod 1755 "$(DESTDIR)${bindir}/$(EMACSFULL)" || true; \
@ -511,12 +495,7 @@ install-arch-dep: src install-arch-indep install-etcdoc install-$(NTDIR)
### in nt/, and its Posix do-nothing shadow.
install-:
install-nt:
cd $(NTDIR) && \
$(MAKE) install $(MFLAGS) prefix="${prefix}" \
exec_prefix="${exec_prefix}" bindir="${bindir}" \
libexecdir="${libexecdir}" archlibdir="${archlibdir}" \
datadir="${datadir}" \
INSTALL_STRIP=${INSTALL_STRIP}
cd $(NTDIR) && $(MAKE) install
## In the share directory, we are deleting:
## applications (with emacs.desktop, also found in etc/)
@ -729,19 +708,14 @@ install-etc:
### Build Emacs and install it, stripping binaries while installing them.
install-strip:
$(MAKE) $(MFLAGS) INSTALL_STRIP=-s install
$(MAKE) INSTALL_STRIP=-s install
### Delete all the installed files that the `install' target would
### create (but not the noninstalled files such as `make all' would create).
###
### Don't delete the lisp and etc directories if they're in the source tree.
uninstall: uninstall-$(NTDIR) uninstall-doc
cd lib-src && \
$(MAKE) $(MFLAGS) uninstall \
prefix="${prefix}" exec_prefix="${exec_prefix}" \
bindir="${bindir}" libexecdir="${libexecdir}" \
archlibdir="${archlibdir}"
cd lib-src && $(MAKE) uninstall
-unset CDPATH; \
for dir in "$(DESTDIR)${lispdir}" "$(DESTDIR)${etcdir}" ; do \
if [ -d "$${dir}" ]; then \
@ -790,11 +764,7 @@ uninstall: uninstall-$(NTDIR) uninstall-doc
### in nt/, and its Posix do-nothing shadow.
uninstall-:
uninstall-nt:
cd $(NTDIR) && \
$(MAKE) $(MFLAGS) uninstall \
prefix="${prefix}" exec_prefix="${exec_prefix}" \
bindir="${bindir}" libexecdir="${libexecdir}" \
archlibdir="${archlibdir}"
cd $(NTDIR) && $(MAKE) uninstall
# ==================== Cleaning up and miscellanea ====================
@ -806,16 +776,16 @@ uninstall-nt:
### target for GCC does not delete `libgcc.a', because recompiling it
### is rarely necessary and takes a lot of time.
mostlyclean:
cd src && $(MAKE) $(MFLAGS) mostlyclean
cd oldXMenu && $(MAKE) $(MFLAGS) mostlyclean
cd lwlib && $(MAKE) $(MFLAGS) mostlyclean
cd lib && $(MAKE) $(MFLAGS) mostlyclean
cd lib-src && $(MAKE) $(MFLAGS) mostlyclean
cd nt && $(MAKE) $(MFLAGS) mostlyclean
-cd doc/emacs && $(MAKE) $(MFLAGS) mostlyclean
-cd doc/misc && $(MAKE) $(MFLAGS) mostlyclean
-cd doc/lispref && $(MAKE) $(MFLAGS) mostlyclean
-cd doc/lispintro && $(MAKE) $(MFLAGS) mostlyclean
cd src && $(MAKE) mostlyclean
cd oldXMenu && $(MAKE) mostlyclean
cd lwlib && $(MAKE) mostlyclean
cd lib && $(MAKE) mostlyclean
cd lib-src && $(MAKE) mostlyclean
cd nt && $(MAKE) mostlyclean
-cd doc/emacs && $(MAKE) mostlyclean
-cd doc/misc && $(MAKE) mostlyclean
-cd doc/lispref && $(MAKE) mostlyclean
-cd doc/lispintro && $(MAKE) mostlyclean
### `clean'
### Delete all files from the current directory that are normally
@ -827,17 +797,17 @@ mostlyclean:
### Delete `.dvi' files here if they are not part of the distribution.
clean:
-rm -f etc/emacs.tmpdesktop
cd src && $(MAKE) $(MFLAGS) clean
cd oldXMenu && $(MAKE) $(MFLAGS) clean
cd lwlib && $(MAKE) $(MFLAGS) clean
cd lib && $(MAKE) $(MFLAGS) clean
cd lib-src && $(MAKE) $(MFLAGS) clean
cd nt && $(MAKE) $(MFLAGS) clean
-cd doc/emacs && $(MAKE) $(MFLAGS) clean
-cd doc/misc && $(MAKE) $(MFLAGS) clean
-cd doc/lispref && $(MAKE) $(MFLAGS) clean
-cd doc/lispintro && $(MAKE) $(MFLAGS) clean
cd nextstep && $(MAKE) $(MFLAGS) clean
cd src && $(MAKE) clean
cd oldXMenu && $(MAKE) clean
cd lwlib && $(MAKE) clean
cd lib && $(MAKE) clean
cd lib-src && $(MAKE) clean
cd nt && $(MAKE) clean
-cd doc/emacs && $(MAKE) clean
-cd doc/misc && $(MAKE) clean
-cd doc/lispref && $(MAKE) clean
-cd doc/lispintro && $(MAKE) clean
cd nextstep && $(MAKE) clean
### `bootclean'
### Delete all files that need to be remade for a clean bootstrap.
@ -853,21 +823,21 @@ top_distclean=\
${top_bootclean}; \
rm -f config.status config.log~ Makefile stamp-h1 ${SUBDIR_MAKEFILES}
distclean:
cd src && $(MAKE) $(MFLAGS) distclean
cd oldXMenu && $(MAKE) $(MFLAGS) distclean
cd lwlib && $(MAKE) $(MFLAGS) distclean
cd lib && $(MAKE) $(MFLAGS) distclean
cd lib-src && $(MAKE) $(MFLAGS) distclean
cd nt && $(MAKE) $(MFLAGS) distclean
cd doc/emacs && $(MAKE) $(MFLAGS) distclean
cd doc/misc && $(MAKE) $(MFLAGS) distclean
cd doc/lispref && $(MAKE) $(MFLAGS) distclean
cd doc/lispintro && $(MAKE) $(MFLAGS) distclean
cd leim && $(MAKE) $(MFLAGS) distclean
cd lisp && $(MAKE) $(MFLAGS) distclean
cd nextstep && $(MAKE) $(MFLAGS) distclean
cd src && $(MAKE) distclean
cd oldXMenu && $(MAKE) distclean
cd lwlib && $(MAKE) distclean
cd lib && $(MAKE) distclean
cd lib-src && $(MAKE) distclean
cd nt && $(MAKE) distclean
cd doc/emacs && $(MAKE) distclean
cd doc/misc && $(MAKE) distclean
cd doc/lispref && $(MAKE) distclean
cd doc/lispintro && $(MAKE) distclean
cd leim && $(MAKE) distclean
cd lisp && $(MAKE) distclean
cd nextstep && $(MAKE) distclean
for dir in test/automated admin/grammars admin/unidata; do \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) $(MFLAGS) distclean); \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) distclean); \
done
${top_distclean}
@ -875,21 +845,21 @@ distclean:
### Delete everything that can be reconstructed by `make' and that
### needs to be deleted in order to force a bootstrap from a clean state.
bootstrap-clean:
cd src && $(MAKE) $(MFLAGS) bootstrap-clean
cd oldXMenu && $(MAKE) $(MFLAGS) maintainer-clean
cd lwlib && $(MAKE) $(MFLAGS) maintainer-clean
cd lib && $(MAKE) $(MFLAGS) maintainer-clean
cd lib-src && $(MAKE) $(MFLAGS) maintainer-clean
cd nt && $(MAKE) $(MFLAGS) maintainer-clean
-cd doc/emacs && $(MAKE) $(MFLAGS) maintainer-clean
-cd doc/misc && $(MAKE) $(MFLAGS) maintainer-clean
-cd doc/lispref && $(MAKE) $(MFLAGS) maintainer-clean
-cd doc/lispintro && $(MAKE) $(MFLAGS) maintainer-clean
cd leim && $(MAKE) $(MFLAGS) bootstrap-clean
cd lisp && $(MAKE) $(MFLAGS) bootstrap-clean
cd nextstep && $(MAKE) $(MFLAGS) maintainer-clean
cd src && $(MAKE) bootstrap-clean
cd oldXMenu && $(MAKE) maintainer-clean
cd lwlib && $(MAKE) maintainer-clean
cd lib && $(MAKE) maintainer-clean
cd lib-src && $(MAKE) maintainer-clean
cd nt && $(MAKE) maintainer-clean
-cd doc/emacs && $(MAKE) maintainer-clean
-cd doc/misc && $(MAKE) maintainer-clean
-cd doc/lispref && $(MAKE) maintainer-clean
-cd doc/lispintro && $(MAKE) maintainer-clean
cd leim && $(MAKE) bootstrap-clean
cd lisp && $(MAKE) bootstrap-clean
cd nextstep && $(MAKE) maintainer-clean
for dir in test/automated admin/grammars admin/unidata; do \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) $(MFLAGS) bootstrap-clean); \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) bootstrap-clean); \
done
[ ! -f config.log ] || mv -f config.log config.log~
rm -rf ${srcdir}/info
@ -910,11 +880,11 @@ top_maintainer_clean=\
${top_distclean}; \
rm -fr autom4te.cache
maintainer-clean: bootstrap-clean
cd src && $(MAKE) $(MFLAGS) maintainer-clean
cd leim && $(MAKE) $(MFLAGS) maintainer-clean
cd lisp && $(MAKE) $(MFLAGS) maintainer-clean
cd src && $(MAKE) maintainer-clean
cd leim && $(MAKE) maintainer-clean
cd lisp && $(MAKE) maintainer-clean
for dir in test/automated admin/grammars admin/unidata; do \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) $(MFLAGS) maintainer-clean); \
[ ! -d $$dir ] || (cd $$dir && $(MAKE) maintainer-clean); \
done
${top_maintainer_clean}
@ -923,7 +893,7 @@ maintainer-clean: bootstrap-clean
### the coding standards seem to come from. It's like distclean, but
### it deletes backup and autosave files too.
extraclean:
for i in ${SUBDIR}; do (cd $$i; $(MAKE) $(MFLAGS) extraclean); done
for i in ${SUBDIR}; do (cd $$i; $(MAKE) extraclean); done
${top_maintainer_clean}
-rm -f config-tmp-*
-rm -f *~ \#*
@ -932,14 +902,14 @@ extraclean:
# even when the build directory and source dir are different.
.PHONY: TAGS tags
TAGS tags: lib lib-src src
cd src; $(MAKE) $(MFLAGS) tags
cd src && $(MAKE) tags
check: all
@if test ! -d test/automated; then \
echo "You do not seem to have the test/ directory."; \
echo "Maybe you are using a release tarfile, rather than a repository checkout."; \
else \
cd test/automated && $(MAKE) $(MFLAGS) check; \
cd test/automated && $(MAKE) check; \
fi
dist:
@ -953,7 +923,7 @@ PSS = lispref-ps lispintro-ps emacs-ps misc-ps
DOCS = $(DVIS) $(HTMLS) $(INFOS) $(PDFS) $(PSS)
$(DOCS):
t=$@; IFS=-; set $$t; IFS=; cd doc/$$1 && $(MAKE) $(MFLAGS) $$2
t=$@; IFS=-; set $$t; IFS=; cd doc/$$1 && $(MAKE) $$2
.PHONY: $(DOCS) docs pdf ps
.PHONY: info dvi dist check html info-real info-dir check-info
@ -1002,7 +972,7 @@ INSTALL_DOC = $(INSTALL_DVI) $(INSTALL_HTML) $(INSTALL_PDF) $(INSTALL_PS)
## Install non .info forms of the documentation.
## TODO add etc/refcards.
$(INSTALL_DOC):
t=$@; IFS=-; set $$t; IFS=; cd doc/$$2 && $(MAKE) $(MFLAGS) $$1-$$3
t=$@; IFS=-; set $$t; IFS=; cd doc/$$2 && $(MAKE) $$1-$$3
.PHONY: $(INSTALL_DOC) install-doc
.PHONY: install-dvi install-html install-pdf install-ps
@ -1025,7 +995,7 @@ UNINSTALL_PS = uninstall-emacs-ps uninstall-lispref-ps \
UNINSTALL_DOC = $(UNINSTALL_DVI) $(UNINSTALL_HTML) $(UNINSTALL_PDF) $(UNINSTALL_PS)
$(UNINSTALL_DOC):
t=$@; IFS=-; set $$t; IFS=; cd doc/$$2 && $(MAKE) $(MFLAGS) $$1-$$3
t=$@; IFS=-; set $$t; IFS=; cd doc/$$2 && $(MAKE) $$1-$$3
.PHONY: $(UNINSTALL_DOC) uninstall-doc
.PHONY: uninstall-dvi uninstall-html uninstall-pdf uninstall-ps
@ -1052,7 +1022,7 @@ info:
@if test "$(HAVE_MAKEINFO)" = "no"; then \
echo "Configured --without-makeinfo, not building manuals" ; \
else \
$(MAKE) $(MFLAGS) info-real info-dir; \
$(MAKE) info-real info-dir; \
fi
## build-aux/make-info-dir expects only certain dircategories.
@ -1092,8 +1062,8 @@ check-info: info
# * Do the actual build.
bootstrap: bootstrap-clean
cd $(srcdir) && ./autogen.sh
$(MAKE) $(MFLAGS) MAKEFILE_NAME=force-Makefile force-Makefile
$(MAKE) $(MFLAGS) all
$(MAKE) MAKEFILE_NAME=force-Makefile force-Makefile
$(MAKE) all
.PHONY: check-declare
@ -1102,4 +1072,4 @@ check-declare:
echo "You must build Emacs to use this command"; \
exit 1; \
fi
cd lisp && $(MAKE) $(MFLAGS) $@
cd lisp && $(MAKE) $@

View File

@ -1,3 +1,8 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* unidata/Makefile.in (${DSTDIR}/charprop.el):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
Include sources used to create macuvs.h.

View File

@ -52,7 +52,7 @@ compile: ${srcdir}/unidata-gen.elc
## uni-*.el files just because .elc is missing.
## Same for UnicodeData.txt v unidata.txt.
${DSTDIR}/charprop.el: ${srcdir}/unidata-gen.el ${srcdir}/UnicodeData.txt
${MAKE} ${MFLAGS} compile unidata.txt EMACS="${EMACS}"
${MAKE} compile unidata.txt EMACS="${EMACS}"
-if [ -f "$@" ]; then \
cd ${DSTDIR} && chmod +w charprop.el `sed -n 's/^;; FILE: //p' < charprop.el`; \
fi

View File

@ -1,3 +1,8 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* Makefile.in (../lib/libgnu.a):
GNU make automatically passes command-line arguments to sub-makes.
2014-05-26 Eli Zaretskii <eliz@gnu.org>
* ntlib.h (lseek): Don't redirect to _lseek.

View File

@ -304,7 +304,7 @@ TAGS: etags${EXEEXT}
etags *.[ch]
../lib/libgnu.a: $(config_h)
cd ../lib && $(MAKE) $(MFLAGS) libgnu.a
cd ../lib && $(MAKE) libgnu.a
regex.o: $(srcdir)/../src/regex.c $(srcdir)/../src/regex.h $(config_h)
${CC} -c ${CPP_CFLAGS} ${srcdir}/../src/regex.c

View File

@ -1,5 +1,10 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* Makefile.in ($(lisp)/cus-load.el, $(lisp)/finder-inf.el)
(autoloads, $(lisp)/subdirs.el, compile-main, leim, semantic, compile)
(compile-always): GNU make automatically passes
command-line arguments to sub-makes.
* calendar/calendar.el (calendar-generate-window):
Remove pointless call to font-lock-fontify-buffer.

View File

@ -168,7 +168,7 @@ doit:
# since they will never contain any useful information
# (see finder-no-scan-regexp and custom-dependencies-no-scan-regexp).
$(lisp)/cus-load.el:
$(MAKE) $(MFLAGS) custom-deps
$(MAKE) custom-deps
custom-deps: doit
$(setwins_almost); \
echo Directories: $$wins; \
@ -177,7 +177,7 @@ custom-deps: doit
-f custom-make-dependencies $$wins
$(lisp)/finder-inf.el:
$(MAKE) $(MFLAGS) finder-data
$(MAKE) finder-data
finder-data: doit
$(setwins_finder); \
echo Directories: $$wins; \
@ -200,7 +200,7 @@ autoloads: $(LOADDEFS) doit
--eval '(setq autoload-builtin-package-versions t)' \
--eval '(setq generated-autoload-file (expand-file-name (unmsys--file-name "$(srcdir)/loaddefs.el")))' \
-f batch-update-autoloads $$wins
$(MAKE) $(MFLAGS) obsolete-autoloads
$(MAKE) obsolete-autoloads
# The obsolete/ subdirectory is normally not scanned for autoloads.
# Sometimes we still want to autoload something from that directory,
@ -215,7 +215,7 @@ obsolete-autoloads: ${lisp}/obsolete/*.el
# This is required by the bootstrap-emacs target in ../src/Makefile, so
# we know that if we have an emacs executable, we also have a subdirs.el.
$(lisp)/subdirs.el:
$(MAKE) $(MFLAGS) update-subdirs
$(MAKE) update-subdirs
update-subdirs: doit
$(setwins_for_subdirs); \
for file in $$wins; do \
@ -307,7 +307,7 @@ compile-onefile:
compile-first: $(COMPILE_FIRST)
# In `compile-main' we could directly do
# ... | xargs $(MAKE) $(MFLAGS) EMACS="$(EMACS)"
# ... | xargs $(MAKE) EMACS="$(EMACS)"
# and it works, but it generates a lot of messages like
# make[2]: gnus/gnus-mlspl.elc is up to date.
# so instead, we use "xargs echo" to split the list of file into manageable
@ -331,7 +331,7 @@ compile-main: leim semantic compile-clean
echo "$${el}c"; \
done | xargs $(XARGS_LIMIT) echo) | \
while read chunk; do \
$(MAKE) $(MFLAGS) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
$(MAKE) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
done
.PHONY: compile-clean
@ -348,7 +348,7 @@ compile-clean:
.PHONY: leim semantic
leim:
cd ../leim && $(MAKE) $(MFLAGS) all EMACS="$(EMACS)"
cd ../leim && $(MAKE) all EMACS="$(EMACS)"
# FIXME. Yuck.
semantic:
@ -356,7 +356,7 @@ semantic:
.*) EMACS="../${EMACS}" ;; \
*) EMACS="${EMACS}" ;; \
esac; \
cd ../admin/grammars && $(MAKE) $(MFLAGS) all EMACS="$${EMACS}"
cd ../admin/grammars && $(MAKE) all EMACS="$${EMACS}"
# Compile all Lisp files, but don't recompile those that are up to
# date. Some .el files don't get compiled because they set the
@ -365,14 +365,14 @@ semantic:
# Explicitly pass EMACS (sometimes ../src/bootstrap-emacs) to those
# sub-makes that run rules that use it, for the sake of some non-GNU makes.
compile: $(LOADDEFS) autoloads compile-first
$(MAKE) $(MFLAGS) compile-main EMACS="$(EMACS)"
$(MAKE) compile-main EMACS="$(EMACS)"
# Compile all Lisp files. This is like `compile' but compiles files
# unconditionally. Some files don't actually get compiled because they
# set the local variable no-byte-compile.
compile-always: doit
cd $(lisp) && rm -f *.elc */*.elc */*/*.elc */*/*/*.elc
$(MAKE) $(MFLAGS) compile EMACS="$(EMACS)"
$(MAKE) compile EMACS="$(EMACS)"
.PHONY: backup-compiled-files compile-after-backup

View File

@ -1,3 +1,8 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* Makefile.in ($(globals_h)):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-04 Dmitry Antipov <dmantipov@yandex.ru>
* lwlib-widget.h (widget_value) [USE_X_TOOLKIT]: Use X toolkit

View File

@ -80,7 +80,7 @@ globals_h = ../src/globals.h
src_h = $(config_h) $(lisp_h) $(globals_h)
$(globals_h):
cd ../src && $(MAKE) $(MFLAGS) globals.h
cd ../src && $(MAKE) globals.h
lwlib-utils.o: $(src_h) lwlib-utils.c lwlib-utils.h lwlib.h
lwlib.o: $(src_h) lwlib.c lwlib.h lwlib-int.h lwlib-utils.h \

View File

@ -1,3 +1,12 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* Makefile.in ($(leimdir)/leim-list.el, $(srcdir)/macuvs.h)
($(lispsource)/international/charprop.el)
($(libsrc)/make-docfile$(EXEEXT), $(lwlibdir)/liblw.a)
($(oldXMenudir)/libXMenu11.a, ns-app, .el.elc)
($(lispsource)/loaddefs.el, bootstrap-emacs$(EXEEXT)):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-13 Paul Eggert <eggert@cs.ucla.edu>
Avoid hangs in accept-process-output (Bug#17647).

View File

@ -414,11 +414,11 @@ all: emacs$(EXEEXT) $(OTHER_FILES)
.PHONY: all
$(leimdir)/leim-list.el: bootstrap-emacs$(EXEEXT)
cd ../leim && $(MAKE) $(MFLAGS) leim-list.el EMACS="$(bootstrap_exe)"
cd ../leim && $(MAKE) leim-list.el EMACS="$(bootstrap_exe)"
$(srcdir)/macuvs.h $(lispsource)/international/charprop.el: \
bootstrap-emacs$(EXEEXT)
cd ../admin/unidata && $(MAKE) $(MFLAGS) all EMACS="../$(bootstrap_exe)"
cd ../admin/unidata && $(MAKE) all EMACS="../$(bootstrap_exe)"
## The dumped Emacs is as functional and more efficient than
## bootstrap-emacs, so we replace the latter with the former.
@ -459,7 +459,7 @@ $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(obj) $(lisp)
$(libsrc)/make-docfile -a $(etc)/DOC -d $(lispsource) `sed -n -e 's| \\\\||' -e 's|^[ ]*$$(lispsource)/||p' $(srcdir)/lisp.mk`
$(libsrc)/make-docfile$(EXEEXT):
cd $(libsrc); $(MAKE) $(MFLAGS) make-docfile$(EXEEXT)
cd $(libsrc); $(MAKE) make-docfile$(EXEEXT)
buildobj.h: Makefile
for i in $(ALLOBJS); do \
@ -499,13 +499,9 @@ temacs$(EXEEXT): $(LIBXMENU) $(ALLOBJS) \
## The following oldxmenu-related rules are only (possibly) used if
## HAVE_X11 && !USE_GTK, but there is no harm in always defining them.
$(lwlibdir)/liblw.a: $(config_h) globals.h lisp.h FORCE
cd $(lwlibdir) && \
$(MAKE) $(MFLAGS) CC='$(CC)' CFLAGS='$(CFLAGS)' MAKE='$(MAKE)' \
liblw.a
cd $(lwlibdir) && $(MAKE) liblw.a
$(oldXMenudir)/libXMenu11.a: FORCE
cd $(oldXMenudir) && \
$(MAKE) $(MFLAGS) CC='$(CC)' CFLAGS='$(CFLAGS)' MAKE='$(MAKE)' \
libXMenu11.a
cd $(oldXMenudir) && $(MAKE) libXMenu11.a
FORCE:
.PHONY: FORCE
@ -523,7 +519,7 @@ emacs.res: $(ntsource)/emacs.rc \
-o $@ $(ntsource)/emacs.rc
ns-app: emacs$(EXEEXT)
cd ../nextstep && $(MAKE) $(MFLAGS) all
cd ../nextstep && $(MAKE) all
.PHONY: mostlyclean clean bootstrap-clean distclean maintainer-clean
.PHONY: versionclean extraclean
@ -621,7 +617,7 @@ tags: TAGS ../lisp/TAGS $(lwlibdir)/TAGS
## separately below.
## With GNU Make, we would just say "%.el : %.elc $(BOOTSTRAPEMACS)"
.el.elc:
@cd ../lisp; $(MAKE) $(MFLAGS) compile-onefile \
@cd ../lisp && $(MAKE) compile-onefile \
THEFILE=$< EMACS="$(bootstrap_exe)"
## Since the .el.elc rule cannot specify an extra dependency, we do it here.
@ -633,12 +629,12 @@ $(lisp): $(BOOTSTRAPEMACS)
VCSWITNESS =
$(lispsource)/loaddefs.el: $(BOOTSTRAPEMACS) $(VCSWITNESS)
cd ../lisp; $(MAKE) $(MFLAGS) autoloads EMACS="$(bootstrap_exe)"
cd ../lisp && $(MAKE) autoloads EMACS="$(bootstrap_exe)"
## Dump an Emacs executable named bootstrap-emacs containing the
## files from loadup.el in source form.
bootstrap-emacs$(EXEEXT): temacs$(EXEEXT)
cd ../lisp; $(MAKE) $(MFLAGS) update-subdirs
cd ../lisp && $(MAKE) update-subdirs
if test "$(CANNOT_DUMP)" = "yes"; then \
rm -f bootstrap-emacs$(EXEEXT); \
ln temacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \
@ -648,7 +644,7 @@ bootstrap-emacs$(EXEEXT): temacs$(EXEEXT)
mv -f emacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \
fi
@: Compile some files earlier to speed up further compilation.
cd ../lisp; $(MAKE) $(MFLAGS) compile-first EMACS="$(bootstrap_exe)"
cd ../lisp && $(MAKE) compile-first EMACS="$(bootstrap_exe)"
## Insert either autodeps.mk (if AUTO_DEPEND), else deps.mk.
@deps_frag@

View File

@ -1,3 +1,8 @@
2014-06-13 Glenn Morris <rgm@gnu.org>
* automated/Makefile.in (compile-main):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-05 Michal Nazarewicz <mina86@mina86.com>
* automated/tildify-tests.el (tildify-test--test): Optimise the test

View File

@ -84,7 +84,7 @@ compile-main: compile-clean
echo "$${el}c"; \
done | xargs $(XARGS_LIMIT) echo | \
while read chunk; do \
$(MAKE) $(MFLAGS) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
$(MAKE) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
done
# Erase left-over .elc files that do not have a corresponding .el file.