autoconf-commit
[Top][All Lists]
Advanced

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

[SCM] GNU Autoconf source repository branch, master, updated. v2.69-97-g


From: Stefano Lattarini
Subject: [SCM] GNU Autoconf source repository branch, master, updated. v2.69-97-gb1aba91
Date: Tue, 07 May 2013 09:33:27 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Autoconf source repository".

http://git.sv.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=b1aba910b3e2352b5b925b118072bf4279b0a26a

The branch, master has been updated
       via  b1aba910b3e2352b5b925b118072bf4279b0a26a (commit)
       via  ef573a26aa937f26077179a0e743c50d50b58f1f (commit)
       via  b8c07dc5b023f0abc81341ab664fb80bd664a51c (commit)
       via  fa18cbafd87930acc7487d5836ead7acd6c3af90 (commit)
       via  f7932b176c95d46985832f62167dc34c2fb42897 (commit)
       via  a2af455752a0e24546f650e83edc74741c117430 (commit)
       via  f8ac780d14229e99d70b46b50e3d026e2c93a6a3 (commit)
       via  3c5f3ba0691d524cc804aa187607b34fc312872c (commit)
       via  0891dc5f0df8389f27b8b13628387a4312106bb9 (commit)
       via  6e35109fd3f6cbb0a0853ad59464fb0da99be2f8 (commit)
       via  6cef85e8d619be3b0a0124770cd5188f40f49772 (commit)
       via  16d8b403b5ca5d1af152316d5afa27e413263eca (commit)
       via  0e7ac8501f51621caaab87e18c654dead18585c1 (commit)
       via  097b14e45eb0bfac8ed16df96cacc695fa380803 (commit)
       via  ac62b53ff750ec88fa2939ef447657ff02d06372 (commit)
       via  3184ecc1877108af7ea82dbc17bf223c68b03708 (commit)
       via  b2356bded823161a87c8de9ab382ce3529e481ec (commit)
      from  6b42b38f9bcde8d67435a5bb39f8c0f42e71e6ab (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b1aba910b3e2352b5b925b118072bf4279b0a26a
Author: Stefano Lattarini <address@hidden>
Date:   Mon May 6 11:21:08 2013 +0200

    build: remove refs to obsolescent 'mkinstalldir' script and variable
    
    * .gitignore: Here.
    * Makefile.am (check-coverage-run): Use $(MKDIR_P) rather than
    $(mkinstalldirs).
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit ef573a26aa937f26077179a0e743c50d50b58f1f
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 23:11:52 2013 +0200

    build: remove last make recursion (for subdir 'man')
    
    * Makefile.am (SUBDIRS): Remove (its last component 'man' has just
    been removed).
    (SUFFIXES): New, defined to empty, to be updated later by included
    files.
    ($(srcdir)/man/local.mk): Include this.
    * configure.ac (AC_CONFIG_FILES): Drop 'man/Makefile'.
    * lib/freeze.mk (SUFFIXES): Extend with '+=' rather than defining
    with '='.
    * man/Makefile.am: Rename ...
    * man/local.mk: ... like this, and adjust throughout.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit b8c07dc5b023f0abc81341ab664fb80bd664a51c
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 21:43:54 2013 +0200

    build: no more recursion for 'tests' subdir
    
    * Makefile.am (SUBDIRS): Drop 'tests'.  Adjust comments.
    (DISTCLEANFILES, MAINTAINERCLEANFILES): Define to empty, to be
    updated later.
    (MAINTAINERCLEANFILES): Adjust later definition to use '+='
    rather than '='.
    ($(srcdir)/tests/local.mk): Include this.
    * configure.ac (AC_CONFIG_FILES): Drop 'tests/Makefile'.
    * lib/freeze.mk ($(AUTOM4TE_CFG)): Drop now-redundant remake rule.
    ($(build_libdir)/m4sugar/version.m4): Likewise.
    * tests/Makefile.am: Rename ...
    * tests/local.mk: ... like this, and adjust (quite heavily).
    * tests/mktests.sh: Adjust to generate output files and temporary
    files in the tests subdirectory rather than in the current
    directory.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit fa18cbafd87930acc7487d5836ead7acd6c3af90
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 21:26:15 2013 +0200

    build: fixup: don't define ETAGS_ARGS multiple times
    
    * Makefile.am (ETAGS_ARGS): Define to empty, to be updated later.
    * bin/local.mk (ETAGS_ARGS): Append to it, rather than re-defining it.
    * lib/local.mk (ETAGS_ARGS): Likewise.  Also, do not bother appending
    "--lang=perl" once again, as that is already done in 'bin/local.mk'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit f7932b176c95d46985832f62167dc34c2fb42897
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 21:20:55 2013 +0200

    build: avoid repeating the same etags args several times
    
    * lib/local.mk: Here.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit a2af455752a0e24546f650e83edc74741c117430
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 21:05:43 2013 +0200

    build: no more recursion for lib 'subdir'
    
    * Makefile.am (SUBDIRS): Drop 'lib'.
    (edit): New, shared among the recipes in 'lib/local.mk' and
    'bin/local.mk'.
    (CLEANFILES): New, will be updated later in included files.
    ($(srcdir)/lib/local.mk): Include it.
    ($(srcdir)/lib/freeze.mk): Likewise.
    * lib/Makefile.am: Rename ...
    * lib/local.mk: .. like this, with several adjustments.  In
    particular ...
    (edit): Drop this definition, subsumed by the one in the
    top-level Makefile.am.
    * bin/local.mk (edit): Drop definition, that is already present
    in the top-level Makefile.am now.
    ($(srcdir)/lib/freeze.mk): Drop inclusion; that is already done
    in the top-level Makefile.am now.
    * doc/local.mk (CLEANFILES): Adjust: append to it, do not define
    it.
    * lib/freeze.mk ($(AUTOM4TE_CFG)): Adjust recipe.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit f8ac780d14229e99d70b46b50e3d026e2c93a6a3
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 20:16:25 2013 +0200

    build: define RELEASE_YEAR with AC_SUBST
    
    Rather than reading it dynamically from the ChangeLog -- that,
    remember, is only a dummy in a Git checkout!  To avoid risking
    the definition to get out-of-sync, let's enhance the maintainer
    target 'update-copyright' to update it automatically (the same
    way it's done in the Automake build system).
    
    * configure.ac (RELEASE_YEAR): New AC_SUBST'd variable.
    * cfg.mk (update-release-year): New maintainer-specific target
    to automatically update the value of that variable.
    (update-copyright): Depend on the new target.
    * bin/local.mk (RELEASE_YEAR): Drop definition.
    (edit): Simplify quoting of $(RELEASE_YEAR).
    * lib/Makefile.am (RELEASE_YEAR): Drop definition.
    (m4sugar/version.m4): Simplify quoting of $(RELEASE_YEAR).
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 3c5f3ba0691d524cc804aa187607b34fc312872c
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 20:02:31 2013 +0200

    build: no more recursion for 'lib/Autom4te' subdir
    
    * lib/Autom4te/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Delete (last component 'Autom4te' has been dropped).
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/Autom4te/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 0891dc5f0df8389f27b8b13628387a4312106bb9
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 19:57:27 2013 +0200

    build: no more recursion for' lib/autoconf' subdir
    
    * lib/autoconf/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Drop 'autoconf'.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/autoconf/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 6e35109fd3f6cbb0a0853ad59464fb0da99be2f8
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 19:37:01 2013 +0200

    build: no more recursion for 'lib/m4sugar' subdir
    
    * lib/m4sugar/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Drop 'lib/m4sugar'.
    Other related adjustments and re-organizations.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/m4sugar/Makefile'.
    * lib/freeze.mk ($(build_libdir)/m4sugar/version.m4): Adjust
    recipe.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 6cef85e8d619be3b0a0124770cd5188f40f49772
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 18:10:15 2013 +0200

    build: no more recursion for 'lib/autotest' subdir
    
    * lib/autotest/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Drop 'autotest'.
    Other minor related modifications.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/autotest/Makefile'.
    * lib/freeze.mk (MY_AUTOM4TE): Small required adjustments.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 16d8b403b5ca5d1af152316d5afa27e413263eca
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 17:35:51 2013 +0200

    build: no more recursion for 'lib/autoscan' subdir
    
    * lib/autoscan/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Drop 'autoscan'.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/autoscan/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 0e7ac8501f51621caaab87e18c654dead18585c1
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 16:53:54 2013 +0200

    build: no more recursion for 'lib/emacs' subdir
    
    * lib/emacs/Makefile.am: Delete, its contents merged ...
    * lib/Makefile.am: ... in here, with proper adjustments.
    (SUBDIRS): Drop 'emacs'.
    * configure.ac (AC_CONFIG_FILES): Drop 'lib/emacs/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 097b14e45eb0bfac8ed16df96cacc695fa380803
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 16:40:10 2013 +0200

    build: no more make recursion for 'bin' subdir
    
    * Makefile.am (MOSTLYCLEANFILES): New, to be extended later by
    included files.
    ($(srcdir)/doc/local.mk): New include.
    (SUBDIRS): Drop 'bin'.  Adjust comments.
    * bin/Makefile.am: Rename ...
    * bin/local.mk: ... like this, and adjust.
    * configure.ac (AC_CONFIG_FILES): Drop 'bin/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit ac62b53ff750ec88fa2939ef447657ff02d06372
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 16:14:06 2013 +0200

    build: no more make recursion for 'doc' subdir
    
    * .gitignore: Adjust.
    * Makefile.am ($(srcdir)/doc/local.mk): New include.
    (SUBDIRS): Drop 'doc'.
    (AM_MAKEINFOFLAGS): Rename ...
    (custom_MAKEINFOFLAGS): ... like this, to avoid conflicting with
    the AM_MAKEINFOFLAGS defined in the included 'doc/local.mk'
    ($(srcdir)/INSTALL): Adjust recipe.
    * doc/Makefile.am: Rename ...
    * doc/local.mk: ... like this, and adjust.
    * configure.ac (AC_CONFIG_FILES): Drop 'doc/Makefile'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 3184ecc1877108af7ea82dbc17bf223c68b03708
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 17:18:00 2013 +0200

    build: don't distribute lib/freeze.mk explicitly
    
    It is automatically distributed by Automake, being included by
    other Makefile.am files.
    
    * lib/Makefile.am (EXTRA_DIST): Drop 'freeze.mk'.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit b2356bded823161a87c8de9ab382ce3529e481ec
Author: Stefano Lattarini <address@hidden>
Date:   Sun May 5 16:13:10 2013 +0200

    sync: some files from upstream
    
    * build-aux/config.guess: This.
    * build-aux/config.sub: And this.
    * build-aux/gendocs.sh: And this.
    * build-aux/gnupload: And this.
    * build-aux/texinfo.tex: And this.
    * doc/standards.texi: And this.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

-----------------------------------------------------------------------

Summary of changes:
 .gitignore                      |   36 ++++++-
 Makefile.am                     |   49 ++++++++--
 bin/{Makefile.am => local.mk}   |   83 ++++++++---------
 build-aux/config.guess          |   25 ++++--
 build-aux/config.sub            |   27 +++---
 build-aux/gendocs.sh            |  172 +++++++++++++++++++++-------------
 build-aux/gnupload              |   23 +++--
 build-aux/texinfo.tex           |   50 ++++++-----
 cfg.mk                          |   12 +++
 configure.ac                    |   15 ++--
 doc/{Makefile.am => local.mk}   |   28 ++++--
 doc/standards.texi              |   19 ++--
 lib/Autom4te/Makefile.am        |   37 --------
 lib/Makefile.am                 |   44 ---------
 lib/autoconf/Makefile.am        |   54 -----------
 lib/autoscan/Makefile.am        |   40 --------
 lib/autotest/Makefile.am        |   46 ---------
 lib/emacs/Makefile.am           |    3 -
 lib/freeze.mk                   |   21 ++--
 lib/local.mk                    |  195 +++++++++++++++++++++++++++++++++++++++
 lib/m4sugar/Makefile.am         |   75 ---------------
 man/{Makefile.am => local.mk}   |   54 ++++++-----
 tests/{Makefile.am => local.mk} |  163 ++++++++++++++++++---------------
 tests/mktests.sh                |   32 ++++---
 24 files changed, 676 insertions(+), 627 deletions(-)
 rename bin/{Makefile.am => local.mk} (52%)
 rename doc/{Makefile.am => local.mk} (64%)
 delete mode 100644 lib/Autom4te/Makefile.am
 delete mode 100644 lib/Makefile.am
 delete mode 100644 lib/autoconf/Makefile.am
 delete mode 100644 lib/autoscan/Makefile.am
 delete mode 100644 lib/autotest/Makefile.am
 delete mode 100644 lib/emacs/Makefile.am
 create mode 100644 lib/local.mk
 delete mode 100644 lib/m4sugar/Makefile.am
 rename man/{Makefile.am => local.mk} (50%)
 rename tests/{Makefile.am => local.mk} (62%)

diff --git a/.gitignore b/.gitignore
index b40b90a..3c0d75b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,36 @@
 *.log
 *.m4f
 *.tmp
+*.AC
+*.ACs
+*.AT
+*.ATs
+*.CA
+*.CAs
+*.MS
+*.MSs
+*.aux
+*.cp
+*.cps
+*.cv
+*.cvs
+*.ev
+*.evs
+*.fn
+*.fns
+*.ky
+*.ov
+*.ovs
+*.pg
+*.pr
+*.prs
+*.toc
+*.tp
+*.vr
 *~
 .#*
 .version
+.dirstamp
 CVS
 /ChangeLog
 /Fetchdir
@@ -26,21 +53,20 @@ Makefile.in
 /build-aux/install-sh
 /build-aux/mdate-sh
 /build-aux/missing
-/build-aux/mkinstalldirs
 /config.cache
 /config.log
 /config.status
 /configure
 /configure.scan
-/doc/*.??
-!/doc/Makefile.am
-/doc/*.???
-/doc/*.html
 /doc/*.info*
 /doc/manual
 /doc/stamp-vti
 /doc/standards
 /doc/version.texi
+/doc/*.dvi
+/doc/*.html
+/doc/*.pdf
+/doc/*.ps
 /lib/autom4te.cfg
 /lib/autoscan/autoscan.list
 /lib/emacs/*.elc
diff --git a/Makefile.am b/Makefile.am
index b599499..8f8e7c7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -15,13 +15,17 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# bin/ must be run first, as it builds executables needed for tests.
-# autom4te uses autotest.m4f to generate 'testsuite', so build tests last.
-# Rules in man/ use scripts from both bin/ and tests/, so *it* goes last.
-SUBDIRS = bin . lib doc tests man
-
 ACLOCAL_AMFLAGS = -I m4
 
+## All of these will be incrementally updated later, here or in included
+## makefile fragments.
+ETAGS_ARGS =
+MOSTLYCLEANFILES =
+CLEANFILES =
+DISTCLEANFILES =
+MAINTAINERCLEANFILES =
+SUFFIXES =
+
 EXTRA_DIST = ChangeLog.0 ChangeLog.1 ChangeLog.2 ChangeLog.3 \
             BUGS COPYINGv3 COPYING.EXCEPTION \
             GNUmakefile maint.mk cfg.mk \
@@ -31,15 +35,36 @@ EXTRA_DIST = ChangeLog.0 ChangeLog.1 ChangeLog.2 
ChangeLog.3 \
             build-aux/gitlog-to-changelog \
             .prev-version .version
 
+edit = sed \
+       -e 's|@address@hidden|$(SHELL)|g' \
+       -e 's|@address@hidden|$(PERL)|g' \
+       -e 's|@address@hidden|$(PERL_FLOCK)|g' \
+       -e 's|@address@hidden|$(bindir)|g' \
+       -e 's|@address@hidden|$(pkgdatadir)|g' \
+       -e 's|@address@hidden|$(prefix)|g' \
+       -e 's|@address@hidden|'`echo autoconf | sed '$(transform)'`'|g' \
+       -e 's|@address@hidden|'`echo autoheader | sed '$(transform)'`'|g' \
+       -e 's|@address@hidden|'`echo autom4te | sed '$(transform)'`'|g' \
+       -e 's|@address@hidden|$(M4)|g' \
+       -e 's|@address@hidden|$(M4_DEBUGFILE)|g' \
+       -e 's|@address@hidden|$(M4_GNU)|g' \
+       -e 's|@address@hidden|$(AWK)|g' \
+       -e 's|@address@hidden|$(RELEASE_YEAR)|g' \
+       -e 's|@address@hidden|$(VERSION)|g' \
+       -e 's|@address@hidden|$(PACKAGE_NAME)|g' \
+       -e 's|@address@hidden|Generated from address@hidden; do not edit by 
hand.|g'
+
+include $(srcdir)/lib/freeze.mk
+
 ## --------- ##
 ## INSTALL.  ##
 ## --------- ##
 
-AM_MAKEINFOFLAGS = --no-headers --no-validate --no-split
+custom_MAKEINFOFLAGS = --no-headers --no-validate --no-split
 
 if MAKE_CASE_SENSITIVE
 pkgdata_DATA = $(srcdir)/INSTALL
-MAINTAINERCLEANFILES = $(srcdir)/INSTALL
+MAINTAINERCLEANFILES += $(srcdir)/INSTALL
 
 # Don't leave blank line at end of file.
 OMIT_TRAILING_EMPTY_LINES = '/^$$/H; /^$$/d; x; s/\n//p; s/\n*//; x'
@@ -49,7 +74,7 @@ CONVERT_QUOTES = "s/\`\([^']*\)'/'\1'/g"
 $(srcdir)/INSTALL: $(top_srcdir)/doc/install.texi
        echo @firstparagraphindent insert                               \
          | cat - $(top_srcdir)/doc/install.texi > tmp.texi
-       $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS)                \
+       $(MAKEINFO) $(custom_MAKEINFOFLAGS) $(MAKEINFOFLAGS)            \
             --plaintext tmp.texi                                       \
          | sed -e $(CONVERT_QUOTES) -e $(OMIT_TRAILING_EMPTY_LINES)    \
             > address@hidden && mv address@hidden $@
@@ -102,13 +127,19 @@ dist-hook: gen-ChangeLog
 distclean-local:
        if test x"$(VPATH)" != x ; then rm -f GNUmakefile ; fi
 
+include $(srcdir)/bin/local.mk
+include $(srcdir)/doc/local.mk
+include $(srcdir)/lib/local.mk
+include $(srcdir)/man/local.mk
+include $(srcdir)/tests/local.mk
+
 # Perl coverage statistics.
 PERL_COVERAGE_DB = `pwd`/cover_db
 PERL_COVERAGE_FLAGS = 
-MDevel::Cover=-db,$(PERL_COVERAGE_DB),-silent,on,-summary,off
 PERL_COVER = cover
 
 check-coverage-run: all
-       $(mkinstalldirs) $(PERL_COVERAGE_DB)
+       $(MKDIR_P) $(PERL_COVERAGE_DB)
        PERL5OPT="$(PERL_COVERAGE_FLAGS)"; export PERL5OPT; \
        $(MAKE) $(AM_MAKEFLAGS) check
 
diff --git a/bin/Makefile.am b/bin/local.mk
similarity index 52%
rename from bin/Makefile.am
rename to bin/local.mk
index fd264ab..f3531b6 100644
--- a/bin/Makefile.am
+++ b/bin/local.mk
@@ -15,52 +15,38 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-include ../lib/freeze.mk
-
-bin_SCRIPTS = autom4te \
-             autoconf autoheader autoreconf ifnames autoscan autoupdate
-
-EXTRA_DIST = autoconf.as autoheader.in autoreconf.in autoupdate.in ifnames.in \
-            autoscan.in autom4te.in
+bin_SCRIPTS = \
+  bin/autoconf \
+  bin/autoheader \
+  bin/autom4te \
+  bin/autoreconf \
+  bin/autoscan \
+  bin/autoupdate \
+  bin/ifnames
+
+EXTRA_DIST += \
+  bin/autoconf.as \
+  bin/autoheader.in \
+  bin/autom4te.in \
+  bin/autoreconf.in \
+  bin/autoscan.in \
+  bin/autoupdate.in \
+  bin/ifnames.in
 
 # Files that should be removed, but which Automake does not know.
-MOSTLYCLEANFILES = $(bin_SCRIPTS) autoconf.in *.tmp
-
-# Get the release year from ../ChangeLog.
-RELEASE_YEAR = \
-  `sed 's/^\([0-9][0-9][0-9][0-9]\).*/\1/;q' $(top_srcdir)/ChangeLog`
+MOSTLYCLEANFILES += $(bin_SCRIPTS) bin/autoconf.in bin/*.tmp
 
 ## ------------- ##
 ## The scripts.  ##
 ## ------------- ##
 
-edit = sed \
-       -e 's|@address@hidden|$(SHELL)|g' \
-       -e 's|@address@hidden|$(PERL)|g' \
-       -e 's|@address@hidden|$(PERL_FLOCK)|g' \
-       -e 's|@address@hidden|$(bindir)|g' \
-       -e 's|@address@hidden|$(pkgdatadir)|g' \
-       -e 's|@address@hidden|$(prefix)|g' \
-       -e 's|@address@hidden|'`echo autoconf | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|'`echo autoheader | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|'`echo autom4te | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|$(M4)|g' \
-       -e 's|@address@hidden|$(M4_DEBUGFILE)|g' \
-       -e 's|@address@hidden|$(M4_GNU)|g' \
-       -e 's|@address@hidden|$(AWK)|g' \
-       -e 's|@address@hidden|'$(RELEASE_YEAR)'|g' \
-       -e 's|@address@hidden|$(VERSION)|g' \
-       -e 's|@address@hidden|$(PACKAGE_NAME)|g' \
-       -e 's|@address@hidden|Generated from address@hidden; do not edit by 
hand.|g'
-
-$(top_builddir)/bin/autom4te: autom4te
-
 # autoconf is written in M4sh.
 # FIXME: this target should depend on the frozen files below lib/m4sugar,
 # otherwise autom4te may pick up a frozen m4sh.m4f from an earlier
 # installation below the same $(prefix); work around this with --melt.
-autoconf.in: $(srcdir)/autoconf.as $(m4sh_m4f_dependencies)
-       $(MY_AUTOM4TE) --language M4sh --cache '' --melt $(srcdir)/autoconf.as 
-o $@
+bin/autoconf.in: $(srcdir)/bin/autoconf.as $(m4sh_m4f_dependencies)
+       $(MY_AUTOM4TE) --language M4sh --cache '' \
+                      --melt $(srcdir)/bin/autoconf.as -o $@
 
 ## All the scripts depend on Makefile so that they are rebuilt when the
 ## prefix etc. changes.  It took quite a while to have the rule correct,
@@ -68,6 +54,7 @@ autoconf.in: $(srcdir)/autoconf.as $(m4sh_m4f_dependencies)
 ## Use chmod -w to prevent people from editing the wrong file by accident.
 $(bin_SCRIPTS): Makefile
        rm -f $@ address@hidden
+       $(MKDIR_P) $(@D)
        srcdir=''; \
          test -f ./address@hidden || srcdir=$(srcdir)/; \
          $(edit) address@hidden >address@hidden
@@ -75,13 +62,13 @@ $(bin_SCRIPTS): Makefile
        chmod a-w address@hidden
        mv address@hidden $@
 
-autoconf: autoconf.in
-autoheader: $(srcdir)/autoheader.in
-autom4te: $(srcdir)/autom4te.in
-autoreconf: $(srcdir)/autoreconf.in
-autoscan: $(srcdir)/autoscan.in
-autoupdate: $(srcdir)/autoupdate.in
-ifnames: $(srcdir)/ifnames.in
+bin/autoconf: bin/autoconf.in
+bin/autoheader: $(srcdir)/bin/autoheader.in
+bin/autom4te: $(srcdir)/bin/autom4te.in
+bin/autoreconf: $(srcdir)/bin/autoreconf.in
+bin/autoscan: $(srcdir)/bin/autoscan.in
+bin/autoupdate: $(srcdir)/bin/autoupdate.in
+bin/ifnames: $(srcdir)/bin/ifnames.in
 
 
 ## --------------- ##
@@ -95,9 +82,13 @@ LETTERS = ABCDEFGHIJKLMNOPQRSTUVWXYZ
 DIGITS = 0123456789
 WORD_REGEXP = [$(LETTERS)$(letters)_][$(LETTERS)$(letters)$(DIGITS)_]*
 ETAGS_PERL = --lang=perl \
-  autoheader.in autoreconf.in autoupdate.in autoscan.in autom4te.in \
-  ifnames.in
+  bin/autoheader.in \
+  bin/autoreconf.in \
+  bin/autoupdate.in \
+  bin/autoscan.in \
+  bin/autom4te.in \
+  bin/ifnames.in
 ETAGS_SH = --lang=none --regex='/\($(WORD_REGEXP)\)=/\1/' \
-  autoconf.in
+  bin/autoconf.in
 
-ETAGS_ARGS = $(ETAGS_PERL) $(ETAGS_SH)
+ETAGS_ARGS += $(ETAGS_PERL) $(ETAGS_SH)
diff --git a/build-aux/config.guess b/build-aux/config.guess
index 0aee604..2055429 100755
--- a/build-aux/config.guess
+++ b/build-aux/config.guess
@@ -1,10 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012, 2013 Free Software Foundation, Inc.
+#   Copyright 1992-2013 Free Software Foundation, Inc.
 
-timestamp='2012-12-30'
+timestamp='2013-04-24'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -52,9 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
-2012, 2013 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -887,6 +883,9 @@ EOF
        if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
        echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
        exit ;;
+    arc:Linux:*:* | arceb:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
     arm*:Linux:*:*)
        eval $set_cc_for_build
        if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
@@ -925,6 +924,11 @@ EOF
        #ifdef __dietlibc__
        LIBC=dietlibc
        #endif
+       #else
+       #include <features.h>
+       #ifdef __UCLIBC__
+       LIBC=uclibc
+       #endif
 EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
        echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
@@ -957,6 +961,9 @@ EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
        test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
        ;;
+    or1k:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
     or32:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
        exit ;;
@@ -999,7 +1006,9 @@ EOF
        echo ${UNAME_MACHINE}-dec-linux-gnu
        exit ;;
     x86_64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       LIBC=gnu
+       test -r /lib/libc.so && od -An -S13 /lib/libc.so | grep -q 
__uClibc_main && LIBC=uclibc
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     xtensa*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
diff --git a/build-aux/config.sub b/build-aux/config.sub
index d1dfcc5..8b612ab 100755
--- a/build-aux/config.sub
+++ b/build-aux/config.sub
@@ -1,10 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012, 2013 Free Software Foundation, Inc.
+#   Copyright 1992-2013 Free Software Foundation, Inc.
 
-timestamp='2012-12-31'
+timestamp='2013-04-24'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -70,9 +68,7 @@ Report bugs and patches to <address@hidden>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
-2012, 2013 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -256,7 +252,7 @@ case $basic_machine in
        | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
        | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | 
alpha64pca5[67] \
        | am33_2.0 \
-       | arc \
+       | arc | arceb \
        | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
        | avr | avr32 \
        | be32 | be64 \
@@ -290,16 +286,17 @@ case $basic_machine in
        | mipsisa64r2 | mipsisa64r2el \
        | mipsisa64sb1 | mipsisa64sb1el \
        | mipsisa64sr71k | mipsisa64sr71kel \
+       | mipsr5900 | mipsr5900el \
        | mipstx39 | mipstx39el \
        | mn10200 | mn10300 \
        | moxie \
        | mt \
        | msp430 \
        | nds32 | nds32le | nds32be \
-       | nios | nios2 \
+       | nios | nios2 | nios2eb | nios2el \
        | ns16k | ns32k \
        | open8 \
-       | or32 \
+       | or1k | or32 \
        | pdp10 | pdp11 | pj | pjl \
        | powerpc | powerpc64 | powerpc64le | powerpcle \
        | pyramid \
@@ -369,7 +366,7 @@ case $basic_machine in
        | aarch64-* | aarch64_be-* \
        | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
        | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
        | avr-* | avr32-* \
        | be32-* | be64-* \
@@ -407,12 +404,13 @@ case $basic_machine in
        | mipsisa64r2-* | mipsisa64r2el-* \
        | mipsisa64sb1-* | mipsisa64sb1el-* \
        | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+       | mipsr5900-* | mipsr5900el-* \
        | mipstx39-* | mipstx39el-* \
        | mmix-* \
        | mt-* \
        | msp430-* \
        | nds32-* | nds32le-* | nds32be-* \
-       | nios-* | nios2-* \
+       | nios-* | nios2-* | nios2eb-* | nios2el-* \
        | none-* | np1-* | ns16k-* | ns32k-* \
        | open8-* \
        | orion-* \
@@ -1354,7 +1352,7 @@ case $os in
        -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
              | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | 
-sunos[34]*\
              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | 
-solaris* \
-             | -sym* | -kopensolaris* \
+             | -sym* | -kopensolaris* | -plan9* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
              | -aos* | -aros* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
@@ -1591,6 +1589,9 @@ case $basic_machine in
        mips*-*)
                os=-elf
                ;;
+       or1k-*)
+               os=-elf
+               ;;
        or32-*)
                os=-coff
                ;;
diff --git a/build-aux/gendocs.sh b/build-aux/gendocs.sh
index 0c0bc4b..98c7523 100755
--- a/build-aux/gendocs.sh
+++ b/build-aux/gendocs.sh
@@ -2,9 +2,9 @@
 # gendocs.sh -- generate a GNU manual in many formats.  This script is
 #   mentioned in maintain.texi.  See the help message below for usage details.
 
-scriptversion=2012-10-27.11
+scriptversion=2013-03-08.15
 
-# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
+# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
 # Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
@@ -56,7 +56,7 @@ unset use_texi2html
 
 version="gendocs.sh $scriptversion
 
-Copyright 2012 Free Software Foundation, Inc.
+Copyright 2013 Free Software Foundation, Inc.
 There is NO warranty.  You may redistribute this software
 under the terms of the GNU General Public License.
 For more information about these matters, see the files named COPYING."
@@ -69,16 +69,23 @@ discussion:
   http://www.gnu.org/prep/maintain_toc.html
 
 Options:
-  -s SRCFILE  read Texinfo from SRCFILE, instead of PACKAGE.{texinfo|texi|txi}
-  -o OUTDIR   write files into OUTDIR, instead of manual/.
-  -I DIR      append DIR to the Texinfo search path.
-  --email ADR use ADR as contact in generated web pages.
-  --docbook   convert through DocBook too (xml, txt, html, pdf).
-  --html ARG  pass indicated ARG to makeinfo or texi2html for HTML targets.
-  --info ARG  pass indicated ARG to makeinfo for Info, instead of --no-split.
-  --texi2html use texi2html to generate HTML targets.
-  --help      display this help and exit successfully.
-  --version   display version information and exit successfully.
+  --email ADR use ADR as contact in generated web pages; always give this.
+
+  -s SRCFILE   read Texinfo from SRCFILE, instead of PACKAGE.{texinfo|texi|txi}
+  -o OUTDIR    write files into OUTDIR, instead of manual/.
+  -I DIR       append DIR to the Texinfo search path.
+  --common ARG pass ARG in all invocations.
+  --html ARG   pass ARG to makeinfo or texi2html for HTML targets.
+  --info ARG   pass ARG to makeinfo for Info, instead of --no-split.
+  --no-ascii   skip generating the plain text output.
+  --source ARG include ARG in tar archive of sources.
+  --split HOW  make split HTML by node, section, chapter; default node.
+
+  --texi2html  use texi2html to make HTML target, with all split versions.
+  --docbook    convert through DocBook too (xml, txt, html, pdf).
+
+  --help       display this help and exit successfully.
+  --version    display version information and exit successfully.
 
 Simple example: $prog --email address@hidden emacs \"GNU Emacs Manual\"
 
@@ -92,8 +99,8 @@ Output will be in a new subdirectory \"manual\" (by default;
 use -o OUTDIR to override).  Move all the new files into your web CVS
 tree, as explained in the Web Pages node of maintain.texi.
 
-Please do use the --email ADDRESS option to specify your bug-reporting
-address in the generated HTML pages.
+Please use the --email ADDRESS option so your own bug-reporting
+address will be used in the generated HTML pages.
 
 MANUAL-TITLE is included as part of the HTML <title> of the overall
 manual/index.html file.  It should include the name of the package being
@@ -117,7 +124,7 @@ You can set the environment variables MAKEINFO, TEXI2DVI, 
TEXI2HTML,
 and PERL to control the programs that get executed, and
 GENDOCS_TEMPLATE_DIR to control where the gendocs_template file is
 looked for.  With --docbook, the environment variables DOCBOOK2HTML,
-DOCBOOK2PDF, and DOCBOOK2TXT are also respected.
+DOCBOOK2PDF, and DOCBOOK2TXT are also consulted.
 
 By default, makeinfo and texi2dvi are run in the default (English)
 locale, since that's the language of most Texinfo manuals.  If you
@@ -130,25 +137,34 @@ Email bug reports or enhancement requests to 
address@hidden
 MANUAL_TITLE=
 PACKAGE=
 address@hidden  # please override with --email
-commonarg= # Options passed to all the tools (-I dir).
+commonarg= # passed to all makeinfo/texi2html invcations.
+dirargs=   # passed to all tools (-I dir).
 dirs=      # -I's directories.
 htmlarg=
 infoarg=--no-split
+generate_ascii=true
 outdir=manual
+source_extra=
+split=node
 srcfile=
 
 while test $# -gt 0; do
   case $1 in
-    --email) shift; EMAIL=$1;;
-    --help) echo "$usage"; exit 0;;
-    --version) echo "$version"; exit 0;;
-    -s) shift; srcfile=$1;;
-    -o) shift; outdir=$1;;
-    -I) shift; commonarg="$commonarg -I '$1'"; dirs="$dirs $1";;
-    --docbook) docbook=yes;;
-    --html) shift; htmlarg=$1;;
-    --info) shift; infoarg=$1;;
+    -s)          shift; srcfile=$1;;
+    -o)          shift; outdir=$1;;
+    -I)          shift; dirargs="$dirargs -I '$1'"; dirs="$dirs $1";;
+    --common)    shift; commonarg=$1;;
+    --docbook)   docbook=yes;;
+    --email)     shift; EMAIL=$1;;
+    --html)      shift; htmlarg=$1;;
+    --info)      shift; infoarg=$1;;
+    --no-ascii)  generate_ascii=false;;
+    --source)    shift; source_extra=$1;;
+    --split)     shift; split=$1;;
     --texi2html) use_texi2html=1;;
+
+    --help)      echo "$usage"; exit 0;;
+    --version)   echo "$version"; exit 0;;
     -*)
       echo "$0: Unknown option \`$1'." >&2
       echo "$0: Try \`--help' for more information." >&2
@@ -166,6 +182,9 @@ while test $# -gt 0; do
   shift
 done
 
+# makeinfo uses the dirargs, but texi2dvi doesn't.
+commonarg=" $dirargs $commonarg"
+
 # For most of the following, the base name is just $PACKAGE
 base=$PACKAGE
 
@@ -247,46 +266,53 @@ case $outdir in
   *)  abs_outdir=$srcdir/$outdir;;
 esac
 
-echo "Generating output formats for $srcfile"
+echo "Making output for $srcfile"
+echo " in `pwd`"
+mkdir -p "$outdir/"
 
 cmd="$SETLANG $MAKEINFO -o $PACKAGE.info $commonarg $infoarg \"$srcfile\""
-echo "Generating info file(s)... ($cmd)"
+echo "Generating info... ($cmd)"
 eval "$cmd"
-mkdir -p "$outdir/"
 tar czf "$outdir/$PACKAGE.info.tar.gz" $PACKAGE.info*
+ls -l "$outdir/$PACKAGE.info.tar.gz"
 info_tgz_size=`calcsize "$outdir/$PACKAGE.info.tar.gz"`
 # do not mv the info files, there's no point in having them available
 # separately on the web.
 
-cmd="$SETLANG $TEXI2DVI $commonarg \"$srcfile\""
-echo "Generating dvi ... ($cmd)"
+cmd="$SETLANG $TEXI2DVI $dirargs \"$srcfile\""
+printf "\nGenerating dvi... ($cmd)\n"
 eval "$cmd"
-
 # compress/finish dvi:
 gzip -f -9 $PACKAGE.dvi
 dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
 mv $PACKAGE.dvi.gz "$outdir/"
+ls -l "$outdir/$PACKAGE.dvi.gz"
 
-cmd="$SETLANG $TEXI2DVI --pdf $commonarg \"$srcfile\""
-echo "Generating pdf ... ($cmd)"
+cmd="$SETLANG $TEXI2DVI --pdf $dirargs \"$srcfile\""
+printf "\nGenerating pdf... ($cmd)\n"
 eval "$cmd"
 pdf_size=`calcsize $PACKAGE.pdf`
 mv $PACKAGE.pdf "$outdir/"
+ls -l "$outdir/$PACKAGE.pdf"
 
-opt="-o $PACKAGE.txt --no-split --no-headers $commonarg"
-cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
-echo "Generating ASCII... ($cmd)"
-eval "$cmd"
-ascii_size=`calcsize $PACKAGE.txt`
-gzip -f -9 -c $PACKAGE.txt >"$outdir/$PACKAGE.txt.gz"
-ascii_gz_size=`calcsize "$outdir/$PACKAGE.txt.gz"`
-mv $PACKAGE.txt "$outdir/"
+if $generate_ascii; then
+  opt="-o $PACKAGE.txt --no-split --no-headers $commonarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
+  printf "\nGenerating ascii... ($cmd)\n"
+  eval "$cmd"
+  ascii_size=`calcsize $PACKAGE.txt`
+  gzip -f -9 -c $PACKAGE.txt >"$outdir/$PACKAGE.txt.gz"
+  ascii_gz_size=`calcsize "$outdir/$PACKAGE.txt.gz"`
+  mv $PACKAGE.txt "$outdir/"
+  ls -l "$outdir/$PACKAGE.txt" "$outdir/$PACKAGE.txt.gz"
+fi
 
+# Split HTML at level $1.  Used for texi2html.
 html_split()
 {
-  opt="--split=$1 $commonarg $htmlarg --node-files"
+  opt="--split=$1 --node-files $commonarg $htmlarg"
   cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $opt \"$srcfile\""
-  echo "Generating html by $1... ($cmd)"
+  printf "\nGenerating html by $1... ($cmd)\n"
   eval "$cmd"
   split_html_dir=$PACKAGE.html
   (
@@ -304,7 +330,7 @@ html_split()
 if test -z "$use_texi2html"; then
   opt="--no-split --html -o $PACKAGE.html $commonarg $htmlarg"
   cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
-  echo "Generating monolithic html... ($cmd)"
+  printf "\nGenerating monolithic html... ($cmd)\n"
   rm -rf $PACKAGE.html  # in case a directory is left over
   eval "$cmd"
   html_mono_size=`calcsize $PACKAGE.html`
@@ -312,24 +338,38 @@ if test -z "$use_texi2html"; then
   html_mono_gz_size=`calcsize "$outdir/$PACKAGE.html.gz"`
   copy_images "$outdir/" $PACKAGE.html
   mv $PACKAGE.html "$outdir/"
-
-  opt="--html -o $PACKAGE.html $commonarg $htmlarg"
+  ls -l "$outdir/$PACKAGE.html" "$outdir/$PACKAGE.html.gz"
+
+  # Before Texinfo 5.0, makeinfo did not accept a --split=HOW option,
+  # it just always split by node.  So if we're splitting by node anyway,
+  # leave it out.
+  if test "x$split" = xnode; then
+    split_arg=
+  else
+    split_arg=--split=$split
+  fi
+  #
+  opt="--html -o $PACKAGE.html $split_arg $commonarg $htmlarg"
   cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
-  echo "Generating html by node... ($cmd)"
+  printf "\nGenerating html by $split... ($cmd)\n"
   eval "$cmd"
   split_html_dir=$PACKAGE.html
   copy_images $split_html_dir/ $split_html_dir/*.html
   (
     cd $split_html_dir || exit 1
-    tar -czf "$abs_outdir/$PACKAGE.html_node.tar.gz" -- *
+    tar -czf "$abs_outdir/$PACKAGE.html_$split.tar.gz" -- *
   )
-  html_node_tgz_size=`calcsize "$outdir/$PACKAGE.html_node.tar.gz"`
-  rm -rf "$outdir/html_node/"
-  mv $split_html_dir "$outdir/html_node/"
-else
+  eval \
+    html_${split}_tgz_size=`calcsize "$outdir/$PACKAGE.html_$split.tar.gz"`
+  rm -rf "$outdir/html_$split/"
+  mv $split_html_dir "$outdir/html_$split/"
+  du -s "$outdir/html_$split/"
+  ls -l "$outdir/$PACKAGE.html_$split.tar.gz"
+
+else # use texi2html:
   opt="--output $PACKAGE.html $commonarg $htmlarg"
   cmd="$SETLANG $TEXI2HTML $opt \"$srcfile\""
-  echo "Generating monolithic html... ($cmd)"
+  printf "\nGenerating monolithic html with texi2html... ($cmd)\n"
   rm -rf $PACKAGE.html  # in case a directory is left over
   eval "$cmd"
   html_mono_size=`calcsize $PACKAGE.html`
@@ -342,19 +382,20 @@ else
   html_split section
 fi
 
-echo Making .tar.gz for sources...
+printf "\nMaking .tar.gz for sources...\n"
 d=`dirname $srcfile`
 (
   cd "$d"
-  srcfiles=`ls *.texinfo *.texi *.txi *.eps 2>/dev/null` || true
-  tar cvzfh "$abs_outdir/$PACKAGE.texi.tar.gz" $srcfiles
+  srcfiles=`ls -d *.texinfo *.texi *.txi *.eps $source_extra 2>/dev/null` || 
true
+  tar czfh "$abs_outdir/$PACKAGE.texi.tar.gz" $srcfiles
+  ls -l "$abs_outdir/$PACKAGE.texi.tar.gz"
 )
 texi_tgz_size=`calcsize "$outdir/$PACKAGE.texi.tar.gz"`
 
 if test -n "$docbook"; then
   opt="-o - --docbook $commonarg"
   cmd="$SETLANG $MAKEINFO $opt \"$srcfile\" >${srcdir}/$PACKAGE-db.xml"
-  echo "Generating docbook XML... ($cmd)"
+  printf "\nGenerating docbook XML... ($cmd)\n"
   eval "$cmd"
   docbook_xml_size=`calcsize $PACKAGE-db.xml`
   gzip -f -9 -c $PACKAGE-db.xml >"$outdir/$PACKAGE-db.xml.gz"
@@ -364,7 +405,7 @@ if test -n "$docbook"; then
   split_html_db_dir=html_node_db
   opt="$commonarg -o $split_html_db_dir"
   cmd="$DOCBOOK2HTML $opt \"${outdir}/$PACKAGE-db.xml\""
-  echo "Generating docbook HTML... ($cmd)"
+  printf "\nGenerating docbook HTML... ($cmd)\n"
   eval "$cmd"
   (
     cd ${split_html_db_dir} || exit 1
@@ -377,24 +418,25 @@ if test -n "$docbook"; then
   rmdir ${split_html_db_dir}
 
   cmd="$DOCBOOK2TXT \"${outdir}/$PACKAGE-db.xml\""
-  echo "Generating docbook ASCII... ($cmd)"
+  printf "\nGenerating docbook ASCII... ($cmd)\n"
   eval "$cmd"
   docbook_ascii_size=`calcsize $PACKAGE-db.txt`
   mv $PACKAGE-db.txt "$outdir/"
 
   cmd="$DOCBOOK2PDF \"${outdir}/$PACKAGE-db.xml\""
-  echo "Generating docbook PDF... ($cmd)"
+  printf "\nGenerating docbook PDF... ($cmd)\n"
   eval "$cmd"
   docbook_pdf_size=`calcsize $PACKAGE-db.pdf`
   mv $PACKAGE-db.pdf "$outdir/"
 fi
 
-echo "Writing index file..."
+printf "\nMaking index file...\n"
 if test -z "$use_texi2html"; then
-   CONDS="/%%IF  *HTML_SECTION%%/,/%%ENDIF  *HTML_SECTION%%/d;\
-          /%%IF  *HTML_CHAPTER%%/,/%%ENDIF  *HTML_CHAPTER%%/d"
+  CONDS="/%%IF  *HTML_SECTION%%/,/%%ENDIF  *HTML_SECTION%%/d;\
+         /%%IF  *HTML_CHAPTER%%/,/%%ENDIF  *HTML_CHAPTER%%/d"
 else
-   CONDS="/%%ENDIF.*%%/d;/%%IF  *HTML_SECTION%%/d;/%%IF  *HTML_CHAPTER%%/d"
+  # should take account of --split here.
+  CONDS="/%%ENDIF.*%%/d;/%%IF  *HTML_SECTION%%/d;/%%IF  *HTML_CHAPTER%%/d"
 fi
 
 curdate=`$SETLANG date '+%B %d, %Y'`
diff --git a/build-aux/gnupload b/build-aux/gnupload
index e329e83..e3ac1ba 100755
--- a/build-aux/gnupload
+++ b/build-aux/gnupload
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Sign files and upload them.
 
-scriptversion=2012-12-11.16; # UTC
+scriptversion=2013-03-19.17; # UTC
 
 # Copyright (C) 2004-2013 Free Software Foundation, Inc.
 #
@@ -39,9 +39,8 @@ nl='
 
 usage="Usage: $0 [OPTION]... [CMD] FILE... [[CMD] FILE...]
 
-Sign all FILES, and process them at selected destinations according to CMD.
-<http://www.gnu.org/prep/maintain/html_node/Automated-FTP-Uploads.html>
-explains further.
+Sign all FILES, and process them at the destinations specified with --to.
+If CMD is not given, it defaults to uploading.  See examples below.
 
 Commands:
   --delete                 delete FILES from destination
@@ -50,8 +49,7 @@ Commands:
   --                       treat the remaining arguments as files to upload
 
 Options:
-  --help                   print this help text and exit
-  --to DEST                specify one destination for FILES
+  --to DEST                specify a destination DEST for FILES
                            (multiple --to options are allowed)
   --user NAME              sign with key NAME
   --replace                allow replacements of existing files
@@ -59,10 +57,10 @@ Options:
   --dry-run                do nothing, show what would have been done
                            (including the constructed directive file)
   --version                output version information and exit
+  --help                   print this help text and exit
 
 If --symlink-regex is given without EXPR, then the link target name
 is created by replacing the version information with '-latest', e.g.:
-
   foo-1.3.4.tar.gz -> foo-latest.tar.gz
 
 Recognized destinations are:
@@ -80,6 +78,9 @@ in the current working directory, its contents are prepended 
to the
 actual command line options.  Use this to keep your defaults.  Comments
 (#) and empty lines in $conffile are allowed.
 
+<http://www.gnu.org/prep/maintain/html_node/Automated-FTP-Uploads.html>
+gives some further background.
+
 Examples:
 1. Upload foobar-1.0.tar.gz to ftp.gnu.org:
   gnupload --to ftp.gnu.org:foobar foobar-1.0.tar.gz
@@ -104,7 +105,7 @@ Examples:
            --delete oopsbar-0.9.91.tar.gz \\
            -- foobar-0.9.91.tar.gz
 
-gnupload uses the ncftpput program to do the transfers; if you don't
+gnupload executes a program ncftpput to do the transfers; if you don't
 happen to have an ncftp package installed, the ncftpput-ftp script in
 the build-aux/ directory of the gnulib package
 (http://savannah.gnu.org/projects/gnulib) may serve as a replacement.
@@ -132,6 +133,12 @@ while test -n "$1"; do
       if test -z "$2"; then
         echo "$0: Missing argument for --to" 1>&2
         exit 1
+      elif echo "$2" | grep 'ftp-upload\.gnu\.org' >/dev/null; then
+        echo "$0: Use ftp.gnu.org:PKGNAME or alpha.gnu.org:PKGNAME" >&2
+        echo "$0: for the destination, not ftp-upload.gnu.org (which" >&2
+        echo "$0:  is used for direct ftp uploads, not with gnupload)." >&2
+        echo "$0: See --help and its examples if need be." >&2
+        exit 1
       else
         to="$to $2"
         shift
diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex
index d64f45b..85f184c 100644
--- a/build-aux/texinfo.tex
+++ b/build-aux/texinfo.tex
@@ -3,7 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2013-01-01.15}
+\def\texinfoversion{2013-02-01.11}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -2496,7 +2496,7 @@ end
      \let-\codedash
      \let_\codeunder
     \else
-     \let-\realdash
+     \let-\normaldash
      \let_\realunder
     \fi
     \codex
@@ -2505,7 +2505,7 @@ end
 
 \def\codex #1{\tclose{#1}\endgroup}
 
-\def\realdash{-}
+\def\normaldash{-}
 \def\codedash{-\discretionary{}{}{}}
 \def\codeunder{%
   % this is all so @address@hidden can work.  In math mode, _
@@ -2520,9 +2520,9 @@ end
 }
 
 % An additional complication: the above will allow breaks after, e.g.,
-% each of the four underscores in __typeof__.  This is undesirable in
-% some manuals, especially if they don't have long identifiers in
-% general.  @allowcodebreaks provides a way to control this.
+% each of the four underscores in __typeof__.  This is bad.
+% @allowcodebreaks provides a document-level way to turn breaking at -
+% and _ on and off.
 %
 \newif\ifallowcodebreaks  \allowcodebreakstrue
 
@@ -4188,7 +4188,7 @@ end
     % ..., but we might end up with active ones in the argument if
     % we're called from @code, as @address@hidden, though.
     % So \let them to their normal equivalents.
-    \let-\realdash \let_\normalunderscore
+    \let-\normaldash \let_\normalunderscore
   }
 }
 
@@ -9993,22 +9993,26 @@ directory should work if nowhere else does.}
 @address@hidden@address@hidden
 
 % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
-% the literal character `\'.
-%
address@hidden@normalturnoffactive{%
-  @let"address@hidden
-  @address@hidden %$ font-lock fix
-  @address@hidden
-  @let<address@hidden
-  @let>address@hidden
-  @address@hidden
-  @address@hidden
-  @address@hidden
-  @let|address@hidden
-  @address@hidden
-  @markupsetuplqdefault
-  @markupsetuprqdefault
-  @unsepspaces
+% the literal character `\'.  Also revert - to its normal character, in
+% case the active - from code has slipped in.
+%
address@hidden = @active
+ @address@hidden
+   @address@hidden
+   @let"address@hidden
+   @address@hidden %$ font-lock fix
+   @address@hidden
+   @let<address@hidden
+   @let>address@hidden
+   @address@hidden
+   @address@hidden
+   @address@hidden
+   @let|address@hidden
+   @address@hidden
+   @markupsetuplqdefault
+   @markupsetuprqdefault
+   @unsepspaces
+ }
 }
 
 % Make _ and + \other characters, temporarily.
diff --git a/cfg.mk b/cfg.mk
index a57196e..980eab9 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -123,6 +123,18 @@ update-copyright-env = \
   UPDATE_COPYRIGHT_USE_INTERVALS=1 \
   UPDATE_COPYRIGHT_MAX_LINE_LENGTH=72
 
+update-copyright: update-release-year
+update-release-year:
+       $(AM_V_GEN):; \
+       if test -n "$$UPDATE_COPYRIGHT_YEAR"; then \
+          current_year=$$UPDATE_COPYRIGHT_YEAR; \
+       else \
+         current_year=`date +%Y` && test -n "$$current_year" \
+           || { echo "$@: cannot get current year" >&2; exit 1; }; \
+       fi; \
+       sed -i "/^RELEASE_YEAR=/s/=.*$$/=$$current_year/" configure.ac
+.PHONY: update-release-year
+
 # Prevent incorrect NEWS edits.
 old_NEWS_hash = 8532b4ed4fb456eb71071a5cf8c258d4
 
diff --git a/configure.ac b/configure.ac
index 1336934..80e0dbd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,6 +27,11 @@ AC_CONFIG_AUX_DIR([build-aux])
 
 AM_INIT_AUTOMAKE([1.11 dist-xz readme-alpha no-texinfo.tex std-options])
 
+# Keep this on a line of its own, since it must be found and processed
+# by the 'update-release-year' rule in our Makefile.
+RELEASE_YEAR=2013
+AC_SUBST([RELEASE_YEAR])
+
 AB_INIT
 
 # We use '/bin/sh -n script' to check that there are no syntax errors
@@ -101,7 +106,7 @@ AC_SUBST([ac_cv_dir_trailing_space])
 
 # Initialize the test suite.
 AC_CONFIG_TESTDIR([tests])
-AC_CONFIG_FILES([tests/Makefile tests/atlocal])
+AC_CONFIG_FILES([tests/atlocal])
 AC_PATH_PROG([EXPR], [expr])
 
 
@@ -119,7 +124,6 @@ AC_PROG_GNU_M4
 ## Man pages.  ##
 ## ----------- ##
 
-AC_CONFIG_FILES([man/Makefile])
 AM_MISSING_PROG([HELP2MAN], [help2man])
 
 
@@ -158,7 +162,6 @@ AC_SUBST([PERL_FLOCK], [$ac_cv_perl_flock_implemented])
 ## Emacs.  ##
 ## ------- ##
 
-AC_CONFIG_FILES([lib/emacs/Makefile])
 TEST_EMACS=$EMACS
 test x"$TEST_EMACS" = xt && TEST_EMACS=
 AC_CHECK_PROGS([TEST_EMACS], [emacs xemacs], [no])
@@ -207,11 +210,7 @@ AC_PROG_MAKE_CASE_SENSITIVE
 dnl Allow maintainer rules under GNU make even in VPATH builds.
 AC_CONFIG_LINKS([GNUmakefile:GNUmakefile])
 
-AC_CONFIG_FILES([Makefile doc/Makefile
-                lib/Makefile lib/Autom4te/Makefile lib/autoscan/Makefile
-                lib/m4sugar/Makefile
-                lib/autoconf/Makefile lib/autotest/Makefile
-                bin/Makefile])
+AC_CONFIG_FILES([Makefile])
 
 AC_OUTPUT
 # Report the state of this version of Autoconf if this is a beta.
diff --git a/doc/Makefile.am b/doc/local.mk
similarity index 64%
rename from doc/Makefile.am
rename to doc/local.mk
index 4ee8c46..ce55181 100644
--- a/doc/Makefile.am
+++ b/doc/local.mk
@@ -17,17 +17,27 @@
 
 AM_MAKEINFOFLAGS = --no-split
 TEXI2HTML_FLAGS = -split_chapter
-TEXINFO_TEX = ../build-aux/texinfo.tex
+TEXINFO_TEX = build-aux/texinfo.tex
 
-info_TEXINFOS = autoconf.texi standards.texi
-autoconf_TEXINFOS = fdl.texi install.texi
-standards_TEXINFOS = fdl.texi gnu-oids.texi make-stds.texi
+info_TEXINFOS = doc/autoconf.texi doc/standards.texi
+doc_autoconf_TEXINFOS = doc/fdl.texi doc/install.texi
+doc_standards_TEXINFOS = doc/fdl.texi doc/gnu-oids.texi doc/make-stds.texi
 
-EXTRA_DIST = gendocs_template
+EXTRA_DIST += doc/gendocs_template
 
 # Files from texi2dvi that should be removed, but which Automake does
 # not know.
-CLEANFILES = autoconf.ACs  autoconf.cvs  autoconf.MSs  autoconf.prs \
-            autoconf.ATs  autoconf.evs  autoconf.fns  autoconf.ovs \
-            autoconf.ca   autoconf.CA   autoconf.cas  autoconf.CAs \
-            autoconf.tmp
+CLEANFILES += \
+  autoconf.ACs \
+  autoconf.cvs \
+  autoconf.MSs \
+  autoconf.prs \
+  autoconf.ATs \
+  autoconf.evs \
+  autoconf.fns \
+  autoconf.ovs \
+  autoconf.ca  \
+  autoconf.CA  \
+  autoconf.cas \
+  autoconf.CAs \
+  autoconf.tmp
diff --git a/doc/standards.texi b/doc/standards.texi
index 6978e51..18ae0d7 100644
--- a/doc/standards.texi
+++ b/doc/standards.texi
@@ -3,7 +3,7 @@
 @setfilename standards.info
 @settitle GNU Coding Standards
 @c This date is automagically updated when you save this file:
address@hidden lastupdate January 1, 2013
address@hidden lastupdate April 27, 2013
 @c %**end of header
 
 @dircategory GNU organization
@@ -901,7 +901,6 @@ keyboard-driven console interface (for use by users from 
console
 mode).  Once you are doing the work to provide the functionality and
 the graphical interface, these won't be much extra work.
 
-
 @node Command-Line Interfaces
 @section Standards for Command Line Interfaces
 @cindex command-line interface
@@ -1076,7 +1075,7 @@ The Apache Software Foundation license,
 @url{http://www.apache.org/@/licenses}.
 
 @item Artistic
-The Artistic license used for Perl, 
@url{http://www.perlfoundation.org/@/legal}.
+The Artistic license used for Perl, 
@url{http://dev.perl.org/licenses/artistic.html}.
 
 @item Expat
 The Expat license, @url{http://www.jclark.com/@/xml/@/copying.txt}.
@@ -3374,13 +3373,13 @@ are purely tutorial and cover the basics of the 
subject.  These provide
 the framework for a beginner to understand the rest of the manual.  The
 Bison manual provides a good example of how to do this.
 
-To serve as a reference, a manual should have an Index that list all the
-functions, variables, options, and important concepts that are part of
-the program.  One combined Index should do for a short manual, but
-sometimes for a complex package it is better to use multiple indices.
-The Texinfo manual includes advice on preparing good index entries, see
address@hidden Entries, , Making Index Entries, texinfo, GNU Texinfo}, and
-see @ref{Indexing Commands, , Defining the Entries of an
+To serve as a reference, a manual should have an Index that lists all
+the functions, variables, options, and important concepts that are
+part of the program.  One combined Index should do for a short manual,
+but sometimes for a complex package it is better to use multiple
+indices.  The Texinfo manual includes advice on preparing good index
+entries, see @ref{Index Entries, , Making Index Entries, texinfo, GNU
+Texinfo}, and see @ref{Indexing Commands, , Defining the Entries of an
 Index, texinfo, GNU Texinfo}.
 
 Don't use Unix man pages as a model for how to write GNU documentation;
diff --git a/lib/Autom4te/Makefile.am b/lib/Autom4te/Makefile.am
deleted file mode 100644
index 4a2c6bf..0000000
--- a/lib/Autom4te/Makefile.am
+++ /dev/null
@@ -1,37 +0,0 @@
-## Process this file with automake to create Makefile.in
-
-# Copyright (C) 2001, 2003, 2009-2013 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-perllibdir = $(pkgdatadir)/Autom4te
-dist_perllib_DATA = \
-  C4che.pm \
-  ChannelDefs.pm \
-  Channels.pm \
-  Configure_ac.pm \
-  FileUtils.pm \
-  General.pm \
-  Getopt.pm \
-  Request.pm \
-  XFile.pm
-
-
-## --------------- ##
-## Building TAGS.  ##
-## --------------- ##
-
-TAGS_FILES = $(dist_perllib_DATA)
-
-ETAGS_ARGS = --lang=perl
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index 7e30468..0000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,44 +0,0 @@
-# Make Autoconf-related libraries.
-
-# Copyright (C) 2001-2005, 2009-2013 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-SUBDIRS = Autom4te m4sugar autoconf autotest autoscan emacs
-nodist_pkgdata_DATA = autom4te.cfg
-EXTRA_DIST = autom4te.in freeze.mk
-
-edit = sed \
-       -e 's|@address@hidden|$(SHELL)|g' \
-       -e 's|@address@hidden|$(PERL)|g' \
-       -e 's|@address@hidden|$(bindir)|g' \
-       -e 's|@address@hidden|$(pkgdatadir)|g' \
-       -e 's|@address@hidden|$(prefix)|g' \
-       -e 's|@address@hidden|'`echo autoconf | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|'`echo autoheader | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|'`echo autom4te | sed '$(transform)'`'|g' \
-       -e 's|@address@hidden|$(M4)|g' \
-       -e 's|@address@hidden|$(AWK)|g' \
-       -e 's|@address@hidden|$(VERSION)|g' \
-       -e 's|@address@hidden|$(PACKAGE_NAME)|g'
-
-# All the files below depend on Makefile so that they are rebuilt
-# when the prefix, etc. changes. Unfortunately, suffix rules
-# cannot have additional dependencies, so we have to use explicit rules.
-CLEANFILES = autom4te.cfg
-autom4te.cfg: $(srcdir)/autom4te.in Makefile
-       rm -f autom4te.cfg autom4te.tmp
-       $(edit) $(srcdir)/autom4te.in >autom4te.tmp
-       chmod a-w autom4te.tmp
-       mv autom4te.tmp autom4te.cfg
diff --git a/lib/autoconf/Makefile.am b/lib/autoconf/Makefile.am
deleted file mode 100644
index a6ec393..0000000
--- a/lib/autoconf/Makefile.am
+++ /dev/null
@@ -1,54 +0,0 @@
-# Make Autoconf library.
-
-# Copyright (C) 2001-2002, 2006, 2009-2013 Free Software Foundation,
-# Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-autoconflibdir = $(pkgdatadir)/autoconf
-dist_autoconflib_DATA = \
-       autoconf.m4 \
-       general.m4 status.m4 oldnames.m4 specific.m4 \
-       autoheader.m4 autoupdate.m4 autotest.m4 autoscan.m4 \
-       lang.m4 c.m4 erlang.m4 fortran.m4 \
-       functions.m4 go.m4 headers.m4 types.m4 libs.m4 programs.m4
-
-nodist_autoconflib_DATA = autoconf.m4f
-CLEANFILES = $(nodist_autoconflib_DATA)
-
-
-## --------------- ##
-## Building TAGS.  ##
-## --------------- ##
-
-TAGS_FILES = $(dist_autoconflib_DATA)
-
-ETAGS_ARGS = $(ETAGS_FOR_AUTOCONF)
-
-
-## -------- ##
-## Checks.  ##
-## -------- ##
-
-check-local: check-forbidden-patterns
-forbidden_patterns = -e '^_*EOF' -e ' cmp '
-forbidden_patterns_files = $(dist_autoconflib_DATA)
-
-
-## ------------------ ##
-## The frozen files.  ##
-## ------------------ ##
-
-autoconf.m4f: $(autoconf_m4f_dependencies)
-include ../freeze.mk
diff --git a/lib/autoscan/Makefile.am b/lib/autoscan/Makefile.am
deleted file mode 100644
index 7b27aca..0000000
--- a/lib/autoscan/Makefile.am
+++ /dev/null
@@ -1,40 +0,0 @@
-# Make Autoscan library.
-
-# Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-autoscanlibdir = $(pkgdatadir)/autoscan
-
-EXTRA_DIST = autoscan.pre
-nodist_autoscanlib_DATA = autoscan.list
-CLEANFILES = autoscan.list
-
-## ------------------------ ##
-## Building autoscan.list.  ##
-## ------------------------ ##
-
-## autoscan.list might change when autoconf.m4f sources change.
-## Therefore we want the same dependencies as autoconf.m4f, which
-## are listed in freeze.mk.  It also ensure that tests/autom4te
-## is built (we need it in the command below).
-include ../freeze.mk
-
-autoscan.list: $(srcdir)/autoscan.pre $(autoconf_m4f_dependencies) Makefile.am
-       echo '# Automatically Generated: do not edit this file' >autoscan.list
-       sed '/^[#]/!q' $(srcdir)/autoscan.pre                  >>autoscan.list
-       ( \
-         sed -n '/^[^#]/p' $(srcdir)/autoscan.pre; \
-         $(MY_AUTOM4TE) --cache '' -M -l autoconf -t'AN_OUTPUT:$$1: $$2        
        $$3' \
-       ) | LC_ALL=C sort                                      >>autoscan.list
diff --git a/lib/autotest/Makefile.am b/lib/autotest/Makefile.am
deleted file mode 100644
index 6784352..0000000
--- a/lib/autotest/Makefile.am
+++ /dev/null
@@ -1,46 +0,0 @@
-# Make Autotest library.
-
-# Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-autotestlibdir = $(pkgdatadir)/autotest
-dist_autotestlib_DATA = autotest.m4 general.m4 specific.m4
-nodist_autotestlib_DATA = autotest.m4f
-CLEANFILES = $(nodist_autotestlib_DATA)
-
-## --------------- ##
-## Building TAGS.  ##
-## --------------- ##
-
-TAGS_FILES = $(dist_autotestlib_DATA)
-
-ETAGS_ARGS = $(ETAGS_FOR_AUTOCONF)
-
-
-## -------- ##
-## Checks.  ##
-## -------- ##
-
-check-local: check-forbidden-patterns
-forbidden_patterns = -e '^_*EOF' -e ' cmp '
-forbidden_patterns_files = $(dist_autotestlib_DATA)
-
-
-## ------------------ ##
-## The frozen files.  ##
-## ------------------ ##
-
-autotest.m4f: $(autotest_m4f_dependencies)
-include ../freeze.mk
diff --git a/lib/emacs/Makefile.am b/lib/emacs/Makefile.am
deleted file mode 100644
index aa62207..0000000
--- a/lib/emacs/Makefile.am
+++ /dev/null
@@ -1,3 +0,0 @@
-# Make Autoconf Emacs library.
-
-dist_lisp_LISP = autoconf-mode.el autotest-mode.el
diff --git a/lib/freeze.mk b/lib/freeze.mk
index 8447455..77cb7c4 100644
--- a/lib/freeze.mk
+++ b/lib/freeze.mk
@@ -20,11 +20,9 @@
 ## Freeze M4 files.  ##
 ## ----------------- ##
 
-SUFFIXES = .m4 .m4f
+SUFFIXES += .m4 .m4f
 
-AUTOM4TE_CFG = $(top_builddir)/lib/autom4te.cfg
-$(AUTOM4TE_CFG): $(top_srcdir)/lib/autom4te.in
-       cd $(top_builddir)/lib && $(MAKE) $(AM_MAKEFLAGS) autom4te.cfg
+AUTOM4TE_CFG = lib/autom4te.cfg
 
 # Do not use AUTOM4TE here, since maint.mk (my-distcheck)
 # checks if we are independent of Autoconf by defining AUTOM4TE (and
@@ -42,9 +40,14 @@ MY_AUTOM4TE =                                                
                        \
 # It may happen that the output does not end with an end of line, hence
 # force an end of line when reporting errors.
 .m4.m4f:
-       $(MY_AUTOM4TE)                          \
-               --language=$*                   \
-               --freeze                        \
+       $(MKDIR_P) $(@D)
+       lang=`echo '$*' | sed 's,.*/,,'` \
+         && if test $$lang = autoconf; then \
+              lang=autoconf-without-aclocal-m4; \
+            else :; fi \
+         && $(MY_AUTOM4TE) \
+               --language=$$lang \
+               --freeze \
                --output=$@
 
 # Factor the dependencies between all the frozen files.
@@ -55,10 +58,6 @@ build_libdir = $(top_builddir)/lib
 
 m4f_dependencies = $(top_builddir)/bin/autom4te $(AUTOM4TE_CFG)
 
-# For parallel builds.
-$(build_libdir)/m4sugar/version.m4:
-       cd $(build_libdir)/m4sugar && $(MAKE) $(AM_MAKEFLAGS) version.m4
-
 m4sugar_m4f_dependencies =                     \
        $(m4f_dependencies)                     \
        $(src_libdir)/m4sugar/m4sugar.m4        \
diff --git a/lib/local.mk b/lib/local.mk
new file mode 100644
index 0000000..c5a606a
--- /dev/null
+++ b/lib/local.mk
@@ -0,0 +1,195 @@
+# Make Autoconf-related libraries.
+
+# Copyright (C) 2001-2005, 2009-2013 Free Software Foundation, Inc.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ETAGS_ARGS += $(ETAGS_FOR_AUTOCONF)
+TAGS_FILES = # Incrementally updated later.
+
+# Additional checks.
+check-local: check-forbidden-patterns
+forbidden_patterns = -e '^_*EOF' -e ' cmp '
+forbidden_patterns_files = # Incrementally updated later.
+
+## ---------------------------------------------------------------- ##
+## Auxiliary perl modules used by autom4te and other perl scripts.  ##
+## ---------------------------------------------------------------- ##
+
+perllibdir = $(pkgdatadir)/Autom4te
+
+dist_perllib_DATA = \
+  lib/Autom4te/C4che.pm \
+  lib/Autom4te/ChannelDefs.pm \
+  lib/Autom4te/Channels.pm \
+  lib/Autom4te/Configure_ac.pm \
+  lib/Autom4te/FileUtils.pm \
+  lib/Autom4te/General.pm \
+  lib/Autom4te/Getopt.pm \
+  lib/Autom4te/Request.pm \
+  lib/Autom4te/XFile.pm
+
+TAGS_FILES += $(dist_perllib_DATA)
+# Note: ETAGS_ARGS should have already been extended to handle perl files.
+
+## ------------------------------------------ ##
+## Make Autom4te default configuration file.  ##
+## ------------------------------------------ ##
+
+nodist_pkgdata_DATA = lib/autom4te.cfg
+EXTRA_DIST += lib/autom4te.in
+
+# All the files below depend on Makefile so that they are rebuilt
+# when the prefix, etc. changes. Unfortunately, suffix rules
+# cannot have additional dependencies, so we have to use explicit rules.
+CLEANFILES += lib/autom4te.cfg
+lib/autom4te.cfg: $(srcdir)/lib/autom4te.in Makefile
+       rm -f $@ address@hidden
+       $(MKDIR_P) $(@D)
+       $(edit) $(srcdir)/lib/autom4te.in >address@hidden
+       chmod a-w address@hidden
+       mv -f address@hidden $@
+
+## ----------------------------- ##
+## Make Autoconf Emacs library.  ##
+## ----------------------------- ##
+
+dist_lisp_LISP = lib/emacs/autoconf-mode.el lib/emacs/autotest-mode.el
+
+# TODO: This is required to work around a limitation in older
+#      Automake.  Remove once we can assume Automake 1.13 or later.
+CLEANFILES += autoconf-mode.elc autotest-mode.elc
+
+## ----------------------- ##
+## Make Autoconf library.  ##
+## ----------------------- ##
+
+autoconflibdir = $(pkgdatadir)/autoconf
+
+dist_autoconflib_DATA = \
+  lib/autoconf/autoconf.m4 \
+  lib/autoconf/general.m4 \
+  lib/autoconf/status.m4 \
+  lib/autoconf/oldnames.m4 \
+  lib/autoconf/specific.m4 \
+  lib/autoconf/autoheader.m4 \
+  lib/autoconf/autoupdate.m4 \
+  lib/autoconf/autotest.m4 \
+  lib/autoconf/autoscan.m4 \
+  lib/autoconf/lang.m4 \
+  lib/autoconf/c.m4 \
+  lib/autoconf/erlang.m4 \
+  lib/autoconf/fortran.m4 \
+  lib/autoconf/functions.m4 \
+  lib/autoconf/go.m4 \
+  lib/autoconf/headers.m4 \
+  lib/autoconf/types.m4 \
+  lib/autoconf/libs.m4 \
+  lib/autoconf/programs.m4
+
+nodist_autoconflib_DATA = lib/autoconf/autoconf.m4f
+CLEANFILES += $(nodist_autoconflib_DATA)
+
+TAGS_FILES += $(dist_autoconflib_DATA)
+
+forbidden_patterns_files += $(dist_autoconflib_DATA)
+
+lib/autoconf/autoconf.m4f: $(autoconf_m4f_dependencies)
+
+## ------------------------ ##
+##  Make Autoscan library.  ##
+## ------------------------ ##
+
+autoscanlibdir = $(pkgdatadir)/autoscan
+
+EXTRA_DIST += lib/autoscan/autoscan.pre
+nodist_autoscanlib_DATA = lib/autoscan/autoscan.list
+CLEANFILES += lib/autoscan/autoscan.list
+
+lib/autoscan/autoscan.list: $(srcdir)/lib/autoscan/autoscan.pre
+       $(MKDIR_P) $(@D)
+       echo '# Automatically Generated: do not edit this file' >$@
+       sed '/^[#]/!q' $(srcdir)/lib/autoscan/autoscan.pre >>$@
+       ( \
+         sed -n '/^[^#]/p' $(srcdir)/lib/autoscan/autoscan.pre; \
+         $(MY_AUTOM4TE) --cache '' -M -l autoconf-without-aclocal-m4 \
+                        -t'AN_OUTPUT:$$1: $$2          $$3' \
+       ) | LC_ALL=C sort >>$@
+
+lib/autoscan/autoscan.list: $(autoconf_m4f_dependencies) Makefile
+
+## ----------------------------------- ##
+## Make Autoconf library for M4sugar.  ##
+## ----------------------------------- ##
+
+m4sugarlibdir = $(pkgdatadir)/m4sugar
+
+dist_m4sugarlib_DATA = \
+  lib/m4sugar/m4sugar.m4 \
+  lib/m4sugar/foreach.m4 \
+  lib/m4sugar/m4sh.m4
+
+nodist_m4sugarlib_DATA = \
+  lib/m4sugar/version.m4 \
+  lib/m4sugar/m4sugar.m4f \
+  lib/m4sugar/m4sh.m4f
+
+CLEANFILES += $(nodist_m4sugarlib_DATA)
+
+# The ':;' in the second line of the recipe works around a redirected
+# compound command bash exit status bug.
+lib/m4sugar/version.m4: Makefile
+       $(MKDIR_P) $(@D)
+       :;{ \
+         echo '# This file is part of -*- Autoconf -*-.' && \
+         echo '# Version of Autoconf.' && \
+         echo '# Copyright (C) 1999, 2000, 2001, 2002, 2006, 2007, 2009' && \
+         echo '# Free Software Foundation, Inc.' && \
+         echo  &&\
+         echo 'm4_define([m4_PACKAGE_NAME],      [$(PACKAGE_NAME)])' && \
+         echo 'm4_define([m4_PACKAGE_TARNAME],   [$(PACKAGE_TARNAME)])' && \
+         echo 'm4_define([m4_PACKAGE_VERSION],   [$(PACKAGE_VERSION)])' && \
+         echo 'm4_define([m4_PACKAGE_STRING],    [$(PACKAGE_STRING)])' && \
+         echo 'm4_define([m4_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])' && \
+         echo 'm4_define([m4_PACKAGE_URL],       [$(PACKAGE_URL)])' && \
+         echo 'm4_define([m4_PACKAGE_YEAR],      [$(RELEASE_YEAR)])'; \
+       } > address@hidden
+       mv address@hidden $@
+
+TAGS_FILES += $(dist_m4sugarlib_DATA)
+
+forbidden_patterns_files += $(dist_m4sugarlib_DATA)
+
+lib/m4sugar/m4sugar.m4f: $(m4sugar_m4f_dependencies)
+lib/m4sugar/m4sh.m4f: $(m4sh_m4f_dependencies)
+
+## ----------------------- ##
+## Make Autotest library.  ##
+## ----------------------- ##
+
+autotestlibdir = $(pkgdatadir)/autotest
+
+dist_autotestlib_DATA = \
+  lib/autotest/autotest.m4 \
+  lib/autotest/general.m4 \
+  lib/autotest/specific.m4
+
+nodist_autotestlib_DATA = lib/autotest/autotest.m4f
+CLEANFILES += $(nodist_autotestlib_DATA)
+
+TAGS_FILES += $(dist_autotestlib_DATA)
+
+forbidden_patterns_files += $(dist_autotestlib_DATA)
+
+lib/autotest/autotest.m4f: $(autotest_m4f_dependencies)
diff --git a/lib/m4sugar/Makefile.am b/lib/m4sugar/Makefile.am
deleted file mode 100644
index f3e6af0..0000000
--- a/lib/m4sugar/Makefile.am
+++ /dev/null
@@ -1,75 +0,0 @@
-# Make Autoconf library for M4sugar.
-
-# Copyright (C) 2001-2002, 2006-2013 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-m4sugarlibdir = $(pkgdatadir)/m4sugar
-dist_m4sugarlib_DATA = m4sugar.m4 foreach.m4 m4sh.m4
-nodist_m4sugarlib_DATA = version.m4 m4sugar.m4f m4sh.m4f
-CLEANFILES = $(nodist_m4sugarlib_DATA)
-
-# Get the release year from ../ChangeLog.
-RELEASE_YEAR = \
-  `sed 's/^\([0-9][0-9][0-9][0-9]\).*/\1/;q' $(top_srcdir)/ChangeLog`
-
-## ------------ ##
-## version.m4.  ##
-## ------------ ##
-
-# The ':;' works around a redirected compound command bash exit status bug.
-version.m4: Makefile
-       :;{ \
-         echo '# This file is part of -*- Autoconf -*-.' && \
-         echo '# Version of Autoconf.' && \
-         echo '# Copyright (C) 1999, 2000, 2001, 2002, 2006, 2007, 2009' && \
-         echo '# Free Software Foundation, Inc.' && \
-         echo  &&\
-         echo 'm4_define([m4_PACKAGE_NAME],      [$(PACKAGE_NAME)])' && \
-         echo 'm4_define([m4_PACKAGE_TARNAME],   [$(PACKAGE_TARNAME)])' && \
-         echo 'm4_define([m4_PACKAGE_VERSION],   [$(PACKAGE_VERSION)])' && \
-         echo 'm4_define([m4_PACKAGE_STRING],    [$(PACKAGE_STRING)])' && \
-         echo 'm4_define([m4_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])' && \
-         echo 'm4_define([m4_PACKAGE_URL],       [$(PACKAGE_URL)])' && \
-         echo 'm4_define([m4_PACKAGE_YEAR],      ['$(RELEASE_YEAR)'])'; \
-       } > address@hidden
-       mv address@hidden $@
-
-
-## --------------- ##
-## Building TAGS.  ##
-## --------------- ##
-
-TAGS_FILES = $(dist_m4sugarlib_DATA)
-
-ETAGS_ARGS = $(ETAGS_FOR_AUTOCONF)
-
-
-## -------- ##
-## Checks.  ##
-## -------- ##
-
-check-local: check-forbidden-patterns
-forbidden_patterns = -e '^_*EOF' -e ' cmp '
-forbidden_patterns_files = $(dist_m4sugarlib_DATA)
-
-
-
-## ------------------ ##
-## The frozen files.  ##
-## ------------------ ##
-
-m4sugar.m4f: $(m4sugar_m4f_dependencies)
-m4sh.m4f: $(m4sh_m4f_dependencies)
-include ../freeze.mk
diff --git a/man/Makefile.am b/man/local.mk
similarity index 50%
rename from man/Makefile.am
rename to man/local.mk
index b2dddfb..d5c7716 100644
--- a/man/Makefile.am
+++ b/man/local.mk
@@ -15,48 +15,50 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+binsrcdir = $(srcdir)/bin
+mansrcdir = $(srcdir)/man
+
 dist_man_MANS = \
-       $(srcdir)/autoconf.1 \
-       $(srcdir)/autoheader.1 \
-       $(srcdir)/autom4te.1 \
-       $(srcdir)/autoreconf.1 \
-       $(srcdir)/autoscan.1 \
-       $(srcdir)/autoupdate.1 \
-       $(srcdir)/ifnames.1 \
-       $(srcdir)/config.guess.1 \
-       $(srcdir)/config.sub.1
+  $(mansrcdir)/autoconf.1 \
+  $(mansrcdir)/autoheader.1 \
+  $(mansrcdir)/autom4te.1 \
+  $(mansrcdir)/autoreconf.1 \
+  $(mansrcdir)/autoscan.1 \
+  $(mansrcdir)/autoupdate.1 \
+  $(mansrcdir)/ifnames.1 \
+  $(mansrcdir)/config.guess.1 \
+  $(mansrcdir)/config.sub.1
 
-EXTRA_DIST = $(dist_man_MANS:.1=.x) common.x
-MAINTAINERCLEANFILES = $(dist_man_MANS)
+EXTRA_DIST += $(dist_man_MANS:.1=.x) man/common.x
+MAINTAINERCLEANFILES += $(dist_man_MANS)
 
 # Depend on .version to get version number changes.
-common_dep = $(top_srcdir)/.version $(srcdir)/common.x
-binsrcdir = $(top_srcdir)/bin
-$(srcdir)/autoconf.1:   $(common_dep) $(binsrcdir)/autoconf.as
-$(srcdir)/autoheader.1: $(common_dep) $(binsrcdir)/autoheader.in
-$(srcdir)/autom4te.1:   $(common_dep) $(binsrcdir)/autom4te.in
-$(srcdir)/autoreconf.1: $(common_dep) $(binsrcdir)/autoreconf.in
-$(srcdir)/autoscan.1:   $(common_dep) $(binsrcdir)/autoscan.in
-$(srcdir)/autoupdate.1: $(common_dep) $(binsrcdir)/autoupdate.in
-$(srcdir)/ifnames.1:    $(common_dep) $(binsrcdir)/ifnames.in
+common_dep = $(srcdir)/.version $(srcdir)/man/common.x
+$(mansrcdir)/autoconf.1:   $(common_dep) $(binsrcdir)/autoconf.as
+$(mansrcdir)/autoheader.1: $(common_dep) $(binsrcdir)/autoheader.in
+$(mansrcdir)/autom4te.1:   $(common_dep) $(binsrcdir)/autom4te.in
+$(mansrcdir)/autoreconf.1: $(common_dep) $(binsrcdir)/autoreconf.in
+$(mansrcdir)/autoscan.1:   $(common_dep) $(binsrcdir)/autoscan.in
+$(mansrcdir)/autoupdate.1: $(common_dep) $(binsrcdir)/autoupdate.in
+$(mansrcdir)/ifnames.1:    $(common_dep) $(binsrcdir)/ifnames.in
 
 # Independent from this package.
-$(srcdir)/config.guess.1: $(top_srcdir)/build-aux/config.guess
-$(srcdir)/config.sub.1:   $(top_srcdir)/build-aux/config.sub
+$(mansrcdir)/config.guess.1: $(srcdir)/build-aux/config.guess
+$(mansrcdir)/config.sub.1:   $(srcdir)/build-aux/config.sub
 
 remove_time_stamp = 's/^\(\.TH[^"]*"[^"]*"[^"]*\)"[^"]*"/\1/'
 
-MOSTLYCLEANFILES = $(srcdir)/*.t
+MOSTLYCLEANFILES += $(srcdir)/man/*.t
 
-SUFFIXES = .x .1
+SUFFIXES += .x .1
 
 .x.1:
        @echo "Updating man page $@"
-       
PATH="$(top_builddir)/tests$(PATH_SEPARATOR)$(top_srcdir)/build-aux$(PATH_SEPARATOR)$$PATH";
 \
+       
PATH="./tests$(PATH_SEPARATOR)$(top_srcdir)/build-aux$(PATH_SEPARATOR)$$PATH"; \
        export PATH; \
        $(HELP2MAN) \
            --include=$*.x \
-           --include=$(srcdir)/common.x \
+           --include=$(srcdir)/man/common.x \
            --source='$(PACKAGE_STRING)' \
            address@hidden `echo '$*' | sed 's,.*/,,'`
        if sed $(remove_time_stamp) $@ >address@hidden 2>/dev/null && \
diff --git a/tests/Makefile.am b/tests/local.mk
similarity index 62%
rename from tests/Makefile.am
rename to tests/local.mk
index 1203427..0f26f51 100644
--- a/tests/Makefile.am
+++ b/tests/local.mk
@@ -19,24 +19,20 @@
 # only needs m4 to build them, and m4 is required to install Autoconf.
 # But if you are borrowing from this file for setting up autotest in your
 # project, remember to distribute both testsuite and package.m4.
-EXTRA_DIST = $(TESTSUITE_AT) local.at mktests.sh \
-            atlocal.in wrapper.as statesave.m4
+EXTRA_DIST += \
+  $(TESTSUITE_AT) \
+  tests/local.at \
+  tests/mktests.sh \
+  tests/atlocal.in \
+  tests/wrapper.as \
+  tests/statesave.m4
 
 # Running the uninstalled scripts.  Build them upon 'all', for the manpages.
 noinst_SCRIPTS = $(wrappers)
-DISTCLEANFILES = atconfig atlocal $(TESTSUITE)
-MAINTAINERCLEANFILES = Makefile.in
-
-# Import the dependencies on Autotest and M4sh.
-include ../lib/freeze.mk
-
-
-## ------------ ##
-## package.m4.  ##
-## ------------ ##
+DISTCLEANFILES += tests/atconfig tests/atlocal $(TESTSUITE)
 
 # The ':;' works around a redirected compound command bash exit status bug.
-package.m4: Makefile
+tests/package.m4: Makefile
        :;{ \
          echo '# Signature of the current package.' && \
          echo 'm4_define([AT_PACKAGE_NAME],      [$(PACKAGE_NAME)])' && \
@@ -54,22 +50,33 @@ package.m4: Makefile
 ## Wrappers.  ##
 ## ---------- ##
 
-wrappers = autoconf autoheader autom4te autoreconf autoscan autoupdate ifnames
-CLEANFILES = wrapper.in $(wrappers) package.m4
-
-wrapper.in: $(srcdir)/wrapper.as $(m4sh_m4f_dependencies)
-       $(MY_AUTOM4TE) --language=M4sh $(srcdir)/wrapper.as -o $@
-
-edit = sed \
-       -e 's|@address@hidden|$@|g' \
-       -e 's|@address@hidden|@abs_top_srcdir@|g' \
-       -e 's|@address@hidden|@abs_top_builddir@|g' \
+wrappers = \
+  tests/autoconf \
+  tests/autoheader \
+  tests/autom4te \
+  tests/autoreconf \
+  tests/autoscan \
+  tests/autoupdate \
+  tests/ifnames
+
+CLEANFILES += \
+  tests/package.m4 \
+  tests/wrapper.in \
+  $(wrappers)
+
+tests/wrapper.in: $(srcdir)/tests/wrapper.as $(m4sh_m4f_dependencies)
+       $(MY_AUTOM4TE) --language=M4sh $(srcdir)/tests/wrapper.as -o $@
+
+edit_wrapper = sed \
+       -e 's|@address@hidden|$(@F)|g' \
+       -e 's|@address@hidden|$(abs_top_srcdir)|g' \
+       -e 's|@address@hidden|$(abs_top_builddir)|g' \
        -e "s|@address@hidden|Generated from $$input.|g"
 
-$(wrappers): wrapper.in
+$(wrappers): tests/wrapper.in
        rm -f $@ address@hidden
-       input=wrapper.in; \
-       $(edit) wrapper.in >address@hidden
+       input=tests/wrapper.in \
+         && $(edit_wrapper) tests/wrapper.in >address@hidden
        chmod +x address@hidden
        chmod a-w address@hidden
        mv -f address@hidden $@
@@ -81,47 +88,55 @@ $(wrappers): wrapper.in
 ## ------------ ##
 
 TESTSUITE_GENERATED_AT = \
-       $(srcdir)/aclang.at \
-       $(srcdir)/acc.at \
-       $(srcdir)/acfortran.at \
-       $(srcdir)/acgo.at \
-       $(srcdir)/acgeneral.at \
-       $(srcdir)/acstatus.at \
-       $(srcdir)/acautoheader.at \
-       $(srcdir)/acautoupdate.at \
-       $(srcdir)/acspecific.at \
-       $(srcdir)/acfunctions.at \
-       $(srcdir)/acheaders.at \
-       $(srcdir)/actypes.at \
-       $(srcdir)/aclibs.at \
-       $(srcdir)/acprograms.at
+  $(srcdir)/tests/aclang.at \
+  $(srcdir)/tests/acc.at \
+  $(srcdir)/tests/acfortran.at \
+  $(srcdir)/tests/acgo.at \
+  $(srcdir)/tests/acgeneral.at \
+  $(srcdir)/tests/acstatus.at \
+  $(srcdir)/tests/acautoheader.at \
+  $(srcdir)/tests/acautoupdate.at \
+  $(srcdir)/tests/acspecific.at \
+  $(srcdir)/tests/acfunctions.at \
+  $(srcdir)/tests/acheaders.at \
+  $(srcdir)/tests/actypes.at \
+  $(srcdir)/tests/aclibs.at \
+  $(srcdir)/tests/acprograms.at
 
 TESTSUITE_HAND_AT = \
-       suite.at \
-       m4sugar.at m4sh.at autotest.at \
-       base.at tools.at torture.at \
-       compile.at c.at erlang.at fortran.at go.at \
-       semantics.at \
-       autoscan.at \
-       foreign.at
+  tests/suite.at \
+  tests/m4sugar.at \
+  tests/m4sh.at \
+  tests/autotest.at \
+  tests/base.at \
+  tests/tools.at \
+  tests/torture.at \
+  tests/compile.at \
+  tests/c.at \
+  tests/erlang.at \
+  tests/fortran.at \
+  tests/go.at \
+  tests/semantics.at \
+  tests/autoscan.at \
+  tests/foreign.at
 
 TESTSUITE_AT = $(TESTSUITE_GENERATED_AT) $(TESTSUITE_HAND_AT)
-TESTSUITE = ./testsuite
+TESTSUITE = tests/testsuite
 
 # Run the non installed autom4te.
 # Don't use AUTOM4TE since 'make alpha' makes it unavailable although
 # we are allowed to use it (since we ship it).
+AUTOTESTFLAGS = -I tests -I $(srcdir)/tests
 AUTOTEST = $(MY_AUTOM4TE) --language=autotest
-$(TESTSUITE): package.m4 \
-             local.at \
+$(TESTSUITE): tests/package.m4 \
+             tests/local.at \
              $(TESTSUITE_AT) \
-             $(autotest_m4f_dependencies)
-       cd $(top_builddir)/lib/autotest && $(MAKE) $(AM_MAKEFLAGS) autotest.m4f
-       $(AUTOTEST) -I . -I $(srcdir) suite.at -o address@hidden
+             lib/autotest/autotest.m4f
+       $(AUTOTEST) $(AUTOTESTFLAGS) suite.at -o address@hidden
        mv address@hidden $@
 
-atconfig: $(top_builddir)/config.status
-       cd $(top_builddir) && ./config.status tests/$@
+# Factor out invocation of the testsuite script.
+run_testsuite = $(SHELL) $(TESTSUITE) -C tests
 
 # Avoid a race condition that would make parallel "distclean" fail.
 # The rule in clean-local tests for existence of $(TESTSUITE), and
@@ -135,16 +150,16 @@ distclean_generic = distclean-generic
 $(distclean_generic): clean-local
 
 clean-local:
-       test ! -f $(TESTSUITE) || $(SHELL) $(TESTSUITE) --clean
+       test ! -f $(TESTSUITE) || $(run_testsuite)  --clean
        rm -f *.tmp
        rm -f -r autom4te.cache
 
-check-local: atconfig atlocal $(TESTSUITE)
-       $(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
+check-local: tests/atconfig tests/atlocal $(TESTSUITE)
+       $(run_testsuite) $(TESTSUITEFLAGS)
 
 # Run the test suite on the *installed* tree.
-installcheck-local: atconfig atlocal $(TESTSUITE)
-       $(SHELL) $(TESTSUITE) AUTOTEST_PATH="$(bindir)" $(TESTSUITEFLAGS)
+installcheck-local: tests/atconfig tests/atlocal $(TESTSUITE)
+       $(run_testsuite) AUTOTEST_PATH="$(bindir)" $(TESTSUITEFLAGS)
 
 
 
@@ -156,10 +171,10 @@ MAINTAINERCLEANFILES += $(TESTSUITE_GENERATED_AT)
 
 ## Producing the test files.
 
-# The files which contain macros we check for syntax.  Use $(top_srcdir)
+# The files which contain macros we check for syntax.  Use $(srcdir)
 # for the benefit of non-GNU make.  Fix the names in the rule below
 # where we 'cd' to $srcdir.
-autoconfdir = $(top_srcdir)/lib/autoconf
+autoconfdir = $(srcdir)/lib/autoconf
 AUTOCONF_FILES = $(autoconfdir)/general.m4 \
                 $(autoconfdir)/status.m4 \
                 $(autoconfdir)/autoheader.m4 \
@@ -176,24 +191,24 @@ AUTOCONF_FILES = $(autoconfdir)/general.m4 \
                 $(autoconfdir)/types.m4 \
                 $(autoconfdir)/programs.m4
 
-$(TESTSUITE_GENERATED_AT): mktests.stamp
+$(TESTSUITE_GENERATED_AT): tests/mktests.stamp
 ## Recover from the removal of $@
        @if test -f $@; then :; else \
-         rm -f mktests.stamp; \
-         $(MAKE) $(AM_MAKEFLAGS) mktests.stamp; \
+         rm -f tests/mktests.stamp; \
+         $(MAKE) $(AM_MAKEFLAGS) tests/mktests.stamp; \
        fi
 
-mktests.stamp : mktests.sh $(AUTOCONF_FILES)
-       @rm -f mktests.tmp
-       @touch mktests.tmp
-       cd $(srcdir) && ./mktests.sh \
-         `echo " "$(AUTOCONF_FILES) | sed 's, [^ ]*/, ../lib/autoconf/,g'`
-       @mv -f mktests.tmp $@
+tests/mktests.stamp : tests/mktests.sh $(AUTOCONF_FILES)
+       @rm -f tests/mktests.tmp
+       @touch tests/mktests.tmp
+       cd $(srcdir) && $(SHELL) tests/mktests.sh \
+         `echo " "$(AUTOCONF_FILES) | sed 's, [^ ]*/, lib/autoconf/,g'`
+       @mv -f tests/mktests.tmp $@
 
 ## Distribute the stamp file, since we distribute the generated files.
-EXTRA_DIST += mktests.stamp
-CLEANFILES += mktests.tmp
-MAINTAINERCLEANFILES += mktests.stamp
+EXTRA_DIST += tests/mktests.stamp
+CLEANFILES += tests/mktests.tmp
+MAINTAINERCLEANFILES += tests/mktests.stamp
 
 ## maintainer-check ##
 
diff --git a/tests/mktests.sh b/tests/mktests.sh
index b6f5d3f..f8a49c7 100755
--- a/tests/mktests.sh
+++ b/tests/mktests.sh
@@ -22,8 +22,13 @@
 
 as_me=`echo "$0" | sed 's|.*[\\/]||'`
 
+outdir=tests
+acdefuns=$outdir/acdefuns.tmp
+audefuns=$outdir/audefuns.tmp
+requires=$outdir/requires.tmp
+
 trap 'echo "'"$as_me"': failed." >&2
-      rm -f acdefuns audefuns requires *.tat
+      rm -f $acdefuns $audefuns $requires $outdir/*.tat
       trap "" 0
       exit 1' \
      0 1 2 15
@@ -48,7 +53,7 @@ LC_ALL=C export LC_ALL
 # Get the list of macros that are required: there is little interest
 # in testing them since they will be run by the guy who requires them.
 sed -n 's/dnl.*//;s/.*AC_REQUIRE(\[*\([a-zA-Z0-9_]*\).*$/\1/p' $src |
-  sort -u >requires
+  sort -u >$requires
 
 
 # exclude_list
@@ -180,17 +185,18 @@ au_exclude_script="$exclude_list $au_exclude_list {print}"
 for file in $src
 do
   base=`echo "$file" | sed 's|.*[\\/]||;s|\..*||'`
+  acbase=$outdir/ac$base
   # Get the list of macros which are defined in Autoconf level.
   # Get rid of the macros we are not interested in.
   sed -n -e 's/^AC_DEFUN(\[*\([a-zA-Z0-9_]*\).*$/\1/p' \
         -e 's/^AC_DEFUN_ONCE(\[*\([a-zA-Z0-9_]*\).*$/\1/p' $file |
     awk "$ac_exclude_script" |
-    sort -u >acdefuns
+    sort -u >$acdefuns
 
   # Get the list of macros which are defined in Autoupdate level.
   sed -n 's/^AU_DEFUN(\[*\([a-zA-Z][a-zA-Z0-9_]*\).*$/\1/p' $file |
     awk "$au_exclude_script" |
-    sort -u >audefuns
+    sort -u >$audefuns
 
   # Filter out required macros.
   {
@@ -209,26 +215,26 @@ do
 MK_EOF
 
     echo "# Modern macros."
-    comm -23 acdefuns requires | sed 's/.*/AT_CHECK_MACRO([&])/'
+    comm -23 $acdefuns $requires | sed 's/.*/AT_CHECK_MACRO([&])/'
     echo
     echo "# Obsolete macros."
-    comm -23 audefuns requires | sed 's/.*/AT_CHECK_AU_MACRO([&])/'
-  } >ac$base.tat
+    comm -23 $audefuns $requires | sed 's/.*/AT_CHECK_AU_MACRO([&])/'
+  } >$acbase.tat
 
   # In one atomic step so that if something above fails, the trap
   # preserves the old version of the file.  If there is nothing to
   # check, output /rien du tout/[1].
-  if grep AT_CHECK ac$base.tat >/dev/null 2>&1; then
-    mv -f ac$base.tat ac$base.at
+  if grep AT_CHECK $acbase.tat >/dev/null 2>&1; then
+    mv -f $acbase.tat $acbase.at
   else
-    rm -f ac$base.tat ac$base.at
-    touch ac$base.at
+    rm -f $acbase.tat $acbase.at
+    touch $acbase.at
   fi
   # Help people not to update these files by hand.
-  chmod a-w ac$base.at
+  chmod a-w $acbase.at
 done
 
-rm -f acdefuns audefuns requires
+rm -f $acdefuns $audefuns $requires
 
 trap '' 0
 exit 0


hooks/post-receive
-- 
GNU Autoconf source repository



reply via email to

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