# DIST: make most of the changes to this file you might want, so try
# DIST: that first.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-# 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-# Free Software Foundation, Inc.
+# Copyright (C) 1992-2011 Free Software Foundation, Inc.
# This file is part of GNU Emacs.
$(gnulib_srcdir):
git clone git://git.savannah.gnu.org/gnulib.git $@
+# A shorter name that satisfies MS-DOS 8+3 constraints.
+DOS_gnulib_comp.m4 = gl-comp.m4
+
# Update modules from gnulib, for maintainers, who should have it in
# $(gnulib_srcdir) (relative to $(srcdir) and should have build tools
# as per $(gnulib_srcdir)/DEPENDENCIES.
-GNULIB_MODULES = dtoastr getopt-gnu mktime
+GNULIB_MODULES = \
+ careadlinkat crypto/md5 dtoastr filemode getloadavg getopt-gnu \
+ ignore-value intprops lstat mktime readlink \
+ socklen stdarg stdio strftime strtoumax symlink sys_stat
GNULIB_TOOL_FLAGS = \
- --import --no-changelog --no-vc-files --makefile-name=gnulib.mk
+ --conditional-dependencies --import --no-changelog --no-vc-files \
+ --makefile-name=gnulib.mk
sync-from-gnulib: $(gnulib_srcdir)
+ -cd $(srcdir)/m4 && cp $(DOS_gnulib_comp.m4) gnulib-comp.m4
cd $(srcdir) && \
$(gnulib_srcdir)/gnulib-tool $(GNULIB_TOOL_FLAGS) $(GNULIB_MODULES)
+ cd $(srcdir)/m4 && rm gnulib-cache.m4 warn-on-use.m4
+ cd $(srcdir)/m4 && mv gnulib-comp.m4 $(DOS_gnulib_comp.m4)
cp $(gnulib_srcdir)/build-aux/texinfo.tex $(srcdir)/doc/misc
cp \
- $(gnulib_srcdir)/build-aux/config.sub \
- $(gnulib_srcdir)/build-aux/config.guess \
- $(gnulib_srcdir)/build-aux/install-sh \
- $(gnulib_srcdir)/build-aux/mkinstalldirs \
$(gnulib_srcdir)/build-aux/move-if-change \
$(srcdir)
- cd $(srcdir) && autoreconf -I m4
+ cd $(srcdir) && autoreconf -i -I m4
.PHONY: sync-from-gnulib
# These targets should be "${SUBDIR} without `src'".
LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"; \
fi;
if [ -r .bzr/checkout/dirstate ]; then \
- vcswitness="$$(pwd)/.bzr/checkout/dirstate"; \
+ vcswitness="`pwd`/.bzr/checkout/dirstate"; \
fi; \
cd $@; $(MAKE) all $(MFLAGS) \
CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
$(srcdir)/test/automated/Makefile.in
./config.status
+# Don't erase config.status if make is interrupted while refreshing it.
+.PRECIOUS: config.status
+
config.status: ${srcdir}/configure ${srcdir}/lisp/version.el
- ./config.status --recheck
+ if [ -x ./config.status ]; then \
+ ./config.status --recheck; \
+ else \
+ ./configure; \
+ fi
AUTOCONF_INPUTS = @MAINT@ $(srcdir)/configure.in $(srcdir)/aclocal.m4
$(srcdir)/configure: $(AUTOCONF_INPUTS)
cd ${srcdir} && autoconf
-ACLOCAL_INPUTS = @MAINT@ $(srcdir)/m4/gnulib-comp.m4
+ACLOCAL_INPUTS = @MAINT@ $(srcdir)/m4/$(DOS_gnulib_comp.m4)
$(srcdir)/aclocal.m4: $(ACLOCAL_INPUTS)
cd $(srcdir) && aclocal -I m4
-AUTOMAKE_INPUTS = @MAINT@ $(srcdir)/aclocal.m4 $(srcdir)/lib/Makefile.am
+AUTOMAKE_INPUTS = @MAINT@ $(srcdir)/aclocal.m4 $(srcdir)/lib/Makefile.am $(srcdir)/lib/gnulib.mk
$(srcdir)/lib/Makefile.in: $(AUTOMAKE_INPUTS)
cd $(srcdir) && automake --gnu -a -c lib/Makefile
am--refresh: $(srcdir)/aclocal.m4 $(srcdir)/configure $(srcdir)/src/config.in
fi; \
cd ${srcdir}/info ; \
for elt in $(INFO_FILES); do \
- test "$(HAVE_MAKEINFO)" = "no" && ! test -e $$elt && continue; \
+ test "$(HAVE_MAKEINFO)" = "no" && test ! -f $$elt && continue; \
for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \
${INSTALL_DATA} $$f $(DESTDIR)${infodir}/$$f; \
chmod a+r $(DESTDIR)${infodir}/$$f; \
if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd $(DESTDIR)${infodir} && /bin/pwd)` ]; \
then \
for elt in $(INFO_FILES); do \
- test "$(HAVE_MAKEINFO)" = "no" && ! test -e $$elt && continue; \
+ test "$(HAVE_MAKEINFO)" = "no" && test ! -f $$elt && continue; \
(cd $${thisdir}; \
${INSTALL_INFO} --info-dir=$(DESTDIR)${infodir} $(DESTDIR)${infodir}/$$elt); \
done; \
### Build all the directories we're going to install Emacs in. Since
### we may be creating several layers of directories (for example,
-### /usr/local/lib/emacs/19.0/mips-dec-ultrix4.2), we use mkinstalldirs
+### /usr/local/lib/emacs/19.0/mips-dec-ultrix4.2), we use install-sh -d
### instead of mkdir. Not all systems' mkdir programs have the `-p' flag.
### We set the umask so that any created directories are world-readable.
### FIXME it would be good to warn about non-standard permissions of
done ; \
icondirs=`echo "$${icondirs}" | sed 's,$(srcdir)/etc/images/icons,$(DESTDIR)${icondir},g'` ; \
umask 022 ; \
- $(srcdir)/mkinstalldirs $(DESTDIR)${datadir} ${COPYDESTS} \
+ $(srcdir)/install-sh -d $(DESTDIR)${datadir} ${COPYDESTS} \
$(DESTDIR)${infodir} $(DESTDIR)${man1dir} \
$(DESTDIR)${bindir} $(DESTDIR)${docdir} $(DESTDIR)${libexecdir} \
$(DESTDIR)${datadir}/emacs/site-lisp \
### distribution.
top_distclean=\
${top_bootclean}; \
- rm -f config.status Makefile stamp-h1 ${SUBDIR_MAKEFILES}
+ rm -f config.status config.log~ Makefile stamp-h1 ${SUBDIR_MAKEFILES}
distclean: FRC
(cd src; $(MAKE) $(MFLAGS) distclean)
(cd oldXMenu; $(MAKE) $(MFLAGS) distclean)
-(cd doc/lispintro && $(MAKE) $(MFLAGS) maintainer-clean)
(cd leim; $(MAKE) $(MFLAGS) maintainer-clean)
(cd lisp; $(MAKE) $(MFLAGS) bootstrap-clean)
+ [ ! -f config.log ] || mv -f config.log config.log~
${top_bootclean}
+## configure; make bootstrap replaces the real config.log from configure
+## with the truncated one from config.status. The former is more useful.
### `maintainer-clean'
### Delete everything from the current directory that can be
.PHONY: bootstrap
+## configure; make bootstrap replaces the real config.log from configure
+## with the truncated one from config.status. The former is more useful.
bootstrap: bootstrap-clean FRC
if [ -x ./config.status ]; then \
./config.status; \
.PHONY: check-declare
check-declare:
- @if [ ! -e $(srcdir)/src/emacs ]; then \
+ @if [ ! -f $(srcdir)/src/emacs ]; then \
echo "You must build Emacs to use this command"; \
exit 1; \
fi