m4-commit
[Top][All Lists]
Advanced

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

[SCM] GNU M4 source repository branch, master, updated. cvs-readonly-317


From: Gary V. Vaughan
Subject: [SCM] GNU M4 source repository branch, master, updated. cvs-readonly-317-gc09a187
Date: Sun, 22 Sep 2013 05:43:46 +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 M4 source repository".

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

The branch, master has been updated
       via  c09a187c50f2f74e89d4d0991bdbd2c6846cc707 (commit)
       via  a43fd66dc18e39ce41a699c93710d434c1c38509 (commit)
       via  bf8486051c22115173fc138f95d02221c5ec8806 (commit)
       via  c906f15d5ead18a5e848f11391e48f05b7868268 (commit)
       via  578bd023ea85d57d8488b8cb88265fbe3a3071e4 (commit)
       via  1eacf10370529972a7407bdbb368f5f69f87a1b8 (commit)
       via  0cf73963cbcea634d2f854b27910af7587cbf44d (commit)
       via  ae436983cbae0afe4c8c07f9d65f89e6d446827a (commit)
       via  ff8ad823dc940958abf4dd20ac656b5aa45ad8d3 (commit)
       via  511bd418f72182fe5b8a13990c981de787c99f0c (commit)
      from  64d44150bc5c9af45051371550f9917027e0fa41 (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 c09a187c50f2f74e89d4d0991bdbd2c6846cc707
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 12:22:43 2013 +0700

    configury: install headers correctly.
    
    * Makefile.am (pkgmodincludedir): Remove.
    (nobase_pkginclude_HEADERS, pkgmodinclude_HEADERS): Move from here...
    (nobase_include_HEADERS, noinst_HEADERS): ...to here.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit a43fd66dc18e39ce41a699c93710d434c1c38509
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 12:10:14 2013 +0700

    configury: fold doc/Makefile.am into Makefile.am.
    
    * doc/Makefile.am: Remove.
    * Makefile.am: Reinstate rules here.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit bf8486051c22115173fc138f95d02221c5ec8806
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 11:56:05 2013 +0700

    configury: install gnulib sources into m4 subdirectory.
    
    * configure.ac (AC_CONFIG_LIBOBJ_DIR): Change to m4/gnu.
    (AC_CONFIG_HEADERS): Change to config.h.
    (AC_CONFIG_FILES): Change gnu/Makeflie to m4/gnu/Makefile.
    * .gitignore, po/POTFILES.in: Adjust accordingly.
    * build-aux/m4/gnulib-cache.m4: Regenerate.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit c906f15d5ead18a5e848f11391e48f05b7868268
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 10:49:34 2013 +0700

    configury: move gnulib subproject to build-aux subdirectory.
    
    * gnulib: Move from here...
    * build-aux/gnulib: ...to here.
    * bootstrap.conf (gnulib_path): Set appropriately.
    * .gitignore: Adjust.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit 578bd023ea85d57d8488b8cb88265fbe3a3071e4
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 09:49:06 2013 +0700

    configury: move usage examples into doc subdirectory.
    
    * examples: Move from here...
    * doc/examples: ...to here.
    * Makefile.am (EXTRA_DIST, dist_pkgdata_DATA): Adjust.
    * README, doc/m4.texi, tests/builtins.at, tests/generate.awk,
    tests/others.at: Likewise.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit 1eacf10370529972a7407bdbb368f5f69f87a1b8
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 09:23:34 2013 +0700

    configury: move autoconf macros to build-aux subdirectory.
    
    * ltdl/m4: Move from here...
    * build-aux/m4: ...to here.
    * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
    * Makefile.am (config_macro_dir, ACLOCAL_AMFLAGS): Adjust.
    * build-aux/m4/gnulib-cache.m4: Regenerate.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit 0cf73963cbcea634d2f854b27910af7587cbf44d
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 09:13:35 2013 +0700

    configury: move local gnulib patches to build-aux subdirectory.
    
    * gl: Move from here...
    * build-aux/gl: ...to here.
    * ltdl/m4/gnulib-cache.m4: Regenerate.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit ae436983cbae0afe4c8c07f9d65f89e6d446827a
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 08:32:25 2013 +0700

    configury: gettext cleanup.
    
    Gettext's autopoint script only omits the intl directory creation
    for exactly 'AM_GNU_GETTEXT([external])'; any additional arguments
    force that directory to be built again.
    * configure.ac (AM_GNU_GETTEXT): move need-format-string-macros
    from here...
    (AM_GNU_GETTEXT_NEED): ...to here.
    * bootstrap.con (m4_precopy_git_version_gen): Since we use
    git-version-gen directly in configure.ac, it has to be in place
    before calling autopoint, which leaks error messages about the
    missing script otherwise.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit ff8ad823dc940958abf4dd20ac656b5aa45ad8d3
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 08:05:48 2013 +0700

    configury: don't generate annoying autom4te.cache directory.
    
    * .autom4te.cfg: New file. Disable autotools caching.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

commit 511bd418f72182fe5b8a13990c981de787c99f0c
Author: Gary V. Vaughan <address@hidden>
Date:   Sun Sep 22 08:04:18 2013 +0700

    configury: remove obsolete perl path search.
    
    * configure.ac (AC_PATH_PROG): Remove perl.
    
    Signed-off-by: Gary V. Vaughan <address@hidden>

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

Summary of changes:
 .autom4te.cfg                                     |    4 +
 .gitignore                                        |   61 +------
 Makefile.am                                       |  194 +++++++++++---------
 README                                            |    4 +-
 bootstrap.conf                                    |   17 ++
 {gl => build-aux/gl}/build-aux/bootstrap.in       |    0
 {gl => build-aux/gl}/build-aux/extract-trace      |    0
 {gl => build-aux/gl}/build-aux/funclib.sh         |    0
 {gl => build-aux/gl}/build-aux/inline-source      |    0
 {gl => build-aux/gl}/build-aux/options-parser     |    0
 {gl => build-aux/gl}/lib/clean-temp.c.diff        |    0
 gnulib => build-aux/gnulib                        |    0
 {ltdl => build-aux}/m4/debug.m4                   |    0
 {ltdl => build-aux}/m4/gmp.m4                     |    0
 {ltdl => build-aux}/m4/gnulib-cache.m4            |    8 +-
 {ltdl => build-aux}/m4/m4-error.m4                |    0
 {ltdl => build-aux}/m4/m4-getopt.m4               |    0
 {ltdl => build-aux}/m4/m4-gettext.m4              |    0
 {ltdl => build-aux}/m4/m4-obstack.m4              |    0
 {ltdl => build-aux}/m4/m4-regex.m4                |    0
 {ltdl => build-aux}/m4/m4-rename.m4               |    0
 {ltdl => build-aux}/m4/m4-syscmd.m4               |    0
 {ltdl => build-aux}/m4/stackovf.m4                |    0
 configure.ac                                      |   19 +--
 doc/Makefile.am                                   |   43 -----
 {examples => doc/examples}/COPYING                |    0
 {examples => doc/examples}/WWW/COPYING            |    0
 {examples => doc/examples}/WWW/Makefile           |    0
 {examples => doc/examples}/WWW/_footer.htm        |    0
 {examples => doc/examples}/WWW/_header.htm        |    0
 {examples => doc/examples}/WWW/m4lib/COPYING      |    0
 {examples => doc/examples}/WWW/m4lib/bugs.m4      |    0
 {examples => doc/examples}/WWW/m4lib/changelog.m4 |    0
 {examples => doc/examples}/WWW/m4lib/download.m4  |    0
 {examples => doc/examples}/WWW/m4lib/features.m4  |    0
 {examples => doc/examples}/WWW/m4lib/feedback.m4  |    0
 {examples => doc/examples}/WWW/m4lib/html.m4      |    0
 {examples => doc/examples}/WWW/m4lib/index.m4     |    0
 {examples => doc/examples}/WWW/m4lib/layout.m4    |    0
 {examples => doc/examples}/WWW/m4lib/lists.m4     |    0
 {examples => doc/examples}/WWW/m4lib/menu.m4      |    0
 {examples => doc/examples}/WWW/m4lib/modules.m4   |    0
 {examples => doc/examples}/WWW/m4lib/news.m4      |    0
 {examples => doc/examples}/WWW/m4lib/readme.m4    |    0
 {examples => doc/examples}/WWW/m4lib/setup.m4     |    0
 {examples => doc/examples}/WWW/m4lib/test.m4      |    0
 {examples => doc/examples}/WWW/m4lib/thanks.m4    |    0
 {examples => doc/examples}/WWW/m4lib/thissite.m4  |    0
 {examples => doc/examples}/WWW/m4lib/tmpl.m4      |    0
 {examples => doc/examples}/WWW/m4lib/todo.m4      |    0
 {examples => doc/examples}/WWW/m4lib/uses.m4      |    0
 {examples => doc/examples}/WWW/m4lib/visions.m4   |    0
 {examples => doc/examples}/WWW/m4lib/whatis.m4    |    0
 {examples => doc/examples}/capitalize.m4          |    0
 {examples => doc/examples}/capitalize2.m4         |    0
 {examples => doc/examples}/comments.m4            |    0
 {examples => doc/examples}/curry.m4               |    0
 {examples => doc/examples}/ddivert.m4             |    0
 {examples => doc/examples}/debug.m4               |    0
 {examples => doc/examples}/esyscmd.m4             |    0
 {examples => doc/examples}/exp.m4                 |    0
 {examples => doc/examples}/foreach.m4             |    0
 {examples => doc/examples}/foreach2.m4            |    0
 {examples => doc/examples}/foreachq.m4            |    0
 {examples => doc/examples}/foreachq2.m4           |    0
 {examples => doc/examples}/foreachq3.m4           |    0
 {examples => doc/examples}/foreachq4.m4           |    0
 {examples => doc/examples}/forloop.m4             |    0
 {examples => doc/examples}/forloop2.m4            |    0
 {examples => doc/examples}/forloop3.m4            |    0
 {examples => doc/examples}/fstab.m4               |    0
 {examples => doc/examples}/hanoi.m4               |    0
 {examples => doc/examples}/incl-test.m4           |    0
 {examples => doc/examples}/incl.m4                |    0
 {examples => doc/examples}/include.m4             |    0
 {examples => doc/examples}/indir.m4               |    0
 {examples => doc/examples}/join.m4                |    0
 {examples => doc/examples}/loop.m4                |    0
 {examples => doc/examples}/misc.m4                |    0
 {examples => doc/examples}/modtest.m4             |    0
 {examples => doc/examples}/multiquotes.m4         |    0
 {examples => doc/examples}/patsubst.m4            |    0
 {examples => doc/examples}/pushpop.m4             |    0
 {examples => doc/examples}/quote.m4               |    0
 {examples => doc/examples}/regexp.m4              |    0
 {examples => doc/examples}/reverse.m4             |    0
 {examples => doc/examples}/shadow.m4              |    0
 {examples => doc/examples}/stack.m4               |    0
 {examples => doc/examples}/stack_sep.m4           |    0
 {examples => doc/examples}/stdlib.m4              |    0
 {examples => doc/examples}/sysv-args.m4           |    0
 {examples => doc/examples}/time.m4                |    0
 {examples => doc/examples}/time2.m4               |    0
 {examples => doc/examples}/trace.m4               |    0
 {examples => doc/examples}/translit.m4            |    0
 {examples => doc/examples}/undivert.incl          |    0
 {examples => doc/examples}/undivert.m4            |    0
 {examples => doc/examples}/wrap.m4                |    0
 {examples => doc/examples}/wrapfifo.m4            |    0
 {examples => doc/examples}/wraplifo.m4            |    0
 {examples => doc/examples}/wraplifo2.m4           |    0
 doc/m4.texi                                       |  154 ++++++++--------
 modules/README                                    |    4 +-
 po/POTFILES.in                                    |   21 +--
 tests/builtins.at                                 |    4 +-
 tests/generate.awk                                |    6 +-
 tests/others.at                                   |   20 +-
 107 files changed, 250 insertions(+), 309 deletions(-)
 create mode 100644 .autom4te.cfg
 rename {gl => build-aux/gl}/build-aux/bootstrap.in (100%)
 rename {gl => build-aux/gl}/build-aux/extract-trace (100%)
 rename {gl => build-aux/gl}/build-aux/funclib.sh (100%)
 rename {gl => build-aux/gl}/build-aux/inline-source (100%)
 rename {gl => build-aux/gl}/build-aux/options-parser (100%)
 rename {gl => build-aux/gl}/lib/clean-temp.c.diff (100%)
 rename gnulib => build-aux/gnulib (100%)
 rename {ltdl => build-aux}/m4/debug.m4 (100%)
 rename {ltdl => build-aux}/m4/gmp.m4 (100%)
 rename {ltdl => build-aux}/m4/gnulib-cache.m4 (69%)
 rename {ltdl => build-aux}/m4/m4-error.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-getopt.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-gettext.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-obstack.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-regex.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-rename.m4 (100%)
 rename {ltdl => build-aux}/m4/m4-syscmd.m4 (100%)
 rename {ltdl => build-aux}/m4/stackovf.m4 (100%)
 delete mode 100644 doc/Makefile.am
 rename {examples => doc/examples}/COPYING (100%)
 rename {examples => doc/examples}/WWW/COPYING (100%)
 rename {examples => doc/examples}/WWW/Makefile (100%)
 rename {examples => doc/examples}/WWW/_footer.htm (100%)
 rename {examples => doc/examples}/WWW/_header.htm (100%)
 rename {examples => doc/examples}/WWW/m4lib/COPYING (100%)
 rename {examples => doc/examples}/WWW/m4lib/bugs.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/changelog.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/download.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/features.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/feedback.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/html.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/index.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/layout.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/lists.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/menu.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/modules.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/news.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/readme.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/setup.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/test.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/thanks.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/thissite.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/tmpl.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/todo.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/uses.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/visions.m4 (100%)
 rename {examples => doc/examples}/WWW/m4lib/whatis.m4 (100%)
 rename {examples => doc/examples}/capitalize.m4 (100%)
 rename {examples => doc/examples}/capitalize2.m4 (100%)
 rename {examples => doc/examples}/comments.m4 (100%)
 rename {examples => doc/examples}/curry.m4 (100%)
 rename {examples => doc/examples}/ddivert.m4 (100%)
 rename {examples => doc/examples}/debug.m4 (100%)
 rename {examples => doc/examples}/esyscmd.m4 (100%)
 rename {examples => doc/examples}/exp.m4 (100%)
 rename {examples => doc/examples}/foreach.m4 (100%)
 rename {examples => doc/examples}/foreach2.m4 (100%)
 rename {examples => doc/examples}/foreachq.m4 (100%)
 rename {examples => doc/examples}/foreachq2.m4 (100%)
 rename {examples => doc/examples}/foreachq3.m4 (100%)
 rename {examples => doc/examples}/foreachq4.m4 (100%)
 rename {examples => doc/examples}/forloop.m4 (100%)
 rename {examples => doc/examples}/forloop2.m4 (100%)
 rename {examples => doc/examples}/forloop3.m4 (100%)
 rename {examples => doc/examples}/fstab.m4 (100%)
 rename {examples => doc/examples}/hanoi.m4 (100%)
 rename {examples => doc/examples}/incl-test.m4 (100%)
 rename {examples => doc/examples}/incl.m4 (100%)
 rename {examples => doc/examples}/include.m4 (100%)
 rename {examples => doc/examples}/indir.m4 (100%)
 rename {examples => doc/examples}/join.m4 (100%)
 rename {examples => doc/examples}/loop.m4 (100%)
 rename {examples => doc/examples}/misc.m4 (100%)
 rename {examples => doc/examples}/modtest.m4 (100%)
 rename {examples => doc/examples}/multiquotes.m4 (100%)
 rename {examples => doc/examples}/patsubst.m4 (100%)
 rename {examples => doc/examples}/pushpop.m4 (100%)
 rename {examples => doc/examples}/quote.m4 (100%)
 rename {examples => doc/examples}/regexp.m4 (100%)
 rename {examples => doc/examples}/reverse.m4 (100%)
 rename {examples => doc/examples}/shadow.m4 (100%)
 rename {examples => doc/examples}/stack.m4 (100%)
 rename {examples => doc/examples}/stack_sep.m4 (100%)
 rename {examples => doc/examples}/stdlib.m4 (100%)
 rename {examples => doc/examples}/sysv-args.m4 (100%)
 rename {examples => doc/examples}/time.m4 (100%)
 rename {examples => doc/examples}/time2.m4 (100%)
 rename {examples => doc/examples}/trace.m4 (100%)
 rename {examples => doc/examples}/translit.m4 (100%)
 rename {examples => doc/examples}/undivert.incl (100%)
 rename {examples => doc/examples}/undivert.m4 (100%)
 rename {examples => doc/examples}/wrap.m4 (100%)
 rename {examples => doc/examples}/wrapfifo.m4 (100%)
 rename {examples => doc/examples}/wraplifo.m4 (100%)
 rename {examples => doc/examples}/wraplifo2.m4 (100%)

diff --git a/.autom4te.cfg b/.autom4te.cfg
new file mode 100644
index 0000000..f47eaee
--- /dev/null
+++ b/.autom4te.cfg
@@ -0,0 +1,4 @@
+# Disable the autom4te.cache directory.
+begin-language: "Autoconf-without-aclocal-m4"
+args: --no-cache
+end-language: "Autoconf-without-aclocal-m4"
diff --git a/.gitignore b/.gitignore
index bd4195b..18c2027 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,11 +26,14 @@ ABOUT-NLS
 /aclocal.m4
 /aclocal.m4t
 autom4te.cache
-/build-aux
+build-aux/
+!build-aux/gl/
+!build-aux/gnulib/
+!build-aux/m4/
 /ChangeLog
 /config.cache
 /config.h
-/config-h.in
+/config.h.in
 /config.log
 /config.status
 /configure
@@ -45,63 +48,11 @@ CVS
 /doc/manual
 /doc/stamp-vti
 /doc/version.texi
-/gnu
 /GNUmakefile
 /INSTALL
-/intl
 libtool
-/ltdl/argz.c
-/ltdl/argz_.h
-/ltdl/argz.h
-/ltdl/config
-/ltdl/COPYING.LIB
-/ltdl/libltdl
-/ltdl/loaders
-/ltdl/lt*.[ch]
-/ltdl/m4/.gitignore
-/ltdl/m4/argz.m4
-/ltdl/m4/codeset.m4
-/ltdl/m4/getopt.m4
-/ltdl/m4/gettext.m4
-/ltdl/m4/glibc2.m4
-/ltdl/m4/glibc21.m4
-/ltdl/m4/iconv.m4
-/ltdl/m4/intdiv0.m4
-/ltdl/m4/intl.m4
-/ltdl/m4/intldir.m4
-/ltdl/m4/intmax.m4
-/ltdl/m4/inttypes-pri.m4
-/ltdl/m4/inttypes_h.m4
-/ltdl/m4/lcmessage.m4
-/ltdl/m4/lib-ld.m4
-/ltdl/m4/lib-link.m4
-/ltdl/m4/lib-prefix.m4
-/ltdl/m4/libtool.m4
-/ltdl/m4/lock.m4
-/ltdl/m4/longdouble.m4
-/ltdl/m4/longlong.m4
-/ltdl/m4/ltdl.m4
-/ltdl/m4/ltoptions.m4
-/ltdl/m4/ltsugar.m4
-/ltdl/m4/ltversion.m4
-/ltdl/m4/lt~obsolete.m4
-/ltdl/m4/nls.m4
-/ltdl/m4/po.m4
-/ltdl/m4/printf-posix.m4
-/ltdl/m4/progtest.m4
-/ltdl/m4/size_max.m4
-/ltdl/m4/stdint_h.m4
-/ltdl/m4/uintmax_t.m4
-/ltdl/m4/ulonglong.m4
-/ltdl/m4/version-etc.m4
-/ltdl/m4/visibility.m4
-/ltdl/m4/wchar_t.m4
-/ltdl/m4/wint_t.m4
-/ltdl/m4/xsize.m4
-/ltdl/m4/xstrtol.m4
-/ltdl/README
-/ltdl/slist.c
 /m4-*
+/m4/gnu
 /m4/obstack.h
 /m4/pathconf.h
 /m4/system.h
diff --git a/Makefile.am b/Makefile.am
index cd1d234..c752ff2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -21,11 +21,11 @@
 ## Written by Gary V. Vaughan <address@hidden>
 
 config_aux_dir = build-aux
-config_macro_dir= ltdl/m4
+config_macro_dir= $(config_aux_dir)/m4
 
-SUBDIRS                = po gnu . doc tests/gnu
+SUBDIRS                = po m4/gnu . tests/gnu
 
-ACLOCAL_AMFLAGS = -I ltdl/m4
+ACLOCAL_AMFLAGS = -I build-aux/m4
 AUTOMAKE_OPTIONS = nostdinc
 
 gitlog_to_changelog    = $(srcdir)/$(config_aux_dir)/gitlog-to-changelog
@@ -47,6 +47,7 @@ BUILT_SOURCES =
 CLEANFILES     =
 DISTCLEANFILES =
 MOSTLYCLEANFILES=
+MAINTAINERCLEANFILES =
 
 include_HEADERS        =
 noinst_LTLIBRARIES=
@@ -55,7 +56,7 @@ EXTRA_LTLIBRARIES=
 
 # Additional configuration.  Version management comes from suggestions
 # given in build-aux/git-version-gen.
-AM_CPPFLAGS    += -Ignu -I$(srcdir)/gnu \
+AM_CPPFLAGS    += -Im4/gnu -I$(srcdir)/m4/gnu \
                  -Im4 -I$(srcdir)/m4
 EXTRA_DIST     += bootstrap cfg.mk maint.mk .version .prev-version \
                  $(config_macro_dir)/gnulib-cache.m4 $(gitlog_to_changelog)
@@ -76,7 +77,7 @@ $(changelog): FORCE
          cat '$(changelog_old)' >> '$@';               \
        fi
 
-MAINTAINERCLEANFILES = \
+MAINTAINERCLEANFILES += \
                  ABOUT-NLS INSTALL Makefile.in aclocal.m4 \
                  config-h.in configure stamp-h.in \
                  po/cat-id-tbl.c po/m4.pot po/stamp-cat-id
@@ -146,14 +147,10 @@ MOSTLYCLEANFILES += src/getopt.h src/getopt.h-t
 ## Modules. ##
 ## -------- ##
 
-pkgmodincludedir= $(pkgincludedir)/modules
-
-ETAGS_ARGS     = --regex='/M4BUILTIN_HANDLER[ \t]*)\([^)]*\)/\1/'
-
 module_ldflags = -module $(AM_LDFLAGS)
 module_libadd  = m4/libm4.la
 
-pkgmodinclude_HEADERS = modules/m4.h
+noinst_HEADERS = modules/m4.h
 
 pkglib_LTLIBRARIES = \
                  modules/gnu.la \
@@ -216,8 +213,7 @@ tests_time_la_SOURCES               = modules/time.c
 lib_LTLIBRARIES        += m4/libm4.la
 
 nobase_include_HEADERS = \
-                 m4/m4module.h
-nobase_pkginclude_HEADERS = \
+                 m4/m4module.h \
                  m4/hash.h \
                  m4/system.h
 m4_libm4_la_SOURCES    = \
@@ -235,9 +231,9 @@ m4_libm4_la_SOURCES = \
                  m4/symtab.c \
                  m4/syntax.c \
                  m4/utility.c
-m4_libm4_la_LIBADD = gnu/libgnu.la \
+m4_libm4_la_LIBADD = m4/gnu/libgnu.la \
                  $(LIBLTDL) $(LTLIBINTL) $(LIBADD_DL)
-m4_libm4_la_DEPENDENCIES = $(LTDLDEPS) gnu/libgnu.la
+m4_libm4_la_DEPENDENCIES = $(LTDLDEPS) m4/gnu/libgnu.la
 
 # This file needs to be regenerated at configure time.
 dist-hook:
@@ -245,88 +241,112 @@ dist-hook:
 EXTRA_DIST     += m4/system_.h
 
 
+## -------------- ##
+## Documentation. ##
+## -------------- ##
+info_TEXINFOS  = doc/m4.texi
+m4_TEXINFOS    = doc/regexprops-generic.texi doc/fdl-1.3.texi doc/gpl-3.0.texi
+dist_man_MANS  = $(srcdir)/doc/m4.1
+EXTRA_DIST     += doc/gendocs_template
+MAINTAINERCLEANFILES += doc/gendocs_template
+HELP2MAN       = $(SHELL) $(top_srcdir)/$(config_aux_dir)/missing --run 
help2man
+
+# Build the man page once in the srcdir, rather than in every VPATH build
+# dir, to match how automake builds info pages.  This is safe for 'make
+# distcheck' since it is distributed pre-built.
+$(srcdir)/doc/m4.1: .version $(srcdir)/src/main.c
+       @echo "Updating the \`man' page \`$@'"; \
+       $(HELP2MAN) --name="macro processor" --source=FSF \
+         --info-page=m4 --output=$@ src/m4$(EXEEXT)
+
+TAGS_FILES     = $(infos_TEXINFOS)
+TAGS_DEPENDENCIES = $(TAGS_FILES)
+ETAGS_ARGS     = --language=none --regex='/@node \([^,]*\)/\1/' $(TAGS_FILES)
+
+MAINTAINERCLEANFILES += $(dist_man_MANS)
+
 ## --------- ##
 ## Examples. ##
 ## --------- ##
 
 EXTRA_DIST     += \
-                 examples/WWW/Makefile \
-                 examples/WWW/_footer.htm \
-                 examples/WWW/_header.htm \
-                 examples/WWW/m4lib/bugs.m4 \
-                 examples/WWW/m4lib/changelog.m4 \
-                 examples/WWW/m4lib/download.m4 \
-                 examples/WWW/m4lib/features.m4 \
-                 examples/WWW/m4lib/feedback.m4 \
-                 examples/WWW/m4lib/html.m4 \
-                 examples/WWW/m4lib/index.m4 \
-                 examples/WWW/m4lib/layout.m4 \
-                 examples/WWW/m4lib/lists.m4 \
-                 examples/WWW/m4lib/menu.m4 \
-                 examples/WWW/m4lib/modules.m4 \
-                 examples/WWW/m4lib/news.m4 \
-                 examples/WWW/m4lib/readme.m4 \
-                 examples/WWW/m4lib/setup.m4 \
-                 examples/WWW/m4lib/test.m4 \
-                 examples/WWW/m4lib/thanks.m4 \
-                 examples/WWW/m4lib/thissite.m4 \
-                 examples/WWW/m4lib/tmpl.m4 \
-                 examples/WWW/m4lib/todo.m4 \
-                 examples/WWW/m4lib/uses.m4 \
-                 examples/WWW/m4lib/visions.m4 \
-                 examples/WWW/m4lib/whatis.m4
+                 doc/examples/WWW/Makefile \
+                 doc/examples/WWW/_footer.htm \
+                 doc/examples/WWW/_header.htm \
+                 doc/examples/WWW/m4lib/bugs.m4 \
+                 doc/examples/WWW/m4lib/changelog.m4 \
+                 doc/examples/WWW/m4lib/download.m4 \
+                 doc/examples/WWW/m4lib/features.m4 \
+                 doc/examples/WWW/m4lib/feedback.m4 \
+                 doc/examples/WWW/m4lib/html.m4 \
+                 doc/examples/WWW/m4lib/index.m4 \
+                 doc/examples/WWW/m4lib/layout.m4 \
+                 doc/examples/WWW/m4lib/lists.m4 \
+                 doc/examples/WWW/m4lib/menu.m4 \
+                 doc/examples/WWW/m4lib/modules.m4 \
+                 doc/examples/WWW/m4lib/news.m4 \
+                 doc/examples/WWW/m4lib/readme.m4 \
+                 doc/examples/WWW/m4lib/setup.m4 \
+                 doc/examples/WWW/m4lib/test.m4 \
+                 doc/examples/WWW/m4lib/thanks.m4 \
+                 doc/examples/WWW/m4lib/thissite.m4 \
+                 doc/examples/WWW/m4lib/tmpl.m4 \
+                 doc/examples/WWW/m4lib/todo.m4 \
+                 doc/examples/WWW/m4lib/uses.m4 \
+                 doc/examples/WWW/m4lib/visions.m4 \
+                 doc/examples/WWW/m4lib/whatis.m4
 
 dist_pkgdata_DATA = \
-                 examples/capitalize.m4 \
-                 examples/capitalize2.m4 \
-                 examples/comments.m4 \
-                 examples/curry.m4 \
-                 examples/ddivert.m4 \
-                 examples/debug.m4 \
-                 examples/esyscmd.m4 \
-                 examples/exp.m4 \
-                 examples/foreach.m4 \
-                 examples/foreach2.m4 \
-                 examples/foreachq.m4 \
-                 examples/foreachq2.m4 \
-                 examples/foreachq3.m4 \
-                 examples/foreachq4.m4 \
-                 examples/forloop.m4 \
-                 examples/forloop2.m4 \
-                 examples/forloop3.m4 \
-                 examples/fstab.m4 \
-                 examples/hanoi.m4 \
-                 examples/incl-test.m4 \
-                 examples/incl.m4 \
-                 examples/include.m4 \
-                 examples/indir.m4 \
-                 examples/join.m4 \
-                 examples/loop.m4 \
-                 examples/misc.m4 \
-                 examples/multiquotes.m4 \
-                 examples/patsubst.m4 \
-                 examples/pushpop.m4 \
-                 examples/quote.m4 \
-                 examples/regexp.m4 \
-                 examples/reverse.m4 \
-                 examples/stack.m4 \
-                 examples/stack_sep.m4 \
-                 examples/sysv-args.m4 \
-                 examples/trace.m4 \
-                 examples/translit.m4 \
-                 examples/undivert.incl \
-                 examples/undivert.m4 \
-                 examples/wrap.m4 \
-                 examples/wrapfifo.m4 \
-                 examples/wraplifo.m4 \
-                 examples/wraplifo2.m4
+                 doc/examples/capitalize.m4 \
+                 doc/examples/capitalize2.m4 \
+                 doc/examples/comments.m4 \
+                 doc/examples/curry.m4 \
+                 doc/examples/ddivert.m4 \
+                 doc/examples/debug.m4 \
+                 doc/examples/esyscmd.m4 \
+                 doc/examples/exp.m4 \
+                 doc/examples/foreach.m4 \
+                 doc/examples/foreach2.m4 \
+                 doc/examples/foreachq.m4 \
+                 doc/examples/foreachq2.m4 \
+                 doc/examples/foreachq3.m4 \
+                 doc/examples/foreachq4.m4 \
+                 doc/examples/forloop.m4 \
+                 doc/examples/forloop2.m4 \
+                 doc/examples/forloop3.m4 \
+                 doc/examples/fstab.m4 \
+                 doc/examples/hanoi.m4 \
+                 doc/examples/incl-test.m4 \
+                 doc/examples/incl.m4 \
+                 doc/examples/include.m4 \
+                 doc/examples/indir.m4 \
+                 doc/examples/join.m4 \
+                 doc/examples/loop.m4 \
+                 doc/examples/misc.m4 \
+                 doc/examples/multiquotes.m4 \
+                 doc/examples/patsubst.m4 \
+                 doc/examples/pushpop.m4 \
+                 doc/examples/quote.m4 \
+                 doc/examples/regexp.m4 \
+                 doc/examples/reverse.m4 \
+                 doc/examples/stack.m4 \
+                 doc/examples/stack_sep.m4 \
+                 doc/examples/sysv-args.m4 \
+                 doc/examples/trace.m4 \
+                 doc/examples/translit.m4 \
+                 doc/examples/undivert.incl \
+                 doc/examples/undivert.m4 \
+                 doc/examples/wrap.m4 \
+                 doc/examples/wrapfifo.m4 \
+                 doc/examples/wraplifo.m4 \
+                 doc/examples/wraplifo2.m4
 
 EXTRA_DIST     += \
-                 examples/modtest.m4 \
-                 examples/shadow.m4 \
-                 examples/time.m4 \
-                 examples/time2.m4 \
-                 examples/stdlib.m4
+                 doc/examples/modtest.m4 \
+                 doc/examples/shadow.m4 \
+                 doc/examples/time.m4 \
+                 doc/examples/time2.m4 \
+                 doc/examples/stdlib.m4
 
 ## ----------- ##
 ## Test suite. ##
diff --git a/README b/README
index c07737c..163c89f 100644
--- a/README
+++ b/README
@@ -20,8 +20,8 @@ ahead and start with `./configure'.  If you are trying to 
build `m4'
 from git, more information can be found in the version-control-only
 file HACKING.
 
-In the subdirectories `tests' and `examples' you will find various m4
-files, ranging from trivial test files to rather advanced macros.  If
+In the subdirectories `tests' and `doc/examples' you will find various
+m4 files, ranging from trivial test files to rather advanced macros.  If
 you intend to use m4 seriously, you might find useful material down
 there.
 
diff --git a/bootstrap.conf b/bootstrap.conf
index 9b3034d..41fe72b 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -39,6 +39,9 @@ buildreq_readme=HACKING
 # A file only visible in a vcs working directory.
 checkout_only_file=HACKING
 
+# Local gnulib submodule path.
+gnulib_path=build-aux/gnulib
+
 # Additional gnulib-tool options to use.
 gnulib_tool_options=$gnulib_tool_options'
        --libtool
@@ -72,6 +75,20 @@ vc_ignore=".gitignore"
 ## --------------- ##
 
 
+# m4_precopy_git_version_gen
+# --------------------------
+# Autopoint gets confused if git-version-gen is missing.
+m4_precopy_git_version_gen ()
+{
+    $debug_cmd
+
+    $require_build_aux
+
+    func_gnulib_tool_copy_file build-aux/git-version-gen 
$build_aux/git-version-gen
+}
+func_add_hook func_prep m4_precopy_git_version_gen
+
+
 # m4_install_texinfo_diff_driver
 # ------------------------------
 # Help git to do a better job of merging texinfo files.
diff --git a/gl/build-aux/bootstrap.in b/build-aux/gl/build-aux/bootstrap.in
similarity index 100%
rename from gl/build-aux/bootstrap.in
rename to build-aux/gl/build-aux/bootstrap.in
diff --git a/gl/build-aux/extract-trace b/build-aux/gl/build-aux/extract-trace
similarity index 100%
rename from gl/build-aux/extract-trace
rename to build-aux/gl/build-aux/extract-trace
diff --git a/gl/build-aux/funclib.sh b/build-aux/gl/build-aux/funclib.sh
similarity index 100%
rename from gl/build-aux/funclib.sh
rename to build-aux/gl/build-aux/funclib.sh
diff --git a/gl/build-aux/inline-source b/build-aux/gl/build-aux/inline-source
similarity index 100%
rename from gl/build-aux/inline-source
rename to build-aux/gl/build-aux/inline-source
diff --git a/gl/build-aux/options-parser b/build-aux/gl/build-aux/options-parser
similarity index 100%
rename from gl/build-aux/options-parser
rename to build-aux/gl/build-aux/options-parser
diff --git a/gl/lib/clean-temp.c.diff b/build-aux/gl/lib/clean-temp.c.diff
similarity index 100%
rename from gl/lib/clean-temp.c.diff
rename to build-aux/gl/lib/clean-temp.c.diff
diff --git a/gnulib b/build-aux/gnulib
similarity index 100%
rename from gnulib
rename to build-aux/gnulib
diff --git a/ltdl/m4/debug.m4 b/build-aux/m4/debug.m4
similarity index 100%
rename from ltdl/m4/debug.m4
rename to build-aux/m4/debug.m4
diff --git a/ltdl/m4/gmp.m4 b/build-aux/m4/gmp.m4
similarity index 100%
rename from ltdl/m4/gmp.m4
rename to build-aux/m4/gmp.m4
diff --git a/ltdl/m4/gnulib-cache.m4 b/build-aux/m4/gnulib-cache.m4
similarity index 69%
rename from ltdl/m4/gnulib-cache.m4
rename to build-aux/m4/gnulib-cache.m4
index ef070c4..a31e566 100644
--- a/ltdl/m4/gnulib-cache.m4
+++ b/build-aux/m4/gnulib-cache.m4
@@ -27,10 +27,10 @@
 
 
 # Specification in the form of a command-line invocation:
-#   gnulib-tool --import --dir=. --local-dir=gl --lib=libgnu --source-base=gnu 
--m4-base=ltdl/m4 --doc-base=doc --tests-base=tests/gnu --aux-dir=build-aux 
--with-tests --with-c++-tests --no-conditional-dependencies --libtool 
--macro-prefix=M4 assert autobuild avltree-oset binary-io bitrotate clean-temp 
cloexec close-stream closein config-h configmake dirname error execute fclose 
fdl-1.3 fflush filenamecat flexmember fopen fopen-safer freadptr freadseek 
fseeko gendocs gettext git-version-gen gitlog-to-changelog gnumakefile gnupload 
gpl-3.0 intprops inttypes maintainer-makefile manywarnings memchr2 memcmp2 
memmem mkstemp obstack obstack-printf-posix progname propername quote regex 
regexprops-generic rename setenv sigpipe snprintf-posix spawn-pipe 
sprintf-posix stdbool stdlib-safer strnlen strtod tempname unlocked-io unsetenv 
update-copyright vasnprintf-posix verify verror wait-process xalloc xalloc-die 
xmemdup0 xoset xprintf-posix xstrndup xvasprintf-posix
+#   gnulib-tool --import --dir=. --local-dir=build-aux/gl --lib=libgnu 
--source-base=m4/gnu --m4-base=build-aux/m4 --doc-base=doc 
--tests-base=tests/gnu --aux-dir=build-aux --with-tests --with-c++-tests 
--no-conditional-dependencies --libtool --macro-prefix=M4 assert autobuild 
avltree-oset binary-io bitrotate clean-temp cloexec close-stream closein 
config-h configmake dirname error execute fclose fdl-1.3 fflush filenamecat 
flexmember fopen fopen-safer freadptr freadseek fseeko gendocs gettext 
git-version-gen gitlog-to-changelog gnumakefile gnupload gpl-3.0 intprops 
inttypes maintainer-makefile manywarnings memchr2 memcmp2 memmem mkstemp 
obstack obstack-printf-posix progname propername quote regex regexprops-generic 
rename setenv sigpipe snprintf-posix spawn-pipe sprintf-posix stdbool 
stdlib-safer strnlen strtod tempname unlocked-io unsetenv update-copyright 
vasnprintf-posix verify verror wait-process xalloc xalloc-die xmemdup0 xoset 
xprintf-posix xstrndup xvasprintf-posix
 
 # Specification in the form of a few gnulib-tool.m4 macro invocations:
-gl_LOCAL_DIR([gl])
+gl_LOCAL_DIR([build-aux/gl])
 gl_MODULES([
   assert
   autobuild
@@ -106,8 +106,8 @@ gl_MODULES([
 ])
 gl_WITH_CXX_TESTS
 gl_AVOID([])
-gl_SOURCE_BASE([gnu])
-gl_M4_BASE([ltdl/m4])
+gl_SOURCE_BASE([m4/gnu])
+gl_M4_BASE([build-aux/m4])
 gl_PO_BASE([])
 gl_DOC_BASE([doc])
 gl_TESTS_BASE([tests/gnu])
diff --git a/ltdl/m4/m4-error.m4 b/build-aux/m4/m4-error.m4
similarity index 100%
rename from ltdl/m4/m4-error.m4
rename to build-aux/m4/m4-error.m4
diff --git a/ltdl/m4/m4-getopt.m4 b/build-aux/m4/m4-getopt.m4
similarity index 100%
rename from ltdl/m4/m4-getopt.m4
rename to build-aux/m4/m4-getopt.m4
diff --git a/ltdl/m4/m4-gettext.m4 b/build-aux/m4/m4-gettext.m4
similarity index 100%
rename from ltdl/m4/m4-gettext.m4
rename to build-aux/m4/m4-gettext.m4
diff --git a/ltdl/m4/m4-obstack.m4 b/build-aux/m4/m4-obstack.m4
similarity index 100%
rename from ltdl/m4/m4-obstack.m4
rename to build-aux/m4/m4-obstack.m4
diff --git a/ltdl/m4/m4-regex.m4 b/build-aux/m4/m4-regex.m4
similarity index 100%
rename from ltdl/m4/m4-regex.m4
rename to build-aux/m4/m4-regex.m4
diff --git a/ltdl/m4/m4-rename.m4 b/build-aux/m4/m4-rename.m4
similarity index 100%
rename from ltdl/m4/m4-rename.m4
rename to build-aux/m4/m4-rename.m4
diff --git a/ltdl/m4/m4-syscmd.m4 b/build-aux/m4/m4-syscmd.m4
similarity index 100%
rename from ltdl/m4/m4-syscmd.m4
rename to build-aux/m4/m4-syscmd.m4
diff --git a/ltdl/m4/stackovf.m4 b/build-aux/m4/stackovf.m4
similarity index 100%
rename from ltdl/m4/stackovf.m4
rename to build-aux/m4/stackovf.m4
diff --git a/configure.ac b/configure.ac
index 6e6d722..2fe6d9e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,10 +31,10 @@ AC_INIT([GNU M4], m4_defn([M4_VERSION]), address@hidden)
 
 AC_CONFIG_SRCDIR([src/m4.h])
 AC_CONFIG_AUX_DIR([build-aux])
-AC_CONFIG_MACRO_DIR([ltdl/m4])
-AC_CONFIG_LIBOBJ_DIR([gnu])
+AC_CONFIG_MACRO_DIR([build-aux/m4])
+AC_CONFIG_LIBOBJ_DIR([m4/gnu])
 AC_CONFIG_TESTDIR([tests])
-AC_CONFIG_HEADERS([gnu/config.h:gnu/config.hin])
+AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_FILES([tests/m4], [chmod +x tests/m4])
 
 
@@ -207,7 +207,8 @@ AC_SUBST([PREOPEN_DEPENDENCIES])
 ## ---------------- ##
 ## Gettext support. ##
 ## ---------------- ##
-AM_GNU_GETTEXT([external], [need-formatstring-macros])
+AM_GNU_GETTEXT([external])
+AM_GNU_GETTEXT_NEED([need-formatstring-macros])
 AM_GNU_GETTEXT_VERSION([0.16])
 M4_GNU_GETTEXT
 
@@ -228,13 +229,6 @@ M4_REGEX
 M4_RENAME
 
 
-## ------------------------ ##
-## Other external programs. ##
-## ------------------------ ##
-AC_PATH_PROG([PERL], [perl])
-
-
-
 ## --------------------------- ##
 ## C compiler characteristics. ##
 ## --------------------------- ##
@@ -286,8 +280,7 @@ M4_SYSCMD
 ## -------- ##
 AC_CONFIG_FILES([
 Makefile
-gnu/Makefile
-doc/Makefile
+m4/gnu/Makefile
 m4/system.h:m4/system_.h
 tests/atlocal
 tests/gnu/Makefile
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index 88787ea..0000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-## Makefile.am - template for generating Makefile via Automake
-##
-## Copyright (C) 2009-2010, 2013 Free Software Foundation, Inc.
-##
-## This file is part of GNU M4.
-##
-## GNU M4 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.
-##
-## GNU M4 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/>.
-
-MAINTAINERCLEANFILES =
-EXTRA_DIST =
-config_aux_dir = build-aux
-
-info_TEXINFOS  = m4.texi
-m4_TEXINFOS    = regexprops-generic.texi fdl-1.3.texi gpl-3.0.texi
-dist_man_MANS  = $(srcdir)/m4.1
-EXTRA_DIST     += gendocs_template
-MAINTAINERCLEANFILES += gendocs_template
-HELP2MAN       = $(SHELL) $(top_srcdir)/$(config_aux_dir)/missing --run 
help2man
-
-# Build the man page once in the srcdir, rather than in every VPATH build
-# dir, to match how automake builds info pages.  This is safe for 'make
-# distcheck' since it is distributed pre-built.
-$(srcdir)/m4.1: ../.version $(srcdir)/../src/main.c
-       @echo "Updating the \`man' page \`$@'"; \
-       $(HELP2MAN) --name="macro processor" --source=FSF \
-         --info-page=m4 --output=$@ ../src/m4$(EXEEXT)
-
-TAGS_FILES     = $(infos_TEXINFOS)
-TAGS_DEPENDENCIES = $(TAGS_FILES)
-ETAGS_ARGS     = --language=none --regex='/@node \([^,]*\)/\1/' $(TAGS_FILES)
-
-MAINTAINERCLEANFILES += $(dist_man_MANS)
diff --git a/examples/COPYING b/doc/examples/COPYING
similarity index 100%
rename from examples/COPYING
rename to doc/examples/COPYING
diff --git a/examples/WWW/COPYING b/doc/examples/WWW/COPYING
similarity index 100%
rename from examples/WWW/COPYING
rename to doc/examples/WWW/COPYING
diff --git a/examples/WWW/Makefile b/doc/examples/WWW/Makefile
similarity index 100%
rename from examples/WWW/Makefile
rename to doc/examples/WWW/Makefile
diff --git a/examples/WWW/_footer.htm b/doc/examples/WWW/_footer.htm
similarity index 100%
rename from examples/WWW/_footer.htm
rename to doc/examples/WWW/_footer.htm
diff --git a/examples/WWW/_header.htm b/doc/examples/WWW/_header.htm
similarity index 100%
rename from examples/WWW/_header.htm
rename to doc/examples/WWW/_header.htm
diff --git a/examples/WWW/m4lib/COPYING b/doc/examples/WWW/m4lib/COPYING
similarity index 100%
rename from examples/WWW/m4lib/COPYING
rename to doc/examples/WWW/m4lib/COPYING
diff --git a/examples/WWW/m4lib/bugs.m4 b/doc/examples/WWW/m4lib/bugs.m4
similarity index 100%
rename from examples/WWW/m4lib/bugs.m4
rename to doc/examples/WWW/m4lib/bugs.m4
diff --git a/examples/WWW/m4lib/changelog.m4 
b/doc/examples/WWW/m4lib/changelog.m4
similarity index 100%
rename from examples/WWW/m4lib/changelog.m4
rename to doc/examples/WWW/m4lib/changelog.m4
diff --git a/examples/WWW/m4lib/download.m4 b/doc/examples/WWW/m4lib/download.m4
similarity index 100%
rename from examples/WWW/m4lib/download.m4
rename to doc/examples/WWW/m4lib/download.m4
diff --git a/examples/WWW/m4lib/features.m4 b/doc/examples/WWW/m4lib/features.m4
similarity index 100%
rename from examples/WWW/m4lib/features.m4
rename to doc/examples/WWW/m4lib/features.m4
diff --git a/examples/WWW/m4lib/feedback.m4 b/doc/examples/WWW/m4lib/feedback.m4
similarity index 100%
rename from examples/WWW/m4lib/feedback.m4
rename to doc/examples/WWW/m4lib/feedback.m4
diff --git a/examples/WWW/m4lib/html.m4 b/doc/examples/WWW/m4lib/html.m4
similarity index 100%
rename from examples/WWW/m4lib/html.m4
rename to doc/examples/WWW/m4lib/html.m4
diff --git a/examples/WWW/m4lib/index.m4 b/doc/examples/WWW/m4lib/index.m4
similarity index 100%
rename from examples/WWW/m4lib/index.m4
rename to doc/examples/WWW/m4lib/index.m4
diff --git a/examples/WWW/m4lib/layout.m4 b/doc/examples/WWW/m4lib/layout.m4
similarity index 100%
rename from examples/WWW/m4lib/layout.m4
rename to doc/examples/WWW/m4lib/layout.m4
diff --git a/examples/WWW/m4lib/lists.m4 b/doc/examples/WWW/m4lib/lists.m4
similarity index 100%
rename from examples/WWW/m4lib/lists.m4
rename to doc/examples/WWW/m4lib/lists.m4
diff --git a/examples/WWW/m4lib/menu.m4 b/doc/examples/WWW/m4lib/menu.m4
similarity index 100%
rename from examples/WWW/m4lib/menu.m4
rename to doc/examples/WWW/m4lib/menu.m4
diff --git a/examples/WWW/m4lib/modules.m4 b/doc/examples/WWW/m4lib/modules.m4
similarity index 100%
rename from examples/WWW/m4lib/modules.m4
rename to doc/examples/WWW/m4lib/modules.m4
diff --git a/examples/WWW/m4lib/news.m4 b/doc/examples/WWW/m4lib/news.m4
similarity index 100%
rename from examples/WWW/m4lib/news.m4
rename to doc/examples/WWW/m4lib/news.m4
diff --git a/examples/WWW/m4lib/readme.m4 b/doc/examples/WWW/m4lib/readme.m4
similarity index 100%
rename from examples/WWW/m4lib/readme.m4
rename to doc/examples/WWW/m4lib/readme.m4
diff --git a/examples/WWW/m4lib/setup.m4 b/doc/examples/WWW/m4lib/setup.m4
similarity index 100%
rename from examples/WWW/m4lib/setup.m4
rename to doc/examples/WWW/m4lib/setup.m4
diff --git a/examples/WWW/m4lib/test.m4 b/doc/examples/WWW/m4lib/test.m4
similarity index 100%
rename from examples/WWW/m4lib/test.m4
rename to doc/examples/WWW/m4lib/test.m4
diff --git a/examples/WWW/m4lib/thanks.m4 b/doc/examples/WWW/m4lib/thanks.m4
similarity index 100%
rename from examples/WWW/m4lib/thanks.m4
rename to doc/examples/WWW/m4lib/thanks.m4
diff --git a/examples/WWW/m4lib/thissite.m4 b/doc/examples/WWW/m4lib/thissite.m4
similarity index 100%
rename from examples/WWW/m4lib/thissite.m4
rename to doc/examples/WWW/m4lib/thissite.m4
diff --git a/examples/WWW/m4lib/tmpl.m4 b/doc/examples/WWW/m4lib/tmpl.m4
similarity index 100%
rename from examples/WWW/m4lib/tmpl.m4
rename to doc/examples/WWW/m4lib/tmpl.m4
diff --git a/examples/WWW/m4lib/todo.m4 b/doc/examples/WWW/m4lib/todo.m4
similarity index 100%
rename from examples/WWW/m4lib/todo.m4
rename to doc/examples/WWW/m4lib/todo.m4
diff --git a/examples/WWW/m4lib/uses.m4 b/doc/examples/WWW/m4lib/uses.m4
similarity index 100%
rename from examples/WWW/m4lib/uses.m4
rename to doc/examples/WWW/m4lib/uses.m4
diff --git a/examples/WWW/m4lib/visions.m4 b/doc/examples/WWW/m4lib/visions.m4
similarity index 100%
rename from examples/WWW/m4lib/visions.m4
rename to doc/examples/WWW/m4lib/visions.m4
diff --git a/examples/WWW/m4lib/whatis.m4 b/doc/examples/WWW/m4lib/whatis.m4
similarity index 100%
rename from examples/WWW/m4lib/whatis.m4
rename to doc/examples/WWW/m4lib/whatis.m4
diff --git a/examples/capitalize.m4 b/doc/examples/capitalize.m4
similarity index 100%
rename from examples/capitalize.m4
rename to doc/examples/capitalize.m4
diff --git a/examples/capitalize2.m4 b/doc/examples/capitalize2.m4
similarity index 100%
rename from examples/capitalize2.m4
rename to doc/examples/capitalize2.m4
diff --git a/examples/comments.m4 b/doc/examples/comments.m4
similarity index 100%
rename from examples/comments.m4
rename to doc/examples/comments.m4
diff --git a/examples/curry.m4 b/doc/examples/curry.m4
similarity index 100%
rename from examples/curry.m4
rename to doc/examples/curry.m4
diff --git a/examples/ddivert.m4 b/doc/examples/ddivert.m4
similarity index 100%
rename from examples/ddivert.m4
rename to doc/examples/ddivert.m4
diff --git a/examples/debug.m4 b/doc/examples/debug.m4
similarity index 100%
rename from examples/debug.m4
rename to doc/examples/debug.m4
diff --git a/examples/esyscmd.m4 b/doc/examples/esyscmd.m4
similarity index 100%
rename from examples/esyscmd.m4
rename to doc/examples/esyscmd.m4
diff --git a/examples/exp.m4 b/doc/examples/exp.m4
similarity index 100%
rename from examples/exp.m4
rename to doc/examples/exp.m4
diff --git a/examples/foreach.m4 b/doc/examples/foreach.m4
similarity index 100%
rename from examples/foreach.m4
rename to doc/examples/foreach.m4
diff --git a/examples/foreach2.m4 b/doc/examples/foreach2.m4
similarity index 100%
rename from examples/foreach2.m4
rename to doc/examples/foreach2.m4
diff --git a/examples/foreachq.m4 b/doc/examples/foreachq.m4
similarity index 100%
rename from examples/foreachq.m4
rename to doc/examples/foreachq.m4
diff --git a/examples/foreachq2.m4 b/doc/examples/foreachq2.m4
similarity index 100%
rename from examples/foreachq2.m4
rename to doc/examples/foreachq2.m4
diff --git a/examples/foreachq3.m4 b/doc/examples/foreachq3.m4
similarity index 100%
rename from examples/foreachq3.m4
rename to doc/examples/foreachq3.m4
diff --git a/examples/foreachq4.m4 b/doc/examples/foreachq4.m4
similarity index 100%
rename from examples/foreachq4.m4
rename to doc/examples/foreachq4.m4
diff --git a/examples/forloop.m4 b/doc/examples/forloop.m4
similarity index 100%
rename from examples/forloop.m4
rename to doc/examples/forloop.m4
diff --git a/examples/forloop2.m4 b/doc/examples/forloop2.m4
similarity index 100%
rename from examples/forloop2.m4
rename to doc/examples/forloop2.m4
diff --git a/examples/forloop3.m4 b/doc/examples/forloop3.m4
similarity index 100%
rename from examples/forloop3.m4
rename to doc/examples/forloop3.m4
diff --git a/examples/fstab.m4 b/doc/examples/fstab.m4
similarity index 100%
rename from examples/fstab.m4
rename to doc/examples/fstab.m4
diff --git a/examples/hanoi.m4 b/doc/examples/hanoi.m4
similarity index 100%
rename from examples/hanoi.m4
rename to doc/examples/hanoi.m4
diff --git a/examples/incl-test.m4 b/doc/examples/incl-test.m4
similarity index 100%
rename from examples/incl-test.m4
rename to doc/examples/incl-test.m4
diff --git a/examples/incl.m4 b/doc/examples/incl.m4
similarity index 100%
rename from examples/incl.m4
rename to doc/examples/incl.m4
diff --git a/examples/include.m4 b/doc/examples/include.m4
similarity index 100%
rename from examples/include.m4
rename to doc/examples/include.m4
diff --git a/examples/indir.m4 b/doc/examples/indir.m4
similarity index 100%
rename from examples/indir.m4
rename to doc/examples/indir.m4
diff --git a/examples/join.m4 b/doc/examples/join.m4
similarity index 100%
rename from examples/join.m4
rename to doc/examples/join.m4
diff --git a/examples/loop.m4 b/doc/examples/loop.m4
similarity index 100%
rename from examples/loop.m4
rename to doc/examples/loop.m4
diff --git a/examples/misc.m4 b/doc/examples/misc.m4
similarity index 100%
rename from examples/misc.m4
rename to doc/examples/misc.m4
diff --git a/examples/modtest.m4 b/doc/examples/modtest.m4
similarity index 100%
rename from examples/modtest.m4
rename to doc/examples/modtest.m4
diff --git a/examples/multiquotes.m4 b/doc/examples/multiquotes.m4
similarity index 100%
rename from examples/multiquotes.m4
rename to doc/examples/multiquotes.m4
diff --git a/examples/patsubst.m4 b/doc/examples/patsubst.m4
similarity index 100%
rename from examples/patsubst.m4
rename to doc/examples/patsubst.m4
diff --git a/examples/pushpop.m4 b/doc/examples/pushpop.m4
similarity index 100%
rename from examples/pushpop.m4
rename to doc/examples/pushpop.m4
diff --git a/examples/quote.m4 b/doc/examples/quote.m4
similarity index 100%
rename from examples/quote.m4
rename to doc/examples/quote.m4
diff --git a/examples/regexp.m4 b/doc/examples/regexp.m4
similarity index 100%
rename from examples/regexp.m4
rename to doc/examples/regexp.m4
diff --git a/examples/reverse.m4 b/doc/examples/reverse.m4
similarity index 100%
rename from examples/reverse.m4
rename to doc/examples/reverse.m4
diff --git a/examples/shadow.m4 b/doc/examples/shadow.m4
similarity index 100%
rename from examples/shadow.m4
rename to doc/examples/shadow.m4
diff --git a/examples/stack.m4 b/doc/examples/stack.m4
similarity index 100%
rename from examples/stack.m4
rename to doc/examples/stack.m4
diff --git a/examples/stack_sep.m4 b/doc/examples/stack_sep.m4
similarity index 100%
rename from examples/stack_sep.m4
rename to doc/examples/stack_sep.m4
diff --git a/examples/stdlib.m4 b/doc/examples/stdlib.m4
similarity index 100%
rename from examples/stdlib.m4
rename to doc/examples/stdlib.m4
diff --git a/examples/sysv-args.m4 b/doc/examples/sysv-args.m4
similarity index 100%
rename from examples/sysv-args.m4
rename to doc/examples/sysv-args.m4
diff --git a/examples/time.m4 b/doc/examples/time.m4
similarity index 100%
rename from examples/time.m4
rename to doc/examples/time.m4
diff --git a/examples/time2.m4 b/doc/examples/time2.m4
similarity index 100%
rename from examples/time2.m4
rename to doc/examples/time2.m4
diff --git a/examples/trace.m4 b/doc/examples/trace.m4
similarity index 100%
rename from examples/trace.m4
rename to doc/examples/trace.m4
diff --git a/examples/translit.m4 b/doc/examples/translit.m4
similarity index 100%
rename from examples/translit.m4
rename to doc/examples/translit.m4
diff --git a/examples/undivert.incl b/doc/examples/undivert.incl
similarity index 100%
rename from examples/undivert.incl
rename to doc/examples/undivert.incl
diff --git a/examples/undivert.m4 b/doc/examples/undivert.m4
similarity index 100%
rename from examples/undivert.m4
rename to doc/examples/undivert.m4
diff --git a/examples/wrap.m4 b/doc/examples/wrap.m4
similarity index 100%
rename from examples/wrap.m4
rename to doc/examples/wrap.m4
diff --git a/examples/wrapfifo.m4 b/doc/examples/wrapfifo.m4
similarity index 100%
rename from examples/wrapfifo.m4
rename to doc/examples/wrapfifo.m4
diff --git a/examples/wraplifo.m4 b/doc/examples/wraplifo.m4
similarity index 100%
rename from examples/wraplifo.m4
rename to doc/examples/wraplifo.m4
diff --git a/examples/wraplifo2.m4 b/doc/examples/wraplifo2.m4
similarity index 100%
rename from examples/wraplifo2.m4
rename to doc/examples/wraplifo2.m4
diff --git a/doc/m4.texi b/doc/m4.texi
index 77c3a5f..8d40cae 100644
--- a/doc/m4.texi
+++ b/doc/m4.texi
@@ -3408,7 +3408,7 @@ by @var{separator}.  While @code{joinall} always outputs a
 @end deffn
 
 Here are some examples of its usage, based on the implementation
address@hidden@value{VERSION}/@/examples/@/join.m4} distributed in this
address@hidden@value{VERSION}/@/doc/examples/@/join.m4} distributed in this
 package:
 
 @comment examples
@@ -3442,7 +3442,7 @@ m4 programming idioms.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`join.m4')dnl
 @result{}divert(`-1')
 @result{}# join(sep, args) - join each non-empty ARG into a single
@@ -3515,12 +3515,12 @@ quoting are added around each element.
 @end deffn
 
 An actual implementation of these three macros is distributed as
address@hidden@value{VERSION}/@/examples/@/quote.m4} in this package.  First,
-let's examine their usage:
address@hidden@value{VERSION}/@/doc/examples/@/quote.m4} in this package.
+First, let's examine their usage:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`quote.m4')
 @result{}
 -quote-dquote-dquote_elt-
