Fetching contributors…
Cannot retrieve contributors at this time
23133 lines (17498 sloc) 831 KB
2011-12-26 Stefano Lattarini <>
configure: will re-execute with $CONFIG_SHELL, if it's set
* lib/m4sugar/general.m4 (_AS_DETECT_BETTER_SHELL): Define the macro
`_AS_FORCE_REEXEC_WITH_CONFIG_SHELL' to `yes', so that the code in
`_AS_DETECT_BETTER_SHELL' will cause autoconf-generated configure
scripts to always re-execute themselves with $CONFIG_SHELL, if it's
set in the environment.
* doc/autoconf.texi (config.status Invocation): Update.
* doc/install.texi (Defining Variables): Likewise.
* NEWS: Likewise.
* tests/ Add tests for the new semantics in ...
(Configure re-execs self with CONFIG_SHELL): ... this new
test group.
2011-12-26 Stefano Lattarini <>
m4sh: allow forced re-execution with $CONFIG_SHELL, if it's set
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): If the m4sh client
has defined the macro `_AS_FORCE_REEXEC_WITH_CONFIG_SHELL' to
"yes", emit code to always re-execute the current script with
$CONFIG_SHELL, if that's set.
* tests/ Add tests for the new and old semantics, in ...
(Re-exec with CONFIG_SHELL, Forced re-exec with CONFIG_SHELL): ...
these new test groups.
2011-12-26 Stefano Lattarini <>
m4sh: refactor _AS_DETECT_BETTER_SHELL, for future changes
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): Move code to
handle the re-execution of the shell ...
(_AS_REEXEC_WITH_SHELL): ... in this new macro.
2011-12-24 Stefano Lattarini <>
docs: issue with shell functions and here-documents on Solaris
* doc/autoconf.texi (Here-Documents): Using a command substitution
in a here-documents being fed to a shell function is unportable.
Problem revealed by the automake testsuite:
2011-12-26 Paul Eggert <>
AS_LN_S: fall back on 'cp -pR' (not 'cp -p') if 'ln -s' fails
This works better for symlinks to directories.
Problem reported by Eli Zaretskii via Werner Lemberg in
* doc/autoconf.texi (Particular Programs): Document this.
* lib/m4sugar/m4sh.m4 (_AS_LN_S_PREPARE): Implement this.
2011-12-07 Paul Eggert <>
AC_LANG_BOOL_COMPILE_TRY(C): port to g++ with warnings
* lib/autoconf/c.m4 (AC_LANG_BOOL_COMPILE_TRY(C)): Use the
array as well as setting it, to pacify g++. Reported by
Werner Lemberg in
2011-12-05 Paul Eggert <>
doc: document GNU make's \#
* doc/autoconf.texi (Comments in Make Macros): Also mention \#
in the right hand side of a macro, as an unportable usage.
2011-11-11 Eric Blake <>
doc: tweak previous commit
* doc/autoconf.texi (Limitations of Builtins) <export>: Give
concrete example of offender, and drop redundant text.
Reported by Stefano Lattarini.
doc: mention export portability hint
* doc/autoconf.texi (Limitations of Builtins) <export>: Document
export limitation.
Suggested by Bruno Haible.
2011-10-21 Stefano Lattarini <>
fortran: define $GFC to "yes" if $FC is a GNU compiler
* lib/autoconf/fortran.m4 (AC_PROG_FC): Define `$GFC' to "yes" if
the detected fortran compiler is a GNU compiler, define it to the
empty string otherwise.
This is mostly for consistency for what is done for the C, C++
and Fortran 77 compilers.
* doc/automake.texi: Update.
2011-10-13 Eric Blake <>
admin: mention recent copyright assignments
* AUTHORS: Update list.
2011-10-06 Stefano Lattarini <>
docs: we prefer US English spelling over British one
* doc/autoconf.texi (Parallel Make): Prefer `behavior' over
`behaviour' in a couple of places.
2011-10-06 Stefano Lattarini <>
docs: some fixlets in section about shell signal handling
* doc/autoconf.texi (Signal handling): Rename ...
(Signal Handling): ... to this, for consistency with other node
names. Fix some typos and grammaros. Add more URL references
in comments.
2011-10-06 Stefano Lattarini <>
docs: korn shells can have $? > 256 for signal-terminated children
Some Korn shells, when a child process dies due to signal number
n, can leave in $? an exit status of 256+n, instead of the more
common 128+n. See also Austin Group issue 0000051:
* doc/autoconf.texi (Signal handling): Document the described Korn
Shell behaviour, and some of its possible shortcomings.
Suggestion by Eric Blake.
2011-09-26 Eric Blake <>
docs: relax documentation license by dropping cover text
* doc/autoconf.texi (copying): Drop front- and back-cover texts.
* NEWS: Document this.
Reported by Brian Gough.
2011-09-13 Stefano Lattarini <>
docs: signal-related bugs and incompatibilities for the shells
Motivated by recent discussion on the bug-autoconf list, as well
as work in the automake testsuite:
* doc/autoconf.texi (Signal handling): New paragraph.
(@menu at "Portable Shell", @detailmenu): Update.
2011-09-19 Eric Blake <>
docs: refer to correct AC_RUN_IFELSE parameter name
* doc/autoconf.texi (Runtime) <AC_RUN_IFELSE>: Fix wording.
Reported by Reuben Thomas.
2011-09-16 Eric Blake <>
docs: fix typo in shell example
* doc/autoconf.texi (Shell Substitutions): Fix typo.
* THANKS: Update.
Reported by Nick Bowler.
2011-09-14 Stefano Lattarini <>
docs: more details about make VPATH rewriting woes
* doc/autoconf.texi (Automatic Rule Rewriting): Solaris make
VPATH rewriting applies to any whitespace-separated word in a
rule, so it might apply also to shell variables, functions
and keywords (and automake has already tripped on this once);
document this, with an example. Since we are at it, do some
minor reformatting of existing text.
2011-09-13 Stefano Lattarini <>
docs: document Solaris 10 /bin/ksh and XPG4 sh 'unset' bug
* doc/autoconf.texi (Limitations of Builtins): Solaris 10 ksh
and XPG4 sh also fails upon `unset' of a variable that is not
2011-07-24 Jim Meyering <>
docs: improve the prose describing _AC_CHECK_TYPE_NEW_BODY
* lib/autoconf/types.m4 (_AC_CHECK_TYPE_NEW_BODY): Improve prose.
2011-08-31 Paul Eggert <>
AC_C_CONST: don't reject gcc -Werror -Wall
* lib/autoconf/c.m4 (AC_C_CONST): Don't reject gcc when it is used
with -Werror -Wall during configuring. It's unwise to use GCC
that way, but apparently enough people do it nowadays that it's an
issue. These days nobody uses the old compilers that the old
tests reject, so we can't test this fix against them, but it's
more important to work with modern GCC (even when misused) than to
work with no-longer-used compilers. Problem reported by Shevek in
and raised again by Dan Kegel in
2011-08-16 Stefano Lattarini <>
docs: other issues with parallel BSD make
Motivated by automake bug#9245:
and FreeBSD PR bin/159730:
* doc/autoconf.texi (Parallel Make): Document other BSD make
incompatibilities. Reorganize the existing related documentation
2011-08-08 Stefano Lattarini <>
docs: fix minor typos
* doc/autoconf.texi (Shell Functions): Fix a couple of minor typos.
2011-08-04 Stefano Lattarini <>
docs: another Solaris sh bug with redirected `:'
* doc/autoconf.texi (File Descriptors): Solaris 10 /bin/sh
"optimizes" away redirected `:' commands in a shell function
after the first call.
2011-07-31 Paul Eggert <>
docs: modernize treatment of ns-resolution timestamps
* doc/autoconf.texi (Limitations of Usual Tools): ns-resolution time
stamps are now routinely supported by coreutils 'cp' etc.
2011-07-30 Paul Eggert <>
* lib/autoconf/specific.m4 (AC_SYS_LARGEFILE): Port to Mac OS X 10.5
by defining _DARWIN_USE_64_BIT_INODE. Imported from gnulib.
2011-07-22 Paul Eggert <>
* lib/autoconf/specific.m4 (AC_USE_SYSTEM_EXTENSIONS): Quote cleanly.
This is imported from gnulib. gnulib also has an HP-UX 11.11 fix, but
let's see if we can do that another way, as it's pretty heaviweight.
2011-07-22 Eric Blake <>
docs: fix minor doc problems
* doc/autoconf.texi (Why Not Imake): Fix grammar.
(autoreconf Invocation): Fix short option for --version.
* THANKS: Update.
Reported by Christophe Jarry and Russ Allbery.
2011-07-12 Benoit Sigoure <> (tiny change)
docs: fix typo in AC_PATH_PROG
* doc/autoconf.texi (Erlang Compiler and Interpreter):
* THANKS: Update.
2011-06-30 Paul Eggert <>
* tests/ (AC_REPLACE_FUNCS): Test for just-fixed bug.
2011-06-30 Timo Kamph <> (trivial change)
* lib/autoconf/functions.m4 (_AC_REPLACE_FUNCS): Fix tr-cpp problem.
2011-06-19 Paul Eggert <>
* lib/autoconf/functions.m4 (_AC_LIBOBJ_ALLOCA): Be even smarter.
GCC was too smart for the previous patch. See
2011-06-18 Paul Eggert <>
* lib/autoconf/functions.m4 (_AC_LIBOBJ_ALLOCA): Try to outsmart GCC.
Problem with stack-detection code reported by Andy Wingo in
This fix is imported from gnulib's c-stack module.
* doc/autoconf.texi (File Descriptors): Fix texinfo typo.
2011-06-14 Eric Blake <>
doc: mention more about ksh cloexec behavior
* doc/autoconf.texi (File Descriptors): Clarify that only the exec
builtin suffers from cloexec issues.
doc: update quoting example
* doc/autoconf.texi (Autoconf Language): Add AC_LANG_SOURCE use.
* THANKS: Update.
Reported by Křištof Želechovski.
2011-05-05 Eric Blake <>
doc: document dash bug with positional parameters
* doc/autoconf.texi (Shell Substitutions) <${10}>: Document
a pitfall with $10.
2011-04-27 Eric Blake <>
docs: document NetBSD join bug
* doc/autoconf.texi (Limitations of Usual Tools) <join>: Mention
bug in -a parsing.
Reported by J.T. Conklin.
2011-04-13 Eric Blake <>
maint: reflect recent copyright assignments
* AUTHORS: Update.
2011-04-05 Eric Blake <>
maint: reflect recent copyright assignments
* AUTHORS: Update.
2011-04-02 Ralf Wildenhues <>
New macro AC_FC_PP_DEFINE for the preprocessor define flag.
* lib/autoconf/fortran.m4 (AC_FC_PP_DEFINE): New macro.
* lib/ (Automake-preselections): Preselect it.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (_AT_CHECK_ENV): Do not complain about
* NEWS: Update.
New macro AC_FC_PP_SRCEXT for preprocessed file extensions.
* lib/autoconf/fortran.m4 (AC_FC_PP_SRCEXT): New macro.
* lib/ (Automake-preselections): Preselect it.
* doc/autoconf.texi (Fortran Compiler): Document it, rewriting
the documentation for AC_FC_SRCEXT along the way.
* tests/ (AC_FC_PP_SRCEXT usage): New test.
* tests/ Exclude the macro from default testing.
* NEWS: Update.
New macro AC_FC_MODULE_OUTPUT_FLAG: module output directory.
* lib/autoconf/fortran.m4 (AC_FC_MODULE_OUTPUT_FLAG): New macro.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (_AT_CHECK_ENV): Do not complain about
* NEWS: Update.
2011-04-02 Luc Maisonobe <>
Julian C. Cummings <>
Alexander Pletzer <>
Ralf Wildenhues <>
New macro AC_FC_MODULE_FLAG: Fortran 90 module include path.
* lib/autoconf/fortran.m4 (AC_FC_MODULE_FLAG): New macro,
adjusted and rewritten from the AX_F90_MODULE_FLAG macro from
the Autoconf Macro Archive by Luc Maisonobe, Julian C. Cummings,
and Alexander Pletzer.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (AC_FC_MODULE_FLAG): New test.
* tests/ (AT_CHECK_ENV): Do not complain about FC_MODINC
* NEWS, THANKS: Update.
2011-04-02 Luc Maisonobe <>
Alexander Pletzer <>
Ralf Wildenhues <>
New macro AC_FC_MODULE_EXTENSION: Fortran 90 module extension.
* lib/autoconf/fortran.m4 (AC_FC_MODULE_EXTENSION): New macro,
rewritten from the AX_F90_MODULE_EXTENSION macro from the
Autoconf Macro Archive by Luc Maisonobe and Alexander Pletzer.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (_AT_CHECK_ENV): Do not complain about
FC_MODEXT setting.
* NEWS, THANKS: Update.
2011-03-26 Jim Meyering <>
README-hacking: fix typo
* README-hacking: s/just build/just built/.
2011-03-08 Colin Watson <> (tiny change)
Ralf Wildenhues <>
* doc/autoconf.texi (Particular Functions): Document AC_FUNC_FORK
cache variables.
* THANKS: Update.
2011-03-08 Ralf Wildenhues <>
docs: BSD and Solaris make trailing space macro issue.
* doc/autoconf.texi (Trailing whitespace in Make Macros):
Document issue with trailing whitespace in macro settings.
2011-03-05 Ralf Wildenhues <>
Fix Cray Fortran flag for AC_FC_IMPLICIT_NONE.
* lib/autoconf/fortran.m4 (_AC_FC_IMPLICIT_NONE): Use -e I
not -d i, for Cray ftn.
* THANKS: Update.
Thanks to Tobias Burnus for feedback and testing.
docs: document several Fortran and OpenMP cache variables.
* doc/autoconf.texi (Generic Compiler Characteristics)
[AC_OPENMP]: Document associated cache variables.
(Fortran Compiler) [AC_PROG_F77, AC_PROG_FC, AC_PROG_F77_C_O]
index the cache variables used by these macros.
2011-03-05 Ralf Wildenhues <>
and Eric Blake <>
build: exclude M4 with buggy strstr
* m4/m4.m4 (AC_PROG_GNU_M4): When searching PATH, do not accept
an m4 that has either the gnulib strstr bug, or the glibc/gnulib
strstr bug.
2011-03-05 Ralf Wildenhues <>
docs: fix description of AC_F77_IMPLICIT_NONE.
* doc/autoconf.texi (Fortran Compiler) [AC_F77_IMPLICIT_NONE]:
This macro modifies FFLAGS, not FCFLAGS.
AC_FC_SRCEXT: allow gfortran to compile .f77 files.
* lib/autoconf/fortran.m4 (AC_FC_SRCEXT): Try '-x f77' for .f77
files, '-x f95' for others, for gfortran.
New macros AC_{F77,FC}_IMPLICIT_NONE to disable Fortran implicit int.
* lib/autoconf/fortran.m4 (_AC_FC_IMPLICIT_NONE): New internal
* doc/autoconf.texi (Fortran Compiler): Document them.
* NEWS: Update.
New macro AC_FC_CHECK_BOUNDS to enable Fortran array bounds checking.
* lib/autoconf/fortran.m4 (AC_FC_CHECK_BOUNDS): New macro.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (AC_FC_CHECK_BOUNDS): New test.
* NEWS: Update.
Prompted by report from Eve-Marie Devaliere.
2011-03-04 Ralf Wildenhues <>
Update known compiler switches for Fortran and OpenMP macros.
* lib/autoconf/c.m4 (AC_OPENMP): Update for Lahey on GNU/Linux.
* lib/autoconf/fortran.m4 (_AC_F95_FC): Also try nagfor.
(_AC_PROG_FC_V): Update documentation for Lahey switches.
(AC_FC_FREEFORM, AC_FC_FIXEDFORM): Add flags for Absoft, Lahey
on GNU/Linux, document NAGWare, g95, and f2c switches.
(AC_FC_LINE_LENGTH): Document NAGware switch. Update Absoft,
Lahey, NAGWare, Open Watcom, g95, and f2c switches.
tests: accept f2c/fort77 as GNU Fortran 77.
* tests/ (GNU Fortran 77): Try to detect f2c wrapper
fort77 as GNU as well: it defines __GNUC__ too. Fixes testsuite
failure when f77 is fort77.
Report from Giulio Paci.
docs: macro synopses document default failure cases.
* doc/autoconf.texi (Fortran Compiler, Obsolete Macros):
Document failure case for AC_F77_DUMMY_MAIN, AC_FC_DUMMY_MAIN,
Reword Fortran macro documentation.
* doc/autoconf.texi (Fortran Compiler): Improve wording for
2011-02-27 Ralf Wildenhues <>
config.status: do not quote $SHELL when rerunning configure.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Allow
$SHELL to contain more than one word, when rerunning configure,
for debugging purposes like CONFIG_SHELL='/bin/sh -x'.
2011-02-21 Ian Lance Taylor <>
* lib/autoconf/go.m4: New file.
* lib/autoconf/autoconf.m4: Include autoconf/go.m4.
* lib/autoconf/ (dist_autoconflib_DATA): Add go.m4.
* lib/ (autoconf_m4f_dependencies): Add
* doc/autoconf.texi: Rebuild menus.
(Preset Output Variables): Mention Go. Document GOFLAGS.
(Libraries): Mention Go.
(Go Compiler): New subsection.
(Language Choice): Mention Go.
(Generating Sources): Likewise.
(Running the Preprocessor): Likewise.
* tests/ New file.
* tests/ Include and
* tests/ (_AT_CHECK_ENV): Add GOC and GOFLAGS.
(AUTOCONF_FILES): Add $(autoconfdir)/go.m4.
* NEWS: Update.
2011-02-20 Christian Rössel <> (tiny change)
Markus Geimer <> (tiny change)
Fix OpenMP flag detection for various Fortran compilers.
* lib/autoconf/c.m4 (_AC_LANG_OPENMP(Fortran 77)): Use '!$'
OpenMP-conditional compilation construct, to force compile
failure with missing OpenMP flag.
(AC_OPENMP): Add flags for Cray CCE and NEC SX compilers.
* THANKS: Update.
2011-02-18 Eric Blake <>
docs: document fourth argument of AC_RUN_IFELSE better
* doc/autoconf.texi (Runtime) <AC_RUN_IFELSE>: Make synopsis show
that the default is configure failure. Rework the text about
proper use of the fourth argument.
long long: don't abort configure when cross-compiling
* lib/autoconf/types.m4 (AC_TYPE_LONG_LONG_INT): Provide no-op
cross-compiling fallback; fixing regression from 2011-02-16.
2011-02-16 Patrick Welche <> (tiny change)
docs: fix a typo
* doc/autoconf.texi (Generic Structures): Fix typo.
2011-02-16 Matt Kraai <> (tiny change)
docs: fix some typos
* doc/autoconf.texi (testsuite Scripts): Fix typos.
* THANKS: Update.
2011-02-16 Paul Eggert <>
autoconf: tune long long tests, particularly for c99
This change is imported from gnulib.
* lib/autoconf/types.m4 (AC_TYPE_LONG_LONG_INT): Don't bother compiling
or running anything if c99, or if unsigned long long int does not
work. In either case, we know the answer without further tests.
Do not compile _AC_TYPE_LONG_LONG_SNIPPET twice. Instead, compile
it at most once, and use its results for both long long int and
unsigned long long int. This is more likely to be efficient in
the common case where the program wants to check for both long
long int and unsigned long long int.
(AC_TYPE_UNSIGNED_LONG_LONG_INT): Don't bother compiling if c99,
since the answer is already known.
2011-02-15 Eric Blake <>
doc: fix debug advice typo
* doc/autoconf.texi (Debugging): Put shell option in right place.
Reported by Reuben Thomas.
2011-02-12 Giulio Paci <> (tiny change)
Ralf Wildenhues <>
Fix detection of link flags for fort77 on GNU/Linux.
* lib/autoconf/fortran.m4 (_AC_PROG_FC_V_OUTPUT): Properly detect
the fort77 (f2c wrapper) compiler verbose linking output flag.
* THANKS: Update.
2011-02-07 Ralf Wildenhues <>
* doc/autoconf.texi: Rebuild menus using emacs ^C ^U ^A.
2011-02-04 Paul Eggert <>
autoconf: new macro AC_HEADER_CHECK_STDBOOL
* NEWS: Document this.
* doc/autoconf.texi (Particular Headers): Likewise.
In example, don't assume a 'system.h' exists.
* lib/autoconf/headers.m4 (AC_CHECK_HEADER_STDBOOL): New macro.
Use it with AN_IDENTIFIER, since it's less heavyweight.
Reindent to match gnulib, since that's a bit nicer.
(AC_HEADER_STDBOOL): Reimplement in terms of it.
2011-01-29 Jim Warhol <> (tiny change)
* doc/autoconf.texi (Introduction): Fix typo.
* THANKS: Update.
2011-01-27 Stefano Lattarini <>
docs: another parallel make issue
* doc/autoconf.texi (Parallel Make): Document that some make
implementations, when run in parallel mode, connect stdout and
stderr of child processes to pipes or temporary files, and might
re-route stderr of spawned processes to stout. Also document
that FreeBSD make in parallel mode reuses the same shell for
multiple commands within one recipe (like NetBSD make does).
2011-01-25 Ralf Wildenhues <>
Eric Blake <>
docs: advise against HP-UX make due to time stamp semantics.
* doc/autoconf.texi (Timestamps and Make): Document HP-UX 11.31
make issue with targets having the same time stamps as their
* doc/install.texi (Particular Systems): Warn against using
HP-UX make.
2011-01-25 Eric Blake <>
maint: reflect recent copyright assignments
* AUTHORS: Update.
2011-01-23 Ralf Wildenhues <>
docs: new section about whitespace trimmmed from make command-lines.
* doc/autoconf.texi (Command-line Macros and whitespace): New
section, document trimming of whitespace from macros set on the
command line and from the environment.
2011-01-22 Ralf Wildenhues <>
docs: document how to use comment characters in rules.
* doc/autoconf.texi (Comments in Make Rules): Explain how to
produce a `#' in a rule.
(Comments in Make Macros): Add cross reference.
Suggestion from Eric Blake.
docs: new sections about comments and whitespace in make macros.
* doc/autoconf.texi (Top, Portable Make): Adjust menus.
(Comments in Make Macros, Trailing whitespace in Make Macros):
New sections.
Suggestion by Stefano Lattarini.
docs: do not use AIX 5.3 cp -R.
* doc/autoconf.texi (Limitations of Usual Tools): Document one
instance of the cp -R bug on AIX 5.3. This seems to have been
fixed in 6.1 and newer releases.
docs: update entry about unset.
* doc/autoconf.texi (Limitations of Builtins): NetBSD sh unset
also fails upon `unset' of a variable that is not set. Bash 2.01
could also dump core over `unset MAILPATH'.
Suggestion by Eric Blake.
2011-01-21 Ralf Wildenhues <>
Fix LEXLIB and YYTEXT_POINTER with IRIX 6.5 flex 2.5.4.
* lib/autoconf/programs.m4 (_AC_PROG_LEX_YYTEXT_DECL):
Overquote nontrivial yyless argument, to compensate for
underquoted macro definition in IRIX 6.5 flex 2.5.4
leading to compile failure due to incompatible operands.
Fixes Automake silent-lex-generic.test failure.
2011-01-17 Ralf Wildenhues <>
docs: Tru64/OSF sh treats read as special builtin
* doc/autoconf.texi (Limitations of Builtins): read may exit
upon unreadable or non-existent file with Tru64/OSF 5.1 sh.
2011-01-12 Eric Blake <>
docs: fix description of m4_ifval
* doc/autoconf.texi (Conditional constructs) <m4_ifval>: Use
correct argument order.
* THANKS: Update.
Reported by Mostafa.
2011-01-10 Ralf Wildenhues <>
Avoid reference to $CYGWIN in Fortran macros.
* lib/autoconf/fortran.m4 (_AC_FC_LIBRARY_LDFLAGS): Require
AC_CANONICAL_HOST. Replace test for $CYGWIN with $host_s test.
* tests/ (AC_F77_DUMMY_MAIN usage)
(AC_FC_DUMMY_MAIN usage, AC_F77_MAIN usage, AC_FC_MAIN usage):
Use AT_CONFIGURE_AC and simplify accordingly, so auxiliary
scripts are copied into the test directories.
(AC_F77_FUNC usage, AC_FC_FUNC usage): Likewise. Adjust to
autoheader being used now.
docs: link to Gnulib configmake documentation.
* doc/autoconf.texi (Defining Directories): Use proper crossref,
now that the Gnulib manual has a configmake section.
Thanks to Karl Berry.
2011-01-09 Ralf Wildenhues <>
docs: link to 'set -e' shell behavior overview.
* doc/autoconf.texi (Limitations of Builtins): Add link to
Sven Mascheck's 'set -e' page. Replace broken Opengroup link.
Suggestion by Eric Blake.
docs: mention configmake module for defining directories.
* doc/autoconf.texi (Defining Directories): Mention configmake
gnulib module.
Suggestion by Karl Berry and Eric Blake.
2011-01-04 Eric Blake <>
doc: improve install.texi texinfo markup
* doc/install.texi: Don't force @firstparagraphindent on all
clients; instead, add it only when building INSTALL. Compress
* (INSTALL): Match gnulib's formatting.
Reported by Karl Berry.
maint: update copyright year
All files changed to add 2011, via 'make update-copyright'.
maint: resync upstream files
* GNUmakefile: Regenerated by 'make fetch'.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/ Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/make-stds.texi: Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
maint: document use of copyright ranges
* README: Copy coreutils wording for allowing copyright year
Standards permit it, prefer shorthand copyright.
* .x-update-copyright: Exempt an imported file.
2011-01-03 Karl Berry <>
Avoid using @acronym in install.texi.
* doc/install.texi (Basic Installation, Multiple Architectures)
(Installation Names): Write `GNU' instead of `@acronym{GNU}'.
2010-12-27 Paul Eggert <>
autoconf: Use -D_STDC_C99=, not -xc99=all, with Solaris cc
* lib/autoconf/c.m4 (_AC_PROG_CC_C99): Use -D_STDC_C99= rather than
-xc99=all to convince Solaris Studio cc to compile c99 programs.
2010-11-26 Paul Eggert <>
autotest: fix file descriptor leak
* lib/autotest/general.m4 (_AT_CHECK): Close AS_MESSAGE_LOG_FD
when running the test. Problem reported by Luke Mewburn in
2010-11-20 Paul Eggert <>
autoconf: don't assume sys/stat.h and sys/types.h when testing C89
Problem reported by Patrick Pelissier in
* lib/autoconf/c.m4 (_AC_PROG_CC_C89): Don't include sys/types.h
and sys/stat.h. Instead, define a dummy struct stat. C89 doesn't
guarantee sys/types.h and sys/stat.h.
2010-11-10 Reuben Thomas <> (tiny change)
docs: avoid first person, and credit history to David MacKenzie
* doc/autoconf.texi (History): Add credit.
2010-10-26 Paul Eggert <>
docs: Posix now says "((cat))" isn't portable
* doc/autoconf.texi (Parenthesis): Update documentation to reflect
what Posix 1003.1-2008 says about "((".
2010-10-20 Eric Blake <>
docs: document dash bug in <>
* doc/autoconf.texi (File Descriptors): Dash 0.5.5 truncates on
<>; at least this was fixed in dash 0.5.6.
2010-10-12 Ralf Wildenhues <>
tests: avoid AC_CACHE_CHECK test failure with dash.
* tests/ (AC_CACHE_CHECK): Normalize configure exit
status in presence of syntax error in sourced site file.
Do not error out if configure is aborted at this point.
Fixes testsuite failure with dash
2010-10-08 Eric Blake <>
AS_LITERAL_IF: Treat raw = as literal again.
* lib/m4sugar/m4sh.m4 (_AS_LITERAL_IF): Treat = like +.
* tests/ (AS@&t@_TR_SH and AS@&t@_TR_CPP)
(AS@&t@_LITERAL_IF): Expand tests.
* NEWS: Document the fix.
Reported via Ben Pfaff; originally
2010-09-24 Joshua G. Hale <> (tiny change)
docs: fix typo in AC_CONFIG_FILES example code.
* doc/autoconf.texi (Configuration Actions): Fix typo.
* THANKS: Update.
2010-10-05 Eric Blake <>
doc: suggest a few more workarounds
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Mention
that 'redundant' brackets can work around Solaris bug.
(File Descriptors): Mention that {} works as well as () for
silencing file-not-found warnings.
* THANKS: Update.
Suggested by Pádraig Brady.
2010-09-24 Ralf Wildenhues <>
tests: normalize trailing spaces in gcc -E -dD output.
* tests/ (AC_LANG_SOURCE example)
(AC_LANG_PROGRAM example): Remove trailing spaces before
comparing with expected output. Fixes testsuite failure
with GCC 2.95.3 on Haiku.
Report by Scott McCreary.
2010-09-22 Eric Blake <>
Release Version 2.68.
* NEWS: Mention the release.
2010-09-22 Ralf Wildenhues <>
autom4te: add traces for likely future Automake macros
* lib/ (Automake-preselections): Trace
2010-09-22 Eric Blake <>
AC_REPLACE_FUNCS: allow split lines again
* lib/autoconf/functions.m4 (AC_REPLACE_FUNCS): Flatten newlines
and move guts...
(_AC_REPLACE_FUNCS): new helper.
* tests/ (AC_REPLACE_FUNCS): Enhance test.
Reported by Ralf Wildenhues.
2010-09-21 Eric Blake <>
AC_LIBOBJ: optimize internal use
* lib/autoconf/general.m4 (_AC_LIBOBJ): Move literal check...
(AC_LIBOBJ): ...into callers.
* lib/autoconf/functions.m4 (_AC_REPLACE_FUNC): Likewise, thus
avoiding a second call to AS_LITERAL_IF.
AC_REPLACE_FUNCS: restore shell loop for non-literal
* lib/autoconf/functions.m4 (AC_REPLACE_FUNCS): Handle
non-literals, which was lost in 2010-02-26 optimization.
* tests/ (AC_REPLACE_FUNCS): Enhance test.
* NEWS: Document the fix.
* THANKS: Update.
Reported by Wiseman Jun.
maint: resync upstream files
* build-aux/ Resync via 'make fetch'.
tests: XFAIL in the face of a MacOS X bug
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Mention
the issue.
* tests/ (Substitute and define special characters):
Detect if sed cannot process 8-bit bytes in the C locale.
* THANKS: Update.
Reported by Rochan.
2010-09-20 Eric Blake <>
autom4te: don't filter out portions of location traces
* bin/ (_m4_warn): Pass warnings through the channels
machinery as a single chunk, to avoid partial filtering.
* lib/m4sugar/m4sugar.m4 (_m4_warn): Document the conventions.
* tests/ (m4@&t@_warn): Enhance test to catch this.
Reported by Bruno Haible.
2010-09-17 Eric Blake <>
build: support autobuild
* (gnulib-update): Add autobuild.m4.
* (AB_INIT): Output autobuild header.
* m4/autobuild.m4: New file, from gnulib.
* build-aux/config.guess: Resync from upstream.
* build-aux/config.sub: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/fdl.texi: Likewise.
* doc/gnu-oids.texi: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.
* build-aux/ Likewise.
config.status: avoid corrupting $ac_t
* lib/autoconf/status.m4 (_AC_OUTPUT_HEADERS_PREPARE): Use a
different name, so as not to clash with pre-2.50 usage of "$ac_t"
as a tab character.
Reported by Sam Steingold.
2010-09-17 Bruno Haible <>
docs: mark several macros obsolete
* doc/autoconf.texi (Particular Functions): Mark AC_FUNC_ERROR_AT_LINE,
as obsolete and refer to Gnulib.
* NEWS: Mention the change.
AC_FUNC_STRNLEN: more realistic cross-compilation guess
* lib/autoconf/functions.m4 (AC_FUNC_STRNLEN): Require
AC_CANONICAL_HOST. When cross-compiling, guess it works everywhere
except on AIX.
2010-09-16 Eric Blake <>
m4sh: fix today's AS_BOX regression
* lib/m4sugar/m4sh.m4 (_AS_BOX_LITERAL): Fix underquotation.
Reported by Stefano Lattarini.
fortran: avoid misparsed FCLIBS from Fortran compiler
* lib/autoconf/fortran.m4 (_AC_PROG_FC_V_OUTPUT): Also skip
'Configured by:' lines from gfortran.
* NEWS: Mention it.
Reported by Stefano Lattarini.
2010-09-16 Ralf Wildenhues <>
Add autom4te trace for AM_PROG_AR.
* lib/ (Automake-preselections): Trace
2010-09-16 Eric Blake <>
m4sugar: fix regression in AC_MSG_ERROR expansion
* lib/m4sugar/m4sugar.m4 (m4_defun_init): Avoid macro
concatenation on subsequent expansions
* tests/ (AS_WARN and AS_ERROR): New test.
* tests/ (m4@&t@_require: one-shot initialization):
Enhance test.
* NEWS: Document the fix.
* THANKS: Update.
Reported by Adrian Bunk and and Nishio Futoshi.
2010-09-13 Stefano Lattarini <>
tests: simplify grepping of 'automake --version'.
* tests/ (autom4te preselections): Remove minor
redundancies in regular expressions used to grep the output
'automake --version' for test skipping.
* tests/ (Configuring subdirectories)
(Unusual Automake input files): Likewise.
2010-09-13 Eric Blake <>
autotest: work around zsh bug
* lib/autotest/general.m4 (AT_DATA): Special case an empty data
file, since zsh botches empty here-docs.
* doc/autoconf.texi (Writing Testsuites) <AT_DATA>: Document that
this allows empty contents.
* tests/ (AT_DATA): New test.
Reported by Ralf Wildenhues.
docs: mention gnulib portability docs
* doc/autoconf.texi (Function Portability, Header Portability):
Add external links to gnulib.
2010-09-13 Ralf Wildenhues <>
Gary V. Vaughan <>
docs: document zsh specialty with empty here-documents.
* doc/autoconf.texi (Here-Documents): zsh 4.3.10 adds a newline
to empty here-docs.
2010-09-13 Ralf Wildenhues <>
docs: document zsh special array $options.
* doc/autoconf.texi (Special Shell Variables): Add entry for
doc: minor updates.
* doc/autoconf.texi (Generic Compiler Characteristics): Use
second argument of @uref consistently, for nicer OpenMP link.
(Polymorphic Variables): Restore font-lock.
(Debugging): Add item for bashdb.
Document and test AT_CHECK args shell execution environment.
* doc/autoconf.texi (Writing Testsuites): Document that COMMANDS
is run in a subshell, but RUN-IF-FAIL and RUN-IF-PASS are not.
* tests/ (AT@&t@_CHECK execution environment): New
* NEWS: Update.
autotest: document and test at_status semantics.
* doc/autoconf.texi (Writing Testsuites): Document $at_status.
* tests/ (at_status): New test.
* NEWS: Update.
doc: index entries for non-environment, non-output variables.
* doc/autoconf.texi: Clarify the meaning of the various variable
indices. Merge variable index `vr' into concept index using
(Configuration Actions, Generic Programs, Generic Functions)
(Writing Testsuites): Add index entries for documented shell
variables used during in configure and testsuite scripts.
2010-09-12 Fernando Carrijo <> (tiny change)
docs: fix minor typo and 'See See foo' instances
* doc/autoconf.texi (Buffer Overruns and Subscript Errors): Fix
usage of TeX superscript notation to correctly represent number
(Shell Functions): s/[Ss]ee @xref/@xref/
(Limitations of Shell Builtins, Canonicalizing): Likewise.
* THANKS: Update.
2010-09-13 Eric Blake <>
tests: skip broken automake wrapper on MirBSD
* tests/ (autom4te preselections): Skip, rather than fail,
if 'automake --version' succeeds without printing a version when
an environment variable is not set.
* tests/ (Configuring subdirectories)
(Unusual Automake input files): Likewise.
2010-09-12 Ralf Wildenhues <>
doc: minor indexing update.
(Shell Substitutions, Site Defaults): Fix markup for indexed
entried, using @code and @file as appropriate.
(M4 Macro Index): Clarify which of the indexed macros have m4_
and which have AS_ prefix.
2010-09-08 Eric Blake <>
m4sh: preserve set -vx over re-exec
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): Trace through
re-exec, to make it easier to debug script startup issues.
Idea from recent bug-gnulib change to
docs: update alloca recommendations
* doc/autoconf.texi (Particular Functions): Don't redeclare alloca
on FreeBSD.
* THANKS: Update.
Reported by Giorgos Keramidas.
docs: link to GNU Coding Standards in intro
* doc/autoconf.texi (Introduction): Actually link to the
standards. Make other references consistent.
docs: mention traditional awk limitation
* doc/autoconf.texi (Limitations of Usual Tools) <awk>: Mention
that traditional awk lacks ENVIRON. Add reference to awk manual.
(Particular Programs) <AC_PROG_AWK>: Add reference to awk section.
Reported by Ralf Wildenhues.
2010-09-07 Eric Blake <>
docs: mention bash vs. POSIXLY_CORRECT
* doc/autoconf.texi (Special Shell Variables) <POSIXLY_CORRECT>:
Document bash behavior.
* THANKS: Update.
Reported by Dustin J. Mitchell, via bug-gnulib list.
docs: enhance recommendations on test usage
* doc/autoconf.texi (Limitations of Builtins) <test (strings)>:
Mention yet another Solaris issue.
Reported by Stefano Lattarini.
2010-08-30 Eric Blake <>
tests: avoid trashing /
* tests/ (AC_CONFIG_COMMANDS with temporary directory):
Use a relative path, rather than risking issues with /.
Reported by Ralf Wildenhues.
docs: mention Solaris here-docs vs. ${a-"b c"}
* doc/autoconf.texi (Shell Substitutions) <${var:=value}>:
Document problem of "" within here-docs.
Reported by Ralf Wildenhues.
fortran: always avoid AC_LANG_CONFTEST warning
* lib/autoconf/lang.m4 (AC_LANG_CONFTEST()): Make the default
match the fact that the default AC_LANG_SOURCE does not inline
confdefs.h in the first place.
* lib/autoconf/fortran.m4 (AC_FC_FREEFORM, AC_FC_FIXEDFORM)
(AC_FC_LINE_LENGTH, __AC_FC_NAME_MANGLING): Revert previous use of
Suggested by Ralf Wildenhues.
config.status: minimize use of $tmp
* lib/autoconf/status.m4 (_AC_OUTPUT_MAIN_LOOP)
internally, while preserving $tmp for existing users.
* tests/ (AC_CONFIG_COMMANDS with temporary directory):
New test, that $tmp is available but not essential.
docs: avoid use of $tmp outside of config.status use
* doc/autoconf.texi (Polymorphic Variables, Shell Substitutions):
Use $var or $t instead.
(Limitations of Usual Tools): Use $dir instead.
(Initialization Macros) <AS_TMPDIR>: Make good on the NEWS
regarding AS_TMPDIR being documented as consuming $tmp.
Suggested by Ralf Wildenhues.
2010-08-29 Paul Eggert <>
AC_PROG_YACC: fix comment re what "yacc" stands for
* lib/autoconf/programs.m4 (AC_PROG_YACC): YACC stands for
"Yet Another Compiler Compiler", not "Yet Another C Compiler".
Problem reported by Chris Long in
2010-08-27 Ralf Wildenhues <>
Avoid long lines in testsuite script.
* lib/autotest/general.m4 (AT_INIT): Remove definition of
AT_groups_all. Initialize at_groups from at_help_all, with
newlines instead of spaces separating test groups numbers.
Adjust all code to newlines.
* NEWS: Update.
* tests/ (Huge testsuite): New test.
Try to update config.cache atomically; respect symlinks.
* lib/autoconf/general.m4 (AC_CACHE_SAVE): Use `mv -f' to update
the cache file if it is a regular file and not a symlink. Move
first to temporary name in the target directory if not in the
current directory for atomicity across mount points.
* tests/ (AC_CACHE_CHECK): Try symlinked cache file.
* doc/autoconf.texi (Cache Files): Leftover temporary cache
files may be deleted by the user.
* NEWS: Update.
2010-08-27 Eric Blake <>
m4sh: protect LINENO against stray macro
* lib/m4sugar/m4sh.m4 (_AS_LINENO_PREPARE): Double quote entire
sed script, to avoid issue uncovered by automake testsuite where
'b' was an m4 macro that broke execution on dash.
Reported by Stefano Lattarini.
m4sh: assume ${a:-b} support
* tests/ (Null variable substitution): New test.
* doc/autoconf.texi (Shell Substitutions) <${var:-value}>: Mention
that m4sh guarantees support.
(Limitations of Usual Tools) <mktemp>: Use it.
* lib/m4sugar/m4sh.m4 (AS_LINENO_POP, AS_VAR_IF, AS_TMPDIR):
Exploit use of colon for smaller files.
2010-08-26 Eric Blake <>
docs: document m4_define_default
* doc/autoconf.texi (Conditional constructs) <m4_define_default>:
Document it, since gnulib wants to use it.
* NEWS: Mention this.
autoconf: warn if AC_*_IFELSE lacks complete program
* lib/autoconf/lang.m4 (AC_LANG_DEFINES_PROVIDED): New macro.
(AC_LANG_SOURCE): Call it.
(AC_LANG_CONFTEST): Add warning if new macro is not called.
* lib/autoconf/c.m4 (_AC_LANG_OPENMP): Add missing AC_LANG_SOURCE.
* lib/autoconf/fortran.m4 (AC_FC_FREEFORM, AC_FC_FIXEDFORM)
(AC_FC_LINE_LENGTH, __AC_FC_NAME_MANGLING): Intentionally bypass
* lib/autoconf/programs.m4 (_AC_PROG_LEX_YYTEXT_DECL): Likewise.
* tests/ (AC_COMPILE_IFELSE): New test.
* doc/autoconf.texi (Generating Sources) <AC_LANG_CONFTEST>:
Document new warning.
<AC_LANG_DEFINES_PROVIDED>: Document new macro.
<AC_LANG_SOURCE>: Document use of new macro.
* NEWS: Document the improvement.
Suggested by Bruno Haible.
autoconf: fix regression in AC_FUNC_SELECT_ARGTYPES
* lib/autoconf/functions.m4 (AC_FUNC_SELECT_ARGTYPES): Fix
quoting; regression from yesteray leaked '' into default value.
Reported by Ralf Wildenhues.
docs: mention another issue with variable expansion
In particular, see
* doc/autoconf.texi (Shell Substitutions) <${var+value}>: New
<${var=literal}>: Tweak wording. Add mention of an ambiguity
allowed by POSIX.
* tests/ (Substitute and define special characters):
Make test more robust; here, the outer "" is in a here-doc, and
does not violate the quoting rules of thumb just documented.
2010-08-25 Eric Blake <>
m4sh: revert incorrect mix of "${a='b'}"
* bin/ Revert leak of literal '' into assignment.
* tests/ (autom4te preselections): Likewise.
m4sh: revert regression in AS_TMPDIR
* lib/m4sugar/m4sh.m4 (AS_TMPDIR): The previous patch trying to
rename $tmp to $as_tmp was wrong; config.status relies on it.
m4sh: reduce size of AS_VAR_TEST_SET
* lib/m4sugar/m4sh.m4 (AS_VAR_TEST_SET): Make more compact.
tests: improve some shell assumption testing
* tests/ (Functions Support, Functions and return Support)
(Negated classes in globbing): Update comments.
(AS@&t@_VAR basics): Test comparison to empty string.
docs: mention cost of globbing during variable expansion
* doc/autoconf.texi (Shell Substitutions) <${var=literal}>:
Recommend quoting substitutions that might trigger globbing.
(Limitations of Builtins) <:>: Likewise.
* bin/ Follow our own advice.
* lib/autoconf/functions.m4 (AC_FUNC_SELECT_ARGTYPES): Likewise.
* lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Likewise.
* lib/autoconf/status.m4 (AC_OUTPUT): Likewise.
* lib/autotest/general.m4 (_AT_FINISH): Likewise.
* lib/m4sugar/m4sh.m4 (AS_TMPDIR): Likewise.
* tests/ (parallel autotest and signal handling):
* tests/ (AC_OPENMP and C, AC_OPENMP and C++): Likewise.
* tests/ (shtool): Likewise.
* tests/ Likewise.
* tests/ (autom4te preselections): Likewise.
* tests/ (VPATH): Likewise.
m4sh: fix some namespace safety issues
* lib/m4sugar/m4sh.m4 (_AS_SHELL_SANITIZE): Avoid problems if
as_myself is inherited from environment.
(AS_TMPDIR): Be namespace clean.
2010-08-24 Ralf Wildenhues <>
tests: fix AC_CACHE_CHECK to skip with bad shells.
* tests/ (AC_CACHE_CHECK): Skip test with malformed file if the shell does not report syntax errors
from a sourced file. Fixes test failure on AIX and FreeBSD.
Report from Rainer Tammer.
2010-08-24 Paul Eggert <>
AC_HEADER_STDBOOL: avoid spurious failure with modern xlc
* lib/autoconf/headers.m4 (AC_HEADER_STDBOOL): Move the "bool e =
&s;" test into the main program, as C99 might plausibly be
interpreted as not requiring support for this construction in
static initializers. Remove the "#if defined __xlc__" stuff, as
the bug is not present in recent xlc implementations, and they
reject the test for other (valid) reasons. People using ancient
xlc versions, if any, are suggested to update to fixed versions.
Reported by Ralf Wildenhues in the thread starting at:
2010-08-24 Eric Blake <>
AC_FUNC_GETLOADAVG: don't define SVR4 on cygwin
* lib/autoconf/functions.m4 (_AC_LIBOBJ_GETLOADAVG): Only define
SVR4 when -lkvm is required.
* THANKS: Update.
Reported by Yaakov Selkowitz.
2010-08-23 Eric Blake <>
AC_HEADER_STDBOOL: avoid spurious clang failure
* lib/autoconf/headers.m4 (AC_HEADER_STDBOOL): Drop gcc (and by
extension clang) check in favor of a gnulib test. Force failure,
rather than merely testing for a compiler extension.
* THANKS: Update.
Reported by Anders Kaseorg.
2010-08-22 Ralf Wildenhues <>
doc: AIX sed dislikes indented comments.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Update.
2010-08-19 Stefano Lattarini <>
Fix autoreconf docs w.r.t. AUTOM4TE environment variable.
* doc/autoconf.texi (Using autoreconf to Update configure
Scripts): List `AUTOM4TE' among the environment variables
honored by autoreconf.
* bin/ ($help): Likewise.
2010-08-17 Eric Blake <>
doc: improve AS_VAR_IF details
* doc/autoconf.texi (Polymorphic Variables) <AS_VAR_IF>: Make it
clear that user must supply quotes as needed.
* THANKS: Update.
Suggested by Randall Cotton.
2010-08-16 Ralf Wildenhues <>
Fix Autotest --errexit to exit after XPASSing tests.
* lib/autotest/general.m4 (AT_INIT) <at_fn_group_postprocess>:
Exit after an unexpected passing test if $at_errexit.
* tests/ (errexit): Also try tests that xpass, skip,
xfail, or fail hard.
2010-08-14 Eric Blake <>
AC_INIT: allow bugreport to contain '?'
* lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Relax check.
* tests/ (AC_INIT with unusual version strings): Enhance
* doc/autoconf.texi (Initializing configure): Document this.
* NEWS: Likewise.
* THANKS: Update.
Reported by Yavor Doganov and others.
2010-08-10 Peter Rosin <>
Keep testsuite files on unexpected pass.
* lib/autotest/general.m4 (AT_INIT) <at_fn_group_postprocess>:
Don't cleanup the group directory when a test unexpectedly passes.
* tests/ (Cleanup): Check that an unexpected pass leaves
the test group directory intact.
2010-08-10 Ralf Wildenhues <>
Skip AC_FC_SRCEXT([f90]) tests with a Fortran 77 compiler in $FC.
(AC_FC_FIXEDFORM with AC_FC_SRCEXT): Skip if the compiler cannot
handle files with .f90 extension.
Report by Luke Dalessandro.
Fix testsuite failures with typical m4-x.y.z program suffix.
* tests/ (AT_CHECK_M4): Normalize hyphens and digits
after the `m4' program name.
* THANKS: Update.
Report by Luke Dalessandro.
2010-08-06 Ralf Wildenhues <>
Fix description of AC_CONFIG_TESTDIR to not mention
* doc/autoconf.texi (Making testsuite Scripts): atconfig is not
created from an input template.
2010-08-05 Bruno Haible <>
and Eric Blake <>
AC_FUNC_ALLOCA: modernize
* lib/autoconf/functions.m4 (AC_FUNC_ALLOCA): Assume that alloca's
return type is 'void *', not 'char *'. Supply C89 prototype.
Reported by Thomas Klausner.
2010-08-04 Ralf Wildenhues <>
Fix testsuite failure due to bugs in third-party aclocal macros.
* tests/ (Non-literal AC_CONFIG_SUBDIRS): Create a
hand-written aclocal.m4 file, so the -Werror test doesn't fail
over aclocal warnings about errors in third-party macro files.
Simplify test accordingly, calling autoreconf throughout.
Report by Bob Friesenhahn.
* tests/ (AC_LANG_SOURCE example)
(AC_LANG_PROGRAM example): Fix broken sed script for
extracting the interesting part of the conftest.c file.
Fixes test failure on Haiku.
* THANKS: Update.
Report by Scott McCreary.
2010-08-03 Eric Blake <>
docs: mention bash bug with word splitting
* doc/autoconf.texi (Shell Substitutions): Document bash bug, and
zsh default behavior difference.
Reported by Ralf Wildenhues.
docs: mention ksh bug with function syntax
* doc/autoconf.texi (Shell Functions): Document ksh93 limitation.
2010-08-03 Ralf Wildenhues <>
Fix typo in Autotest color test, for dash testsuite failure.
* tests/ (colored test results): Use exit not
Exit. Fixes test failure with dash 0.5.4.
2010-08-02 Eric Blake <>
docs: track recent copyright assignment
* AUTHORS: Add Peter Rosin.
2010-08-02 Ralf Wildenhues <>
Add testsuite exposure for last-minute fix in 2.67.
* tests/ (parallel args but non-working mkfifo):
New test, to expose the failure v2.66-23-g991183c avoided.
Ensure unnamed test group categories are separated from previous.
* doc/autoconf.texi (Writing Testsuites) <AT_BANNER>: Update
* lib/autotest/general.m4 (AT_INIT) <at_fn_banner>: Set banner
to single space, not empty line, once printed. For empty
banners, print a single empty line to separate them from a
previous test group category.
* tests/ (Banners): Insert another test group; adjust
tests accordingly. Extend test to cover semantic change.
* NEWS: Update.
2010-07-31 Ralf Wildenhues <>
Fix typos in perlpod docs.
* lib/Autom4te/, lib/Autom4te/,
lib/Autom4te/ Fix typos and spacing in perlpod
documentation and in comments.
2010-07-29 Eric Blake <>
docs: mention ksh file descriptor limitation
* doc/autoconf.texi (File Descriptors): Document issue with fd 10
and above.
Reported by Ralf Wildenhues.
docs: mention cd limitation
* doc/autoconf.texi (Limitations of Builtins) <cd>: Document
issues with empty argument.
2010-07-29 Ralf Wildenhues <>
Add missing index entries to manual.
* doc/autoconf.texi (Fortran Compiler, Language Choice): Add
index entries for AC_FC_DUMMY_MAIN, AC_LANG; reformat entry for
2010-07-21 Eric Blake <>
Release Version 2.67.
* NEWS: Mention the release.
Prepare for release.
* (PREV_VERSION_REGEXP): New macro, missed when
backporting update-NEWS_hash from gnulib.
* (old_NEWS_hash): Correctly generate.
* build-aux/ Temporarily break sync from upstream, to
avoid including spurious directories in info source tarball.
Avoid spurious testsuite failures.
* doc/autoconf.texi (Generating Sources): Don't mix gcc '-E' and
'-o -', since the former already implies stdout, while the latter
creates -.exe on cygwin.
* tests/ (AC_LANG_SOURCE example)
(AC_LANG_PROGRAM example): Likewise. Also prevent any
Partially revert previous patch.
* lib/autotest/general.m4 (AT_INIT) <serial testing>: Changing
at_jobs here breaks output if -j2 was requested but shell is
insufficient to support parallel testing.
Reported by Ralf Wildenhues.
Minor testsuite size reduction.
* lib/autotest/general.m4 (AT_INIT) <serial testing>: Ensure
at_jobs is 1.
(AT_SETUP, AT_CLEANUP): Factor initialization code...
(AT_INIT) <at_fn_group_banner>: ...into new function.
Based in part on suggestion by Ralf Wildenhues.
2010-07-20 Eric Blake <>
Close job control fd before running tests.
* doc/autoconf.texi (File Descriptors): Clarify limitations.
* lib/autotest/general.m4 (AT_CLEANUP): Avoid leaking job control
fifo fd to user tests.
(AT_INIT): Delete comment, now that close is done elsewhere.
Suggested by Ralf Wildenhues.
2010-07-20 Paul Eggert <>
and Eric Blake <>
Plug race in parallel autotest.
* lib/autotest/general.m4 (AT_INIT) <Fifo job dispatcher>: Track
two fds to fifo in parent, to avoid race where parent can see EOF
before child opens fifo. Avoid any atomicity problems with tokens
larger than one byte.
* NEWS: Document the bug fix.
2010-07-20 Eric Blake <>
Another empty argument through expr workaround.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Detect empty
arguments. Reject empty file argument.
Check for missing argument.
Also reject ' and newline from AC_INIT strings.
* lib/autoconf/general.m4 (_AC_INIT_LITERAL): Reject a couple more
problematic characters.
* tests/ (AC_INIT with unusual version strings): Enhance
* doc/autoconf.texi (Initializing configure) <AC_INIT>: Further
clarifications, and clean up wording about use of m4_esyscmd.
* NEWS: Update previous news entry.
Suggested by Paolo Bonzini.
2010-07-20 Ralf Wildenhues <>
Let autoreconf pass warning flags to new-enough aclocal.
* bin/ ($aclocal_supports_warnings)
($automake_supports_warnings): New globals.
(parse_args): Set and use them. Be sure to invoke `aclocal
--help' and `automake --help' just once each.
* NEWS: Update.
Prompted by report from Bruno Haible.
Fix parsing of empty variable settings on the command line.
* lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Work around
expr bug returning 0 instead of the empty string.
* lib/autotest/general.m4 (AT_INIT): Likewise.
Fix typo in the manual.
* doc/autoconf.texi (AC_ACT_IFELSE vs AC_TRY_ACT): Fix typo.
2010-07-19 Eric Blake <>
Fix up AC_INIT vs. " issues, and document it.
* doc/autoconf.texi (Initializing configure): Improve
documentation on argument restrictions.
* NEWS: Tweak information.
* lib/autoconf/general.m4 (_AC_INIT_GENERAL): New macro, that also
rejects literal ".
(_AC_INIT_PACKAGE): Use it to plug hole in last patch.
* tests/ (AC_INIT with unusual version strings): Enhance
2010-07-19 Eric Blake <>
and Ralf Wildenhues <>
Relax AC_INIT requirements for PACKAGE and VERSION strings again.
* lib/m4sugar/m4sh.m4 (AS_LITERAL_HEREDOC_IF): New macro.
(_AS_LITERAL_HEREDOC_IF_NO): New helper macros.
* lib/autoconf/general.m4 (_AC_INIT_PACKAGE): Use
* tests/ (AC_INIT with unusual version strings): New test.
* tests/ (AS@&t@_LITERAL_IF): Extend test.
* NEWS: Update.
2010-07-19 Eric Blake <>
Fix testsuite failures from previous patch.
* lib/autoconf/c.m4 (_AC_PROG_PREPROC_WORKS_IFELSE): Also remove
conftest.i when preprocessor tests break out of a loop.
2010-07-19 Ralf Wildenhues <>
Allow inspecting AC_PREPROC_IFELSE output in true branch.
* lib/autoconf/general.m4 (_AC_PREPROC_IFELSE_BODY): Redirect
preprocessor output to conftest.i rather than /dev/null.
(_AC_PREPROC_IFELSE): Remove conftest.i in the postprocessing.
* tests/ (Order of user actions and cleanup): Extend
test in the ACTION-IF-TRUE branch.
* doc/autoconf.texi (Running the Preprocessor): Document new
* NEWS: Update.
Fix AC_FC_LIBRARY_LDFLAGS detection for BlueGene xlf -qipa.
* lib/autoconf/fortran.m4 (_AC_FC_LIBRARY_LDFLAGS): Ignore
'-link', added spuriously when -qipa is used with the XL
Fortran compilers on BlueGene.
manual: compiler flags -D and -L should not be followed by space
* doc/autoconf.texi (Preset Output Variables): Remove space
between -D and -L flags and their arguments, traditional cpp
implementations like Solaris 10, IRIX 6.5, OSF Tru64 5.1D,
AIX 5.3 do not accept it.
2010-07-10 Ralf Wildenhues <>
Fix comment typo in the manual.
* doc/autoconf.texi (Generic Compiler Characteristics): Refer
to the right test in the example marker comment.
Spotted by Eric Blake.
2010-07-10 Ralf Wildenhues <>
New Fortran macro AC_FC_LINE_LENGTH.
* lib/autoconf/fortran.m4 (AC_FC_LINE_LENGTH): New macro.
* doc/autoconf.texi (Fortran Compiler): Document it.
* tests/ (AC_FC_LINE_LENGTH): New test.
* NEWS: Update.
Fix wording about AC_CONFIG_SUBDIRS warning.
* doc/autoconf.texi (Subdirectories): We warn, not error, about
nonexistent config subdirs, but only at configure run time.
2010-07-10 Eric Blake <>
and Ralf Wildenhues <>
Fix regression of AC_CHECK_SIZEOF on pointer types.
* lib/autoconf/types.m4 (AC_CHECK_SIZEOF): Translate `*' to `p'
when checking literal-ness of the type, for pointer types.
* lib/m4sugar/m4sh.m4 (_AS_TR_SH): Also consider `*' as literal.
(_AS_TR_CPP): Likewise.
* tests/ (AC_CHECK_ALIGNOF struct): When checking
for numeric answer, be sure to not allow variable references.
(AC_CHECK_SIZEOF struct): Likewise. Also, test the
`AC_CHECK_SIZEOF([int *])' example from the manual.
* doc/autoconf.texi (Generic Compiler Characteristics): Add
example marker.
* NEWS: Update.
Reports by Nishio Futoshi and Roberto Bagnara.
2010-07-08 Eric Blake <>
and Ralf Wildenhues <>
Fix regression of AC_CONFIG_SUBDIRS with multiple arguments.
* lib/autoconf/status.m4 (AC_CONFIG_SUBDIRS): Do not assume the
argument is a single word.
* tests/ (Deep Package): Extend test to cover this.
(Non-literal AC_CONFIG_SUBDIRS): New test.
* doc/autoconf.texi (Subdirectories): Add example marker.
* NEWS: Update.
Report by Bruno Haible.
2010-07-04 Stefano Lattarini <>
Fix minor copy&paste leftover in m4sh tests.
* tests/ (AS@&t@_TR_SH and AS@&t@_TR_CPP): Remove
useless variables assignements ($var, $vAr, $VAR).
2010-07-04 Ralf Wildenhues <>
Fix testsuite to not trigger Solaris sh for bug.
* tests/ (Torturing config.status)
(Substitute a 2000-byte string)
(Substitute and define special characters)
(Substitute a newline): Quote first argument in for list so
that it does not look like an assignment.
2010-07-02 Eric Blake <>
Post-release administrivia.
* (NEWS_hash): Define.
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* (old_NEWS_hash): Auto-update.
Release Version 2.66.
* NEWS: Mention the release.
2010-07-02 Eric Blake <>
Pick up some improvements from gnulib.
* (AM_INIT_AUTOMAKE): Require 1.11, and build xz
archives by default now.
* (gzip_rsyncable): Avoid non-portable echo.
(VC-tag): Depend on gpg_key_ID.
(PREV_VERSION): Don't parse error as version.
(announcement): Populate email addresses with defaults.
(emit_upload_commands, web-manual): Reflect changes in scripts.
(update-NEWS-hash, emit-commit-log, release-prep): New macros.
* (announcement_Cc_, announcement_mail_headers_): Override
* HACKING: Modernize a bit.
Resync upstream files.
* GNUmakefile: Run 'make fetch'.
* build-aux/announce-gen: Likewise.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/ Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/gendocs_template: Likewise.
* doc/gnu-oids.texi: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
Make AS_TR_SH and AS_TR_CPP similar.
* lib/m4sugar/m4sh.m4 (_AS_TR_CPP_LITERAL): Avoid underquoting.
(_AS_TR_CPP_INDIR): Handle all polymorphic variables.
* tests/ (AS@&t@_TR_SH and AS@&t@_TR_CPP): New test.
* NEWS: Document the fix.
Reported by Bruno Haible.
Reduce startup cost of autotest.
* lib/autotest/general.m4 (_AT_FINISH) <banners>: Rather than
doing a recursive find, limit ourselves to top ChangeLog only.
Reported by Ralf Wildenhues.
2010-07-02 Ralf Wildenhues <>
New macro AC_FC_FIXEDFORM, improved AC_FC_FREEFORM, coverage.
* lib/autoconf/fortran.m4 (_AC_FC_DIALECT_YEAR): Fix typo in
(AC_FC_FREEFORM): Update list of known options for Sun, HP,
Lahey/Fujitsu Fortran compilers. Use M4 quoting consistently.
(AC_FC_FIXEDFORM): New macro.
* tests/ (AC_FC_DUMMY_MAIN usage, AC_FC_MAIN usage):
Use AC_FC_FIXEDFORM, to avoid testsuite failure with FC=xlf95.
* tests/ No need to exclude AC_FC_FREEFORM, it uses
* doc/autoconf.texi (Fortran Compiler): Document it.
* NEWS: Update.
2010-07-02 Eric Blake <>
Optimize AS_BOX.
* lib/m4sugar/m4sh.m4 (AS_BOX): Use less m4 time.
(_AS_BOX_LITERAL): Use fewer forks in the common case.
* doc/autoconf.texi (Common Shell Constructs) <AS_BOX>: Document
the macro.
* NEWS: Mention it.
Use new AS_LITERAL_IF argument when appropriate.
* lib/m4sugar/m4sh.m4 (AS_VAR_SET): Reduce m4 overhead.
(AS_VAR_IF, AS_VAR_TEST_SET): Provide shorter variant for simple
Suggested by Bruno Haible.
Add tests for AS_BOX.
* tests/ (m4@&t@_text_box): New test.
* tests/ (AS@&t@_BOX): Likewise.
* lib/m4sugar/m4sugar.m4 (m4_text_box): Support comma.
* doc/autoconf.texi (Text processing Macros) <m4_text_box>:
Document further limitations.
Add optional argument to AS_LITERAL_IF.
* lib/m4sugar/m4sh.m4 (_AS_LITERAL_IF): Rewrite to generate macro
name, without using m4_cond.
(_AS_VAR_PUSHDEF): Adjust callers.
* lib/autoconf/types.m4 (AC_CHECK_ALIGNOF): Relax restrictions on
invalid bytes, since this allows inline struct layouts.
(_AC_CHECK_ALIGNOF): New helper macro.
* tests/ (AS@&t@_LITERAL_IF): Update test.
* doc/autoconf.texi (Polymorphic Variables) <AS_LITERAL_IF>:
Update documentation.
Use AS_LITERAL_WORD_IF as appropriate.
* lib/autoconf/autoheader.m4 (AH_VERBATIM): Use new macro.
* lib/autoconf/general.m4 (AC_REQUIRE_AUX_FILE, AC_CACHE_VAL)
* lib/autoconf/libs.m4 (AC_CHECK_LIB): Likewise.
* lib/autoconf/status.m4 (AC_CONFIG_SUBDIRS): Likewise.
* lib/m4sugar/m4sh.m4 (AS_UNSET, AS_VAR_COPY, AS_VAR_GET)
* lib/m4sugar/m4sh.m4 (_AS_LITERAL_IF): Also reject shell quoting
characters as non-literal, and provide way to reject space.
(AS_LITERAL_WORD_IF): New macro.
* doc/autoconf.texi (Polymorphic Variables) <AS_LITERAL_IF>:
Document new macro. Fix example to match reality.
* NEWS: Document change and new macro.
* tests/ (AS@&t@_LITERAL_IF): Update test.
Optimize AC_DEFINE.
* lib/autoconf/general.m4 (_AC_DEFINE_Q): Avoid overhead of
2010-07-02 Stefano Lattarini <>
and Eric Blake <>
Describe a Solaris /bin/sh bug w.r.t. for loops.
* doc/autoconf.texi (Limitations of Shell Builtins) <for>:
Document a bug of the 'for' builtin in Solaris /bin/sh, w.r.t.
tokens seeming variable assignment in the list of arguments.
2010-06-23 Ralf Wildenhues <>
Improve VPATH handling in config.status for non-Automake projects.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Be sure not
to remove references to a subdir of srcdir. Fix treatment of
multiple colon-separated VPATH entries.
* tests/ (VPATH): New test.
Report by Keith Marshall.
Further improve docs about nested double-quotes and backquotes.
* doc/autoconf.texi (Shellology): Remove anchor for pdksh.
Move quoting bug example to ...
(Shell Substitutions): ... here. Document which behavior is
specified by Posix.
Coverage for Fortran compiler macros.
* tests/ (AC_OPENMP and Fortran 77)
(AC_OPENMP and Fortran): Simplify, using AT_CHECK_CONFIGURE.
(AC_F77_MAIN usage, AC_FC_MAIN usage, AC_F77_FUNC usage)
* doc/autoconf.texi (Fortran Compiler): Use GNU coding style
on C code snippets. Add markers for tested examples.
Suggest AC_FC_FREEFORM for source file extensions which the
compiler might not natively support but which are accepted
with help from AC_FC_SRCEXT. Suggest AC_CONFIG_HEADERS for
setups using one of the AC_*MAIN macros.
Accept any nonzero exit status upon config.status write failure.
Normalize nonzero status to 1 for writing to /dev/full, for HP-UX
11.31 cat which exits 2.
Fix testsuite failure with Tru64 preprocessor.
* tests/ (Order of user actions and cleanup): Add
incomplete comment to provoke failure with Tru64/OSF 5.1 cc
2010-06-22 Ralf Wildenhues <>
and Eric Blake <>
Further clarification on sed -e portability.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Clarify
more about sed -e and Posix limitations.
2010-06-22 Bruno Haible <>
Document how to use literal newlines in makefile rules.
* doc/autoconf.texi (Newlines in Make Rules): New section.
Document how to write comments in makefile rules.
* doc/autoconf.texi (Comments in Make Rules): Mention a workaround
2010-06-22 Ben Pfaff <>
Document how to propogate variables to submakes.
* doc/autoconf.texi: Describe technique used by Automake to
propagate variables to submakes in more detail.
2010-06-22 Peter Johansson <> (tiny change)
Be consistent in doc example.
* doc/autoconf.texi: (Polymorphic Variables) be consistent in code
example and output
2010-06-22 Ralf Wildenhues <>
Add comments for vim syntax highlighting.
* doc/autoconf.texi: Restore font-lock in some examples using
$$, for vim.
Formatting cleanups for optional arguments.
* doc/autoconf.texi (Configuration Actions, Help Formatting)
(External Software): Use @r{} for brackets denoting optional
arguments, where @ovar is not safe to use.
Clarify nested double-quotes and backquotes shell issues.
* doc/autoconf.texi (Shellology): New anchor for pdksh.
(Shell Substitutions): Link to it for escaped double-quotes
within double-quoted backquotes; add ksh example for unescaped
inner double-quotes problem.
Mention Tru64 5.1 fgrep limitation with emtpy patterns.
* doc/autoconf.texi (Limitations of Usual Tools): Update.
Overhaul the manual, esp. the Autotest chapter.
* doc/autoconf.texi (Installation Directory Variables):
Replace some uses of @var with @code.
(Special Shell Variables): Fix misordered paragraph about IFS.
(Writing Testsuites): Include paragraph following AT_TESTED in
the macro definition.
(testsuite Invocation): Failed tests are not rerun.
(testsuite Scripts, Autotest Logs, testsuite Invocation)
(Making testsuite Scripts): Minor edits for consistency and
2010-06-18 Bruno Haible <>
Document sed -e limitation.
* doc/autoconf.texi (Limitations of Usual Tools): Mention portability
problem of sed -e option with script fragments.
2010-06-17 Ralf Wildenhues <>
Document, test, and fix AT_ARG_OPTION, AT_ARG_OPTION_ARG.
* lib/autotest/general.m4 (_AT_ARG_OPTION): Fix translation of
hyphens to underscores when turning option names to variables.
Avoid macro name concatenation garbage with trailing `dnl'.
(AT_ARG_OPTION, AT_ARG_OPTION_ARG): Overhaul macro description.
The OPTIONS are space-separated, not comma-separated. The
negative form of AT_ARG_OPTION is prefixed with `--no-'.
* tests/ (AT@&t@_ARG_OPTION, AT@&t@_ARG_OPTION_ARG):
New tests.
* NEWS: Update.
* doc/autoconf.texi (Writing Testsuites): Document AT_ARG_OPTION
(testsuite Invocation): Call the thingies passed to the
testsuite options, not arguments. Note that the testsuite
author may add further package-specific options.
Autotest: enable colored test results.
* lib/autotest/general.m4 (HELP_TUNING_BEGIN): New diversion.
(HELP_TUNING, HELP_OTHER, HELP_END): Bump diversion numbers.
(AT_INIT): Accept
--color and --color=never|auto|always. If desired, colorize
test results and testsuite summary on standard output.
[HELP_TUNING]: Divert content instead to ...
[HELP_TUNING_BEGIN]: ... this diversion, m4_wrapped until the
end, when we know whether AT_COLOR_TESTS has been specified.
(AT_COLOR_TESTS): New macro, set the default for color to auto.
* doc/autoconf.texi (Writing Testsuites): Document it.
(testsuite Invocation): Document --color* options.
* tests/ Call AT_COLOR_TESTS for Autoconf's testsuite.
* tests/ (color test results): New test, mirroring
color.test from Automake.
* NEWS: Update.
2010-06-15 Ralf Wildenhues <>
Avoid texinfo bug with backslashes in macro arguments.
* doc/autoconf.texi (Text processing Macros)
(Common Shell Constructs): Do not use @dvar with backslashes.
2010-06-14 Eric Blake <>
Make CONFIG_SITE handling more robust.
* lib/autoconf/general.m4 (AC_SITE_LOAD): Avoid leading - and path
search, and check for failure to load.
* tests/ (AC_CACHE_CHECK): Enhance test.
* doc/autoconf.texi (Site Defaults): Mention that CONFIG_SITE
works best as an absolute path.
* NEWS: Document the semantic change.
2010-03-13 Bruno Haible <>
and Ralf Wildenhues <>
Allow plus signs in AC_ARG_ENABLE and AC_ARG_WITH.
* doc/autoconf.texi (External Software): Mention that AC_ARG_WITH
accepts packages with a + sign in it.
(Package Options): Likewise for AC_ARG_ENABLE.
* lib/autoconf/general.m4 (_AC_ENABLE_IF): Also replace '+' with '_'.
* tests/ (AC_ARG_ENABLE and AC_ARG_WITH): New test.
* NEWS: Update.
2010-06-14 Ralf Wildenhues <>
Autotest: simplify logic to compute test group result.
* lib/autotest/general.m4 (AT_INIT): Compactify result
computation logic.
New Autotest testsuite option --recheck.
* lib/autotest/general.m4 (AT_INIT): New variable $at_recheck.
Escape hyphen in $at_dir early. Accept command line switch
--recheck. Set $at_suite_log early, based on --directory
switch; with --recheck, include the list of FAILed and XPASSed
tests from old testsuite.log file in $at_groups. Document
--recheck in --help output.
* tests/ (recheck): New test.
* doc/autoconf.texi (testsuite Invocation): Document --recheck.
* NEWS: Update.
2010-06-14 Karl Berry <> (tiny change)
Clarify comment about old system.
* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): Prefer GNU/Linux,
and note that bug has long since been fixed.
2010-06-08 Eric Blake <>
Run libtool test with modern libtool.
* tests/ (Libtool): Request that libtoolize install
auxiliary files. Assume libtool 2.x is modern.
2010-06-08 Ralf Wildenhues <>
Coverage and doc fixes for AC_LANG_SOURCE and AC_LANG_PROGRAM.
(AC_LANG_SOURCE example, AC_LANG_PROGRAM example): New tests.
* doc/autoconf.texi (Generating Sources): Add markers for tested
examples; update quoting, and update AC_INIT usage to also set
optional URL arguments. Mention that the examples require gcc.
Prompted by report from Brian J. Murrell.
Make AS_SET_CATFILE polymorphic, and add testsuite coverage.
* lib/m4sugar/m4sh.m4 (AS_SET_CATFILE): Use AS_VAR_SET to set
the variable.
* tests/ (AS@&t@_SET_CATFILE): New test.
* doc/autoconf.texi (Common Shell Constructs): Document that
AS_SET_CATFILE is polymorphic in its VAR argument now.
* NEWS: Update.
Testsuite coverage for AC_COPYRIGHT and AT_COPYRIGHT.
* tests/ (AT@&t@_COPYRIGHT): New test.
* tests/ (AC@&t@_COPYRIGHT): Likewise.
Testsuite coverage for __file__ and __line__.
* tests/ (__file__ and __line__): New test.
Testsuite coverage for AC_CACHE_VAL and caching semantics.
* tests/ (AC_CACHE_CHECK): Extend test.
(AC_CACHE_LOAD): New test.
* tests/ (Configuring subdirectories): Also test
--config-cache with AC_CONFIG_SUBDIRS.
* doc/autoconf.texi (Caching Results): Annotate code snippets
which are tested in the test suite.
(Cache Files): Documented cache variables may be used on the
configure command line to override individual entries in the
cache file.
Clarify OpenBSD sh errexit issue with compound commands.
* doc/autoconf.texi (Limitations of Builtins): Only the last
command in a compound list is problematic.
Tested on OpenBSD 4.4.
2010-06-07 Eric Blake <>
Properly quote AC_PREREQ during autoupdate.
* lib/autoconf/general.m4 (AC_PREREQ): Follow consistent quoting
style for AC_PREREQ.
* tests/ (autoupdating AC_PREREQ): Update expected
Reported by NightStrike.
2010-06-01 Ralf Wildenhues <>
Documentation and tests for the AC_CHECK_DECL change.
* lib/autoconf/general.m4 (_AC_CHECK_DECL_BODY): Squash trailing
spaces in as_decl_name.
(_AC_CHECK_DECLS): Likewise for the define.
* tests/ (AC_CHECK_DECLS): Extend test.
* doc/autoconf.texi (Generic Declarations): Update.
* NEWS: Update.
2010-06-01 Joern Rennecke <> (tiny change)
Generalize AC_CHECK_DECL for C++: allow optional arguments.
* general.m4 (_AC_CHECK_DECL_BODY): Process trailing function
argument types as arguments to use for C++.
(_AC_CHECK_DECLS): Filter out trailing function argument types
when generating the HAVE_DECL_* macro.
2010-05-25 Stefano Lattarini <>
Eric Blake <>
Don't expose AC_{COMPILE,LINK}_IFELSE internals in documentation.
* doc/autoconf.texi (Runtime) <AC_LINK_IFELSE>: Suggest to use
`conftest$EXEEXT' rather than `conftest$ac_exeext' to acces the
just-linked program file.
(Runtime) <AC_COMPILE_IFELSE>: Suggest to use `conftest.$OBJEXT'
rather than `conftest.$ac_object' to access the just-compiled
object file. Also, refer to the object file as "just-compiled"
rather than "just-linked".
2010-05-20 Eric Blake <>
Mention another line-counting alternative.
* doc/autoconf.texi (Limitations of Usual Tools) <grep>: Mention
how to use sed to count lines.
Suggested by Paolo Bonzini.
2010-05-12 Eric Blake <>
Document the grep workaround.
* doc/autoconf.texi (Limitations of Usual Tools) <grep>: Document
the bug.
2010-05-12 Mark Hessling <> (tiny change)
Work around QNX4 grep bug.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Count ^
rather than $ to avoid QNX4 grep bug.
* THANKS: Update.
2010-05-11 David Reiss <> (tiny change)
Improve Erlang documentation.
* doc/autoconf.texi (Erlang Libraries): Document actual default
* THANKS: Update.
2010-05-11 Eric Blake <>
Fix typo in previous patch.
* doc/autoconf.texi (File Descriptors): Add end '.
Reported by Ralf Wildenhues.
Mention how to silence program probes.
* doc/autoconf.texi (File Descriptors): Document how to silence a
program probe.
2010-04-26 Ralf Wildenhues <>
Error and warning message formatting cleanups.
* doc/autoconf.texi (Autoconf Language, Generic Structures):
Do not capitalize the first word in error messages, do not end
them with a period.
* lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS, AC_MSG_FAILURE):
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE): Likewise.
* lib/autotest/general.m4 (AT_INIT, at_fn_group_prepare):
* m4/m4.m4 (AC_PROG_GNU_M4): Likewise.
* tests/ (AC_TRY_COMMAND): Likewise.
* tests/ (datarootdir workaround): Adjust expected
Fix placing of ellipses in English text.
* lib/autoconf/general.m4 (_AC_INIT_HELP): Be sure to add a
space before `...' in natural language text.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL_BODY):
* lib/autoconf/libs.m4 (_AC_PATH_X_XMKMF): Likewise.
* lib/autoconf/programs.m4 (AC_PROG_MAKE_SET): Likewise.
* tests/ Likewise.
* tests/ (@%:@define header templates): Likewise.
Ensure autotest tests have an atconfig file, for testsuite -v.
* tests/ (AT_CHECK_AT_PREP): Create a default
atconfig file in the directory of the testsuite.
(AT_CHECK_AT_TITLE): Also check that `./micro-suite -v' output
does not contain empty $at_srcdir expansion.
(srcdir propagation): Remove the atconfig file generated by
AT_CHECK_AT_PREP. Check each suite invocation for $at_srcdir
Fix autotest testsuite -v output to print test group title.
* lib/autotest/general.m4 (AT_CLEANUP): Actually print test
title in verbose output. Fixes AUTOCONF-2.57-101-gc102ed8
* tests/ (AT_CHECK_AT_TITLE): Amend macro to check
for test title in -v output.
2010-04-26 Eric Blake <>
Clarify octal escapes with tr.
* doc/autoconf.texi (Limitations of Usual Tools): Carriage return
is portable in octal, but not newline.
2010-04-22 Joel James Adamson <> (tiny change)
Add a paragraph to FAQ on Debugging configure scripts.
* doc/autoconf.texi (Debugging): Mention inspecting config.log.
* THANKS: Update.
2010-04-21 Mike Frysinger <> (tiny change)
Fix typo in doc example.
* doc/autoconf.texi (Subdirectories): Fix typo.
2010-04-05 Eric Blake <>
Fix m4_cr_all for EBCDIC.
* lib/m4sugar/m4sugar.m4 (m4_cr_all): Swap * and $, so that we
don't end up with $* in EBCDIC.
* NEWS: Document the fix.
* THANKS: Update.
Reported by Steve Goetze.
2010-03-28 Ralf Wildenhues <>
Do not use @acronym in the manual.
* doc/autoconf.texi: Remove all usage of @acronym.
Suggested by Karl Berry.
Do not use @sc in the manual.
* doc/autoconf.texi: Remove all usage of @sc in the manual.
Suggested by Karl Berry.
2010-03-12 Ralf Wildenhues <>
Fix wrong comment in testsuite.
* tests/ (m4@&t@_warn): Remove copy&pasted comment.
Formatting cleanups in macro comments.
* lib/autoconf/c.m4, lib/autoconf/erlang.m4,
lib/autoconf/fortran.m4, lib/autoconf/functions.m4,
lib/autoconf/general.m4, lib/autoconf/lang.m4,
lib/autoconf/programs.m4, lib/autoconf/specific.m4,
lib/autoconf/status.m4, lib/autoconf/types.m4,
lib/autotest/general.m4, lib/autotest/specific.m4,
lib/m4sugar/m4sh.m4, lib/m4sugar/m4sugar.m4,
tests/, tests/, tests/,
tests/, tests/, tests/ Fix macro
comment format.
2010-03-05 Ralf Wildenhues <>
manual: index strings containing colon in non-info outputs.
* doc/autoconf.texi (Quadrigraphs, Shell Substitutions): Produce
index entries for concepts containing a colon in output formats
other than info.
Update copyright years for files generated by
* tests/ Update copyright years for generated files.
2010-03-04 Eric Blake <>
Document AC_LANG_CONFTEST semantic change.
* doc/autoconf.texi (Generating Sources) <AC_LANG_CONFTEST>:
Enhance documentation, to show that semantic change in 2.63b was
* THANKS: Update.
Reported by Brian J. Murrell, analyzed by Ralf Wildenhues.
2010-03-04 Peter Johansson <> (tiny change)
Autoconf Macro Archive URL has changed.
* doc/autoconf.texi (Introduction, Coding Style, Defining
Directories): The Autoconf Macro Archive is officially `GNU'.
Update URL.
2010-03-02 Eric Blake <>
Fix shell code in AS_TR_SH documentation.
* doc/autoconf.texi (Common Shell Constructs) <AS_TR_SH>: Fix
example to expand to valid shell code.
Reported by Ralf Wildenhues.
Improve documentation on AC_{COMPILE,LINK}_IFELSE.
* doc/autoconf.texi (Running the Compiler): Mention that the
object file is available after a successful compile.
(Running the Linker): Likewise for the linker output.
Suggested by Paolo Bonzini.
Fix typo in docs.
* doc/autoconf.texi (Conditional constructs) <m4_ifblank>: Fix
2010-03-02 Ralf Wildenhues <>
Fix AS_ERROR for FreeBSD sh.
* lib/m4sugar/m4sh.m4 (_AS_ERROR_PREPARE): Rewrite as_fn_error
to take additional first argument STATUS instead of transporting
$? across shell function entry, which does not work with FreeBSD
sh. Shift all other arguments by one, adjust.
(AS_ERROR): Pass EXIT-STATUS, defaulting to $?, to as_fn_error.
Report by Václav Haisman.
Fix `autom4te cache creation' testsuite failure on FreeBSD.
* tests/ (autom4te cache creation): Normalize exit
status of failed redirection to 1, may be 2 with FreeBSD sh.
* THANKS: Update.
Report by Václav Haisman.
Fix Autotest tracing of shell pipelines for FreeBSD sh.
* lib/autotest/general.m4 (_AT_DECIDE_TRACEABLE): Do not trace
commands that contain [^|]|[^|], a likely shell pipeline.
* tests/ (_AT_CHECK_ENV): Turn off tracing for egrep |
grep pipeline.
* doc/autoconf.texi (File Descriptors): Document limitation.
* tests/ (Trace output): New test.
2010-03-01 Eric Blake <>
Update file flow diagram to mention Automake.
* doc/autoconf.texi (Making configure Scripts): Avoid confusion
with listing twice on one line. Add a diagram showing
how automake fits into the picture.
Reported by santilín.
2010-02-26 Eric Blake <>
* lib/autoconf/functions.m4 (_AC_REPLACE_FUNC): New helper macro.
(AC_REPLACE_FUNCS): Use it to reduce forks when checking for
replacements, by using literal rather than shell variable.
Document how to safely override CFLAGS default.
* doc/autoconf.texi (C Compiler) <AC_PROG_CC>: Document a way to
change the default CFLAGS.
(C++ Compiler) <AC_PROG_CXX>: Likewise, for CXXFLAGS.
Reported by Monty Taylor; wording suggested by Paolo Bonzini.
Document that Autoconf relies on IFS.
* doc/autoconf.texi (Special Shell Variables) <IFS>: Add details
about use of IFS within configure script.
* THANKS: Update.
Reported by Arkadiusz Miskiewicz.
Recommend latest m4 release.
* README: Bump recommendation to m4 1.4.14 (minimum remains
* doc/autoconf.texi (Introduction): Likewise.
* m4/m4.m4 (AC_PROG_GNU_M4): Likewise.
2010-02-23 Ralf Wildenhues <>
Fix testsuite failures due to setting of $U.
* tests/ (_AT_CHECK_ENV): Ignore setting of $U.
2010-02-10 Eric Blake <>
Avoid $U if it is not initialized.
* lib/autoconf/general.m4 (_AC_LIBOBJS_NORMALIZE): Ensure $U is
set if automake did not define it.
* THANKS: Update.
Reported by Heiko Schlichting, via Julien Élie.
2010-01-24 Ralf Wildenhues <>
Fix substitution of carriage return on Darwin.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Set
ac_cs_awk_cr to '\\r', so that sed portably expands this to '\r'
rather than a literal carriage return, to fix substitution on
Darwin. Regression introduced in 2.63b.
Report by Peter O'Gorman.
2010-01-21 Dmitry V. Levin <>
Fix test failure when a shell uses $TMPDIR for here-documents.
* tests/ (autotools and whitespace in file names): Create
$TMPDIR before potential use like in other whitespace tests.
2010-01-20 Paolo Bonzini <>
Add recommendation on (not) unsetting IFS.
* doc/autoconf.texi (Special shell variables): Explain why it's
better not to unset IFS.
2010-01-19 Ralf Wildenhues <>
config.status: consistent exit status with nonexistent config file input.
* lib/autoconf/status.m4 (_AC_OUTPUT_MAIN_LOOP): Ensure we
exit with status 1 rather than with that of 'false', for
(AC_OUTPUT): Ensure to exit 1 in case of config.status failure.
* tests/ (Missing templates): Also test code path
for $srcdir != '.'.
Report by Tim Rice.
2010-01-13 Eric Blake <>
Fix previous example.
* doc/autoconf.texi (Here-Documents): Touch up the example to
match output to sample command line.
Document here-doc pitfall.
* doc/autoconf.texi (Here-Documents): Mention problem with <<-
Reported by Jim Meyering.
2010-01-12 Eric Blake <>
Typo fix in earlier commit.
* doc/autoconf.texi (Autoconf Language): Fix typo.
2010-01-12 Ralf Wildenhues <>
Allow AC_FUNC_MKTIME to work with C++.
* lib/autoconf/functions.m4 (AC_FUNC_MKTIME): ANSIfy KnR function
definitions. Use `const char*' for character literals; cast them
to `char*' for putenv.
2010-01-11 Ralf Wildenhues <>
Export AUTOM4TE in tests/, for aclocal.
* tests/ Set and export $AUTOM4TE, for aclocal.
Report by Tim Rice.
2010-01-08 Eric Blake <>
Make autotest example act better with automake.
* doc/autoconf.texi (Making testsuite Scripts): Rely on automake
feature for recommended autotest snippet, following our own use.
Clarify language on handling of opening parenthesis.
* doc/autoconf.texi (Autoconf Language): Give an example of
improper argument passing.
* THANKS: Update.
Reported by Juan Carlos Hurtado.
2010-01-06 Ralf Wildenhues <>
Don't fail autom4te preselection test due to different Automake.
* tests/ (autom4te preselections): If the cache test
fails, extract the Automake version from the toplevel file of the source tree; skip, rather than fail
the test group if the automake program has a different version.
* THANKS: Update.
Report by Dieter Jurzitza, fix suggested by Eric Blake.
2010-01-06 Peter Breitenlohner <>
Ralf Wildenhues <>
Fix AC_CONFIG_LINKS to generated files when srcdir is absolute.
* lib/autoconf/status.m4 (_AC_OUTPUT_LINK): Check $ac_source,
not $srcdir, for being relative or absolute.
* tests/ (AC_CONFIG_LINKS): New test.
(AC_CONFIG_LINKS and identical files): Extend test, avoid some
Report, patch and testcase example by Peter Breitenlohner.
2010-01-05 Eric Blake <>
Improve release automation.
* (gnulib_dir, gnulib-version, bootstrap-tools)
(announcement): Copy from latest gnulib
* (announce_gen, gpg_key_ID): Delete.
(bootstrap-tools): Override the default.
Update upstream files.
* GNUmakefile: Update via 'make fetch'.
* build-aux/announce-gen: Likewise.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/ Likewise.
* build-aux/gnupload: Likewise.
* build-aux/move-if-change: Likewise.
* build-aux/update-copyright: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/standards.texi: Likewise.
* (update-copyright-env): Enforce wrap column.
Update copyright year.
All files changed to add 2010, via 'make update-copyright'.
2009-12-31 Bruno Haible <>
Improve documentation on Solaris tr bugs.
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Refine
description of NUL handling by Solaris tr.
2009-12-31 Eric Blake <>
Another tr tweak.
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Clarify
previous commit.
Reported by Ralf Wildenhues.
2009-12-29 Eric Blake <>
Improve documentation on tr portability.
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Refine
description of NUL handling. Document set size issue.
Reported by Bruno Haible.
Fix comment in AC_CHECK_DECLS.
* lib/autoconf/general.m4 (AC_CHECK_DECL): Document the includes
argument to the shell function.
2009-12-15 Ralf Wildenhues <>
Add testsuite exposure for shtool usage.
* tests/ (shtool): New test.
Report by Dmitry Grebeniuk.
2009-12-12 Eric Blake <>
Improve wording about m4 quote characters.
* doc/autoconf.texi (Autoconf Language): Autoconf quote characters
come from m4sugar, not raw m4.
(Active Characters): Mention that it is m4sugar which changes
quotes from `' to [].
* THANKS: Update.
Suggested by Josef Vukovic.
2009-12-12 Ralf Wildenhues <>
Revert "Improve AC_CONFIG_AUX_DIRS a bit." to fix shtool usage.
* lib/autoconf/general.m4 (AC_CONFIG_AUX_DIRS): Revert test for
shtool as install script. Regression introduced in 2.64.
* NEWS, THANKS: Update.
Report by Dmitry Grebeniuk.
This reverts commit 93d9386de9c1320afed43f1337ac5ddb2d2dcbb4.
2009-12-09 Ralf Wildenhues <>
Fix NEWS description for AC_FUNC_MMAP entry.
* NEWS: Update.
Fix 2.65 AC_TYPE_INT*_T macro body text regression.
* lib/autoconf/types.m4 (_AC_TYPE_INT_BODY): Move helper enum
definition to prologue section, to avoid syntax error.
* NEWS, THANKS: Update.
Report by Pierre Ynard.
2009-12-09 Paolo Bonzini <>
Fix `recursion' test failure.
* tests/ (recursion): Use empty diversion, not 0.
2009-12-05 Stefano Lattarini <>
Ralf Wildenhues <>
Document Solaris/Heirloom sh set -e issue with command substitutions.
* doc/autoconf.texi (Limitations of Builtins): Fix typos `set -d'
in previous example. Document failure to honor && lists with set -e
and a command substitution in the failing command.
Report and initial patch by Stefano Lattarini against Automake.
2009-12-04 Eric Blake <>
Warn if using unnamed diversion.
* lib/m4sugar/m4sugar.m4 (_m4_divert, m4_divert_push): Add
optional parameter, which controls warning.
(m4_divert_pop, m4_cleardivert, m4_divert_require)
(_m4_require_call): Adjust callers.
* lib/m4sugar/m4sh.m4 (AS_REQUIRE): Likewise.
* tests/ (AT_DATA_LINENO): Avoid triggering the warning.
* tests/ (AT_CHECK_M4SUGAR_TEXT, m4@&t@_append)
(m4@&t@_text_wrap, recursion): Likewise.
(m4@&t@_warn, m4@&t@_divert_stack): Adjust expected output.
* tests/ (autom4te and whitespace in file names)
(autoconf: the empty token): Avoid triggering the warning.
(autoconf: AC_PRESERVE_HELP_ORDER): New test.
* tests/ (ac_exclude_list): Retire prior test.
* NEWS: Document the warning.
* doc/autoconf.texi (Redefined M4 Macros) <m4_divert>,
<m4_undivert>: Make even more explicit that using these directly
is discouraged.
(Diversion support): Further warn against improper diversion
<m4_divert_text>: Give an example of proper use.
Reported by Mike Frysinger.
2009-11-30 Ralf Wildenhues <>
manual: AC_SEARCH_LIBS also prepends to LIBS.
* doc/autoconf.texi (Libraries): Document that AC_SEARCH_LIBS
prepends to LIBS, just like AC_CHECK_LIB.
2009-11-27 Paolo Bonzini <>
Bump m4.m4 serial number.
* m4/m4: Bump serial number to 10.
2009-11-27 Harald van Dijk <>
Fix m4 detection test on dash.
* m4/m4 (AC_PROG_GNU_M4): Use AS_ECHO.
2009-11-24 Ralf Wildenhues <>
Fix AC_FUNC_MMAP regression with C++ compiler in 2.65.
* lib/autoconf/functions.m4 (AC_FUNC_MMAP): Use const char*
for the constant string. Cast void* to char* for assignment.
* NEWS, THANKS: Update.
Report by Michal Čihař.
Add pgfortran to list of Fortran 95+ compilers.
* lib/autoconf/fortran.m4 (_AC_F95_FC): Add pgfortran before
Based on report by Jeff Squyres.
2009-11-22 Bruno Haible <>
Fix failure of test 35 when the user has a .autom4te.cfg file.
* tests/ (autom4te cache creation): Skip the test if the
user has a .autom4te.cfg file.
2009-11-21 Eric Blake <>
Release Version 2.65.
* NEWS: Mention the release.
Prepare for release.
* build-aux/announce-gen: Sync from upstream.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* (gnu_rel_host, url_dir_list): Move...
*, copying ideas from gnulib.
(major): Rename...
(stable): this, copying gnulib.
* HACKING (release): Document changes in process.
Avoid spurious newline in traced macros.
* bin/ (tracing): Drop newline before parsing traced
arguments; regression from 2009-11-14.
2009-11-20 Eric Blake <>
Allow absolute names in AT_TESTED.
* lib/autotest/general.m4 (AT_INIT) <PREPARE_TESTS>: Check for
absolute names before path walk.
* THANKS: Update.
Suggested by Allan Clark.
2009-11-14 Ralf Wildenhues <>
Fix AC_CONFIG_SUBDIRS tracing in autoreconf.
* bin/ (autoreconf_current_directory): Collapse
newlines in the autoconf trace output, similar to how automake
invokes autoconf, so that newlines do not matter in the argument
* tests/ (Deep Package): Expose this issue in the
* THANKS: Update.
Report by Nathan Schulte.
2009-11-09 Eric Blake <>
Fix AC_FUNC_MMAP for cygwin.
* lib/autoconf/functions.m4 (AC_FUNC_MMAP): Make the test more
portable: Actually check for <sys/param.h>, and only use MAP_FIXED
on an address previously returned from mmap.
* THANKS: Update.
Reported by Corinna Vinschen.
2009-11-04 Eric Blake <>
Redocument AS_DIRNAME, even with its flaws.
* doc/autoconf.texi (Common Shell Constructs) <AS_DIRNAME>:
Restore documenatation, since dirname mentions it.
Reported by Peter Johansson.
Update upstream files.
* build-aux/announce-gen: Synchronize from upstream.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/ Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/update-copyright: Likewise.
* doc/standards.texi: Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
2009-11-04 Ralf Wildenhues <>
Coverage for autom4te cache creation issues.
* tests/ (autom4te cache creation): New test.
2009-11-03 Ralf Wildenhues <>
Fix testsuite failures with SHELL=zsh.
* tests/statesave.m4 (AC_STATE_SAVE): Ignore argv and ARGC when
comparing configure variables.
2009-11-03 Eric Blake <>
and Ralf Wildenhues <>
Update NEWS for recent fixes.
* NEWS: Add some entries.
2009-10-31 Ralf Wildenhues <>
Micro-optimization of config.status substitution.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): No need to
concatenate an empty second string, when we have exactly 148
characters to substitute.
* tests/ (Substitute a 2000-byte string): Add test
exposure for runs of backslashes near the 148 character limit.
Fix testsuite failure on AIX 4.3.3.
* lib/autoconf/general.m4 (_AC_RUN_LOG_LIMIT): Remove conftest.err
also if it is empty.
Fix testsuite failure on IRIX and AIX.
* tests/ (Substitute and define special characters):
Double the backslash before the double-quote in
AC_DEFINE_UNQUOTED, as documented for here-documents.
2009-10-31 Eric Blake <>
Fix cross-manual link to gcc.
* doc/autoconf.texi (Portable C and C++): Provide uref rather than
xref when building for html.
Reported via Karl Berry.
Update authors.
* AUTHORS: Document recent copyright assignments.
2009-10-31 Ralf Wildenhues <>
Fix AC_OPENMP configure message for non-C compilers.
* lib/autoconf/lang.m4 (AC_LANG_DEFINE): Accept as additional
fourth arg the compiler variable name, defined in _AC_CC($1).
(_AC_CC): New language dispatch macro.
* lib/autoconf/erlang.m4 (AC_LANG(Erlang)): Adjust.
* lib/autoconf/fortran.m4 (AC_LANG(Fortran 77), AC_LANG(Fortran)):
* lib/autoconf/c.m4 (AC_LANG(C), AC_LANG(C++))
(AC_LANG(Objective C), AC_LANG(Objective C++)): Likewise.
(AC_OPENMP): Use _AC_CC instead of $CC.
Do not fail OpenMP tests on systems without aclocal.
* tests/ (AC_OPENMP and C, AC_OPENMP and C++): Override
`ACLOCAL=true' for autoreconf, the tests don't need aclocal.
* tests/ (AC_OPENMP and Fortran 77)
(AC_OPENMP and Fortran): Likewise.
2009-10-31 Bruno Haible <>
Ralf Wildenhues <>
Improve cache variable documentation.
* doc/autoconf.texi (AC_PROG_AWK, AC_PROG_GREP, AC_PROG_EGREP,
AC_PATH_PROGS): Don't suggest to use the cache variable, only to
override it, or preferably, a non-cache variable associated with
the test.
(AC_PROG_SED): Likewise. Fix name of cache variable.
(AC_FUNC_GETMNTENT): Fix name cache variable.
(AC_FUNC_LSTAT): Fix typo.
2009-10-31 Ralf Wildenhues <>
Fix AC_OPENMP for Fortran (F77 and FC).
* lib/autoconf/fortran.m4 (AC_LANG_FUNC_LINK_TRY(Fortran): New.
* tests/ (AC_C_RESTRICT and C++, AC_OPENMP and C)
(AC_OPENMP and C++): New tests.
* tests/ (AC_OPENMP and Fortran 77)
(AC_OPENMP and Fortran): New tests.
* THANKS: Update.
Report by Bart Oldeman.
Perl coverage convenience targets.
(PERL_COVER): New variables.
(check-coverage, check-coverage-run, check-coverage-report)
(clean-coverage): New phony targets.
(clean-local): Depend on clean-coverage.
2009-10-28 Eric Blake <>
Fix corner cases in AS_LITERAL_IF and AS_TR_SH.
* lib/m4sugar/m4sh.m4 (AS_LITERAL_IF): Fix bug with unbalanced
parens. Move guts...
(_AS_LITERAL_IF): into new helper.
(AS_TR_SH, AS_TR_CPP): Fix bugs with expansion of wrong macro.
Move guts...
(_AS_TR_CPP_LITERAL, _AS_TR_CPP_INDIR): ...into new helpers.
(AS_VAR_PUSHDEF): Hoist m4_require, by moving guts...
(_AS_VAR_PUSHDEF): ...into new helper.
* tests/ (AS@&t@_LITERAL_IF): Enhance test.
Minor optimizations to m4sh.
* lib/m4sugar/m4sh.m4 (AS_VAR_IF, AS_IDENTIFIER_IF)
(AS_LITERAL_IF): Parse fewer bytes during expansion, by visiting
if-true and if-false arguments only once.
Optimize m4_escape for common case.
* lib/m4sugar/m4sugar.m4 (m4_escape): Don't use regex if string is
already sane, by copying from AS_LITERAL_IF. Move guts...
(_m4_escape): ...into new helper.
Fix m4_text_wrap handling of quoted whitespace.
* lib/m4sugar/m4sugar.m4 (m4_escape): New macro.
(m4_text_wrap): Use it to avoid issues with embedded [ and ].
* tests/ (m4@&t@_text_wrap): Test it.
* NEWS: Document this.
* doc/autoconf.texi (Text processing Macros) <m4_escape>:
Reported by Mike Frysinger.
2009-10-27 Eric Blake <>
Mention another feature of AC_RUN_IFELSE.
* doc/autoconf.texi (Runtime) <AC_RUN_IFELSE>: Mention that
compiled test program still exists during if-true branch.
* THANKS: Update.
Reported by Stefano Lattarini, suggestion by Ralf Wildenhues.
2009-10-26 Paolo Bonzini <>
Pass Autom4te path down to programs that autoreconf invokes.
* bin/ (autom4te): New variable. Export its value
as $ENV{'AUTOM4TE'}. Suggested by Peter Johansson.
* THANKS: Update.
2009-10-20 Eric Blake <>
Fix AC_TYPE_UINT64_T on Tru64 with gcc 3.4.4.
* lib/autoconf/types.m4 (_AC_TYPE_UNSIGNED_INT_BODY)
(_AC_TYPE_INT_BODY): Avoid undefined behavior of attempting shift
wider than type.
* NEWS: Document this.
Reported by Rainer Orth.
2009-10-17 Ralf Wildenhues <>
Fix a couple of index entries in the manual.
* doc/autoconf.texi (Polymorphic Variables): Fix index entries
2009-10-15 Eric Blake <>
Fix typos in INSTALL.
* doc/install.texi (Basic Installation, Installation Names): Fix
typos in last patch.
Repored by Ralf Wildenhues.
Improve INSTALL wording.
* doc/install.texi (Basic Installation): Clarify installcheck
(Installation Names): Mention that --prefix only overrides
directory locations not specified on the command line. Prefer
/alternate/directory over /path/to. Remove a sentence targeted to
the developer, not the user.
* THANKS: Update.
Suggested by Alfred M. Szmidt.
2009-10-15 Peter Breitenlohner <>
Fix typos in documentation.
* doc/autoconf.texi (Cache Variable Index): Fix typo.
(Libraries) <AC_SEARCH_LIBS>: Mention 'none required' result.
2009-10-09 Bruno Haible <>
Ralf Wildenhues <>
Recommend `sh -n' debugging, and public result variables for macros.
* doc/autoconf.texi (Debugging): Recommend to use "bash -n
configure". Recommend the use of result variables as an
alternative to run-if-true/run-if-false parameters.
2009-10-05 Bruno Haible <>
* doc/autoconf.texi (Particular Functions): Swap sections about
2009-10-01 Paolo Bonzini <>
Unconditionally check for junk ./--version after mkdir search loop.
* lib/autoconf/programs.m4 (AC_PROG_MKDIR_P): Always check for
presence of ./--version. Reported by Eric Blake.
2009-09-22 Ralf Wildenhues <>
Clarify documentation about Solaris sed quantifier restriction.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: '*' does
not work after subexpressions, \{M,N\} only after one-character
expressions. From GCC PR 38923.
2009-09-21 Eric Blake <>
Fit configure output in 80 columns.
* lib/autoconf/functions.m4
2009-09-18 Ralf Wildenhues <>
Use consistent notation for cache variables.
* doc/autoconf.texi (Generic Programs): Remove `$' before
variable name.
Documentation of specific and general cache variables.
* doc/autoconf.texi (Default Includes, Alternative Programs)
(Particular Programs, Generic Programs, Files, Libraries)
(Function Portability, Particular Functions, Generic Functions)
(Particular Headers, Generic Headers, Declarations)
(Generic Declarations, Particular Structures, Particular Types)
(Specific Compiler Characteristics)
(Generic Compiler Characteristics, C Compiler, System Services):
Document lots of cache variables.
* NEWS: Update.
Suggested by Bruno Haible.
New cache variable index in the manual.
* doc/autoconf.texi: Define new index `CA' for cache variables.
(caindex): New macro.
(Cache Variable Index): New appendix node.
(Top, Indices): Adjust menus.
(Cache Variable Names, Site Defaults): Adjust text.
* doc/ (CLEANFILES): Add files generated for CA index.
New FAQ node: Debugging.
* doc/autoconf.texi (Debugging): New node.
(Top, FAQ): Adjust menus.
Report by Bruno Haible.
Document AM_MAKEFLAGS workaround to the macro override problem.
* doc/autoconf.texi (Macros and Submakes): Automake makefiles
provide AM_MAKEFLAGS to help with overriding macros in submake
Prompted by bug report from Bruno Haible.
2009-09-15 Peter Breitenlohner <>
Implement and document Objective C++ support.
* lib/autoconf/c.m4 (AC_LANG(Objective C++), AC_LANG_OBJCXX)
(_AC_PROG_OBJCXX_G): New macros.
(_AC_ARG_VAR_LIBS): Adjusted.
* doc/autoconf.texi (Objective C++ Compiler): New node.
(Preset Output Variables): Document OBJCXXFLAGS.
(Language Choice): Document `Objective C++' language.
* NEWS: Updated.
* tests/ (AT_CHECK_ENV): Ignore AC_SUBSTed Objective C++
related variables.
2009-09-15 Ralf Wildenhues <>
Work around DJGPP shell function return bug with command substitutions.
DJGPP bash 2.04 has a bug in that `return $ac_retval' done in a
shell function which also contains a command substitution causes
the shell to barf. For more details and a fix see:
Possible workaround include putting the `return' in a subshell
or calling another function to set the status.
* lib/autoconf/general.m4 (_AC_PREPROC_IFELSE_BODY)
instead of `return'.
* doc/autoconf.texi (Common Shell Constructs, Shell Functions):
Document the issue.
* THANKS: Update.
Report by Rugxulo and Reuben Thomas.
DJGPP fix: Do not redirect standard input in configure scripts.
* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS): If $DJGPP is
nonempty, do not dup fd 0 to AS_ORIGINAL_STDIN_FD, do not close
fd 0.
2009-09-14 Eric Blake <>
Quote result of m4_toupper and m4_tolower.
* lib/m4sugar/m4sugar.m4 (m4_tolower, m4_toupper): Quote result.
* lib/autotest/general.m4 (AT_KEYWORDS): Adjust caller.
* tests/ (m4@&t@_toupper and m4@&t@_tolower): New test.
* NEWS: Document this.
* THANKS: Update.
Reported by Sam Steingold.
2009-09-14 Ralf Wildenhues <>
DJGPP fix: remove both conftest and conftest.exe.
The DJGPP compiler may create both `a.out' and `a.exe' without -o,
and both `conftest' and `conftest.exe' with `-o conftest', but not
with `-o conftest.exe'.
* lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT_O): Also remove
`conftest' without $ac_exeext suffix.
DJGPP fix: do not try to source /dev/null as cache or site file.
* lib/autoconf/general.m4 (AC_SITE_LOAD, AC_CACHE_LOAD): Do not
load the cache or site file if it is `/dev/null', as DJGPP treats
it as a regular file, but the shell then warns about it later.
Fixes several test suite failures on DJGPP.
testsuite: pass $configure_options to configure invocations.
* tests/ (AT_CHECK_CONFIGURE): Add $configure_options
to configure command line.
* tests/, tests/, tests/, tests/
Likewise for each configure invocation.
* README-hacking: Document configure_options.
testsuite: improve Erlang tests portability, overridability.
* tests/ (Erlang Eunit unit tests): Use "no" as
value-if-not-found for Erlang tools.
* tests/ Likewise. Also, use AS_EXIT instead of plain
2009-09-13 Ralf Wildenhues <>
* bin/ Fix typos in comments.
Improve autotest testsuite summary message.
* lib/autotest/general.m4 (AT_INIT): Hint at the toplevel log
only if not $at_debug_p. Always hint at the per-test output.
Four new autoupdate tests, expected failures.
* tests/ (autoupdating macros recursively)
(autoupdating with m4@&t@_pushdef, autoupdating with AC_REQUIRE)
(autoupdating with complex quoting): New tests.
Fix description of AC_CHECK_LIB regarding other deplibs.
* doc/autoconf.texi (Libraries): Library linking may not fail
even without missing additional libs.
2009-09-12 Eric Blake <>
Track recent copyright assignments.
* AUTHORS: Update.
Improve documentation on quoting.
* doc/autoconf.texi (Autoconf Language): Clarify quoting example.
* THANKS: Update.
Reported by santilín.
2009-09-11 Ralf Wildenhues <>
New config.status option --config.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Implement
* doc/autoconf.texi (config.status Invocation): Document it.
* NEWS: Update.
* tests/ (configure invocation): Test it.
Suggested several times, by several people, in the past.
2009-09-10 Eric Blake <>
Document that AS_INIT is automatically used.
* doc/autoconf.texi (Initialization Macros) <AS_INIT>: Add words
to clarify that only bare-bones scripts need a direct AS_INIT.
Suggested by Reuben Thomas.
Clarify portability pitfall of test.
* doc/autoconf.texi (Limitations of Builtins) <test>: Give more
reasons why -a and -o are not portable.
Reported by Reuben Thomas.
2009-09-10 Ralf Wildenhues <>
Document sed limitation with escaped metacharacters.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Use `%'
rather than `/' as delimiter in an example `s' command.
Document inconsistent treatment of escaped metacharacters.
* THANKS: Update.
Report by Dave Korn, with additional input from Paolo Bonzini
and Eric Blake.
Document temporary directory `$tmp' for use in config.status.
* doc/autoconf.texi (Configuration Actions): Document `$tmp'.
* NEWS: Update.
2009-09-09 Ralf Wildenhues <>
Update License to GPLv3+ including new Autoconf Exception.
* NEWS, README: Update licensing information.
* (EXTRA_DIST): Distribute it.
* (autom4te-update): Remove copyright change warning.
* lib/autoconf/autoconf.m4, lib/autoconf/autoheader.m4,
lib/autoconf/autoscan.m4, lib/autoconf/autotest.m4,
lib/autoconf/autoupdate.m4, lib/autoconf/c.m4,
lib/autoconf/erlang.m4, lib/autoconf/fortran.m4,
lib/autoconf/functions.m4, lib/autoconf/general.m4,
lib/autoconf/headers.m4, lib/autoconf/lang.m4,
lib/autoconf/libs.m4, lib/autoconf/oldnames.m4,
lib/autoconf/programs.m4, lib/autoconf/specific.m4,
lib/autoconf/status.m4, lib/autoconf/types.m4,
lib/autotest/autotest.m4, lib/autotest/general.m4,
lib/autotest/specific.m4, lib/m4sugar/foreach.m4,
lib/m4sugar/m4sh.m4, lib/m4sugar/m4sugar.m4: Update exception
statement, bump to GPLv3.
* bin/, bin/, bin/,
bin/, bin/, bin/,
bin/ Bump to GPLv3+, adjust --version output
to reflect the GPLv3+ and the Autoconf Exception.
* lib/Autom4te/, lib/Autom4te/,
lib/Autom4te/, lib/Autom4te/,
lib/, lib/autoscan/autoscan.pre,
lib/emacs/autoconf-mode.el, lib/emacs/autotest-mode.el,
lib/, tests/, tests/,
tests/, tests/, tests/,
tests/, tests/, tests/,
tests/, tests/, tests/,
tests/, tests/, tests/,
tests/statesave.m4, tests/, tests/,
tests/, tests/ Bump to GPLv3+.
Allow to work on systems without Fcntl::flock implementation.
* (PERL_FLOCK): New substitution variable with test
whether Fcntl::flock is implemented by the system.
* bin/ (edit): Substitute @PERL_FLOCK@.
* bin/ Call XFile::lock only if flock is
2009-09-04 Reuben Thomas <> (tiny change)
Mention the Autoconf archive.
* doc/autoconf.texi (Coding Style): Add a link.
2009-08-30 Bruno Haible <>
Document another Solaris tr pitfall.
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Mention
that Solaris /usr/bin/tr does not only have problems with
replacing NUL bytes but discards all NUL bytes from the input.
2009-09-04 Eric Blake <>
Improve wording about what goes before AC_INIT.
* doc/autoconf.texi (Initializing configure): Update wording.
(Versioning) <AC_PREREQ>: Remove misleading text, to match
autoscan's behavior.
* THANKS: Update.
Reported by NightStrike, with input from Ralf Wildenhues.
2009-09-04 Thomas Jahns <> (tiny change)
Fix illegal tab character in Fortran source.
* lib/autoconf/fortran.m4 (AC_FC_SRCEXT): Change TAB back to
multiple spaces; regression introduced 2008-10-23.
* NEWS: Mention this.
* THANKS: Update.
2009-08-22 Romain Lenglet <>
Fix AT_CHECK_EUNIT for versions of Erlang/OTP without init:stop/1.
* lib/autotest/specific.m4 (AT_CHECK_EUNIT): Support older
versions of Erlang/OTP with an erlang:stop() function that doesn't
take arguments.
2009-08-22 Ralf Wildenhues <>
Drop unneeded line in Eunit test.
* tests/ (Erlang Eunit unit tests): Do not copy
Fix build dependencies for Erlang macro files.
* lib/ (autotest_m4f_dependencies): Add
* tests/ (AUTOCONF_FILES): Add erlang.m4.
2009-09-19 Paolo Bonzini <>
Use a separate program to test whether the compiler works.
* lib/autoconf/erlang.m4 (_AC_LANG_NULL_PROGRAM(Erlang)): New.
* lib/autoconf/lang.m4 (AC_LANG_DEFINE): Copy _AC_LANG_NULL_PROGRAM.
(_AC_COMPILER_EXEEXT_DEFAULT): Print here "whether the xyz compiler
works", before exiting.
remove the "whether the xyz compiler works" message, use
conftest$ac_cv_exeext instead of $ac_file.
the null program, and clean conftest.out only after
2009-08-18 Bruno Haible <>
Document Solaris tr range and NUL limitations.
* doc/autoconf.texi (Limitations of Usual Tools): Mention that
Solaris /usr/bin/tr does not support ranges, nor the '\0' octal
2009-08-14 Eric Blake <>
Simplify version control metadata.
* .cvsignore: Delete.
* bin/.cvsignore: Likewise.
* config/.cvsignore: Likewise.
* doc/.cvsignore: Likewise.
* lib/.cvsignore: Likewise.
* lib/autoconf/.cvsignore: Likewise.
* lib/Autom4te/.cvsignore: Likewise.
* lib/autoscan/.cvsignore: Likewise.
* lib/autotest/.cvsignore: Likewise.
* lib/emacs/.cvsignore: Likewise.
* lib/m4sugar/.cvsignore: Likewise.
* man/.cvsignore: Likewise.
* tests/.cvsignore: Likewise.
* bin/.gitignore: Likewise.
* build-aux/.gitignore: Likewise.
* config/.gitignore: Likewise.
* doc/.gitignore: Likewise.
* lib/.gitignore: Likewise.
* lib/autoconf/.gitignore: Likewise.
* lib/Autom4te/.gitignore: Likewise.
* lib/autoscan/.gitignore: Likewise.
* lib/autotest/.gitignore: Likewise.
* lib/emacs/.gitignore: Likewise.
* lib/m4sugar/.gitignore: Likewise.
* man/.gitignore: Likewise.
* tests/.gitignore: Likewise.
* .gitignore: Consolidate all rules into one file.
Normalize remaining copyright lines.
* BUGS: Reformat copyright line, using UPDATE_COPYRIGHT_FORCE.
* NEWS: Likewise.
* README-hacking: Likewise.
* TODO: Likewise.
* lib/Autom4te/ Likewise.
* lib/autoconf/fortran.m4: Likewise.
* lib/autoconf/general.m4: Likewise.
* lib/autoconf/lang.m4: Likewise.
* lib/autotest/general.m4: Likewise.
* Likewise.
* tests/ Likewise.
Improve copyright updating.
* build-aux/update-copyright: Resynchronize from upstream.
* (update-copyright): Simplify based on gnulib.
(update-copyright-env): New variable.
* (update-copyright-exclude-regexp): Delete.
(update-copyright-env): New override.
* .x-update-copyright: New file.
* lib/Autom4te/ Add copyright.
* lib/Autom4te/ Revert copyright update to upstream
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
Update copyright.
* AUTHORS: Include 2009 in copyright.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
* lib/autoconf/ Likewise.
* lib/autoconf/autoconf.m4: Likewise.
* lib/autoconf/autoscan.m4: Likewise.
* lib/autoconf/autoupdate.m4: Likewise.
* lib/autoconf/functions.m4: Likewise.
* lib/autoconf/libs.m4: Likewise.
* lib/autoconf/oldnames.m4: Likewise.
* lib/autoconf/types.m4: Likewise.
* lib/autoscan/ Likewise.
* lib/autoscan/autoscan.pre: Likewise.
* lib/autotest/ Likewise.
* lib/autotest/autotest.m4: Likewise.
* lib/emacs/autoconf-mode.el: Likewise.
* lib/emacs/autotest-mode.el: Likewise.
* lib/ Likewise.
* lib/m4sugar/foreach.m4: Likewise.
* man/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
* tests/ Likewise.
Prepare to bulk update copyright years.
* build-aux/update-copyright: New file.
* (gnulib-update): Sync it from gnulib.
(update-copyright-exclude-regexp): New variable.
(web-manual): Move...
* (web-manual):, to match gnulib.
(update-copyright): New target, copied from gnulib's (it would be nice to sync this file...).
(build_aux): New macro.
(VC_LIST, emit_upload_commands): Use it.
* build-aux/texinfo.tex: Resynchronize from upstream.
* lib/autoconf/general.m4 (_AC_COPYRIGHT_YEARS): Reformat to meet
expected pattern.
* lib/autotest/general.m4 (_AT_COPYRIGHT_YEARS): Likewise.
2009-08-12 Paolo Bonzini <>
Fix testsuite log capturing for tests 183 and 186.
* tests/ (AT_CHECK_AT_PREP): Prepend AT_dir to
testsuite log file for AT_CAPTURE_FILE.
2009-08-10 Ralf Wildenhues <>
Ensure we do not regress with AC_CHECK_MEMBERS.
* tests/ (AC_CHECK_MEMBERS): Expose the recent
(AC_CHECK_MEMBER): New test group.
2009-08-10 Jeff Squyres <> (tiny change)
Fix typo in AC_REQUIRE description.
* doc/autoconf.texi (Prerequisite macros): Fix typo.
2009-08-10 Paolo Bonzini <>
Fix description of the macro generated by AC_CHECK_MEMBERS.
* lib/autoconf/types.m4 (_AC_CHECK_MEMBERS): Fix regex
replacement. Reported by Bruno Haible.
2009-08-07 Romain Lenglet <>
* lib/autoconf/erlang.m4 (AC_LANG(Erlang)): Make AC_RUN_IFELSE
fail if the test module doesn't compile.
2009-08-02 Paolo Bonzini <>
Use exit code to detect no occurrences with grep.
* tests/ (Erlang Eunit unit tests): Fix grep invocation.
2009-08-01 Romain Lenglet <>
Paolo Bonzini <>
* lib/autotest/specific.m4 (AT_CHECK_EUNIT): New file.
* lib/autotest/ (dist_autotestlib_DATA): Add specific.m4.
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Add definitions of
variables used by AT_CHECK_EUNIT macro: ERL, ERLC, ERLCFLAGS.
* tests/ (Erlang Eunit unit tests): Add test for macro
* doc/autoconf.texi (Writing Testsuites): Document macro
* NEWS: Mention macro AT_CHECK_EUNIT.
2009-07-30 Paolo Bonzini <>
Joel E. Denny <>
Clarify comparison of echo, printf, and AS_ECHO*.
* doc/autoconf.texi (Limitations of Builtins): In echo's entry,
give a reason why printf is better than echo. In printf's
entry, cross-reference echo's entry.
2009-07-30 Paolo Bonzini <>
* lib/autoconf/general.m4 (AH_CHECK_HEADERS): New.
* NEWS: Create new section.
2009-07-29 Ralf Wildenhues <>
testsuite: avoid bogus hostname match from inner test logs.
* tests/ (Hard fail): Check more restrictively for
passed tests, so that hostnames recorded in the log file do not
wrongly match.
Report by Ludovic Courtès.
2009-07-26 Eric Blake <>
Release Version 2.64.
* NEWS: Mention the release.
* README: This release is stable.
* HACKING (release): Use dist-xz, not dist-lzma.
Document some optional features in INSTALL.
* doc/install.texi (Basic Installation): Mention that INSTALL is
generic, and that not all packages implement all features.
Mention 'make distcheck' for maintainers, and 'make installcheck'
for users. Mention the GNU Coding Standards.
(Installation Names): Mention DESTDIR vs. 'make prefix= install'
as ways to alter the configuration, with caveats of each. Move
--program-prefix discussion...
(Optional Features): Mention --enable-silent-rules and
use of make V=0.
Basic improvements to INSTALL.
* doc/install.texi (Basic Installation): Use better markup.
(Multiple Architectures): Introduce the term VPATH.
(Installation Names): Mention that --prefix must be absolute.
* doc/autoconf.texi (Preset Output Variables)
(Installation Directory Variables): Consistently refer to GNU
Coding Standards.
Update some upstream files.
* build-aux/config.guess: Resynchronize from upstream.
* build-aux/config.sub: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/standards.texi: Likewise.
2009-07-25 Eric Blake <>
Recognize new m4sugar keywords.
* lib/emacs/autoconf-mode.el (autoconf-current-defun): Recognize
m4_define_default, m4_defun_init, m4_defun_once.
(autoconf-font-lock-keywords): Likewise.
Require m4 1.4.6, and fix testsuite to support this version.
* m4/m4.m4 (AC_PROG_GNU_M4): Reject m4 1.4.5, now that we use
regexp it can't handle.
* NEWS: Mention minimum version bump.
* README: Likewise.
* README-hacking: Likewise.
* doc/autoconf.texi (Introduction, Why GNU M4): Likewise.
* tests/ (autom4te --trace and whitespace): Update test so
still work with older m4 line numbers.
* tests/ (m4@&t@_require: nested): Likewise.
Reported by Ralf Wildenhues.
2009-07-25 Bruno Haible <>
Clarify autom4te debugging tips.
* doc/autoconf.texi (Debugging via autom4te): Fix example from
previous commit, and add clarification.
2009-07-25 Eric Blake <>
Document some autom4te debugging tips.
* doc/autoconf.texi (Debugging via autom4te): New node.
Suggested by Bruno Haible.
Fix font-lock.
* (ac_cv_unsupported_fs_chars): Make editing easier.
Let autoheader see through m4 macros in AC_DEFINE.
* lib/autoconf/general.m4 (AC_DEFINE_TRACE): Expand macro before
tracing its name.
* lib/autoconf/autoheader.m4 (AH_VERBATIM, AH_TEMPLATE): Likewise,
for using the macro in a template file.
* tests/ (autoheader and macros): New test.
* NEWS: Mention this.
Reported by Bruno Haible.
Improve NEWS wording.
* NEWS: Use more accurate statement.
Suggestedy by Ralf Wildenhues.
2009-07-24 Eric Blake <>
Fix AS_EXIT for FreeBSD sh.
* lib/m4sugar/m4sh.m4 (AS_EXIT): Always supply an argument to the
shell function, since $? is not reliable on function entry.
(_AS_EXIT_PREPARE): Simplify to assume argument.
Reported by Ralf Wildenhues.
2009-07-23 Eric Blake <>
Run more tests under Solaris.
* tests/ (AT_CHECK_AUTOCONF): Don't skip entire test
group when passing over syntax checks.
2009-07-23 Romain Lenglet <>
Clean up temporary files generated by Erlang macros.
* lib/autoconf/erlang.m4 (AC_ERLANG_CHECK_LIB)
(AC_ERLANG_SUBST_ERTS_VER): Delete conftest.out; renamed
erlang_cv_* cache variables into ac_cv_erlang_*.
* lib/autoconf/general.m4 (AC_RUN_IFELSE): Delete conftest.beam
files generated by Erlang compiler.
* tests/ (AT_CHECK_ENV): Ignore variables defined by
Erlang macros.
* tests/ (AT_SETUP_ERLANG): Delete; replace all uses by
* tests/ (AUTOCONF_FILES): Revert previous addition of
generated Erlang tests; they are all hand-tested.
Add autotests for Erlang macros.
* tests/ Added tests for all macros in erlang.m4.
* tests/ Likewise.
* tests/ (AC_LANG, AC_LANG_PUSH & AC_LANG_POP): Added
test for extension of Erlang files.
(Multiple languages): Use correct m4 quoting.
* NEWS: Mention this.
2009-07-22 Eric Blake <>
Fix test of autom4te from stdin.
* tests/ (autom4te cache locking): Make stdin request
explicit, so that --force is properly used.
2009-07-16 Eric Blake <>
Don't hide leading space in autom4te --trace output.
* bin/ (handle_traces): Don't flatten leading and
trailing space, since tracing spacing bugs can be useful.
* tests/ (autom4te --trace and whitespace): New test.
2009-07-13 Eric Blake <>
Document that $srcdir can be used during configure.
* doc/autoconf.texi (Preset Output Variables): Add a paragraph.
* THANKS: Update.
Reported by Monty Taylor.
2009-07-13 Eric Blake <>
Disable asynchronous job notification for parallel tests.
* lib/autotest/general.m4 (AT_INIT) <Driver loop>: Turn off notify
mode, since zsh leaves it on after 'emulate sh'.
* doc/autoconf.texi (Limitations of Builtins) <set>: Document that
job control options are not portable.
Guarantee that exit status trumps output matching.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Document this
* tests/ (Skip, parallel skip): Enhance tests.
Fix nits in recent patches.
* (ac_cv_dir_trailing_space): Avoid $status, for
* doc/autoconf.texi (Writing Testsuites) <AT_FAIL_IF, AT_SKIP_IF>:
Tweak wording.
(Introduction): Recommend m4 1.4.13.
* README: Likewise.
* m4/m4.m4 (AC_PROG_GNU_M4): Likewise. Use long option --gnu
rather than -g.
2009-07-13 Paolo Bonzini <>
Introduce AT_SKIP_IF and AT_FAIL_IF
* NEWS: Mention AT_SKIP_IF and AT_FAIL_IF.
* doc/autoconf.texi (Autotest): Document them.
* lib/autotest/general.m4 (_AT_LINE_ESCAPED, AT_SKIP_IF,
* tests/ Add tests for AT_SKIP_IF and AT_FAIL_IF.
* tests/ Use AT_SKIP_IF.
2009-07-13 Paolo Bonzini <>
Use m4 -g when available.
* m4/m4.m4: Unset POSIXLY_CORRECT during first test. Test for -g.
Warn user if he has POSIXLY_CORRECT set but -g is not supported.
* bin/ Substitute @M4_GNU@ into generated files.
* bin/ Pass @M4_GNU@ to m4.
2009-07-13 Eric Blake <>
Fix previous patch.
* lib/autotest/general.m4 (at_fn_check_prepare_notrace): Use
proper m4 quoting.
2009-07-13 Paolo Bonzini <>
* lib/autotest/general.m4 (at_fn_check_prepare_notrace): Use
$at_trace_echo. Add new REASON argument.
(at_fn_check_prepare_trace): Do not call at_fn_check_prepare_notrace.
Use $at_check_filter_trace.
(at_fn_check_prepare_dynamic): Use at_fn_check_prepare_notrace.
(at_traceon): Initialize to ':'.
(at_traceoff): Remove, use 'set +x' instead throughout.
(at_check_filter_trace, at_trace_echo): New shell variables.
Initialize them if tracing is requested.
(_AT_DECIDE_TRACEABLE): Adjust call to at_fn_check_prepare_notrace.
2009-07-12 Paolo Bonzini <>
Move atlocal feature tests to configure
* Test for unsupported characters in files and
directories here...
* tests/ ... and not here.
2009-07-09 Eric Blake <>
Fix test typo.
* tests/ (AS@&t@_INIT_GENERATED): Close fd, rather than
creating file named -.
Fix testsuite under dash.
* tests/ (LINENO stack, AS@&t@_BASENAME, AS@&t@_DIRNAME)
(AS@&t@_ECHO and AS@&t@_ECHO_N, AS@&t@_EXIT, AS@&t@_MKDIR_P)
(AS@&t@_VERSION_COMPARE, as_me, Negated classes in globbing)
(Functions Support, Functions and return Support)
(Nested AS@&t@_REQUIRE_SHELL_FN, Nested AS@&t@_REQUIRE)
(AS@&t@_REQUIRE_SHELL_FN and m4@&t@_require, AS@&t@_HELP_STRING)
(AS@&t@_IF and AS@&t@_CASE, AS@&t@_FOR, AS@&t@_LITERAL_IF)
(AS@&t@_VAR basics, AS@&t@_VAR_APPEND, AS@&t@_VAR_ARITH)
(_AS@&t@_CLEAN_DIR, ECHO_C): Allow testing different CONFIG_SHELL
options during the testsuite run.
Reported by Ralf Wildenhues.
2009-07-09 Ralf Wildenhues <>
Ignore messages on stderr when testing for the zsh issue.
* tests/ (AT_SKIP_PARALLEL_TESTS): Ignore stderr.
2009-07-07 Eric Blake <>
Skip parallel tests when zsh 'set -m' fails.
* tests/ (AT_SKIP_PARALLEL_TESTS): Skip test if set -m
is not supported.
Reported by Ralf Wildenhues.
Make parallel testsuite more portable.
* lib/autotest/general.m4 (AT_INIT) <AT_JOB_FIFO_FD>: Avoid <>;
instead open write descriptor in each group and read descriptor in
main driver.
* tests/ (AT_SKIP_PARALLEL_TESTS): Relax condition.
2009-07-03 Eric Blake <>
Avoid syntax error in ash.
* lib/autotest/general.m4 (AT_INIT) <driver loop>: Avoid syntax
errors on shells that don't recognize <>.
* tests/ (AT_SKIP_PARALLEL_TESTS): Also skip parallel
tests for this reason. Skip based on the shell to be tested,
not the shell driving the testsuite.
(parallel syntax error): Rearrange similar to previous patch.
(parallel test execution): Defer skip until after serial tests.
2009-07-02 Eric Blake <>
Skip test on shells that can't catch syntax failure.
* tests/ (Syntax error): Skip test if shell aborts on
syntax error (AIX ksh88) or doesn't detect it (zsh).
* doc/autoconf.texi (Limitations of Builtins) <.>: Mention these
Reported by Ralf Wildenhues.
2009-06-30 Jan Madzik <> (tiny change)
Ralf Wildenhues <>
Avoid AIX 6.1 ksh88 ECHO_C command substitution bug.
* lib/m4sugar/m4sh.m4 (_AS_ECHO_N_PREPARE): Ensure more than
one character is output with `\c'; reset echo output state
if buggy ksh was detected, and set ECHO_T instead of ECHO_C.
* doc/autoconf.texi (Limitations of Builtins): Document it.
* tests/ (ECHO_C): New test.
* THANKS: Update.
2009-06-27 William Pursell <> (tiny change)
Fix grammaro in documenation.
* doc/autoconf.texi (Guidelines): Fix grammaro.
2009-06-17 Eric Blake <>
Fix AC_CHECK_HEADER infloop for gcc.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_NEW)
(_AC_CHECK_HEADER_OLD): Give up on AU_DEFUN, and manually warn
about obsoletion, to avoid infinite loop in gcc.
Reported by Ralf Wildenhues.
2009-06-15 Eric Blake <>
Add m4_copy_force, m4_rename_force.
* lib/m4sugar/m4sugar.m4 (m4_copy_force, m4_rename_force): New
* tests/ (m4@&t@_defn): Test them.
* doc/autoconf.texi (Redefined M4 Macros) <m4_copy>: Document
* NEWS: Likewise.
Suggested by Ralf Wildenhues.
Reinstate _AC_CHECK_HEADER_OLD for gcc.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_NEW)
(_AC_CHECK_HEADER_OLD): Provide autoupdate versions, since gcc and
others used these undocumented macros.
Reported by Ralf Wildenhues.
2009-06-12 Ralf Wildenhues <>
Fix concurrent autom4te.cache directory creation race.
* bin/ Do not error out if another `autom4te'
instance created the cache directory before we could.
2009-06-11 Steven G. Johnson <>
and Eric Blake <>
Create a file in test program when detecting cross-compilation.
* lib/autoconf/lang.m4 (_AC_LANG_IO_PROGRAM): New macro, returns
program that creates a file.
and document why it's needed to robustly detect cross-compiling.
(AC_LANG_DEFINE): Copy implementation across similar languages.
* lib/autoconf/c.m4 (_AC_LANG_IO_PROGRAM(C)): Implement new macro.
* lib/autoconf/fortran.m4 (_AC_LANG_IO_PROGRAM(Fortran 77)):
* lib/autoconf/erlang.m4 (_AC_LANG_IO_PROGRAM(Erlang)): Likewise.
2009-06-11 Eric Blake <>
Simplify AC_LANG(Fortran).
* lib/autoconf/fortran.m4 (AC_LANG(Fortran)): Borrow from Fortran
77, which requires reordering portions of the file.
(AC_LANG_PROGRAM(Fortran), AC_LANG_CALL(Fortran)): Now defined
Clarify m4_copy semantics.
* doc/autoconf.texi (Redefined M4 Macros) <m4_copy>: Update
* tests/ (m4@&t@_defn): Enhance test.
2009-06-06 Eric Blake <>
Improve documentation on trap pitfalls.
* doc/autoconf.texi (Limitations of Builtins) <trap>: Mention new
Posix 2008 requirement on trap, and dash bug in implementing it.
Mention various shell bugs with traps defined inside subshells.
Mention older bash limitation with single-command exit trap.
<set>: Mention another 'set -e' limitation.
Reported by Jens Schmidt.
2009-06-06 Jim Meyering <>
Improve testsuite --help
* lib/autotest/general.m4: Correct the example in ./testsuite --help.
Improve wording.
2009-06-06 Eric Blake <>
Document fallback behavior of AC_PROG_LEX.
* doc/autoconf.texi (Particular Programs) <AC_PROG_LEX>: Mention
why fallback is :, and that a --version check must be used to
determine whether flex was found.
Reported by Patrick Welche.
2009-05-28 Jim Meyering <>
Fix syntax errors in autoconf.texi.
* doc/autoconf.texi (Erlang Libraries): @-escape curly braces
in example code.
2009-05-28 Romain Lenglet <>
* lib/autoconf/erlang.m4: Add macro AC_ERLANG_SUBST_ERTS_VER.
* doc/autoconf.texi (Erlang Libraries): Document
* NEWS: Likewise.
* AUTHORS: Update Romain Lenglet's email address.
* THANKS: Update.
Suggested by Ruslan Babayev.
2009-05-26 Eric Blake <>
Sanitize more problematic environment variables.
* doc/autoconf.texi (Environment Variable Index): Add more
entries, particularly for precious variables and known culprit
variables. Needed to avoid overfull vbox.
(Special Shell Variables) <CLICOLOR_FORCE, GREP_OPTIONS>: Add
variables known to cause misbehavior.
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): Unset variables
known to cause problems.
* THANKS: Update.
Based on reports from Ilya Bobir and Joey Mingrone.
2009-05-21 Ralf Wildenhues <>
Document VPATH = $(variable) issue in VPATH chapter.
* doc/autoconf.texi (Variables listed in VPATH): New node.
(Top, VPATH and Make): Adjust menus.
(Build Directories): Refer to it.
Prompted by report from Bruno Haible.
2009-05-19 Eric Blake <>
Update uses of all-permissive license.
* ChangeLog: Relicense under GPL.
* ChangeLog.0: Likewise.
* ChangeLog.1: Likewise.
* ChangeLog.2: Likewise.
* THANKS: Likewise.
* m4/m4.m4: Use latest wording of FSF all-permissive license.
* m4/make-case.m4: Likewise.
* doc/install.texi: Likewise.
* tests/statesave.m4: Relicense to match rest of testsuite; this
file does not need all-permissive license since it is not designed
for reuse by other packages.
* BUGS: Relicense under all-permissive license.
* HACKING: Likewise.
* NEWS: Likewise.
* README: Likewise.
* README-alpha: Likewise.
* README-hacking: Likewise.
* TODO: Likewise.
Update some upstream files.
* build-aux/config.guess: Resynchronize from upstream.
* build-aux/gnupload: Likewise.
* build-aux/vc-list-files: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/gendocs_template: Likewise.
Don't mention undocumented interface in NEWS.
* NEWS: Correct earlier entry about AS_FOR.
2009-05-17 Ralf Wildenhues <>
New manual section `Parallel Make'.
* doc/autoconf.texi (Parallel Make): New node, document NetBSD
`make -jN' quirks.
(Top, Portable Make): Adjust menus.
2009-05-14 Ralf Wildenhues <>
testsuite: skip `Multiple languages' test without C++ compiler.
* tests/ (Multiple languages): Skip test on systems
without a C++ compiler.
Report by Jim Meyering.
2009-05-13 Eric Blake <>
Document zsh bug with empty commands.
* doc/autoconf.texi (Special Shell Variables) <?>: Add mention of
more problems with $?.
2009-05-11 Patrick Welche <> (tiny change)
Also try X11R7 when looking for X11 files, for NetBSD.
* lib/autoconf/libs.m4 (_AC_PATH_X_DIRECT): Also try directories
with X11R7 in the name.
2009-05-01 Ralf Wildenhues <>
Limit stderr logging for C compiler version.
* lib/autoconf/general.m4 (_AC_RUN_LOG_LIMIT, _AC_DO_LIMIT): New
internal macros, equivalent to _AC_RUN_LOG and _AC_DO, but with
an optional additional argument to limit the number of lines of
stderr output logged, defaulting to 10.
* lib/autoconf/c.m4 (AC_PROG_CC, AC_PROG_CXX, AC_PROG_OBJC): Use
_AC_DO_LIMIT for capturing compiler version output. Also test
-qversion, for the IBM xlc compiler.
* lib/autoconf/fortran.m4 (_AC_PROG_FC): Likewise.
* THANKS: Update.
Report by Christian Rössel and John R. Cary against Libtool.
2009-04-24 Eric Blake <>
Fix quoting of m4 macros in AT_CHECK.
* lib/autotest/general.m4 (AT_CHECK): Expand prior to adding
escapes, to avoid shell syntax errors caused by late macro
* NEWS: Document this change.
* tests/ (Metacharacters in command from M4 expansion):
New test.
manual: Use consistent spelling of here-document.
* doc/autoconf.texi (Defining Symbols, Programming in M4sh)
(Common Shell Constructs, Macro Names, Writing Testsuites): Fix
Reported by Ralf Wildenhues.
* lib/autotest/general.m4 (AT_CHECK_NOESCAPE): Keep older,
undocumented semantics, where unbalanced " cannot be used in the
stdout/stderr argument.
(AT_CHECK_UNQUOTED): Treat " in stdout/stderr as a literal, since
the text is used in double-quoted context.
* tests/ (unquoted output): New test.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Mention which
shell expansions are handled.
* lib/autotest/general.m4 (AT_CHECK_NOESCAPE): Deprecate, in favor
of new spelling...
(AT_CHECK_UNQUOTED): ...for consistency with AC_DEFINE_UNQUOTED.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Document the
* NEWS: Likewise.
* tests/ (Binary output, Cleanup): Adjust tests.
Reported by Ralf Wildenhues.
2009-04-22 Ralf Wildenhues <>
New test to ensure autom4te cache file locking works.
* tests/ (autom4te cache locking): New test.
Report by Eric Blake.
2009-04-22 Paolo Bonzini <>
manual: another grammar improvement.
* doc/autoconf.texi (Fortran Compiler): Avoid dependency on
pronunciation of `FCFLAGS_f90'.
2009-04-23 Eric Blake <>
Change FOO placeholder to use @var{text} instead.
* doc/autoconf.texi (Configuration Actions): Rename AC_CONFIG_FOOS
* doc/autoconf.texi (config.status Invocation): Likewise.
(AC_FOO_IFELSE vs AC_TRY_FOO): Rename node...
2009-04-22 Eric Blake <>
Add m4_argn.
* lib/m4sugar/m4sugar.m4 (m4_argn): New macro.
* NEWS: Document it.
* doc/autoconf.texi (Looping constructs) <m4_argn>: Likewise.
<m4_car, m4_cdr>: Improve documentation.
* tests/ (m4 lists): New test.
2009-04-22 Ralf Wildenhues <>
Improve description of AC_PROG_CC_C89 and AC_PROG_CC_C99.
* doc/autoconf.texi (C Compiler): Document that AC_PROG_CC_C89
and AC_PROG_CC_C99 prefer extended over strict conformance modes.
Report by Vincent Lefèvre.
2009-04-21 Ralf Wildenhues <>
Revert bogus change in last commit.
* doc/autoconf.texi (Initialization Macros): Revert change.
Spotted by Eric Blake.
manual: fix trivial grammar errors.
* doc/autoconf.texi (Fortran Compiler, Initialization Macros)
(Limitations of Usual Tools, Pretty Help Strings)
(config.status Invocation): Fix `a' vs. `an' errors.
Report by Eric Blake.
2009-04-21 Eric Blake <>
Shuffle maintainer-specific rules.
* (maintainer-check-tests): Delete.
(autom4te-update): Move...
* (autom4te-update):
(fetch): Depend on autom4te-update. Split...
(gnulib-update): ...into new rule. Import move-if-change from
* (maintainer-distcheck): Absorb former maintainer-check
* build-aux/move-if-change: New file, undistributed.
* .gitattributes: Handle new upstream file.
* .gitignore: Ignore maintainer cruft.
* HACKING: Update maintainer instructions.
* build-aux/config.guess: Update from upstream.
* build-aux/config.sub: Likewise.
* build-aux/ Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/gendocs_template: Likewise.
* doc/standards.texi: Likewise.
2009-04-19 Ralf Wildenhues <>
Sync autom4te perl modules from Automake.
* lib/Autom4te/ Sync from Automake.
* lib/Autom4te/ Likewise.
* lib/Autom4te/ Likewise.
Adjust channel definitions for new Automake `ordered' flag.
* lib/Autom4te/ (Autom4te::ChannelDefs): Set
`ordered' flag to zero for channels `fatal', `automake', and
`verb'. This has currently no effect on actual semantics but
avoids a consistency check needed for Automake's usage of the code.
manual: clarify m4_if synopsis.
* doc/autoconf.texi (Redefined M4 Macros): Rewrite synopsis of
m4_if in the presence of more than three arguments.
Improve and clarify `config.status' usage documentation.
* doc/autoconf.texi (config.status Invocation): Fix markup in
synopsis. Use `tag' instead of `file' notation for the
non-option arguments, to be consistent with the documentation
of the AC_CONFIG_* macros.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Likewise,
use `tag' notation for non-option arguments.
Report by John Calcote.
2009-04-15 Eric Blake <>
Test that autotest handles binary output.
* tests/ (Binary output): New test.
Suggested by Ralf Wildenhues.
Add stdout-nolog and ignore-nolog to AT_CHECK.
* lib/autotest/general.m4 (AT_DIFF_STDERR(stderr-nolog))
(AT_DIFF_STDERR(ignore-nolog), AT_DIFF_STDOUT(stdout-nolog))
(AT_DIFF_STDOUT(ignore-nolog)): New macros.
* tests/ (Logging): New test.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Document the
new logging actions.
* NEWS: Likewise.
Reported by Ralf Wildenhues.
Teach AT_CHECK about hard failures.
* lib/autotest/general.m4 (AT_INIT) <at_fn_check_skip>
<at_fn_check_status, at_fn_group_postprocess>: Handle hard
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Document
AT_CHECK_NOESCAPE and exit status 99.
* NEWS: Likewise.
* tests/ (Hard fail, Cleanup): New tests.
2009-04-14 Eric Blake <>
Fix yesterday's regression in AS_IF.
* lib/m4sugar/m4sh.m4 (_AS_IF_ELSE): Don't corrupt $? in else
branch; it is up to the user to avoid syntax errors.
* tests/ (AS@&t@_IF and AS@&t@_CASE): Adjust test.
2009-04-14 Ralf Wildenhues <>
Add traces for AM_SILENT_RULES.
* lib/ (Automake-preselections): Trace
2009-04-13 Eric Blake <>
Improve documentation related to expanded-before-required.
* doc/autoconf.texi (Expanded Before Required): Add a case study.
(Running the Compiler) <AC_COMPILE_IFELSE>: Remind users that
running a compile test will AC_REQUIRE the compiler check.
(Macro Definitions) <AC_DEFUN>: Contrast AC_DEFUN and m4_define.
(C Compiler) <AC_PROG_CC>: Mention the fact that only first
invocation of this macro checks for $EXEEXT, and that many other
macros use it via AC_REQUIRE.
Reported by Andreas Schwab.
Mention latest rules about make and set -e.
* doc/autoconf.texi (Failure in Make Rules): Posix is now clear
that make must use set -e.
(Limitations of Builtins) <set>: Clarify more about set -e
Improve documentation about if exit status.
* doc/autoconf.texi (Limitations of Builtins) <if>: Mention that
exit status bugs don't affect modern targets.
Reported by Andreas Schwab.
Add cross-reference to new macros.
* doc/autoconf.texi (Text processing Macros) <m4_normalize>
<m4_strip>: Reference the new m4_ifblank.
Suggested by Mike Frysinger.
Make AS_IF, AS_CASE, and AS_FOR more robust to blank arguments.
* lib/m4sugar/m4sh.m4 (_AS_CASE, _AS_CASE_DEFAULT, AS_FOR, _AS_IF)
(_AS_IF_ELSE, AS_IF): Avoid syntax error on blank argument,
including a macro with an empty expansion.
* NEWS: Mention this.
* tests/ (AS@&t@_IF and AS@&t@_CASE, AS@&t@_FOR): Update
Reported by Mike Frysinger.
Add m4_blank and friends.
* lib/m4sugar/m4sugar.m4 (m4_blank, m4_nblank, m4_default_nblank)
(m4_default_nblank_quoted): New macros.
* NEWS: Document them.
* doc/autoconf.texi (Conditional constructs): Likewise.
* tests/ (m4sugar shorthand conditionals): New test.
Suggested by Mike Frysinger.
2009-04-13 Eric Blake <>
Finish upgrade to GFDL 1.3.
* doc/autoconf.texi (copying): Use correct license; comment change
was missed on 2008-11-04.
2009-04-10 Eric Blake <>
Test parallel handling of syntax error.
* tests/ (parallel syntax error): New test.
Suggested by Ralf Wildenhues.
2009-04-10 Ralf Wildenhues <>
Document awk and config.status line length limitations.
* doc/autoconf.texi (Configuration Actions): The input to
config.status should have reasonable line length.
(Limitations of Usual Tools): Document IRIX, HP-UX awk input
line length limit.
Report by Bruno Haible.
Skip `Multiple languages' test if CC is a C++ compiler.
* tests/ (Multiple languages): Before starting the
test proper, build and run a configure script that tests the
C compiler only, and skips the test if this is found to be a
C++ compiler.
Report by Eric Blake.
Note that AC_DEFUN is needed for aclocal.
* doc/autoconf.texi (Coding Style): Public third-party macros
should be AC_DEFUN'ed.
Report by John Calcote.
2009-04-10 Eric Blake <>
Add undocumented _AS_CLEAN_DIR.
* lib/m4sugar/m4sh.m4 (_AS_CLEAN_DIR): New macro; fixes m4 quoting
in previous patch.
* lib/autotest/general.m4 (AT_INIT) <at_fn_group_prepare>: Use new
* tests/ (_AS@&t@_CLEAN_DIR): New test.
Reported by Ralf Wildenhues.
2009-04-09 Eric Blake <>
Avoid problems caused by deleting in-use directory.
* lib/autotest/general.m4 (AT_INIT) <at_fn_group_prepare>: Only
remove the contents of $at_group_dir, not the directory itself.
Fix regression in empty test.
* lib/autotest/general.m4 (AT_SETUP): Prep AT_ingroup for fallback
use in empty test. Fixes regression introduced 2009-04-06.
(_AT_CHECK): Undo fallback when a test is not empty.
(AT_CLEANUP): Expand AT_ingroup before deleting.
2009-04-09 Paolo Bonzini <>
Make a less conservative cross-compilation guess for AC_FUNC_UTIME_NULL.
* lib/autoconf/functions.m4 (AC_FUNC_UTIME_NULL): Assume
not crosscompiling to an obsolete system.
2009-04-08 Ralf Wildenhues <>
Automake relies on the undocumented `_AC_COMPILER_EXEEXT' macro.
* lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT): Document that
Automake relies on this macro.
2009-04-06 Eric Blake <>
Reduce testsuite size.
* tests/statesave.m4: New file.
* tests/ (EXTRA_DIST): Distribute it.
* tests/ (AT_CONFIGURE_AC): Reuse file, rather than
repeating inline definition of AC_STATE_SAVE.
(AT_CHECK_ENV): Factor code...
(_AT_CHECK_ENV): ...into shell function.
* tests/ (AT_DATA_LINENO): Avoid churn in testsuite.
Handle shell comments in AT_CHECK.
* lib/autotest/general.m4 (_AT_DECIDE_TRACEABLE): Handle # in
test correctly. Latent bug in handling shell comment was first
fixed 2008-11-20, but regressed two patches later.
* tests/ (Shell comment in command): New test.
* NEWS: Document the fix.
Hard fail any test with syntax errors.
* lib/autotest/general.m4 (AT_INIT) <at_fn_group_postprocess>:
Guarantee test failure on syntax error, rather than inheriting
status from previous test.
* tests/ (Syntax error): New test.
2009-03-31 Eric Blake <>
Beta Release Version 2.63b.
* NEWS: Mention the release.
* README: Clarify that this is a beta release.
* build-aux/texinfo.tex: Synchronize from upstream.
* .x-sc_trailing_blank: Exempt more upstream files.
2009-03-30 Eric Blake <>
Fix testsuite failures under zsh.
* tests/ (AT_CHECK_ENV): Exempt $argv and $ARGC, which are
set by zsh -c 'emulate sh'.
Reported by Ralf Wildenhues.
For now, skip parallel tests under less-tested shells.
* tests/ (AT_CHECK_AT): Add pre-test argument.
(Tested programs, Startup error messages, AT_CHECK_AT_TITLE)
(Fallacy, Skip, errexit, Long test source lines)
(Debugging a successful test, Debugging script and environment)
(Debugging a failed test, Using atlocal)
(Choosing where testsuite is run): Adjust callers.
(AT_SKIP_PARALLEL_TESTS): New macro, to skip parallel tests except
under zsh, bash, or when TEST_PARALLEL_AUTOTEST is defined. Makes
it easier to avoid testsuite hangs for users with dash or other
less-tested shell.
(parallel test execution, parallel truth, parallel fallacy)
(parallel skip, parallel errexit)
(parallel autotest and signal handling): Use it.
* BUGS: Mention this.
2009-03-24 Andris Pavenis <> (tiny change)
Fix awk substitution of carriage returns on DJGPP.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Fix typo in
generation of ac_cs_awk_cr.
* THANKS: Update.
2009-03-24 Aaron W. LaFramboise <> (tiny change)
Work around cygwin bash igncr mode.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Fall back to
bash carriage returns if ac_cr lost \r from ``.
* THANKS: Update.
Suggested by Eric Blake.
2009-03-24 Eric Blake <>
Fix underquoted example in manual.
* doc/autoconf.texi (Common Shell Constructs) <AS_TR_CPP>:
Properly m4-quote #.
* THANKS: Update spelling.
Reported by Matěj Týč.
2009-03-18 Eric Blake <>
Manual: mention more expr pitfalls.
* doc/autoconf.texi (Limitations of Usual Tools) <expr (:)>:
Mention HP-UX limitation, and $ ambiguity.
* THANKS: Update.
Reported by Jens Schmidt, in
2009-03-17 Jim Meyering <>
Manual: fix a typo.
* lib/m4sugar/m4sh.m4: s/are/is/ => "there is no indirection"
2009-03-17 Eric Blake <>
Use test consistently in examples.
* doc/autoconf.texi (Subdirectories, Caching Results)
(Common Shell Constructs, Prerequisite Macros, Coding Style)
(Changed Results, Particular Programs, Defining Symbols):
Protect against arbitrary user strings.
(Multiple Cases): Mention why $fstype does not need protection.
Reported by Reuben Thomas.
Improve confusing section names.
* doc/autoconf.texi (Specifying Names): Rename node...
(Specifying Target Triplets): this.
(Generic Programs): Adjust references.
* doc/install.texi (System Type): Touch up formatting.
* THANKS: Update.
Reported by Tim Freeman, in
Remove historical inaccuracy.
* doc/autoconf.texi (Portable Shell): Don't perpetuate myth about
#!/bin/sh needing a space.
Reported by Reuben Thomas.
Recommend AS_HELP_STRING more prominently.
* doc/autoconf.texi (External Software): Reduce mention of
hand-written help strings.
Reported by Reuben Thomas.
2009-03-16 Eric Blake <>
Fix 'make pdf'.
* doc/autoconf.texi (Balancing Parentheses): Fix usage of
Reported by Ralf Wildenhues, fix suggested by Karl Berry.
2009-03-14 Eric Blake <>
Resync upstream files.
* GNUmakefile: Run 'make fetch'.
* build-aux/announce-gen: Likewise.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/gnu-oids.texi: Likewise.
* doc/standards.texi: Likewise.
2009-03-09 Ralf Wildenhues <>
New test for SunStudio `restrict' handling.
* tests/ (AC_C_RESTRICT and C++): New test.
Prompted by bug report from Rolf Vandevaart.
2009-03-08 Ralf Wildenhues <>
Manual: testsuite depends on package.m4.
* doc/autoconf.texi (Making testsuite Scripts): In the example
makefile snippet, $(TESTSUITE) depends on $(srcdir)/package.m4.
2009-03-02 Allan Caffee <> (tiny change)
Fix a typo in comment for AS_LITERAL_IF.
* lib/m4sugar/m4sh.m4 (AS_LITERAL_IF): Update a comment that fell
out of date when this function was moved/renamed in 59ecd766.
* THANKS: Update.
2009-03-02 Eric Blake <>
Improve wording for AS_ESCAPE.
* doc/autoconf.texi (Common Shell Constructs) <AS_ESCAPE>: Touch
up documentation.
* lib/m4sugar/m4sh.m4 (_AS_ESCAPE): Fix comment typos.
Reported by Ralf Wildenhues.
2009-02-24 Eric Blake <>
Use pkgdatadir consistently.
* bin/ (edit): Substitute pkgdatadir, not datadir.
* lib/ (edit): Likewise.
* lib/ (Autoconf-without-aclocal-m4, Autotest, M4sh)
(M4sugar): Use @pkgdatadir@, not @datadir@.
* bin/ ($datadir): Likewise.
* bin/ ($datadir): Likewise.
* bin/ ($datadir): Likewise.
* bin/ ($datadir): Likewise.
* bin/ ($datadir): Likewise.
* bin/ ($datadir): Likewise.
* doc/autoconf.texi (Installation Directory Variables): Update
example to be consistent; focus on $(bindir) as an autoconf
variable, and mention that $(pkgdatadir) comes from automake.
Reported by Reuben Thomas.
2009-02-19 Eric Blake <>
Use m4_translit more efficiently in AS_ESCAPE.
* lib/m4sugar/m4sh.m4 (_AS_ESCAPE): Alter API to take first byte
of set separately from rest.
* lib/autoconf/autoheader.m4 (AH_VERBATIM): Avoid duplicate
characters in translit request.
* doc/autoconf.texi (Common Shell Constructs) <AS_ESCAPE>:
Document the macro.
* NEWS: Likewise.
Mention recently documented macros.
* NEWS: Update list of new documentation.
2009-02-14 Ralf Wildenhues <>
Add index for
* doc/autoconf.texi (Site Defaults): Add index for
* THANKS: Update.
Report by Stephen P. Schaefer.
2009-02-12 Eric Blake <>
Fix m4_set speed regression introduced 2008-12-18.
* lib/m4sugar/m4sugar.m4 (_m4_stack_reverse): Alter API to avoid
creating larger argument on each iteration.
(m4_stack_foreach_sep, m4_stack_foreach_sep_lifo)
(_m4_set_contents_2): Adjust all four-argument callers.
2009-02-05 Eric Blake <>
Mention new AC_DEFUN_ONCE clients.
* NEWS: Mention recent semantic changes.
Reported by Ralf Wildenhues.
2009-02-03 Eric Blake <>
Use AC_DEFUN_ONCE for some one-shot AC_PROG macros.
* lib/autoconf/programs.m4 (AC_PROG_MKDIR_P): Switch to
AC_DEFUN_ONCE, since this is a one-shot macro.
(AC_PROG_INSTALL): Likewise.
2009-02-03 Eric Blake <>
Mention that packagers should not pre-set CFLAGS.
* doc/autoconf.texi (Preset Output Variables) <CFLAGS>: Copy
advice given by automake on handling variables reserved by GNU
Coding Standards.
Reported by Karl Berry.
Document lib64 in
* doc/autoconf.texi (Site Defaults): Fix typo in FHS sample file.
Mention use of lib64.
* THANKS: Update.
Reported by Tom Browder, with help from Peter Breitenlohner.
2009-01-28 Eric Blake <>
Use AC_DEFUN_ONCE for uncontroversial one-shot macros.
* lib/autoconf/headers.m4 (AC_HEADER_ASSERT): Switch to
AC_DEFUN_ONCE, since this is a one-shot macro.
* lib/autoconf/specific.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
* lib/autoconf/general.m4 (AC_CANONICAL_BUILD)
2009-01-28 Eric Blake <>
Reduce blank lines in AC_DEFUN_ONCE macros.
* lib/m4sugar/m4sugar.m4 (m4_defun_once): Avoid redundant blank
line when a defun_once macro is required.
(_m4_defun_once): New helper macro, for less memory use.
* tests/ (m4@&t@_require: nested): Adjust test.
Silence another false positive expand-before-require.
* lib/m4sugar/m4sugar.m4 (_m4_defun_pro_outer)
(_m4_defun_epi_outer, _m4_require_call, m4_provide): Track name
that caused a diversion change, not just diversion number.
(m4_require): Factor...
(_m4_require_check): ...into new macro, which also checks whether
diversion that performed the expansion has been collected.
* tests/ (m4@&t@_require: nested): Enhance test.
Reported by Ralf Wildenhues.
2009-01-28 Eric Blake <>
Fix AC_C_RESTRICT for Sun Studio 12 C++.
* lib/autoconf/c.m4 (AC_C_RESTRICT): Newer Sun Studio C provides
__restrict__ rather than _Restrict, which still trips up Sun
Studio 12 C++.
* THANKS: Update.
Reported by Rolf Vandevaart.
2009-01-28 Eric Blake <>
Fix years in copyright notices.
* lib/m4sugar/m4sugar.m4 (m4_copyright_condense): New macro,
undocumented for now.
* lib/m4sugar/ (version.m4): Add m4_PACKAGE_YEAR,
(RELEASE_YEAR): New macro, copied from bin/
* lib/autoconf/general.m4 (_AC_COPYRIGHT_YEARS): New macro.
(AC_COPYRIGHT): Add undocumented third parameter.
(_AC_INIT_COPYRIGHT): Avoid need to bump copyright years.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Likewise.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* lib/autoconf/autotest.m4 (AC_CONFIG_TESTDIR): Likewise.
(AT_COPYRIGHT): Add undocumented third parameter.
* tests/ (AT_COPYRIGHT): Don't add an extra copyright
parameter; the generic copyright given by autotest is sufficient
since we are the package that owns autotest.
2009-01-27 Eric Blake <>
Use URLs in --help output, part 3: testsuite.
* doc/autoconf.texi (Writing Testsuites): Mention autotest
(Writing Testsuites) <AT_INIT>: Mention mandatory macros.
(Making testsuite Scripts): Document AT_PACKAGE_URL.
* tests/ (package.m4): Follow our own advice.
* lib/autotest/general.m4 (AT_INIT): Give the user a hint about
package.m4. Enhance --help output.
(_AT_COPYRIGHT_YEARS): New macro, to make copyright bump easier.
Use URLs in --help output, part 2: configure.
* lib/autoconf/general.m4 (_AC_INIT_COPYRIGHT): Bump copyright
(_AC_INIT_PACKAGE): Support optional URL parameter, mapped to
(_AC_INIT_HELP): Use it in './configure --help' output.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Likewise, for
'./config.status --help'. Bump copyright date.
* doc/autoconf.texi (Initializing configure) <AC_INIT>: Document
new parameter.
* NEWS: Likewise.
* tests/ (autoheader): Adjust test.
* tests/ (@%:@define header templates)
(Torturing config.status): Likewise.
Use URLs in --help output, part 1: autoconf executables.
* bin/ (usage): Make output consistent with recent
change in gnulib version-etc module.
* bin/ ($help): Likewise.
* bin/ ($help): Likewise.
* bin/ ($help): Likewise.
* bin/ ($help): Likewise.
* bin/ ($help): Likewise.
* bin/ ($help): Likewise.
2009-01-27 Peter Breitenlohner <> (tiny change)
Quote traced macros passed from autom4te to M4.
* bin/autom4te (handle_m4): Apply shell_quote to macro names.
* tests/ (autom4te --trace and unusual macro names): New
* THANKS: Update.
2009-01-26 Eric Blake <>
Improve AC_DEFUN_ONCE semantics.
* lib/m4sugar/m4sugar.m4 (m4_defun_once): Rewrite to be no-op,
rather than warning, on second use, and make sure first use never
occurs out of order.
* tests/ (m4@&t@_require: one-shot initialization):
Enhance test.
* tests/ (AC_REQUIRE & AC_DEFUN_ONCE: [Require, expand],
(AC_REQUIRE & AC_DEFUN_ONCE: [Expand, require]): Adjust tests.
* NEWS: Document this.
* doc/autoconf.texi (Macro Definitions) <AC_DEFUN>: Mention
(Prerequisite Macros) <AC_REQUIRE>: Likewise.
(Expanded Before Required): Likewise.
(One-Shot Macros) <AC_DEFUN_ONCE>: Document new semantics.
Reported by Bruno Haible, with suggestion by Paolo Bonzini.
2009-01-24 Eric Blake <>
Fix typos in recent patches.
* lib/m4sugar/m4sugar.m4: Improve m4_defun comments.
* doc/autoconf.texi (Expanded Before Required): Fix typos.
Reported by Ralf Wildenhues.
Revert change to AC_DIR_HEADER.
* lib/autoconf/headers.m4 (AC_DIR_HEADER): Explicitly expanding
AC_HEADER_DIRENT no longer triggers a warning, and helps the user
who decides they don't need the obsolete AC_FUNC_CLOSEDIR_VOID.
Reported by Paolo Bonzini.
2009-01-22 Eric Blake <>
Silence a false positive expand-before-require case.
* lib/m4sugar/m4sugar.m4 (m4_provide): Track the diversion in
which a macro was provided.
(m4_require): Compare diversion numbers, rather than m4_require
nesting, when determining direct requires.
* tests/ (m4@&t@_require: nested): Test it.
Reported by Ralf Wildenhues, affecting Libtool.
2009-01-21 Eric Blake <>
Fix out-of-order expansion with expand-before-require.
* lib/m4sugar/m4sugar.m4 (m4_require): Redundantly expand a
required macro when issuing expand-before-require warning.
* doc/autoconf.texi (Prerequisite Macros): Adjust documentation.
(Expanded Before Required): New node.
* tests/ (m4@&t@_require: nested): Adjust test.
* NEWS: Mention this fix.
Suggested by Bruno Haible.
Warn if macro is provided before indirectly required.
* lib/m4sugar/m4sugar.m4 (m4_provide): Track the set of all macros
provided since last outermost defun.
(_m4_defun_pro_outer): Empty the set.