AUTOHEADER = @AUTOHEADER@
ACLOCAL = @ACLOCAL@
-CC=@CC@
-CFLAGS=@CFLAGS@
-LDFLAGS=@LDFLAGS@
-CPPFLAGS=@CPPFLAGS@
EXEEXT=@EXEEXT@
### These help us choose version- and architecture-specific directories
# 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
# 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
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
### 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; \
### 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/)
### 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 \
### 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 ====================
### 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
### 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.
${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}
### 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
${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}
### 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 *~ \#*
# 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:
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
## 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
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
@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.
# * 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
echo "You must build Emacs to use this command"; \
exit 1; \
fi
- cd lisp && $(MAKE) $(MFLAGS) $@
+ cd lisp && $(MAKE) $@
# 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; \
-f custom-make-dependencies $$wins
$(lisp)/finder-inf.el:
- $(MAKE) $(MFLAGS) finder-data
+ $(MAKE) finder-data
finder-data: doit
$(setwins_finder); \
echo Directories: $$wins; \
--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,
# 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 \
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
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
.PHONY: leim semantic
leim:
- cd ../leim && $(MAKE) $(MFLAGS) all EMACS="$(EMACS)"
+ cd ../leim && $(MAKE) all EMACS="$(EMACS)"
# FIXME. Yuck.
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
# 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
.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.
$(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 \
## 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
-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
## 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.
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); \
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@