@@ -3553,7 +3553,7 @@ resulting string.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`quote.m4')dnl
 @result{}divert(`-1')
 @result{}# quote(args) - convert args to single-quoted string
@@ -3618,7 +3618,7 @@ It can, for example, be used for simple counting:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`forloop.m4')
 @result{}
 forloop(`i', `1', `8', `i ')
@@ -3629,7 +3629,7 @@ For-loops can be nested, like:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`forloop.m4')
 @result{}
 forloop(`i', `1', `4', `forloop(`j', `1', `8', ` (i, j)')
@@ -3653,11 +3653,11 @@ not finished, it increments the iterator (using the 
predefined macro
 @code{incr}, @pxref{Incr}), and recurses.
 
 Here is an actual implementation of @code{forloop}, distributed as
address@hidden@value{VERSION}/@/examples/@/forloop.m4} in this package:
address@hidden@value{VERSION}/@/doc/examples/@/forloop.m4} in this package:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`forloop.m4')dnl
 @result{}divert(`-1')
 @result{}# forloop(var, from, to, stmt) - simple version
@@ -3699,12 +3699,12 @@ invocation is restored.
 
 As an example, this displays each word in a list inside of a sentence,
 using an implementation of @code{foreach} distributed as
address@hidden@value{VERSION}/@/examples/@/foreach.m4}, and @code{foreachq}
-in @address@hidden/@/examples/@/foreachq.m4}.
address@hidden@value{VERSION}/@/doc/examples/@/foreach.m4}, and @code{foreachq}
+in @address@hidden/@/doc/examples/@/foreachq.m4}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreach.m4')
 @result{}
 foreach(`x', (foo, bar, foobar), `Word was: x
@@ -3727,7 +3727,7 @@ to a helper macro.  This example generates a shell case 
statement:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreach.m4')
 @result{}
 define(`_case', `  $1)
@@ -3757,7 +3757,7 @@ through the original list.  Here is a simple 
implementation of
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`foreach.m4')dnl
 @result{}divert(`-1')
 @result{}# foreach(x, (item_1, item_2, ..., item_n), stmt)
@@ -3784,7 +3784,7 @@ rescan:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 define(`a', `1')define(`b', `2')define(`c', `3')
 @result{}
 include(`foreach.m4')
@@ -3809,7 +3809,7 @@ Obviously, @code{foreachq} did a better job; here is its 
implementation:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`foreachq.m4')dnl
 @result{}include(`quote.m4')dnl
 @result{}divert(`-1')
@@ -3836,7 +3836,7 @@ Invoking m4}).  Additionally, this implementation does 
not expand
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreach.m4')include(`foreachq.m4')
 @result{}
 foreach(`name', `(`a', `b')', ` defn(`name')')
@@ -3873,11 +3873,11 @@ few special macros, such as @code{defn}, which cannot 
be used as the
 @end deffn
 
 A sample implementation of these macros is distributed in the file
address@hidden@value{VERSION}/@/examples/@/stack.m4}.
address@hidden@value{VERSION}/@/doc/examples/@/stack.m4}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`stack.m4')
 @result{}
 pushdef(`a', `1')pushdef(`a', `2')pushdef(`a', `3')
@@ -3913,7 +3913,7 @@ undefined during the algorithm.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`stack.m4')dnl
 @result{}divert(`-1')
 @result{}# stack_foreach(macro, action)
@@ -4018,12 +4018,12 @@ obvious.  The macro @code{stack_foreach} mentioned 
earlier is an example
 of a context that provides exactly one argument to a macro name.  But
 coupled with currying, we can invoke @code{reverse} with two arguments
 for each definition of a macro stack.  This example uses the file
address@hidden@value{VERSION}/@/examples/@/curry.m4} included in the
address@hidden@value{VERSION}/@/doc/examples/@/curry.m4} included in the
 distribution.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`curry.m4')include(`stack.m4')
 @result{}
 define(`reverse', `ifelse(`$#', `0', , `$#', `1', ``$1'',
@@ -4048,7 +4048,7 @@ directly rather than going through @code{curry}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`curry.m4')dnl
 @result{}divert(`-1')
 @result{}# curry(macro, args)
@@ -4067,7 +4067,7 @@ versions:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`curry.m4')
 @result{}
 curry(`define', `mylen')(defn(`len'))
@@ -4098,7 +4098,7 @@ M4 versions, or @pxref{Improved copy, , Answers}).
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`curry.m4')include(`stack.m4')
 @result{}
 define(`rename', `copy($@@)undefine(`$1')')dnl
@@ -4681,14 +4681,14 @@ to macro tracing.
 @comment examples
 @comment options: -dip
 @example
-$ @kbd{m4 -dip -I examples}
+$ @kbd{m4 -dip -I doc/examples}
 @error{}m4debug: input read from 'stdin'
 define(`foo', `m4wrap(`wrapped text
 ')dnl')
 @result{}
 include(`incl.m4')dnl
address@hidden: path search for 'incl.m4' found 'examples/incl.m4'
address@hidden: input read from 'examples/incl.m4'
address@hidden: path search for 'incl.m4' found 'doc/examples/incl.m4'
address@hidden: input read from 'doc/examples/incl.m4'
 @result{}Include file start
 @result{}Include file end
 @error{}m4debug: input reverted to stdin, line 3
@@ -5922,12 +5922,12 @@ However, earlier versions had reverse ordering 
(LIFO---last in, first
 out), as this behavior is more like the semantics of the C function
 @code{atexit}.  It is possible to emulate POSIX behavior even
 with older versions of GNU M4 by including the file
address@hidden@value{VERSION}/@/examples/@/wrapfifo.m4} from the
address@hidden@value{VERSION}/@/doc/examples/@/wrapfifo.m4} from the
 distribution:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`wrapfifo.m4')dnl
 @result{}dnl Redefine m4wrap to have FIFO semantics.
 @result{}define(`_m4wrap_level', `0')dnl
@@ -5950,14 +5950,14 @@ m4wrap(`a`'m4wrap(`c
 
 It is likewise possible to emulate LIFO behavior without resorting to
 the GNU M4 extension of @code{builtin}, by including the file
address@hidden@value{VERSION}/@/examples/@/wraplifo.m4} from the
address@hidden@value{VERSION}/@/doc/examples/@/wraplifo.m4} from the
 distribution.  (Unfortunately, both examples shown here share some
 subtle bugs.  See if you can find and correct them; or @pxref{Improved
 m4wrap, , Answers}).
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`wraplifo.m4')dnl
 @result{}dnl Redefine m4wrap to have LIFO semantics.
 @result{}define(`_m4wrap_level', `0')dnl
@@ -6086,14 +6086,14 @@ sinclude()
 
 This section uses the @option{--include} command-line option (or
 @option{-I}, @pxref{Preprocessor features, , Invoking m4}) to grab
-files from the @address@hidden/@/examples}
+files from the @address@hidden/@/doc/examples}
 directory shipped as part of the GNU @code{m4} package.  The
-file @address@hidden/@/examples/@/incl.m4} in the distribution
+file @address@hidden/@/doc/examples/@/incl.m4} in the distribution
 contains the lines:
 
 @comment ignore
 @example
