* config/install-sh: Don't use 'path' to talk about file names,
as per GNU coding standards. Close a race condition reported by Ralf
Wildenhues and Stepan Kasal. There is still a race condition
on hosts that predate POSIX 1003.1-1992, but we can't help this.
Don't mishandle weird characters like space on pre-POSIX hosts.
Invoke mkdir at most once per dir arg on pre-POSIX hosts.
* doc/autoconf.texi (Programming in M4sh): Cross-reference to
AC_PROG_MKDIR_P from AS_MKDIR_P.
(Limitations of Usual Tools): Cross-reference to AC_PROG_MKDIR_P
from mkdir. Mention that Autoconf 2.60 install-sh is safe but
earlier editions are not (including Automake 1.8.3).
Do not suggest mkinstalldirs for thread-safety.
* lib/m4sugar/m4sh.m4 (AS_MKDIR_P): Make it more robust in the
presence of special characters and race conditions.
* tests/local.at (AT_CHECK_ENV): Add mkdir_p to the list of variables
in Autoconf's name space.
* lib/autoconf/programs.m4 (AC_PROG_MKDIR_P): New macro, taken
from Automake with minor changes.
* doc/autoconf.texi (Particular Programs): Document AC_PROG_MKDIR_P.
* doc/autoconf.texi (Programming in M4sh): Remove mention of
AS_VAR_SET_BASENAME, AS_VAR_SET_DIRNAME, and AS_BASENAME.
We have to keep AS_DIRNAME since it was part of a stable Autoconf,
but AS_BASENAME doesn't have to be supported.
and AS_BASENAME.
* lib/m4sugar/m4sh.m4 (AS_BASENAME, AS_DIRNAME): Bring these
back, albeit undocumented. Programs now have a grace period
to switch to AS_VAR_SET_DIRNAME and AS_VAR_SET_BASENAME.
AS_VAR_SET_DIRNAME and AS_VAR_SET_BASENAME.
* doc/autoconf.texi (Programming in M4sh): Document this. All uses
changed. The newer interfaces are more reliable, as they allow
implementations that handle trailing newline correctly. For now,
we're in a freeze, so I did not include the more-reliable
implementations, but I wanted to correct the interface before 2.60
goes out.
* lib/m4sugar/m4sh.m4 (_AS_DETECT_REQUIRED): Renamed from
AS_DETECT_REQUIRED. All uses changed.
(_AS_DETECT_SUGGESTED): Renamed from AS_DETECT_SUGGESTED.
All uses changed.
(_AS_DETECT_BETTER_SHELL): Put ;; at the end of a case.
(_AS_BASENAME): Renamed from AS_BASENAME. All uses changed.
Use "basename --" to protect against leading "-".
(_AS_BASENAME_EXPR): Renamed from AS_BASENAME_EXPR. All uses changed.
(_AS_BASENAME_SED): Renamed from AS_BASENAME_SED. All uses changed.
(_AS_BASENAME_PREPARE): Reject implementations that cannot handle "--".
(_AS_DIRNAME_PREPARE): Likewise.
(_AS_DIRNAME): Renamed from AS_DIRNAME. All uses changed.
(_AS_DIRNAME_EXPR): Renamed from AS_DIRNAME_EXPR. All uses changed.
(_AS_DIRNAME_SED): Renamed from AS_DIRNAME_SED. All uses changed.
Use "dirname --".
(AS_VAR_SET_BASENAME, AS_VAR_SET_DIRNAME): New macros.
* tests/m4sh.at (AS_VAR_SET_DIRNAME): Renamed from AS_DIRNAME.
Test the new API. Don't test internals, since they're probably
going to change anyway.
(AS_VAR_SET_BASENAME): Likewise, renamed from AS_BASENAME.
* bin/autoconf.as: Don't use AS_BASENAME or AS_DIRNAME. This
removes a bootstrapping problem with the changes described above.
The AS_DIRNAME part wasn't used, anyway, and the AS_BASENAME
part can be done portably without all the deep Autoconf magic.
the instantiated file do not contain the string 'datarootdir'
but contain @datadir@, @docdir@, @infodir@, @localedir@, or
@mandir@, replace the reference '${datarootdir}' by the value.
* tests/torture.at (datarootdir workaround): New test.
* NEWS: Advertise this temporary fixup.
Based on a patch by Bruno Haible, reported and analyzed by
Paul Eggert and Noah Misch.
(_AS_CASE): Private helper macro.
* tests/m4sh.at: Basic tests for AS_IF and AS_CASE.
* doc/autoconf.texi (Programming in M4sh): Document AS_CASE.
Fix syntax of AS_IF description
(Prerequisite Macros): Mention AS_IF and AS_CASE as workarounds
for the AC_REQUIRE mess.
* NEWS: Mention AS_CASE, AS_BOURNE_COMPATIBLE, and
AS_SHELL_SANITIZE.
correctly: pad with spaces after FIRST_PREFIX if necessary,
and compute string lenghts with `m4_qlen' instead of `m4_len'.
* lib/m4sugar/m4sh.m4 (AS_HELP_STRING): Comments updated.
* tests/m4sh.at (AS_HELP_STRING): Test extended.
* NEWS: Updated.
Reported by numerous people, numerous times.
directories with weird names. Apparently some people like living
on the edge. However, improve the test that "pwd" actually does
report a name for the working directory.
* NEWS: Remove the claim that we test for funny chars in dir names.
directory have inherent problems with special characters like spaces,
due to limitations in Make syntax. Problem reported by Alexandre
Duret-Lutz.
* lib/autoconf/general.m4 (_AC_INIT_DIRCHECK): Implement the above.
Also, fix Tru64 porting problem with shell patterns,
reported by Ralf Wildenhues.
* doc/autoconf.texi (Particular Headers): Reword example
for multiline stdbool replacement.
(Setting Output Variables): Reword text a bit. Don't
give all the details about |#_!!_#|.
Reword description of line replacement.
a directory whose name contains a special character like space,
newline, or "\".
* doc/autoconf.texi (Installation Directory Variables): Allow
"," in file names. Do not use \@; it's not a portable regexp.
* bin/Makefile.am (edit): Likewise.
* lib/Makefile.am (edit): Likewise.
* tests/Makefile.am (edit): Likewise.
* tests/semantics.at: Likewise.
* tests/torture.at: Likewise.
* lib/autoconf/general.m4 (AC_ARG_PROGRAM): Likewise.
* lib/autoconf/status.m4 (_AC_SRCDIRS): Likewise.
* doc/autoconf.texi (File System Conventions): Warn about
unportable file names.
* lib/autoconf/general.m4 (_AC_INIT_DIRCHECK): New macro.
(AC_INIT): Use it.
(_AC_INIT_SRCDIR): Use ac_pwd rather than invoking pwd.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Propagate
ac_pwd, and quote srcdir.
* lib/autotest/general.m4 (AT_INIT): Quote file name args.
/dev/null, as "configure" shouldn't read stdin, and this insulates
us from problems (e.g., when testing for "cl"). Also, do this
redirection before invoking "hostname" or "uname", and keep the
original input stream available via...
(AS_ORIGINAL_STDIN_FD): ... this new macro.
(_AC_PREPROC_IFELSE, _AC_COMPILE_IFELSE, _AC_LINK_IFELSE): Don't
bother with "</dev/null" since it's now done at the top of
'configure'.
* lib/autoconf/c.m4 (AC_PROG_CC, AC_PROG_CXX): Likewise.
* lib/autoconf/fortran.m4 (_AC_PROG_FC): Likewise.
* lib/autoconf/programs.m4 (_AC_PATH_PROG_FLAVOR_GNU): Likewise.
* doc/autoconf.texi (File Descriptor Macros): New section.
(Printing Messages): Mention it.
* tests/base.at (Input/Output): New test.
<http://lists.gnu.org/archive/html/bug-autoconf/2004-11/msg00056.html>,
along with some nearby cruft.
* doc/autoconf.texi (Libtool): Libtool can be used without
Automake (not without Autoconf).
(Introduction): Mention lists.gnu.org.
* BUGS: Don't mention bugs.gnu.org.
Remove mention of ancient libtool compatibility problem.
* NEWS: Mention that bugs.gnu.org is kaput.
* README: Likewise. Mention where mailing list archives can be found.
(AC_CANONICAL_BUILD): Call it to require config.sub and config.guess.
* lib/autoconf/programs.m4 (AC_PROG_INSTALL): Likewise for install-sh.
* doc/autoconf.texi (Input): Document AC_REQUIRE_AUX_FILE.
* lib/autom4te.in (Automake-preselections): Preselect
AC_REQUIRE_AUX_FILE. Automake 1.10 will trace it.
* lib/autoconf/programs.m4 (AC_PATH_TOOL, AC_CHECK_TOOL,
AC_CHECK_TOOLS): Warn if a cross-tool is found without
a prefix.
(AC_PATH_TARGET_TOOL, AC_CHECK_TARGET_TOOL,
AC_CHECK_TARGET_TOOLS): New macros.
* doc/autoconf.texi (Generic Programs): Document
(AC_PATH_TARGET_TOOL, AC_CHECK_TARGET_TOOL,
AC_CHECK_TARGET_TOOLS, and warn for future changes
in the behavior of AC_PATH_TOOL, AC_CHECK_TOOL and
AC_CHECK_TOOLS.
(Specifying Names): Document the reason for these future
behavioral changes.
* tests/mktests.sh: Do not generate tests for the
new macros.
* NEWS: Document these changes.
* doc/autoconf.texi: Avoid macros with unbraced arguments,
they make TeX hang up.
grep or ggrep program in PATH that accepts as long lines as
possible.
* lib/autoconf/programs.m4 (_AC_PROG_GREP): Factor out the core of
AC_PROG_GREP.
(AC_PROG_EGREP, AC_PROG_FGREP): Use it to find best available
egrep and fgrep respectively if $GREP -E/-F don't work.
(_AC_PATH_PROG_FEATURE_CHECK): Factor out the common core of
_AC_PROG_GREP, and AC_PROG_SED.
(_AC_FEATURE_CHECK_LENGTH): New helper macro for finding the
longest input length accepted by a command.
(AC_PROG_SED): Use it.
* doc/autoconf.texi (Particular Programs): Document the changes.
* NEWS: Updated.