* Makefile.maint: Update from the Coreutils.
(AMTAR): Remove, obsolete.
(-automake_repo): Update to redhat.com.
(cvs_file): New.
Adjust to the fact that ansi2knr is now hosted by Automake.
* Maekfile.am (cvs_files): Add install-sh and mkinstalldirs.
* config/config.guess, config/mkinstalldirs, config/texinfo.tex:
Update from masters.
are a few warnings.
* lib/autoconf/autoheader.m4 (AH_VERBATIM, _AH_VERBATIM_OLD):
Quote for Perl '' strings, not "".
* bin/autoheader.in: Invoke autoconf to get '' strings, not ""
strings.
characters is a syntax warning now.
(_AS_QUOTE): Accept $2 as list of characters to quote.
* lib/autoconf/autoheader.m4 (AH_VERBATIM, _AH_VERBATIM_OLD):
Quote for Perl, not sh.
* bin/autoheader.in: When $debug, report the file which is
`do'ne.
* tests/tools.at (autom4te, autoheader): Exercise @bar, not merely
`@', to tickle Perl's lists.
Reported by Carlos Velasco.
Fixes the `AC_ARG_VAR' test failures.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES): Don't use cmp.
* lib/freeze.mk (check-forbidden-patterns): New.
* lib/autoconf/Makefile.am, lib/autotest/Makefile.am
* lib/m4sugar/Makefile.am (check-local): Use it to catch `cmp'.
* doc/autoconf.texi (Limitations of Usual Tools): HP-UX' cmp and
/dev/null.
Reported months ago by H. Merijn Brand.
longer required can still cause errors.
Reported by Alexandre Duret-Lutz.
* bin/autom4te.in (&parse_args): Do not prepend `--reload-state'
to frozen files in @ARGV, as @ARGV must remain being a list of
files. Rather, at M4 call sites, use this...
(&files_to_options): New function.
(&freeze): Use &error.
(&up_to_date): If a file that was included according to the cache
is no longer there, then the output is out dated.
(&main): Don't even check whether a file is up to date is anyway
--force is given.
* tests/tools.at (autom4te cache): New.
* bin/autoupdate.in (&parse_args): Kill old options.
* bin/autoreconf.in (&parse_args): Remove dead options.
Factor some code.
(&autoreconf): Report the directories we enter *and leave*, so
that error messages can be easily located, and use GNU Make
format, so that Emacs' compile mode understands us.
* lib/Autom4te/General.pm (&update_file): Use `verbose' to report
if some file was changed instead of `print'.
* bin/autoheader.in: Suggest AC_DEFINE with 3 args when needed.
(&parse_args): Remove the dead options.
* tests/atspecific.m4 (AT_CHECK_AUTOHEADER): Adjust to the new
autoheader's quiet mode.
(AT_CHECK_AUTOUPDATE): Likewise.
* tests/tools.at (autoupdate): Adjust.
* tests/semantics.at (AC_C_BIGENDIAN): Likewise.
aclocal invocation, as Gettext macros might not be visible to
aclocal.
Instead of blindly running autopoint, scan configure.ac (not the
traces) for AM_GNU_GETTEXT_VERSION uses, as autopoint does.
Reported by Paul D. Smith.
None of this seems to have anything to do with POSIX, really,
but it's how Perl getopt works.
* bin/autom4te.in (parse_args): Configure GetOpt with
"permute", too.
* doc/autoconf.texi (Invoking autom4te):
--warning -> --warnings.
* lib/autom4te.in: --warning -> --warnings.
users who use config.site to require for a cache: in this case,
the two last configure runs, using two different sets of
arguments, trigger a legitimate error.
autoheader are Perl programs.
(autoconf, autoheader, autoreconf, autoupdate, ifnames, autoscan)
(autom4te): Specify that the sources are in the $srcdir.
* doc/autoconf.texi (Installation Directory Variables): Adjust.
* lib/autoconf/autoconf.m4: Include it.
* lib/autoconf/functions.m4: Use AN_FUNCTION for all the functions
that were listed in the original autoscan.list.
* lib/autoconf/headers.m4: Similarly with headers.
* lib/freeze.mk (autoconf_m4f_dependencies): Add autoscan.m4.
(.m4.m4f): Don't pass --prepend-include, since that's done by
tests/autom4te itself.
* lib/autoscan/Makefile.am: Include freeze.mk.
(autoscan.list): New target --this file is no longer a source.
(autoscan.pre): New file.
Adjust all uses.
(&init_tables): When --debug, report the list of rules to ease
tracking changes in autoscan.list.
* lib/autoscan/autoscan.list (function): Strip comments, sort.
* lib/autoscan/identifiers, lib/autoscan/makevars,
* lib/autoscan/programs: Make the `kind' explicit, i.e., each
`functions' line is now prefixed with `function:'.
* bin/autoscan.in (&init_tables): Adjust.
word: there is no `default' macro for autoscan.
* bin/autoscan.in (&init_tables): Reject entries with no macro at
all.
* lib/autoscan/functions, lib/autoscan/headers: Make the macro
explicit.
from /tmp.
Thanks to Bill Moseley and Paul Eggert.
* lib/m4sugar/m4sh.m4 (AS_TMPDIR): $2 is the directory into which
the tmpdir must be created.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Have the tmp
dir be in the build tree, instead of $TMPDIR.
* doc/autoconf.texi (Installation Directory Variables): Update.
(Limitations of Make): Some about `Single Suffix Rules and
Separated Dependencies'.
* bin/Makefile.am (autoconf, autoheader, autoreconf, autoupdate)
(ifnames, autoscan, autom4te): Un-factor into several rules.
make handles suffix-rules differently from GNU make.
* bin/Makefile.am (SUFFIXES, .in): Remove.
(autoconf autoheader autoreconf autoupdate ifnames autoscan autom4te):
Move the body of the old .in rule here.
`duplicates', since the algorithm was too naive and could keep
`--prefix=1 --prefix=2 --prefix=1' as `--prefix=1 --prefix=2', and
keep `--prefix foo --prefix bar' as `--prefix foo bar'.
Reported by Ralf Corsepius.
* tests/torture.at (Configuring subdirectories): Exercise these
cases.
looking for a replacement file.
* lib/autoconf/general.m4 (AC_CHECK_DECLS): Check that the
directory is relative.
* doc/autoconf.texi (Generic Functions): Clarify the replacement
directory definition.
Reported by Andreas Schwab and Jim Meyering.
(ifnames, autoscan, autom4te): Since we don't only depend on
configure.ac variables (such as VERSION etc.), but also on prefix
and so forth, depend on Makefile, not configure.ac.
Reported by Alexandre Duret-Lutz.
* doc/autoconf.texi (Installation Directory Variables): Adjust.
stdout, as traditional "ls" does.
* lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT_DEFAULT,
_AC_COMPILER_EXEEXT_O): Likewise.
* doc/autoconf.texi (Limitations of Usual Tools): Add "ls".
* bin/autoconf.as: Add --prepend-include option. This patch was
applied to bin/autoconf.in in the 2002-07-17 patch by Mark D. Roth,
but bin/autoconf.in is generated automatically from bin/autoconf.as.
* bin/autoconf.in, configure: Regenerate.
ENV, MAIL, MAILPATH, PS1, PS2, PS4. Index PWD.
* lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Unset ENV, MAIL,
MAILPATH and set PS1, PS2, PS4 to default values, to work
around bug in pre-3.0 UWIN ksh reported by Bruce Lilly.
For LC_ALL etc, first try to set to "C" as POSIX requires and as
the Autoconf documentation specifies; fall back to "unset" only if
this fails. Use a shell for-loop for this rather than an m4 loop,
to shorten the output script.
1003.1-2001's requirements for CDPATH. Give a simpler workaround
for the CDPATH problem. Document PWD.
(Limitations of Builtins): Document the problem that "cd $foo" and
"ls $foo" may refer to different directories in shells conforming
to POSIX 1003.1-2001. Use PS1 rather than CDPATH for "unset"
example, since the old example is now out of date.
* lib/autoconf/general.m4 (_AC_INIT_SRCDIR): Reject FOO if "cd
FOO" and "ls FOO" talk about different directories; this catches
problems when POSIX 1003.1-2001 "cd" fails due to symlink
spaghetti.
* lib/m4sugar/m4sh.m4 (AS_SHELL_SANITIZE): Use AS_UNSET instead
of rolling our own unset.
(_AS_PREPARE): $as_unset CDPATH instead of AS_UNSETting it, since
in practice we needn't worry about CDPATH if unset doesn't work.
* Makefile.in, aclocal.m4, bin/Makefile.in,
config/Makefile.in, doc/Makefile.in, lib/Makefile.in,
lib/Autom4te/Makefile.in, lib/autoconf/Makefile.in,
lib/autoscan/Makefile.in, lib/autotest/Makefile.in,
lib/emacs/Makefile.in, lib/m4sugar/Makefile.in, man/Makefile.in,
tests/Makefile.in: Regenerate with Automake 1.6.3.
* config/config.guess, config/config.sub, config/mkinstalldirs:
Update.
* configure: Regenerate with self.
(&xsystem): Use WIFEXITED and WEXITSTATUS instead of decoding $? by
hand, which is not portable.
(&error): New.
* bin/autom4te.in: Use them.
Use &error instead of die.
* tests/m4sugar.at (m4_warn, m4_require: circular dependencies):
Adjust.
fixing a bug introduced by the previous patch.
(Limitations of Make): Add a 'target lookup' subentry in the
'VPATH' entry. Rewrite all `make' occurences as `@command{make}'.
* bin/autom4te.in: Remove --include-envvar and --site-macro-subdir
options and use $AUTOM4TE_PATH.
* doc/autoconf.texi: Remove documentation of autom4te
--include-envvar and --site-macro-subdir options and document
use of $AUTOM4TE_PATH.
* lib/autom4te.in: Remove --include-envvar and --site-macro-subdir
arguments from each language section.
* Makefile.am (MAKEINFO): Remove; it's a user-specified macro.
Replace with:
(AM_MAKEINFOFLAGS): New macro.
* doc/Makefile.am (MAKEINFO, AM_MAKEINFOFLAGS): Likewise.
* Makefile.am (INSTALL): Use the new macros.
Use -o rather than --output, since "missing" does not grok --output.
Use PATH="/nonexistent;.", not PATH=".;.", as FreeBSD ksh2002
apparently treats PATH="nonexistent" as if it contained ".".
Bug reported by Stefan `Sec' Zehl.
bin/autoupdate.in, bin/ifnames.in, lib/Autom4te/General.pm,
lib/Autom4te/Struct.pm, lib/Autom4te/XFile.pm: Add local variables
so that Emacs setups GNU style for perl-mode and cperl-mode.
as per "Limitations of Builtins".
* tests/atspecific.m4 (AT_CHECK_ENV): Likewise, for && vs test -a.
* tests/semantics.at (AC_C_BIGENDIAN): Likewise.
* tests/mktests.sh: Use grep instead of fgrep, as per
"Limitations of Builtins".
autom4te_perllibdir): Set to top build dir or src dir as appropriate,
so that we consistently test the just-built programs.
* tests/wrappl.as: Likewise.
name, so that symlinks to 'autoconf' work properly. Bug reported
by Bruno Haible.
* bin/autoheader.in (AUTOM4TE): Likewise.
* bin/autoreconf.in (autoconf, autoheader): Likewise.
* bin/autoscan.in (autom4te): Likewise.
* bin/autoupdate.in (autom4te): Likewise.
* NEWS, doc/autoconf.texi (Particular Types): Document it.
* lib/autoconf/functions.m4 (_AC_FUNC_FNMATCH): Require it
instead of AC_MBSTATE_T, which never existed.
from the default list of compilers to try. Suggested by
Kate Hedstrom.
* NEWS: Document the above.
* autoconf.texi (Fortran 77 Compiler): Don't suggest cf77.
AC_FUNC_FNMATCH_GNU also tests for GNU extensions.
Both macros now accept an optional source-dir arg.
New macro AC_GNU_SOURCE to define _GNU_SOURCE.
* NEWS: Document this.
* doc/autoconf.texi (Particular Functions, UNIX Variants): Likewise.
* lib/autoconf/functions.m4 (_AC_FUNC_FNMATCH): New macro.
(AC_FUNC_FNMATCH): Use it. Test only for POSIX conformance,
not for GNU extensions; this undoes part of the 2000-11-03 change,
reverting to 2.13-compatible behavior.
Add new optional argument DIR.
(AC_FUNC_FNMATCH_GNU): New macro.
* lib/autoconf/specific.m4 (AC_GNU_SOURCE): New macro.
argument specifying location of getloadavg.c. This removes a
FIXME. This idea was taken from Jim Meyering's implementation in
textutils.
* doc/autoconf.texi (Particular Functions): Document this.
Also, mention HAVE_NLIST_H rather than NLIST_STRUCT, since
that's what the code does; this fixes a bug reported by
Paul D. Smith.
If prototypes are supported, use them to check this at compile-time,
instead of trying to check it at run-time. If we must do a run-time
check, assume that setvbuf is standard when cross-compiling, as
nonstandard setvbuf occurs only on ancient and unlikely hosts.
files to be 1 second older; just set them to be the same time.
Also, sleep 1 second after the first aclocal, to work around
problems with sub-second time stamps on the input files.
of lack of $LINENO support, then the test will compare the $LINENO
in testsuite vs. the lineno in the test file. This is wrong, of
course.
Be sure to protect it.
Reported by Patrick Welche.
and ac_subst_vars be sh variables containing the list of
AC_SUBST_FILES'ed and AC_SUBST'ed identifiers. Output them in the
DEFAULT diversion.
(_AC_INIT_PREPARE): Use them to log them.
(_AC_SUBST, _AC_SUBST_SED_PROGRAM): Remove.
(AC_SUBST, AC_SUBST_FILE): Instead of buliding the
_AC_SUBST_SED_PROGRAM, store the list of output files/variables in
_AC_SUBST_FILES and _AC_SUBST_VARS.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES): Adjust.
Sample Texts sections of the Texinfo 4.2 manual. Most
importantly, this makes sure that the copyright notices appear in
all output formats. You probably need Texinfo 4.2 to generate
the manual now.
arguments in cases where this matters.
* bin/autoconf.as: Rewrite so that the problem does not come up.
* lib/autoconf/programs.m4 (AC_CHECK_PROG): Likewise.
* lib/autoconf/status.m4 (AC_OUTPUT): Likewise.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* bin/autoheader.in: Use 'case' statement to work around problem.
* bin/auto4mte.in: Likewise.
* bin/autoreconf.in: Likewise.
* bin/autoscan.in: Likewise.
* bin/autoupdate.in: Likewise.
* bin/ifnames.in: Likewise.
* doc/autoconf.texi (Shell Substitutions): Document the problem.
* lib/autotest/general.m4 (AT_INIT):
Use Zsh alias to work around problem.
* tests/atgeneral.m4 (AT_INIT): Likewise.
* tests/c.at: We can't have zero arguments, so remove workaround
that is not portable to Zsh.
workaround for ${1+"$@"}.
* doc/autoconf.texi (Shell Substitutions): Explain it.
From Oliver Kiddle and Peter Stephenson.
Have M4sh perform minimal shell sanitizing.
* lib/m4sugar/m4sh.at (AS_SHELL_SANITIZE): Split the `_AS_PREPARE_*'
part into...
(_AS_PREPARE): this new macro.
(AS_PREPARE): New.
(AS_INIT): Invoke AS_SHELL_SANITIZE.
* tests/m4sh.at (AT_DATA_LINENO): Use _AS_PREPARE.
Adjust Autoconf and Autotest.
* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): Don't invoke
AS_SHELL_SANITIZE, AS_INIT did it, but invoke AS_PREPARE.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS):
Invoke _AS_PREPARE (not AS_PREPARE) in addition to
AS_SHELL_SANITIZE.
Use this M4sh to generate Autoconf's shell scripts.
* tests/wrapsh.as: New, precursor of wrapsh.in.
* tests/Makefile.am: Include lib/freeze.mk to get the dependencies
on Autotest and M4sh.
($(TESTSUITE)): Use $(autotest_m4f_dependencies).
(wrapsh.in): New target.
* bin/autoconf.as: New, precursor of autoconf.in.
(autoconf.in): New target.
(_AC_CONFIG_COMMAND, _AC_CONFIG_LINK): New.
Use dnl, not the KILL diversion.
Extracted from...
(AC_CONFIG_FILES, AC_CONFIG_HEADERS, AC_CONFIG_COMMANDS)
(AC_CONFIG_LINKS): here.
Adjust.
Don't use the KILL diversion, as it kills spurious output, which
results in failures being hidden.
Use m4_defn where appropriate.
(AC_CONFIG_IF_MEMBER): Kill the real bug: a spurious parenthesis
after the second argument.
Use m4_defn.
* lib/autom4te.in (Autoconf, Autotest, M4sh): Don't pass --warning
syntax, as it is provided by M4sugar.
* tests/torture.at (Multiple AC_CONFIG_FILES): New.
(_AC_COMPILER_EXEEXT_REJECT): New.
Also recognize *.bb and *.bbg as compilation byproducts.
(_AC_COMPILER_EXEEXT_DEFAULT, _AC_COMPILER_EXEEXT_O)
(_AC_COMPILER_OBJEXT): Use them.
Fixes Debian #138666.
(Limitations of Usual Tools): Add mkdir section.
* lib/m4sugar/m4sh.m4 (_AS_MKDIR_P_PREPARE): New macro.
(AS_MKDIR_P): Require it. Use mkdir -p if available, falling
back on AS_DIRNAME to compute prefixes otherwise; this is
roughly what mkinstalldirs does. That way, we need not have
our own filename disassembler. The old disassembler did not
work with Solaris 8 dtksh, which is ksh Version M-12/28/93d.
* lib/autotest/general.m4 (AT_INIT, AT_CLEANUP):
Create at_test_all by a series of assignments,
not by a single assignment of a long string. The latter causes ksh
version 11/16/88g to silently misbehave on OpenServer 5.0.6a,
presumably because of a buffer overrun.