Paul Eggert [Thu, 20 Jul 2006 22:38:47 +0000 (22:38 +0000)]
* lib/autoconf/libs.m4 (AC_PATH_XTRA): Don't use -R if the
compiler complains about it, even if things works after the
complaint. Problem reported by Peter O'Gorman.
Paul Eggert [Thu, 20 Jul 2006 21:21:14 +0000 (21:21 +0000)]
* doc/autoconf.texi (Preset Output Variables): Document CFLAGS,
CPPFLAGS, and LDFLAGS better. Problem reported by Bruno Haible.
Similarly for CXXFLAGS, OBJCFLAGS, ERLCFLAGS.
Paul Eggert [Mon, 17 Jul 2006 17:34:05 +0000 (17:34 +0000)]
* lib/autoconf/libs.m4 (AC_PATH_XTRA): Do the check for space after
-R regardless of host. Patrick Welche reports that a space after -R
is also required for NetBSD 3.99.
Paul Eggert [Fri, 7 Jul 2006 18:43:49 +0000 (18:43 +0000)]
* doc/autoconf.texi (C Compiler): Add a ref to Volatile Objects
under AC_C_VOLATILE.
(Volatile Objects): Be a little less skeptical about what
"volatile" means. Derived from thoughts by Ben Pfaff in
<http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00092.html>.
Paul Eggert [Fri, 7 Jul 2006 17:56:16 +0000 (17:56 +0000)]
* tests/torture.at (Configuring subdirectories): Set CONFIG_SITE
more globally, since the 2006-06-30 patch didn't suffice. Problem
reported by Keith Marshall. Also, don't bother with builddir2,
since it shouldn't be needed any more.
Paolo Bonzini [Fri, 7 Jul 2006 14:21:57 +0000 (14:21 +0000)]
2006-07-07 Paolo Bonzini <bonzini@gnu.org>
* doc/autoconf.texi (Generic compiler characteristics):
Document AC_COMPUTE_INT. Fix wrong statements on Default
Includes for AC_CHECK_SIZEOF and AC_CHECK_ALIGNOF.
Paul Eggert [Fri, 30 Jun 2006 07:19:46 +0000 (07:19 +0000)]
* tests/torture.at (Configuring subdirectories): Set CONFIG_SITE
to a nonexistent file, so that we don't have to worry about
a local site configuration that doesn't use /usr/local.
Problem reported by Keith Marshall in
<http://lists.gnu.org/archive/html/bug-autoconf/2006-06/msg00133.html>.
Paul Eggert [Wed, 28 Jun 2006 17:48:52 +0000 (17:48 +0000)]
* doc/autoconf.texi: Be more consistent about using @acronym with
"HP" and "HP-UX". Remove mention of OSF; the old version wasn't
quite right (it talked about "OSF/Tru64", even though the
operating systems were called OSF/1, Digital UNIX, and Tru64 UNIX,
and it even mentioned "OSF 4"!) and at this point there's little
reason to talk about OSF any more, since it died in 1994.
(Specific Compiler Characteristics): Simplify example of
negative-size array.
(File Descriptors): Reorder to make the text flow better.
Remove joke about "appreciate the various levels"; I didn't get it.
Add remark about HP-UX sh -x bug with stderr noted by Bob Proulx in
<http://lists.gnu.org/archive/html/bug-coreutils/2006-06/msg00225.html>.
(File Descriptors, Limitations of Usual Tools):
Tone down the advice against renaming or removing open files.
(Limitations of Usual Tools): Add a new section, on 'rm'.
Ralf Wildenhues [Fri, 23 Jun 2006 14:56:30 +0000 (14:56 +0000)]
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE): Expand tests for
datarootdir-related errors only if AC_DATAROOTDIR_CHECKED is
not defined.
* doc/autoconf.texi (Changed Directory Variables): New node,
to document the whole `datarootdir' business a bit better.
* NEWS: Update.
* tests/torture.at (datarootdir workaround): Extend test.
Prompted by report by Alexandre Julliard.
Paul Eggert [Thu, 22 Jun 2006 23:50:07 +0000 (23:50 +0000)]
* lib/autoconf/c.m4 (_AC_PROG_CC_C89): Check for C89 incompatibility
when using default mode of IBM C 6 for AIX. Problem and two-line
fix reported by Larry Jones.
Paul Eggert [Tue, 20 Jun 2006 19:49:14 +0000 (19:49 +0000)]
* NEWS: Use "M4" rather than "m4" when appropriate.
Problem reported by Eric Blake.
* doc/autoconf.texi: Likewise.
Use @acronym around BSD, GCC, and GNU when appropriate.
(Why GNU M4): Renamed from "Why GNU m4".
(Redefined M4 Macros): Mention that Posix
m4wrap takes only 1 argument, but GNU M4 1.4.x takes more.
(Buffer Overruns): Mention size_t and ptrdiff_t as alternatives
to int.
Ralf Wildenhues [Tue, 20 Jun 2006 05:35:38 +0000 (05:35 +0000)]
* lib/m4sugar/m4sugar.m4 (m4_init): Merge the two m4_wrap
calls, so that we do not care whether they are LIFO or FIFO;
in the m4_wrap, do not check which diversion is the topmost
one, just check that the stack is balanced at the end.
* lib/m4sugar/m4sh.m4 (AS_INIT): We are going to change the
base diversion forever--pop the previous diversion before
opening the new one; consequently, remove the m4_wrap call.
* lib/autotest/general.m4 (AT_INIT): Likewise.
* tests/m4sugar.at: Do not use
m4_wrap([m4_diversion_pop([..])]), for educational purposes.
Paul Eggert [Mon, 19 Jun 2006 23:12:16 +0000 (23:12 +0000)]
* NEWS: Document that m4wrap/m4_wrap might not be LIFO.
* doc/autoconf.texi (): Likewise.
Rework example of m4wrap token-pasting trouble so that it doesn't
care whether it's LIFO or FIFO.
Fix some "contrary to"s that are awkward in English.
Ralf Wildenhues [Mon, 19 Jun 2006 18:28:12 +0000 (18:28 +0000)]
* lib/autoconf/types.m4 (_AC_TYPE_INT): Set `$ac_cv_c_int$1_t'
to `yes' instead of `int$1_t' if the type is found, for more
consistent configure output (where $1 is the number of bits).
(_AC_TYPE_UINT): Likewise for `uint$1_t'.
Suggested by Bruno Haible.
Ralf Wildenhues [Mon, 19 Jun 2006 18:22:03 +0000 (18:22 +0000)]
* lib/autoconf/types.m4 (_AC_TYPE_UNSIGNED_INT): Solaris 2.5.1
needs _UINT8_T and _UINT64_T defines as well, to avoid clashes
with system headers. Report by Bruno Haible.
Ralf Wildenhues [Sat, 17 Jun 2006 08:08:19 +0000 (08:08 +0000)]
* bin/Makefile.am (autoconf.in): Use `--melt' for autom4te,
in order to avoid picking up an older installed frozen m4sh.m4f.
Besides an outdated shell startup, this could have been created
by an earlier M4 version with incompatible frozen file format.
Paul Eggert [Fri, 16 Jun 2006 20:38:03 +0000 (20:38 +0000)]
* doc/autoconf.texi:
(Installation Directory Variables, Build Directories):
(Automatic Remaking, Subdirectories, Fortran Compiler):
(Making testsuite Scripts, Defining Directories):
Quote variable usages better.
(Installation Directory Variables): Fix table item font.
Reword slightly to clarify. Generalize advice about
not using special characters to include all file-related
vars, not just VPATH.
(Special Chars in Variables): Warn about special characters in
$(srcdir) too.
(Assignments): Clarify default-value example as suggested by
Ralf Wildenhues in
<http://lists.gnu.org/archive/html/autoconf-patches/2006-06/msg00072.html>.
(Special Shell Variables): Note leading ./ or ../, as suggested
by Stepan Kasal.
(Limitations of Builtins): Under cd, warn about CDPATH.
(The Make Macro MAKEFLAGS): Untabify. Problem reported by
Ralf Wildenhues.
Paul Eggert [Fri, 16 Jun 2006 11:42:20 +0000 (11:42 +0000)]
* README: Recomment m4 1.4.4 instead of 1.4.3..
* doc/autoconf.texi: Likewise.
(Special Chars in Names): Say that $(.FOO) is portable, as
suggested by Stepan Kasal.
Ralf Wildenhues [Thu, 15 Jun 2006 13:20:04 +0000 (13:20 +0000)]
* doc/autoconf.texi (Configuration Actions): Remove duplicate
`@var', for texi2html.
(Systemology): Some more word wrapping, for DVI output.
(autom4te Invocation): The short option for `--melt' is `-M',
not `-m'.
Paul Eggert [Thu, 15 Jun 2006 08:47:20 +0000 (08:47 +0000)]
* doc/autoconf.texi: More formatting and English tweaks,
many suggested by Ralf Wildenhues.
Reword to avoid "@code{...}'s" and the like, since it's ugly
with Emacs info mode. discontents -> woes.
Put a few "will"s back. time stamp -> timestamp.
side-effect -> side effect.
Paul Eggert [Wed, 14 Jun 2006 19:49:00 +0000 (19:49 +0000)]
* doc/autoconf.texi (The Make Macro MAKEFLAGS): New node.
(Special Chars in Names): Renamed from Leading _ in Macro Names.
Mention other special chars, too.
Paul Eggert [Wed, 14 Jun 2006 19:11:43 +0000 (19:11 +0000)]
* doc/autoconf.texi (Initializing configure, Shell Substitutions):
Warn about $@ not persisting. Problem reported by Julien Danjou in
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=372179>.
Paul Eggert [Wed, 14 Jun 2006 05:08:20 +0000 (05:08 +0000)]
* doc/autoconf.texi: Some systematic minor improvements, as
follows. Use "makefile" when talking about makefiles
generally (which might be named "makefile" or "Makefile" or even
"foo.mk"), "Makefile" when talking about a specific makefile
called "Makefile". This unclutters the text from weird quotes
(e.g., "`Makefile's" in info mode). Similarly, use "@var{foo}
values" rather than "@var{foo}s" and similar constructs containing
"}s". Use "Make rules" rather than "Makefile rules". Minor
English-language improvements. Change the prefix "sub-" to "sub"
and "re-" to "re".
Put blank lines around examples more consistently.
Avoid "rather" and "very" as intensifiers.
Avoid "will" as an auxiliary.
(Limitations of Make): Split this node into....
(Portable Make, $< in Ordinary Make Rules, Failure in Make Rules):
(Leading _ in Macro Names, Backslash-Newline-Newline):
(Backslash-Newline Comments, Long Lines in Makefiles):
(Macros and Submakes, The Make Macro SHELL, Comments in Make Rules):
(obj/ and Make, make -k Status, VPATH and Make):
(VPATH and Double-colon, $< in Explicit Rules):
(Automatic Rule Rewriting, OSF/Tru64 Directory Magic):
(Make Target Lookup, Single Suffix Rules, Timestamps and Make):
New nodes, resulting from splitup of Limitations of Make.
All cross-references changed. Raise the top node from
a section to a chapter, and all subnodes accordingly.
Redo the introductory wording to match the new organization.
(Installation Directory Variables): Use an example that is
closer to what Autoconf actually does. Mention that VPATH's
value should not contain metacharacters or white space.
(Fortran Compiler): Fix a VPATH bug in an example.
(Leading _ in Macro Names): Mention that this problem is no longer
of practical concern.
(VPATH and Make): Reword the advice to make it clearer
that Autoconf and Automake support VPATH in non-GNU make, but
many packages have bugs in this area.
($< in Explicit Rules): Refer to Build Directories rather
than using a (non-VPATH-safe) example.
(Automatic Rule Rewriting): Mention the sort of disaster that
can ensue with Solaris-style rule rewriting with VPATH.
Ralf Wildenhues [Thu, 8 Jun 2006 17:25:10 +0000 (17:25 +0000)]
* doc/autoconf.texi (Installation Directory Variables):
Drop extra @samp from `@table @samp' item.
(Limitations of Usual Tools): Comment fix.
Do not nest @samp just to point to other table items.
(Writing testsuite.at) <AT_CHECK>: The second argument to
`@dvar' is already @samp'ed.
(Making testsuite Scripts) <AC_CONFIG_TESTDIR>: Likewise,
do not use @var in the second argument.
Paul Eggert [Wed, 7 Jun 2006 23:46:47 +0000 (23:46 +0000)]
* lib/m4sugar/m4sh.m4 (_AS_DETECT_BETTER_SHELL): Look for
$as_shell.exe too. Problem reported by Andreas Buening in
<http://lists.gnu.org/archive/html/autoconf/2006-06/msg00038.html>.
Ralf Wildenhues [Wed, 7 Jun 2006 18:24:01 +0000 (18:24 +0000)]
* lib/autoconf/functions.m4 (AC_FUNC_ALLOCA): Work around
`unused variable' compiler warning, for `-Wall -Werror'.
Report by Jaap Haitsma <jaap@haitsma.org>.
Paul Eggert [Wed, 7 Jun 2006 05:35:46 +0000 (05:35 +0000)]
* lib/autoconf/c.m4 (AC_PROG_CC_C_O): Remove core file, in
case the compiler dumps core. Problem reported for
OpenServer 5.0.7 by Tim Rice in
<http://lists.gnu.org/archive/html/bug-autoconf/2006-06/msg00019.html>.
* lib/autoconf/general.m4 (_AC_COMPILE_IFELSE, _AC_LINK_IFELSE):
Likewise.
Ralf Wildenhues [Mon, 5 Jun 2006 12:16:06 +0000 (12:16 +0000)]
* bin/autoreconf.in: Trace `LT_CONFIG_LTDL_DIR'; if it has been
seen, invoke libtoolize with `--ltdl' argument.
* lib/autom4te.in (Autoreconf-preselections): Adjust.
* NEWS: Update.
Suggested by Eric Blake.
Ralf Wildenhues [Mon, 5 Jun 2006 08:18:33 +0000 (08:18 +0000)]
* lib/m4sugar/m4sugar.m4 (m4_require): Modify the error
message issued by AC_REQUIRE.
* tests/m4sugar.at: Check m4_require's error message.
* tests/base.at: Check AC_REQUIRE's error message.
* tests/local.at (AT_CHECK_M4): New macro, almost identical
to...
(AT_CHECK_AUTOM4TE): ... which is now a thin wrapper around
AT_CHECK_M4.
(AT_CHECK_AUTOCONF): Use AT_CHECK_M4; no longer support
`expout' as the last parameter.
* tests/tools.at: Adapt to the above change.
Paul Eggert [Sun, 4 Jun 2006 07:38:28 +0000 (07:38 +0000)]
* NEWS: GNU make now recommended for VPATH builds.
Mention that some macros are now documented to be obsolescent.
* doc/autoconf.texi:
Prefer "current" to "modern" to describe
currently-used (albeit perhaps old-fashioned) hosts.
Mention which ancient features no longer need to be worried about.
setgid -> set-group-ID
setuid -> set-user-ID (these are the Posix terms)
Fix some misuses of "only".
(AC_C_BACKSLASH_A, AC_C_CONST, AC_C_PROTOTYPES):
(AC_C_STRINGIZE, AC_C_VOLATILE, AC_FUNC_CLOSEDIR_VOID):
(AC_FUNC_GETPGRP, AC_FUNC_LSTAT, AC_FUNC_MEMCMP):
(AC_FUNC_SELECT_ARGTYPES, AC_FUNC_SETPGRP):
(AC_FUNC_SETVBUF_REVERSED, AC_FUNC_STAT, AC_FUNC_STRFTIME):
(AC_FUNC_STRNLEN, AC_FUNC_UTIME_NULL, AC_FUNC_VPRINTF):
(AC_HEADER_DIRENT, AC_HEADER_STAT, AC_HEADER_STDC):
(AC_HEADER_SYS_WAIT, AC_HEADER_TIME, AC_ISC_POSIX):
(AC_PROG_GCC_TRADITIONAL, AC_STRUCT_TM):
Mention that these macros are obsolescent.
(Installation Directory Variables): shall -> should
(File Descriptors): Mention that 0, 1, 2 might get reopened.
Mention that it's now safe to use 3 and 4.
(Limitations of Usual Tools): cp -r is now specified by Posix.
Omit longwinded and obsolescent discussion of cp -f.
Modernize discussion of expr, ls.
(Limitations of Make): Modernize discussion of VPATH builds.
Mention $? as a workaround in some cases.
* doc/install.texi (Basic Installation):
Mention "./configure; make; make install" first. Be more
specific about why this file is generic. Remove unnecessary
parens. Remove misleading "only". Remove obsolete advice
about csh. Don't say "configure" takes awhile; say it
might take a while. Suggest CFLAGS=-g rather than CFLAGS=-O2,
and CC=c99 rather than CC=c89, as these are blessed by current
Posix. Recommend GNU make if doing a VPATH build.
Paul Eggert [Fri, 2 Jun 2006 22:42:32 +0000 (22:42 +0000)]
* doc/autoconf.texi (Here-Documents): Add details about the
pre-ksh93g bug. Reword slightly to make it clearer. Consistently
use "here-documents" instead of "here documents".
Paul Eggert [Wed, 31 May 2006 19:49:15 +0000 (19:49 +0000)]
* lib/autoconf/general.m4 (_AC_DO_ECHO): Be even more conservative
about quoting the case statement, just in case.
* doc/autoconf.texi (Particular Programs) <AC_PROG_MKDIR_P>:
Document that ${MKDIR_P} understands --.
* lib/autoconf/programs.m4 (AC_PROG_MKDIR_P): Improve the
comment.
Paul Eggert [Wed, 31 May 2006 01:28:06 +0000 (01:28 +0000)]
* lib/autoconf/general.m4 (_AC_DO_ECHO): Be more conservative
about quoting ac_try: quote all of it, if any of it seems suspicious.
This means we don't have to worry about ${ or sed any more.
Also, double-quote the case statement, to work around misuses via
underquoting as reported by Ralf Wildenhues in
<http://lists.gnu.org/archive/html/autoconf-patches/2006-05/msg00169.html>.
(_AC_EVAL_STDERR): Revert, since evidently some packages rely on this
undocumented and dangerous macro.
Problem reported by Ralf Wildenhues in
<http://lists.gnu.org/archive/html/autoconf-patches/2006-05/msg00168.html>.
Paul Eggert [Tue, 30 May 2006 07:28:01 +0000 (07:28 +0000)]
* lib/autoconf/general.m4: Revert AC_TRY_EVAL and AC_TRY_COMMAND,
since evidently some packages rely on the old, broken behavior.
Problem reported by Ralf Wildenhues in
<http://lists.gnu.org/archive/html/autoconf-patches/2006-05/msg00160.html>.
(AC_TRY_EVAL, AC_TRY_COMMAND, _AC_EVAL): Go back to the
pre-2006-05-26 definitions, but leave in the comments that
these macros are dangerous and should not be used.
(_AC_DO_ECHO): Renamed from _AC_EVAL_ECHO. All callers changed.
(_AC_DO): Renamed from _AC_EVAL. All callers changed.
(_AC_DO_STDERR): Renamed from _AC_EVAL_STDERR. All callers changed.
(_AC_DO_VAR): Renamed from AC_TRY_EVAL.
(_AC_DO_TOKENS): Renamed from AC_TRY_COMMAND.
Ralf Wildenhues [Sun, 28 May 2006 12:38:49 +0000 (12:38 +0000)]
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE): If we have not seen
mention of `datarootdir' in the input file(s), but literal
`${datarootdir}' in the output file, and we haven't warned yet,
then warn as well: the user may have (erroneously) used
`AC_SUBST([mydatadir], [$datadir/my])' instead of the correct
`AC_SUBST([mydatadir], ['${datadir}/my'])'.
* tests/torture.at (datarootdir workaround): Extend this test.
* NEWS: Update.
Paul Eggert [Sat, 27 May 2006 22:22:01 +0000 (22:22 +0000)]
* doc/autoconf.texi (autoheader Invocation): The first argument to
`AC_DEFINE_UNQUOTED' need not be a literal. Mention the
alternatives and clear up the language a bit.
Paul Eggert [Sat, 27 May 2006 21:59:04 +0000 (21:59 +0000)]
* NEWS: Reword notice for AC_TRY_COMMAND, AC_TRY_EVAL,
ac_config_guess, ac_config_sub, ac_configure.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS):
Fix typo that prevented an unnecessary space from being removed.
Problems reported by Ralf Wildenhues in:
http://lists.gnu.org/archive/html/autoconf-patches/2006-05/msg00143.html