-$ @kbd{cat examples/incl.m4}
+$ @kbd{cat doc/examples/incl.m4}
 @result{}Include file start
 @result{}foo
 @result{}Include file end
@@ -6105,7 +6105,7 @@ into the input stream.  The contents of the file will be 
read by
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 define(`foo', `FOO')
 @result{}
 include(`incl.m4')
@@ -6122,7 +6122,7 @@ of @file{incl.m4}:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 define(`bar', include(`incl.m4'))
 @result{}
 This is `bar':  >>bar<<
@@ -7371,11 +7371,11 @@ word to upper case and the remaining characters to 
lower case.
 @end deffn
 
 First, an example of their usage, using implementations distributed in
address@hidden@value{VERSION}/@/examples/@/capitalize.m4}.
address@hidden@value{VERSION}/@/doc/examples/@/capitalize.m4}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`capitalize.m4')
 @result{}
 upcase(`GNUs not Unix')
@@ -7395,7 +7395,7 @@ them; or @pxref{Improved capitalize, , Answers}).
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`capitalize.m4')dnl
 @result{}divert(`-1')
 @result{}# upcase(text)
@@ -7502,7 +7502,7 @@ example shows how @code{format} can be used to produce 
tabular output.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`forloop.m4')
 @result{}
 forloop(`i', `1', `10', `format(`%6d squared is %10d
@@ -8605,14 +8605,14 @@ This example reuses the file @file{incl.m4} mentioned 
earlier
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 define(`foo', ``$0' called at __file__:__line__')
 @result{}
 foo
 @result{}foo called at stdin:2
 include(`incl.m4')
 @result{}Include file start
address@hidden called at examples/incl.m4:2
address@hidden called at doc/examples/incl.m4:2
 @result{}Include file end
 @result{}
 @end example
@@ -8811,9 +8811,9 @@ mentioned earlier (@pxref{Include}):
 @comment examples
 @comment options: -s
 @example
-$ @kbd{m4 --synclines -I examples}
+$ @kbd{m4 --synclines -I doc/examples}
 include(`incl.m4')
address@hidden 1 "examples/incl.m4"
address@hidden 1 "doc/examples/incl.m4"
 @result{}Include file start
 @result{}foo
 @result{}Include file end
@@ -9503,14 +9503,14 @@ The @code{forloop} macro (@pxref{Forloop}) as presented 
earlier can go
 into an infinite loop if given an iterator that is not parsed as a macro
 name.  It does not do any sanity checking on its numeric bounds, and
 only permits decimal numbers for bounds.  Here is an improved version,
-shipped as @address@hidden/@/examples/@/forloop2.m4}; this
+shipped as @address@hidden/@/doc/examples/@/forloop2.m4}; this
 version also optimizes overhead by calling four macros instead of six
 per iteration (excluding those in @var{text}), by not dereferencing the
 @var{iterator} in the helper @address@hidden
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 undivert(`forloop2.m4')dnl
 @result{}divert(`-1')
 @result{}# forloop(var, from, to, stmt) - improved version:
@@ -9551,7 +9551,7 @@ to an infinite recursion loop in this example.
 @comment status: 1
 @comment examples
 @example
-$ @kbd{m4 -d -L 9 -I examples}
+$ @kbd{m4 -d -L 9 -I doc/examples}
 define(`arg1', `$1')include(`forloop2.m4')include(`quote.m4')
 @result{}
 define(`double', `define(`$1'`2',
@@ -9586,7 +9586,7 @@ to pass the current iterator value as a single argument.  
Coupled with
 with helper macros if the argument is needed in more than one place in
 the expansion, the output can be generated with three, rather than four,
 macros of overhead per iteration.  Notice how the file
address@hidden@value{VERSION}/@/examples/@/forloop3.m4} rearranges the
address@hidden@value{VERSION}/@/doc/examples/@/forloop3.m4} rearranges the
 arguments of the helper @code{_forloop} to take two arguments that are
 placed around the current value.  By splitting a balanced set of
 parantheses across multiple arguments, the helper macro can now be
@@ -9594,7 +9594,7 @@ shared by @code{forloop} and the new @code{forloop_arg}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`forloop3.m4')
 @result{}
 undivert(`forloop3.m4')dnl
@@ -9645,7 +9645,7 @@ quadratic behavior of @code{foreachq}:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreachq.m4')
 @result{}
 traceon(`shift')debugmode(`aq')
@@ -9683,11 +9683,11 @@ recursion use fewer arguments, rather than adding 
additional quoted
 uses of @code{shift}.  By doing so, @code{m4} uses less memory, invokes
 fewer macros, is less likely to run into machine limits, and most
 importantly, performs faster.  The fixed version of @code{foreachq} can
-be found in @address@hidden/@/examples/@/foreachq2.m4}:
+be found in @address@hidden/@/doc/examples/@/foreachq2.m4}:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreachq2.m4')
 @result{}
 undivert(`foreachq2.m4')dnl
@@ -9735,11 +9735,11 @@ place, and by using the fixed-length @samp{$#} instead 
of an arbitrary
 length list as the key to end recursion.  The result is an overhead of
 six macro invocations per loop (excluding any macros in @var{text}),
 instead of eight.  This alternative approach is available as
address@hidden@value{VERSION}/@/examples/@/foreach3.m4}:
address@hidden@value{VERSION}/@/doc/examples/@/foreach3.m4}:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreachq3.m4')
 @result{}
 undivert(`foreachq3.m4')dnl
@@ -9831,7 +9831,7 @@ not yet supported.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreachq4.m4')
 @result{}
 undivert(`foreachq4.m4')dnl
@@ -9859,15 +9859,15 @@ foreachq(`x', ``1', `2', `3', `4'', `x
 @end example
 
 For yet another approach, the improved version of @code{foreach},
-available in @address@hidden/@/examples/@/foreach2.m4}, simply
-overquotes the arguments to @address@hidden to begin with, using
address@hidden  Then @address@hidden can just use
+available in @address@hidden/@/doc/examples/@/foreach2.m4},
+simply overquotes the arguments to @address@hidden to begin with,
+using @code{dquote_elt}.  Then @address@hidden can just use
 @address@hidden to remove the extra layer of quoting that was added up
 front:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`foreach2.m4')
 @result{}
 undivert(`foreach2.m4')dnl
@@ -9921,7 +9921,7 @@ one, although a leading space still remains.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`quote.m4')include(`foreachq2.m4')
 @result{}
 pushdef(`sep', `define(`sep', ``, '')')
@@ -9954,7 +9954,7 @@ detrimental effects.
 
 @comment examples
 @example
-$ @kbd{m4 -d -I examples}
+$ @kbd{m4 -d -I doc/examples}
 include(`foreach2.m4')
 @result{}
 include(`foreachq2.m4')
@@ -10074,11 +10074,11 @@ the other approach would give the same output, it 
does so at the expense
 of increasing the argument size on each iteration of
 @code{_stack_reverse_sep}, which results in quadratic instead of linear
 execution time.  The improved stack walking macros are available in
address@hidden@value{VERSION}/@/examples/@/stack_sep.m4}:
address@hidden@value{VERSION}/@/doc/examples/@/stack_sep.m4}:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`stack_sep.m4')
 @result{}
 define(`copy', `ifdef(`$2', `errprint(`$2 already defined
@@ -10130,7 +10130,7 @@ builtin preserves them for their intended use.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`wraplifo.m4')
 @result{}
 m4wrap(`define(`foo', ``$0:'-$1-$*-$#-')foo(`a', `b')
@@ -10157,13 +10157,13 @@ Finally, it is worth emulating the GNU M4 extension 
of saving
 all arguments to @code{m4wrap}, separated by a space, rather than saving
 just the first argument.  This is done with the @code{join} macro
 documented previously (@pxref{Shift}).  The improved LIFO example is
-shipped as @address@hidden/@/examples/@/wraplifo2.m4}, and can
-easily be converted to a FIFO solution by swapping the adjacent
+shipped as @address@hidden/@/doc/examples/@/wraplifo2.m4}, and
+can easily be converted to a FIFO solution by swapping the adjacent
 invocations of @code{joinall} and @code{defn}.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`wraplifo2.m4')
 @result{}
 undivert(`wraplifo2.m4')dnl
@@ -10235,7 +10235,7 @@ double-quoted string:
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`capitalize.m4')dnl
 define(`active', `act1, ive')dnl
 define(`Active', `Act2, Ive')dnl
@@ -10296,11 +10296,11 @@ string.  In turn, that means the replacement text has 
unbalanced quotes,
 necessitating another round of @code{changequote}.
 
 In the fixed version below, (also shipped as
address@hidden@value{VERSION}/@/examples/@/capitalize.m4}), @code{capitalize}
-uses the alternate quotes of @samp{<<[} and @samp{]>>} (the longer
-strings are chosen so as to be less likely to appear in the text being
-converted).  The helpers @code{_to_alt} and @code{_from_alt} merely
-reduce the number of characters required to perform a
address@hidden@value{VERSION}/@/doc/examples/@/capitalize.m4}),
address@hidden uses the alternate quotes of @samp{<<[} and @samp{]>>}
+(the longer strings are chosen so as to be less likely to appear in the
+text being converted).  The helpers @code{_to_alt} and @code{_from_alt}
+merely reduce the number of characters required to perform a
 @code{changequote}, since the definition changes twice.  The outermost
 pair means that @code{patsubst} and @code{_capitalize_alt} are invoked
 with alternate quoting; the innermost pair is used so that the third
@@ -10312,7 +10312,7 @@ scheme in effect.
 
 @comment examples
 @example
-$ @kbd{m4 -I examples}
+$ @kbd{m4 -I doc/examples}
 include(`capitalize2.m4')dnl
 define(`active', `act1, ive')dnl
 define(`Active', `Act2, Ive')dnl
@@ -10398,7 +10398,7 @@ restrictions, covered later (@pxref{Copying This 
Manual}).
 
 This appendix covers the license for copying this manual.  Note that
 some of the longer examples in this manual are also distributed in the
-directory @address@hidden/@/examples/}, where a more
+directory @address@hidden/@/doc/examples/}, where a more
 permissive license is in effect when copying just the examples.
 
 @menu
diff --git a/modules/README b/modules/README
index d8fc412..3048e24 100644
--- a/modules/README
+++ b/modules/README
@@ -71,11 +71,11 @@ strategies are illustrated by shadow.c and shadow.m4.
 
 To try the demos, compile with `make' and run them with the commands as:
 
-    tests/m4 examples/time.m4
+    tests/m4 doc/examples/time.m4
 
 or in the case of time2.m4
 
-    tests/m4 -I tests time -I examples time2.m4
+    tests/m4 -I tests time -I doc/examples time2.m4
 
 ========================================================================
 
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0109259..cb3767f 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,15 +1,15 @@
-gnu/clean-temp.c
-gnu/closein.c
-gnu/closeout.c
-gnu/error.c
-gnu/obstack.c
-gnu/quotearg.c
-gnu/regcomp.c
-gnu/verror.c
-gnu/xalloc-die.c
-gnu/xprintf.c
 m4/builtin.c
 m4/debug.c
+m4/gnu/clean-temp.c
+m4/gnu/closein.c
+m4/gnu/closeout.c
+m4/gnu/error.c
+m4/gnu/obstack.c
+m4/gnu/quotearg.c
+m4/gnu/regcomp.c
+m4/gnu/verror.c
+m4/gnu/xalloc-die.c
+m4/gnu/xprintf.c
 m4/input.c
 m4/macro.c
 m4/module.c
@@ -20,7 +20,6 @@ m4/utility.c
 modules/evalparse.c
 modules/format.c
 modules/gnu.c
-modules/load.c
 modules/m4.c
 modules/mpeval.c
 modules/traditional.c
diff --git a/tests/builtins.at b/tests/builtins.at
index d53ffc4..d22b94f 100644
--- a/tests/builtins.at
+++ b/tests/builtins.at
@@ -242,7 +242,7 @@ AT_DATA([in.m4], [[include(`forloop3.m4')dnl
 forloop(`i', `1', `10000', `define(`m'i, i)')m10000
 forloop(`i', `1', `10000', `undefine(`m'i)')m10000
 ]])
-AT_CHECK_M4([-I "$abs_top_srcdir/examples" in.m4], [0], [[10000
+AT_CHECK_M4([-I "$abs_top_srcdir/doc/examples" in.m4], [0], [[10000
 m10000
 ]])
 
@@ -378,7 +378,7 @@ forloop(`i', `9001', `10000',
 divert(`-1')undivert
 ]])
 
-AT_CHECK_M4([-I "$abs_top_srcdir/examples" in.m4])
+AT_CHECK_M4([-I "$abs_top_srcdir/doc/examples" in.m4])
 
 AT_CLEANUP
 
diff --git a/tests/generate.awk b/tests/generate.awk
index 424663d..567501a 100755
--- a/tests/generate.awk
+++ b/tests/generate.awk
@@ -183,15 +183,15 @@ function new_test(input, status, output, error, options, 
xfail, examples) {
   if (examples == 1)
     {
       printf ("AT_DATA([expout1],\n[[%s]])\n", output);
-      printf ("$SED -e \"s|examples|$abs_top_srcdir/examples|g\" \\\n");
+      printf ("$SED -e \"s|doc/examples|$abs_top_srcdir/doc/examples|g\" 
\\\n");
       printf ("  < expout1 > expout\n\n");
       if (error)
         {
           printf ("AT_DATA([experr1],\n[[%s]])\n", error);
-          printf ("$SED \"s|examples|$abs_top_srcdir/examples|g\" \\\n");
+          printf ("$SED \"s|doc/examples|$abs_top_srcdir/doc/examples|g\" 
\\\n");
           printf ("  < experr1 > experr\n\n");
         }
-      options = options " -I\"$abs_top_srcdir/examples\"";
+      options = options " -I\"$abs_top_srcdir/doc/examples\"";
     }
 
   printf ("AT_DATA([[input.m4]],\n[[%s]])\n\n", input);
diff --git a/tests/others.at b/tests/others.at
index dd5c99a..6253934 100644
--- a/tests/others.at
+++ b/tests/others.at
@@ -457,28 +457,28 @@ include(`loop.m4')dnl
 ]])
 
 dnl boxed recursion
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10 -Dverbose loop.m4], [0],
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10 -Dverbose loop.m4], [0],
 [[ 1 2 3 4 5 6 7 8 9 10
 ]])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=2500 loop.m4], [0])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10000 in.m4], [0], [[48894
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=2500 loop.m4], [0])
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10000 in.m4], [0], [[48894
 ]])
 
 dnl unboxed recursion
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10 -Dverbose -Dalt loop.m4], 
[0],
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10 -Dverbose -Dalt 
loop.m4], [0],
 [[ 1 2 3 4 5 6 7 8 9 10
 ]])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=2500 -Dalt loop.m4], [0])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10000 -Dalt in.m4], [0],
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=2500 -Dalt loop.m4], [0])
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10000 -Dalt in.m4], [0],
 [[48894
 ]])
 
 dnl foreach via forloop recursion
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10 -Dverbose -Dalt=4 loop.m4],
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10 -Dverbose -Dalt=4 
loop.m4],
 [0], [[ 1 2 3 4 5 6 7 8 9 10
 ]])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=2500 -Dalt=4 loop.m4], [0])
-AT_CHECK_M4([-I "$top_srcdir/examples" -Dlimit=10000 -Dalt=4 in.m4], [0],
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=2500 -Dalt=4 loop.m4], [0])
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" -Dlimit=10000 -Dalt=4 in.m4], [0],
 [[48894
 ]])
 
@@ -488,7 +488,7 @@ forloop(`i', `1', `10000', `pushdef(`s', i)')dnl
 define(`colon', `:')define(`dash', `-')dnl
 len(stack_foreach_sep(`s', `dash', `', `colon'))
 ]])
-AT_CHECK_M4([-I "$top_srcdir/examples" in.m4], [0], [[58893
+AT_CHECK_M4([-I "$top_srcdir/doc/examples" in.m4], [0], [[58893
 ]])
 
 AT_CLEANUP


hooks/post-receive
-- 
GNU M4 source repository



reply via email to

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