Commit Graph

1302 Commits

Author SHA1 Message Date
Paul Eggert
814d1a1a07 * 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.
2006-06-19 23:12:16 +00:00
Paul Eggert
4ab90bf39b * 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.
2006-06-16 20:38:03 +00:00
Paul Eggert
c381a05d74 * 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.
2006-06-16 11:42:20 +00:00
Ralf Wildenhues
2f998c3bdc * 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'.
2006-06-15 13:20:04 +00:00
Paul Eggert
11e1721603 * 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.
2006-06-15 08:47:20 +00:00
Paul Eggert
fed5d39370 Autocoonf -> Autoconf 2006-06-15 07:33:41 +00:00
Paul Eggert
1df936d42c * doc/autoconf.texi (The Make Macro MAKEFLAGS): New node.
(Special Chars in Names): Renamed from Leading _ in Macro Names.
Mention other special chars, too.
2006-06-14 19:49:00 +00:00
Paul Eggert
0bce39bb91 * 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>.
2006-06-14 19:11:43 +00:00
Paul Eggert
1c847e3b05 behave -> behaves (fixing a typo in the previous patch). 2006-06-14 05:14:09 +00:00
Paul Eggert
0e8c81bbf2 * 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.
2006-06-14 05:08:20 +00:00
Paul Eggert
5051b263e0 * doc/install.texi (Compilers and Options): Weaken the
suggestion to use GNU make for VPATH builds.
2006-06-14 03:41:56 +00:00
Ralf Wildenhues
d6d76e17c7 * 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.
2006-06-08 17:25:10 +00:00
Paul Eggert
3ede61d43a * doc/autoconf.texi (Integer Overflow): Mention that INT_MIN % -1
typically overflows on x86 CPUs, even though the C standard
requires otherwise.
2006-06-06 01:44:53 +00:00
Paul Eggert
a870fa8da1 * NEWS: Whoops! AC_FUNC_STRNLEN isn't obsolescent. Problem
reported by Ralf Wildenhues.
* doc/autoconf.texi (AC_FUNC_STRNLEN): Likewise.
2006-06-05 08:39:57 +00:00
Paul Eggert
79a00aafb4 * doc/autoconf.texi: Modernize some of the references to Solaris. 2006-06-05 08:20:28 +00:00
Paul Eggert
b8dd7a4e22 * doc/autoconf.texi (Limitations of Usual Tools): Correct
information about race-free implementations of mkdir.
2006-06-04 20:22:48 +00:00
Paul Eggert
8eaa3f01d0 * bin/autoreconf.in (help): Document M4 environment variable.
* bin/autoconf.as (Usage): Likewise.
* bin/autom4te.in (help): Likewise.
* doc/autoconf.texi (autom4te Invocation): Likewise.
2006-06-04 19:56:27 +00:00
Paul Eggert
f0c7c42553 * 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.
2006-06-04 07:38:28 +00:00
Paul Eggert
2f2f685cda * doc/autoconf.texi: Use a consistent style "$ @kbd{...}" for
examples involving shell prompts.
2006-06-03 23:21:06 +00:00
Paul Eggert
ab67a9cbf8 * 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".
2006-06-02 22:42:32 +00:00
Ralf Wildenhues
c7492e72c0 * config/texinfo.tex, doc/standards.texi: Sync from upstream. 2006-06-01 18:17:54 +00:00
Paul Eggert
4494d7f0ea * doc/autoconf.texi (File System Conventions): Warn about ":"
anywhere in directory names.
2006-06-01 07:47:40 +00:00
Paul Eggert
f37ef5a127 (System Services): Do not document overriding EXEEXT via ac_cv_exeext=ext. 2006-05-31 20:20:13 +00:00
Paul Eggert
ef9577a76b ksh99g -> ksh93g 2006-05-31 19:51:39 +00:00
Paul Eggert
e07dda2d48 * 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.
2006-05-31 19:49:15 +00:00
Paul Eggert
3aba941494 * 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.
2006-05-27 22:22:01 +00:00
Paul Eggert
aa4a2459e6 * doc/autoconf.texi (Particular Programs, Limitations of Usual Tools):
Use better wording to talk about AC_PROG_MKDIR_P's thread-safety.
Don't use the term "thread-safe" to talk about mkdir race
conditions, since the problem is more a process than a thread
issue.  Problem reported by Stepan Kasal in:
http://lists.gnu.org/archive/html/autoconf-patches/2006-05/msg00088.html
* lib/autoconf/programs.m4 (AC_PROG_MKDIR_P): Use code that mimics
the test for 'install' more closely.  Look at MKDIR_P first.
Look in the PATH, and at /opt/sfw/bin.
Look for a 'gmkdir' program as well (Solaris 10 /opt/sfw/bin/gmkdir).
Don't bother to try mkdir -p, since we already check mkdir --version;
just look at the version number.  (There's no easy way to check
for race-free implementations.)
* tests/tools.at (autoconf: subdirectories): Adjust to above
changes, since MKDIR_P now might end in "/mkdir -p".
2006-05-27 02:54:33 +00:00
Paul Eggert
3b73b97c85 * doc/autoconf.texi (autoheader Invocation): Mention that the
first arg of AC_DEFINE_UNQUOTED must not be a literal.
2006-05-27 00:05:36 +00:00
Paul Eggert
922c98ee7d * NEWS: Mention that AC_TRY_COMMAND and AC_TRY_EVAL may be removed.
* doc/autoconf.texi (Special Chars in Variables): New section.
(Preset Output Variables): Warn about special chars in CPPFLAGS.
(Installation Directory Variables): Quote $(datadir) better.
(Limitations of Builtins): Describe some of eval's trickiness.
* lib/autoconf/c.m4 (AC_PROG_CC_C_O): Simplify quoting.
* lib/autoconf/fortram.m4 (_AC_PROG_FC_V_OUTPUT): Likewise.
* lib/autoconf/general.m4 (_AC_INIT_PREPARE): Put leading space
in front of every arg, not just trailing args.  Quote apostrophes.
(_AC_EVAL_ECHO): New macro.
(_AC_EVAL, AC_EVAL_STDERR): Use it.  Quote arg of eval.
(AC_TRY_EVAL, AC_TRY_COMMAND): Mention that these macros might get
removed.
(_AC_LINK_IFELSE): Use proper rule for shell continuation lines,
exposed by quoting of eval argument.  Put the command on line line
so it logs better.
* lib/autoconf/libs.m4 (_AC_PATH_X_XMKMF): Use eval more safely.
(_AC_PATH_X, AC_PATH_X): Quote more safely.
* lib/autoconf/programs.m4 (AC_PROG_MAKE_SET): Use eval more safely.
* lib/autoconf/specific.m4 (AC_SYS_LONG_FILE_NAMES): Don't use eval.
* lib/autoconf/status.m4 (_AC_OUTPUT_SUBDIRS): Minor style change.
Handle special chars in prefix, ac_srcdir, ac_aux_dir.
Use eval more safely.
(_AC_OUTPUT_CONFIG_STATUS): Adjust to above changes.
* lib/m4sugar/m4sh.m4 (AS_VAR_GET): Note that this API needs
to be replaced.
* tests/base.at (AC_TRY_COMMAND): Use proper rule for shell continuation
lines, exposed by quoting of eval argument.
2006-05-26 22:29:50 +00:00
Ralf Wildenhues
cf78c7e16e * lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT_DEFAULT): Drop the
initialization of `ac_cv_exeext', do not override it if it was
already set, unless it was set to `no', for compatibility with
Autoconf-2.13, and comment this.
Do not export `ac_cv_exeext', Libtool hasn't needed this for years.
(_AC_COMPILER_EXEEXT_DEFAULT): Likewise, do not export it.
(_AC_COMPILER_EXEEXT_WORKS, _AC_COMPILER_EXEEXT_CROSS): Typos.
* doc/autoconf.texi (Compilers and Preprocessors) <EXEEXT>:
Document that this test may be overridden by setting
`ac_cv_exeext'.
2006-05-26 17:25:35 +00:00
Ralf Wildenhues
c1ea1267a6 * doc/autoconf.texi (Limitations of Usual Tools) < sed (`t')>:
Fix description of how the buggy `sed' works.
2006-05-25 17:23:11 +00:00
Ralf Wildenhues
beaa9ebbcb * doc/autoconf.texi (Here-Documents): We now know more about
the variable expansion in here documents bug.
Thanks to Tim Rice and Stepan Kasal.
2006-05-25 08:49:02 +00:00
Ralf Wildenhues
4814eec7e0 * doc/autoconf.texi (Making testsuite Scripts): Add an example
how to use TESTSUITEFLAGS.  Suggested by Eric Blake.
2006-05-25 07:39:57 +00:00
Paul Eggert
7298fd6c1f * doc/autoconf.texi (Particular Programs): Do not promise that
we always prefer the GNU version of the program, and that we
search according to PATH; both rules can have exceptions.
Update description of AC_PROG_GREP, AC_PROG_EGREP, AC_PROG_FGREP,
AC_PROG_SED.  Move descriptions of limitations
to the Limitations of Usual Tools section.
(Limitations of Usual Tools) <sed>: Mention script length
limitations with Solaris /usr/ucb/sed.
<grep>: Fix wording for empty alternative.  Mention that -c and
-l should not be combined, and that -E and -F should not be
combined.
2006-05-22 17:27:50 +00:00
Stepan Kasal
a2cc685508 * doc/autoconf.texi (Defining Symbols): Literal parameter of
AC_DEFINE is now passed to m4_pattern_allow.
* NEWS: Mention that; likewise for AC_SUBST.
* lib/autoconf/general.m4 (AC_DEFINE_TRACE_LITERAL): Pass
the parameter to m4_pattern_allow.
* tests/tools.at: Add a check for that.
2006-05-22 15:54:09 +00:00
Stepan Kasal
408bb81c76 * doc/autoconf.texi (Limitations of Usual Tools) <sed>: For
the HP-UX sed limitation of 99 commands, labels do not count.
* lib/autoconf/status.m4 (_AC_SED_CMD_LIMIT): Mention that
in the comment.
(_AC_OUTPUT_HEADER): Revert the change from 2006-05-19.
2006-05-22 10:28:33 +00:00
Ralf Wildenhues
621112ccfb * lib/autoconf/c.m4 (AC_PROG_CXX_C_O): New macro.
* doc/autoconf.texi (C++ Compiler): Document it.
* lib/autoconf/fortran.m4 (_AC_PROG_FC_C_O): Adjust comment.
* NEWS: Update.
2006-05-20 05:39:03 +00:00
Ralf Wildenhues
334d111e9e * config/config.guess, config/config.sub, config/texinfo.tex,
doc/make-stds.texi, doc/standards.texi: Sync from upstream.
2006-05-17 02:15:30 +00:00
Paul Eggert
9479591b3e * doc/autoconf.texi (Particular Programs): AC_PROG_MKDIR_P now
sets MKDIR_P, not mkdir_p, to avoid collisions with Automake.
Warn about obsolete install-sh files.  Remove stray sentence
fragment and fix cross reference.
* lib/autoconf/programs.m4 (AC_PROG_INSTALL): Don't insist on
install -d; this undoes the 2006-05-10 change.
(MKDIR_P): Mark with AN_MAKEVAR.
(AC_PROG_MKDIR_P): Fall back on $ac_install_sh, not $INSTALL, so
that we don't require $INSTALL to be thread-safe.  Move comments
out of generated code.  Require AC_CONFIG_AUX_DIR_DEFAULT instead
of AC_PROG_INSTALL.  Output a message saying that we're checking
mkdir -p.  Set MKDIR_P rather than mkdir_p.  Do special magic for
MKDIR_P instead of AC_SUBST.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE, _AC_OUTPUT_CONFIG_STATUS):
Special magic for MKDIR_P, too.
* lib/m4sugar/m4sh.m4 (AS_MKDIR_P): Remove comment that defeated
a dnl.
* tests/local.at (AT_CHECK_ENV): mkdir_p -> MKDIR_P.
2006-05-13 09:54:51 +00:00
Paul Eggert
2da5c52e5a (Particular Programs): AC_PROG_MKDIR_P falls back on $INSTALL, not
necessarily install-sh.
2006-05-10 23:42:59 +00:00
Paul Eggert
0f696b8be5 * NEWS: New macro AC_PROG__MKDIR_P. AS_MKDIR_P is now more robust.
* 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.
2006-05-10 23:05:15 +00:00
Ralf Wildenhues
f3b87aad98 * doc/autoconf.texi (Special Shell Variables) <IFS>: Document
`$*' and IFS concatenation issue with traditional shells and
bash-2.04.  Report by Seanster@Seanster.com.
2006-05-04 07:08:19 +00:00
Paul Eggert
5f047396ae * doc/autoconf.texi (Limitations of Usual Tools): Identify more
precisely which Mac OS X versions have the od problem.
2006-05-03 18:28:56 +00:00
Paul Eggert
28fb17bb76 * doc/autoconf.texi (Integer Overflow):
Mention the special case of integer division overflow.
2006-05-03 01:08:27 +00:00
Paul Eggert
04e292eda5 * doc/autoconf.texi: Use @option systematically. 2006-05-03 00:36:32 +00:00
Paul Eggert
30f1f062e5 * doc/autoconf.texi (Limitations of Usual Tools): Add a paragraph
about 'od'.
2006-05-03 00:30:23 +00:00
Paul Eggert
fe4647b2d0 Fix typo in previous checkin. 2006-05-02 03:20:26 +00:00
Paul Eggert
b5ade1c2b2 * doc/autoconf.texi (Limitations of Builtins, Limitations of Make):
Mention more problems with the -e option.
2006-05-01 17:35:50 +00:00
Ralf Wildenhues
7a77927133 * NEWS: Typo.
* doc/autoconf.texi (Systemology): Mention the Heirloom Project.
2006-04-30 17:06:13 +00:00
Ralf Wildenhues
9d056f239b * doc/autoconf.texi (Introduction, Pointers): Use `@/' liberally
in URLs to improve DVI formatted output (requires texinfo 4.6).
(System Services, Systemology, Shellology): Likewise.
(Limitations of Usual Tools): Rewrite Mac OS X example for nicer
output.
2006-04-30 17:05:05 +00:00