GNU `m4' is an implementation of the traditional Unix macro
processor.  It is mostly SVR4 compatible, although it has some
extensions (for example, handling more than 9 positional parameters
to macros).  `m4' also has built-in functions for including files,
running shell commands, doing arithmetic, etc.  Autoconf needs GNU
`m4' for generating `configure' scripts, but not for running them.

GNU `m4' was originally written by Rene' Seindal, from Denmark.
This release is considered stable.

If GNU `m4' is meant to serve GNU `autoconf', beware that `m4'
should be fully installed *prior to* configuring `autoconf' itself.
Likewise, if you intend on hacking GNU `m4' from CVS, the bootstrap
process requires that you first install a released copy of GNU `m4'.

If you are just trying to build `m4' from a released tarball, you
should not normally need to run `./bootstrap' or `autoreconf'; just go
ahead and start with `./configure'.  If you are trying to build `m4'
from CVS, more information can be found in the CVS-only file HACKING.

In the subdirectory `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.

See file `BACKLOG' for a summary of pending mail and articles.
See file `COPYING' for copying conditions.
See file `INSTALL' for compilation and installation instructions.
See file `NEWS' for a list of major changes in the current release.
See file `THANKS' for a list of contributors.

By using `./configure --enable-changeword', you get an experimental
feature which allows for changing the syntax of what is a "word" in
`m4'.  This feature will not be present in m4 2.0, but will be
replaced by other new features which provide similar capability, so
do not count on it.

Send bug reports to `bug-m4@gnu.org'.  A bug report is an adequate
description of the problem: your input, what you expected, what you got,
and why this is wrong.  Diffs are welcome, but they only describe a
solution, from which the problem might be uneasy to infer.

========================================================================

Copyright (C) 2000, 2005, 2006 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts.  A copy of the license is included in the ``GNU Free
Documentation License'' file as part of this distribution.
