Commit Graph

1627 Commits

Author SHA1 Message Date
Eric Blake
e7c4402520 Document shell function environment pitfall.
* doc/autoconf.texi (Shell Functions): Document bugs in bash,
Solaris /bin/sh.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-10-14 11:28:09 -06:00
Paolo Bonzini
45f473304f Add and document AS_INIT_GENERATED.
* lib/m4sugar/m4sh.m4 (AS_INIT_GENERATED): New.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Use it.
* doc/autoconf.texi (Initialization macros): Document it.
2008-10-13 18:01:21 +02:00
Paolo Bonzini
06bceefef2 Add and document AS_ME_PREPARE and AS_LINENO_PREPARE
2008-10-10  Paolo Bonzini  <bonzini@gnu.org>

	* lib/m4sugar/m4sh.m4 (AS_ME_PREPARE, AS_LINENO_PREPARE): New.
	* doc/autoconf.texi (Initialization macros): Document them.
	(Portable Shell): Refer to AS_LINENO_PREPARE.

	* bin/autoconf.as: Invoke AS_ME_PREPARE.
	* lib/autotest/general.m4: Likewise.
2008-10-11 13:30:38 +02:00
Paolo Bonzini
00382ba1b1 extract "Programming in M4sh" into its own chapter
2008-10-10  Paolo Bonzini  <bonzini@gnu.org>

	* doc/autoconf.texi (Programming in M4sh): Make its own chapter.
2008-10-11 13:05:33 +02:00
Eric Blake
523ee0e116 Fix _AS_MKDIR_P usage.
* lib/m4sugar/m4sh.m4 (_AS_MKDIR_P): Correct documentation to
match implementation.
(_AS_PREPARE, _AS_MKDIR_P_PREPARE): Adjust callers.
* doc/autoconf.texi (Programming in M4sh) <AS_MKDIR_P>: Tweak
wording to better match behavior.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-10-10 08:40:09 -06:00
Paolo Bonzini
edd65fb24d don't advertise shell function adversely
2008-10-08  Paolo Bonzini  <bonzini@gnu.org>

	* doc/autoconf.texi: Be less wary of shell functions.
2008-10-10 15:33:28 +02:00
Ralf Wildenhues
d88e6dc09e Document AS_VERSION_COMPARE.
* doc/autoconf.texi (Programming in M4sh): Document
AS_VERSION_COMPARE.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-08 07:38:54 +02:00
Eric Blake
b30850a851 Add m4_default_quoted.
* lib/m4sugar/m4sugar.m4 (m4_default_quoted): New macro.
(m4_for, m4_expand_once, m4_text_wrap, m4_text_box): Use it.
* doc/autoconf.texi (Conditional constructs): Document it.
* NEWS: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-10-06 20:19:32 -06:00
Bruno Haible
5917ea5541 Warn about /usr/ucb on Solaris.
* doc/install.texi (Particular Systems): Recommend putting
/usr/ucb late in PATH, if at all.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-06 21:48:28 +02:00
Eric Blake
b2bde72f54 Document more binary file portability traps.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Remind
reader that NUL and sed don't always mix.
<tr>: Mention Solaris /usr/ucb/tr bug with \0.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-10-02 09:02:37 -06:00
Ralf Wildenhues
f108ed8925 Implement parallel Autotest test execution: testsuite --jobs.
* lib/autotest/general.m4 (AT_JOB_FIFO_FD): New macro.
(AT_INIT): <at_jobs>: New variable.
Accept -j, -jN, --jobs[=N], document them in --help output.
Implement parallel driver loop using a FIFO, enabled with --jobs
and if mkfifo works; otherwise, fall back to sequential loop.
(AT_SETUP): Store, do not output summary progress line if
parallel.
* tests/autotest.at (parallel test execution, parallel truth)
(parallel fallacy, parallel skip): New tests.
* doc/autoconf.texi (testsuite Invocation): Document -j, --jobs,
the mkfifo requirement, and that --errexit may cause concurrent
jobs to finish.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-02 07:52:25 +02:00
Eric Blake
f91f917602 Fix sample isinf definition.
* doc/autoconf.texi (Function Portability) <isinf>: Filter out NaN
first.
* THANKS: Update.
Reported by David Cournapeau.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-20 16:21:17 -06:00
Ralf Wildenhues
e55f656967 Mention Solaris sh ':' redirection bug.
* doc/autoconf.texi (File Descriptors): Redirecting ':'
in a loop causes bogus optimization with Solaris sh.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-09-13 15:17:54 +02:00
Eric Blake
f111a6e116 Formatting tweaks to the manual.
* doc/autoconf.texi (Introduction, Systemology)
(File System Conventions, Portable C and C++)
(Floating Point Portability): Allow URLs to split as needed.
(Indices): Add entries, to work around texinfo bug on indices that
start too close to a page break.
(Particular Functions): Mention ftello.
(Introduction, Language Choice): Use @enddots at sentence end.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-09 06:59:45 -06:00
Eric Blake
9e9aa529b1 Mention that Automake already supports VPATH.
* doc/autoconf.texi (Build Directories): Details in this section
only apply to users avoiding automake.
* THANKS: Update.
Reported by Matej Tyc.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-06 14:05:09 -06:00
Eric Blake
69a905148d Relax tone when warning about cross-compiler names.
* lib/autoconf/programs.m4 (_AC_TOOL_WARN): Support cross-compiles
with poorly named tools; the issue has been reported too many
times in the last four years to pull support.
* doc/autoconf.texi (Specifying Names, Generic Programs): Update
documentation accordingly.
* THANKS: Update.
Reported by Josef Tran and others, wording suggested by Ralf
Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-06 13:51:00 -06:00
Eric Blake
7bb64f8f94 Improve AC_C_BIGENDIAN.
* doc/autoconf.texi (C Compiler) <AC_C_BIGENDIAN>: Mention that
universal builds require a config header.
* lib/autoconf/c.m4 (AC_C_BIGENDIAN): Enhance comments.  Check
AH_HEADER at the last possible moment, so that users can use
AC_CONFIG_HEADER after this macro.
Reported by Stepan Kasal.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-01 19:48:41 -06:00
Eric Blake
2a84cf6039 Fix manual date information.
* doc/autoconf.tex: UPDATED refers to the day the manual was
built, not the release date of Autoconf.
Based on a bison patch by Akim Demaille.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-09-01 06:27:14 -06:00
Eric Blake
02fa53b195 Improve INSTALL formatting.
* doc/install.texi [!autoconf]: Ensure first paragraphs are
indented like all others in a plain text rendering.
* Makefile.am ($(srcdir)/INSTALL): Ensure plaintext formatting.
Reported by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-26 15:29:17 -06:00
Eric Blake
f4df9b9b40 Update invocation documentation.
* doc/autoconf.texi (autoscan Invocation): Mention --debug.
(autoreconf Invocation): Mention -v.
(autom4te Invocation): Tie --freeze to -F, not -f.
(autoupdate Invocation): Mention --prepend-include.
* doc/install.texi (configure Invocation): Mention --help=short,
--help=recursive, -n/--no-create, --prefix.  Avoid TABs.
* bin/autoscan.in ($help): Omit space before `...'.
* bin/ifnames.in ($help): Likewise.
* bin/autoconf.as (Usage): Likewise.
* bin/autoreconf.in ($help): Likewise.
* bin/autoheader.in ($help): Likewise.
* bin/autom4te.in ($help): Likewise.
* bin/autoupdate.in ($help): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_CONFIG_STATUS): Use
`[OPTION]...', rather than `[OPTIONS]'.  Mention --silent.  Indent
--file correctly.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-26 09:28:15 -06:00
Eric Blake
550a9fa1e1 Avoid extra side effects in m4sugar list expansion.
* lib/m4sugar/m4sugar.m4 (m4_mapall_sep, m4_list_cmp): Wrap
around...
(_m4_mapall_sep, _m4_list_cmp_raw): ...new helpers, to avoid
duplicate side effects.
(m4_version_compare): Adjust caller.
* lib/m4sugar/foreach.m4 (m4_list_cmp): Rename...
(_m4_list_cmp_raw): ...to match m4sugar.
* doc/autoconf.texi (Looping constructs): Document the behavior of
side effects.
* tests/m4sugar.at (M4 loops, m4@&t@_map, m4@&t@_version_compare):
Ensure only one side effect.
(recursion): Fix test typo.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-21 22:17:33 -06:00
Eric Blake
3a28237907 Formatting improvements.
* doc/autoconf.texi: Use @file and @command, rather than @code,
where appropriate.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-21 09:53:05 -06:00
Eric Blake
75388b165e Document another make bug.
* doc/autoconf.texi (The Make Macro SHELL): Mention bug in BSD
make, GNU make <= 3.80.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-21 09:32:21 -06:00
Eric Blake
e3dce090c8 Tweak wording about SHELL in Makefile.
* doc/autoconf.texi (The Make Macro SHELL): Stronger wording on
the importance of proper SHELL settings.
Reported by Bruno Haible, in
http://lists.gnu.org/archive/html/bug-libtool/2008-04/msg00029.html.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-21 09:25:55 -06:00
Bruno Haible
60974b5558 Add section to INSTALL about particular systems.
* doc/install.texi (Particular systems): New node.
* doc/autoconf.texi: Adjust menus.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-20 07:26:30 -06:00
Bruno Haible
0b0c80f560 Mention universal binaries in INSTALL.
* doc/install.texi (Compiling For Multiple Architectures): Explain
how to create universal binaries on MacOS X.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-19 22:17:24 -06:00
Jim Meyering
f5de6cdf5a Avoid shell parse errors after interrupt due to empty ``.
* doc/autoconf.texi (Shell Substitutions): Document the issue.
* lib/m4sugar/m4sh.m4 (AS_VAR_IF): New function.
* lib/autoconf/functions.m4 (AC_CHECK_FUNC): Use it in place of
"test AS_VAR_GET([...]) = yes"
* lib/autoconf/general.m4 (AC_CHECK_FILE, AC_CHECK_DECL): Likewise.
* lib/autoconf/headers.m4 (_AC_CHECK_HEADER_MONGREL): Likewise.
(_AC_CHECK_HEADER_NEW, _AC_CHECK_HEADER_OLD): Likewise.
(_AC_CHECK_HEADER_DIRENT): Likewise.
* lib/autoconf/libs.m4 (AC_CHECK_LIB): Likewise.
* lib/autoconf/types.m4 (_AC_CHECK_TYPE_NEW, AC_CHECK_MEMBER): Likewise.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILES_PREPARE): Use
temporary variable to work around the issue.
* tests/foreign.at (Libtool): Quote result of command
substitution.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-19 23:00:51 +02:00
Eric Blake
aeff96ce94 Fix m4_map regression from 2007-10-16.
* lib/m4sugar/m4sugar.m4 (_m4_apply): New macro.
(m4_map): Ignore empty sublists.  For a list consisting of only an
empty sublist, this restores 2.61 behavior of being a no-op.
(m4_map_sep): Likewise, and expand separator.
(m4_mapall, m4_mapall_sep): New macros, to regain 2.62 behavior.
(_m4_map): Rewrite, to be common base for all four variants.
* lib/m4sugar/foreach.m4 (_m4_map): Adjust to new prototype.
* tests/m4sugar.at (m4@&t@_map): Add tests.
* doc/autoconf.texi (Looping constructs) <m4_map>: Document new
macros, and mention ramifications of expanded separator.
* NEWS: Mention the change.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-15 07:06:39 -06:00
Eric Blake
58ebb72b32 AC_C_CHAR_UNSIGNED is not strictly necessary.
* doc/autoconf.texi (C Compiler) <AC_C_CHAR_UNSIGNED>: Mention a
portable alternative to this macro.
* THANKS: Update.
Reported by Hallvard B Furuseth.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-06 09:24:09 -06:00
Eric Blake
418e7f89f3 Update some files from upstream.
* GNUmakefile: Update.
* build-aux/announce-gen: Likewise.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/texinfo.tex: Likewise.
* build-aux/vc-list-files: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-08-06 08:22:14 -06:00
Eric Blake
8d81fd7f28 Add linear m4_bpatsubsts for m4 1.4.x.
* lib/m4sugar/m4sugar.m4 (m4_bpatsubsts): Match documentation
about anchors, even for only one substitution.
* lib/m4sugar/foreach.m4 (_m4_bpatsubsts): New implementation.
* doc/autoconf.texi (Conditional constructs) <m4_bpatsubsts>:
Clarify behavior with regard to quoting.
* tests/m4sugar.at (recursion): Test scaling of m4_bpatsubsts.
(m4@&t@_bpatsubsts): New test.
* NEWS: Document the linear guarantee.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-29 20:37:30 -06:00
Eric Blake
a40eef5129 Tweak m4_do semantics.
* lib/m4sugar/m4sugar.m4 (m4_do): Don't concat final argument with
subsequent text.
* lib/m4sugar/foreach.m4 (m4_do): Don't concat intermediate
arguments, and avoid infinite loop.
* doc/autoconf.texi (Evaluation Macros) <m4_do>: Document the
behavior.
* tests/m4sugar.at (m4@&t@_do): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-29 19:36:20 -06:00
Eric Blake
8f5c14ff91 Optimize m4_for.
* lib/m4sugar/m4sugar.m4 (m4_for): Use fewer macros.
(_m4_for): Take additional parameter, for fewer m4_indir calls.
* lib/m4sugar/foreach.m4 (_m4_foreach, _m4_shiftn, m4_do)
(m4_reverse, _m4_list_pad, _m4_list_cmp): Adjust all callers.
* doc/autoconf.texi (Looping constructs) <m4_for>: Document subtle
semantic change caused by the optimization.
* tests/m4sugar.at (M4 loops): Test the new semantics.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-29 19:36:18 -06:00
Eric Blake
4766c77f42 Add m4_reverse, and improve m4_list_cmp.
* lib/m4sugar/m4sugar.m4 (m4_reverse): New macro.
(m4_list_cmp): Rewrite to give linear behavior with M4 1.6 on an
m4_reverse'd list.
* lib/m4sugar/foreach.m4 (m4_reverse): Add the M4 1.4.x
counterpart.
* tests/m4sugar.at (recursion): Test it.
* doc/autoconf.texi (Evaluation Macros) <m4_reverse>: Document
it.
(Text processing Macros) <m4_append>: Cross-reference to m4_set.
* NEWS: Mention new macro.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-29 07:12:26 -06:00
Eric Blake
3f1a601013 Implement O(n) unique element set creation.
* lib/m4sugar/m4sugar.m4 (m4_set_add, m4_set_add_all)
(m4_set_contains, m4_set_contents, m4_set_delete)
(m4_set_difference, m4_set_dump, m4_set_empty, m4_set_foreach)
(m4_set_intersection, m4_set_list, m4_set_listc, m4_set_remove)
(m4_set_size, m4_set_union): New macros.
* lib/m4sugar/foreach.m4 (m4_set_add_all): Add O(n) fallback for
m4 1.4.x.
* lib/autoconf/general.m4 (_AC_INIT_DEFAULTS, AC_SUBST): Use
new m4_set API for the set most likely to be large.
* doc/autoconf.texi (Set manipulation Macros): New node.
* NEWS: Mention new macros.
* tests/m4sugar.at (m4@&t@_set): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-28 06:35:34 -06:00
Eric Blake
36d8106f6d Support multiple arguments to m4_defn, m4_popdef, and m4_undefine.
* lib/m4sugar/m4sugar.m4 (m4_defn, m4_popdef, m4_undefine): Loop
through all variables, per POSIX and newer m4.
(_m4_text_wrap): Exploit the looping capabilities.
* tests/m4sugar.at (m4@&t@_defn): Test this.
* NEWS: Document it.
* doc/autoconf.texi (Redefined M4 Macros) <m4_defn, m4_popdef>
<m4_undefine>: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-19 13:11:45 -06:00
Eric Blake
65ff0e8f88 Add m4_joinall.
* lib/m4sugar/m4sugar.m4 (m4_joinall, _m4_joinall): New macros.
* tests/m4sugar.at (m4@&t@_join): Test them.
* doc/autoconf.texi (Text processing Macros) <m4_join>: Document
m4_joinall.
* NEWS: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-18 20:18:37 -06:00
Stepan Kasal
6d04538831 Improve documentation of config.h.in template rules.
* doc/autoconf.texi (Header Templates): Mention rules on comments
and whitespace, and that the user cannot rely on #undef to survive
through config.status.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-17 18:55:51 -06:00
Eric Blake
ebe1f38cba Revert m4_prepend; it is less efficient, and unused by bison.
* lib/m4sugar/m4sugar.m4 (m4_prepend, m4_prepend_uniq)
(m4_prepend_uniq_w): Delete addition from 2008-07-11.
(_m4_grow_uniq_1): Rename back...
(_m4_append_uniq): ...to this.
* NEWS: Revert NEWS blurb.
* doc/autoconf.texi (Text processing Macros) <m4_prepend>: Delete.
* tests/m4sugar.at (m4@&t@_prepend): Delete.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-16 14:47:46 -06:00
Eric Blake
0bc266ef15 Tighten bound of potential speed of m4_append.
* doc/autoconf.texi (Text processing Macros) <m4_append>
<m4_prepend>: If m4 is fixed, m4_append can be linear rather than
O(n log n).
* lib/m4sugar/m4sugar.m4 (m4_append, m4_append_uniq): Fix comments.
Analysis by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-14 10:13:28 -06:00
Eric Blake
8d6a868692 Inherit improvements from bison's fork of m4sugar.
* lib/m4sugar/m4sugar.m4 (m4_PACKAGE_VERSION): Ignore failure to
find version.texi, since bison does not provide it.
(m4_prepend): Add new macro, from bison.
(m4_prepend_uniq, m4_prepend_uniq_w): Add new macros, for
completeness.
(_m4_append_uniq): Rename...
(_m4_grow_uniq_1): ...to this to share implementation, and
optimize initial assignment.
(m4_append_uniq_w): Adjust caller.
* NEWS: Document new macros.
* doc/autoconf.texi (Text processing Macros) <m4_append>: Mention
speed consideration.
<m4_prepend>: Document the new prepend variants.
* tests/m4sugar.at (m4@&t@_prepend): New test.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-07-11 11:14:46 -06:00
Ralf Wildenhues
f89a680ac5 Fix texinfo macros @dvar, @ovar.
* doc/autoconf.texi (@dvar): Remove trailing newline.
(@ovar): Likewise.  Fix macro documentation.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-07-06 10:55:00 +02:00
Andreas Schwab
8f052f4c5a Replace @item with @itemx where appropriate.
* doc/autoconf.texi (autoscan Invocation): Fix spacing.
(autoconf Invocation): Likewise.
(autoreconf Invocation): Likewise.
(autoheader Invocation): Likewise.
(autom4te Invocation): Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-06-28 11:30:16 +02:00
Eric Blake
7bedbd5be1 Mark AC_TYPE_SIGNAL as obsolete.
* lib/autoconf/types.m4 (AC_TYPE_SIGNAL): Switch to AU_DEFUN.
* doc/autoconf.texi (Function Portability): Update documentation.
(Particular Types): Move AC_TYPE_SIGNAL...
(Obsolete Macros): ...here, and mention why.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-06-09 06:25:35 -06:00
Eric Blake
f15bc5b04c Document Solaris /bin/sh redirection pitfall.
* doc/autoconf.texi (File Descriptors): Mention redirection bug.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-27 11:10:33 -06:00
Eric Blake
95dfc19749 Improve documentation of ! issues.
* doc/autoconf.texi (Limitations of Builtins) <!>: Touch up.
Reported by Noah Misch.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-14 13:41:18 -06:00
Eric Blake
3ca7a51d0f Document some FreeBSD shell bugs.
* doc/autoconf.texi (Limitations of Builtins) <!>: Mention ! issue
in compound pipe commands.
<export>: Mention difference of exporting an undefined variable.
(Shell Functions): Mention loss of $? in entry to shell functions.
Extracted from the git mailing list.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-14 08:25:01 -06:00
Eric Blake
684d299c1d Fix typo.
* doc/autoconf.texi (Shell Substitutions): Drop at_ prefix.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-06 09:57:48 -06:00
Eric Blake
cc73f00e18 Avoid overfull \hbox.
* doc/autoconf.texi (Versioning): Reword to fit line size.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-06 09:46:35 -06:00
Eric Blake
2811da8583 Document $(( )) pitfalls.
* doc/autoconf.texi (Shell Substitutions): Mention octal
vs. decimal.  Mention autotest's at_func_arith.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-06 09:46:34 -06:00
Eric Blake
c242f622dc Mention Solaris /usr/ucb/tr pitfall.
* doc/autoconf.texi (Limitations of Usual Tools) <tr>: Add section.
Reported by Bruno Haible and Jim Meyering.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-26 06:34:24 -06:00
Eric Blake
c11e71ae56 Mention m4sugar's internal quote strings.
* doc/autoconf.texi (Quadrigraphs): Mention alternate quote used
in m4sugar, and how to still output it literally.
* tests/m4sugar.at (m4@&t@_split): And test it.
Reported by Joel E. Denny.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-24 09:31:16 -06:00
Eric Blake
4d953cea64 Allow unbalanced () in m4_expand.
* lib/m4sugar/m4sugar.m4 (m4_expand, _m4_expand): Use more complex
quotes.
(m4_noquote, _m4_split): Use consistent complex quote.
* tests/autotest.at (Left paren, Right paren): Test this.
(Parentheses): Ensure new quadrigraphs still work.
(AT_CHECK_AT_TITLE_CHAR): All title char tests exercise m4_expand.
* NEWS: Mention the fix.
* doc/autoconf.texi (Quadrigraphs): Revert mention of macros that
require quadrigraphs for ().
(Evaluation Macros) <m4_expand>: Relax the restriction against
unbalanced ().
(Pretty Help Strings) <AS_HELP_STRING>: Likewise.
(Writing Testsuites) <AT_SETUP>: Likewise.
Reported by Joel E. Denny, fix suggested by Noah Misch.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-23 09:32:05 -06:00
Eric Blake
c60735fbb8 Support unbalanced () in AT_SETUP by adding two new quadrigraphs.
* bin/autom4te.in (handle_output): Substitute @{:@ and @:}@.
(handle_traces): Likewise.
* lib/m4sugar/m4sugar.m4 (m4_qlen): Account for new quadrigraphs.
* tests/autotest.at (AT_CHECK_AT_TITLE_CHAR): Add new tests.
* doc/autoconf.texi (Quadrigraphs): Document them.
(Evaluation Macros) <m4_expand>: Enhance documentation.
(Text processing Macros) <m4_text_box>: Document cases where
quadrigraphs can help for problemetic unbalanced parentheses.
(Pretty Help Strings) <AS_HELP_STRING>: Likewise.
(Writing Testsuites) <AT_SETUP>: Likewise.
(Limitations of Builtins) <case>: Consolidate text on unbalanced
parentheses, and add an example of creative comments.
* NEWS: Document the addition.
Reported by Joel E. Denny.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-22 16:28:14 -06:00
Eric Blake
9651f4a0e1 Document pdksh exec behavior.
* doc/autoconf.texi (Limitations of Builtins) <exec>: New
subsection.
Discovered by Jim Meyering.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-16 12:03:45 -06:00
Eric Blake
af1e1f2b9d AC_AUTOCONF_VERSION might contain arbitrary macro names.
* doc/autoconf.texi (Versioning): Mention problem with expansion.
* tests/tools.at (autoconf: AC_AUTOCONF_VERSION): Adjust test.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-10 14:09:18 -06:00
Eric Blake
0902437e28 Generate web docs for 2.62.
* doc/autoconf.texi (Evaluation Macros): Fix typo.
(Notices): Use recommended means to escape RCS keyword.
* cfg.mk (gnulib_dir): New macro.
(web-manual): New target.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-08 15:01:38 -06:00
Eric Blake
eb06dd76c9 Avoid some autoreconf -Wall warnings.
* configure.ac: Use proper quoting, to be a good example.
(PACKAGE_NAME): Remove setting covered by autoconf.
(AM_INIT_AUTOMAKE): Bump automake requirement, for html rules.
* doc/Makefile.am (TEXI2DVI): Remove settings covered by
automake.
(html, autoconf_1.html, standards_1.html): Likewise.
(TEXI2HTML, TEXI2HTML_FLAGS): Remove unused macros.
* Makefile.am (html): Likewise.
* doc/autoconf.texi (Quoting and Parameters): Add missing section
name.
* tests/Makefile.am (AUTOMAKE_OPTIONS): Intentionally ignore
warning about our override, until Automake is fixed.
* README-hacking: Document minimum requirements for bootstrap.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-05 09:24:18 -06:00
Eric Blake
991e8cc0ca Sync files from upstream, and pass 'make syntax-check'.
* config/announce-gen: Move...
* build-aux/announce-gen: ...here, and sync from gnulib.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
* cfg.mk (announce_gen): Likewise.
(prev_version_file): Delete, relying on default in maint.mk.
(gpg_key_ID): New macro.
(url_dir_list): Rewrite to match coreutils.
* config/prev-version.txt: Move...
* .prev-version: ...here, and adjust to 2.61.
* build-aux/vc-list-files: Sync from coreutils.
* maint.mk: Resynchronize with coreutils, where possible.
(ME): Remove $(srcdir) from definition.
(CVS): Delete.
(GIT, VC, VC-tag): New macros.
(CVS_LIST, CVS_LIST_EXCEPT): Rename...
(VC_LIST, VC_LIST_EXCEPT): ...to this.
(cvs-tag-check): Delete.
(cvs-diff-check): Rename...
(vc-diff-check): ...to this.
(sc_file_system): Allow FHS acronym.
* doc/autoconf.texi (Particular Functions): Recommend
unconditional <config.h>.
* build-aux/config.guess: Sync from upstream (manually).
* build-aux/config.sub: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.
* .gitattributes: Ignore whitespace problems in upstream files.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-03 06:22:48 -06:00
Ralf Wildenhues
4278e86fdf Document awk printf %u bug on HP-UX/IA.
* doc/autoconf.texi (Limitations of Usual Tools): Mention awk %u
bug on HP-UX/IA.
Report by Peter O'Gorman.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-03 08:04:34 +02:00
Eric Blake
b580f54e11 Recommend the just-released M4 1.4.11.
* NEWS: Update recommendation.
* README: Likewise.
* doc/autoconf.texi (Introduction): Likewise.
* m4/m4.m4 (AC_PROG_GNU_M4): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-02 13:21:33 -06:00
Eric Blake
27eace5302 Typo fix.
* doc/autoconf.texi (Limitations of Usual Tools) <sed>: Fix
typos in last patch.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-26 06:10:19 -06:00
Jim Meyering
ac5e021157 Fix texinfo syntax error.
* doc/autoconf.texi (Limitations of Usual Tools): s/@kbd {/@kbd{/

Signed-off-by: Jim Meyering <meyering@redhat.com>
2008-03-26 10:31:28 +01:00
Ralf Wildenhues
4503a1da11 Warn, not fail on whitespace-only precious variable differences.
* lib/autoconf/general.m4 (_AC_ARG_VAR_VALIDATE): Output
precious variable differences less ambiguous with `ugly-quotes'.
If their settings differ only in whitespace, do not fail, but
reuse the old value.
* tests/torture.at (AT_CHECK_AC_ARG_VAR): Extend macro to allow
an optional status and expected-warning argument.  Fix m4
quotation for initial value.
(AC_ARG_VAR): Also test for whitespace-only differences, and
that the old value is retained in this case.
* doc/autoconf.texi (Setting Output Variables): Document this.
* NEWS: Update.
Report and initial patch by Paolo Bonzini.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-26 06:55:22 +01:00
Eric Blake
5c55fb1f4d Document busybox sed bug.
* doc/autoconf.texi (Limitations of Usual Tools): Mention
restrictions when using back-references.
Reported by Vincent Lefevre:
<http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13013>.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-25 21:19:58 -06:00
Eric Blake
7b93a8c8f6 Document Automake interaction with AC_CONFIG_MACRO_DIR.
* doc/autoconf.texi (Input): Mention ACLOCAL_AMFLAGS for automake
users.
* THANKS: Update.
Reported by Chris Pickett.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-25 20:51:07 -06:00
Eric Blake
6893b8be8a Document more uses of $cross_compiling.
* doc/autoconf.texi (Runtime): Document that a temporary override
is permissible.
* THANKS: Update.
Reported by Ineiev, example by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-21 13:27:34 -06:00
Stepan Kasal
ad77d1d72c * doc/autoconf.texi (Introduction): Improve the paraphrase of
Henry Spencer's quotation.

Signed-off-by: Stepan Kasal <skasal@redhat.com>
2008-03-19 15:33:48 +01:00
Eric Blake
a5406903ab Emphasize that ease of configure triumphs over ease of autoconf.
* doc/autoconf.texi (Introduction): Expand on primary
vs. secondary goal of autoconf.
* THANKS: Update.
Inspired by Paul Smith.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-18 19:19:54 -06:00
Eric Blake
39ed7a3e19 Tweak m4_wrap to force FIFO or LIFO semantics.
* lib/m4sugar/m4sugar.m4 (m4_wrap): Override M4 implementation.
(m4_wrap_lifo, _m4_wrap): New macros.
* lib/m4sugar/m4sh.m4 (AS_INIT): Combine all cleanup into known
order, prior to m4sugar's.
(_AS_DETECT_BETTER_SHELL): Use cleanup parameter, rather than
m4_wrap.
* lib/autotest/general.m4 (AT_INIT): Combine all cleanup into
known order, prior to m4sh's.
* doc/autoconf.texi (Diagnostic Macros) <m4_fatal>: Document
argument.
(Redefined M4 Macros) <m4_wrap>: Rewrite documentation to match
new behavior.
* tests/m4sh.at (AS_INIT cleanup): New test.
* NEWS: Document the change.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-11 18:58:31 -06:00
Eric Blake
fd8b6f4727 Minor documentation fix.
* doc/autoconf.texi (Evaluation Macros): Fix typo.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-06 08:20:48 -07:00
Ralf Wildenhues
af562c9a73 autoreconf -m now honors $MAKE.
* bin/autoreconf.in ($run_make): Renamed from ...
($make): ... this.  Use now as command to run `make',
overridden by $MAKE.  Document this in --help output.
* doc/autoconf.texi (autoreconf Invocation): Document
all environment variables honored by autoreconf.
* NEWS: Update.
Report by Paul Eggert.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-03-03 23:53:44 +01:00
Eric Blake
e3d1e29bc3 Documentation improvements.
* doc/autoconf.texi (Looping constructs): s/recurses/repeats/.
(Evaluation Macros): Drop `1' suffix from metasyntax variable name
that preceeds @dots.  Improve wording.
(Text processing Macros): Drop `1' suffix from metasyntax variable
name that preceeds @dots.
(Number processing Macros): Drop `1' suffix from metasyntax
variable name that preceeds @dots.  Improve wording.
* lib/m4sugar/m4sugar.m4 (m4_cmp): Comment wording fix.
Suggested by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-03-03 06:29:00 -07:00
Eric Blake
01a17a6664 Improve documentation for writing autotest suites.
* doc/autoconf.texi (Writing Testsuites) <AT_CHECK>: Mention that
checks must live inside a test group.
Reported by Christopher Hulbert.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-22 16:30:39 -07:00
Eric Blake
e93d422b9e Fix texinfo typos in previous patch.
* doc/autoconf.texi (Site Defaults): s/[{}]/@&/g.
Reported by Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-08 08:35:27 -07:00
Eric Blake
52a9605272 Describe a config.site that can be used for FHS compliance.
* doc/autoconf.texi (Site Defaults): Fix typo.  Add new example
for FHS.
* THANKS: Update.
Reported by Jules Colding and Ralf Wildenhues.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-08 08:15:22 -07:00
Eric Blake
8957ad82aa * doc/autoconf.texi (Limitations of Usual Tools) <grep>: Fix typo.
Signed-off-by: Eric Blake <ebb9@byu.net>
2008-02-02 16:38:23 -07:00
Paul Eggert
7121e5b63d * doc/autoconf.texi: Update Back-Cover text to reflect new GNU wording. 2008-01-30 16:48:07 -08:00
Eric Blake
81e79b1cb4 Fix more autotest regressions.
* lib/autotest/general.m4 (AT_LINE): Fix regression from
2007-10-04 when file name is `dnl'.
(AT_INIT) <PREPARE_TESTS>: Move command-line assignments...
<TESTS_BEGIN>: ...to this new diversion, to fix regression from
yesterday in libtool's testsuite.
(_AT_ARG_OPTION): Detect write failure.
* doc/autoconf.texi (Diversion support): Document PREPARE_TESTS to
make libtool's use kosher.  Document m4_init.
(Programming in M4sh): Document AS_INIT.
(Writing Testsuites): Document limitation of AT_DATA file name.
* tests/autotest.at (unusual file names): New test.
(Banners, Keywords and ranges): Use correct shell.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-01-29 16:56:36 -07:00
Eric Blake
9935105de6 * doc/autoconf.texi (Limitations of Builtins) <.>: Mention bash bug.
Signed-off-by: Eric Blake <ebb9@byu.net>
2008-01-29 07:45:10 -07:00
Eric Blake
a0d6f350fe * doc/autoconf.texi (Limitations of Usual Tools) <grep>: Document
BSD behavior on binary input.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-01-28 19:14:27 -07:00
Eric Blake
b91a600e7f Add 'testsuite -C dir'.
* lib/autotest/general.m4 (_AT_ARG_OPTION): Move missing argument
detection...
(AT_INIT) <PARSE_ARGS_END>: ...here, since -k always takes
argument.
<DEFAULTS>: Delay computation of variables based on $at_dir...
<PREPARE_TESTS>: ...to here, since -C can change $at_dir.
<TESTS>: Re-invoke via absolute name, since -C may be in effect.
<PARSE_ARGS>: Parse new option.
<HELP_TUNING>: Document it.
* tests/autotest.at (Choosing where testsuite is run): New test
for this feature.
(Keywords and ranges): Add test for missing -k argument.
* NEWS: Document this.
* doc/autoconf.texi (testsuite Invocation): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-01-28 06:57:46 -07:00
Ralf Wildenhues
7882bbbed4 Sync upstream files from gnulib.
* build-aux/config.guess, build-aux/config.sub,
build-aux/texinfo.tex: Sync from gnulib.
* doc/fdl.texi, doc/make-stds.texi, doc/standards.texi:
Likewise.
2008-01-24 19:35:56 +01:00
Ralf Wildenhues
022a124034 * doc/autoconf.texi (Particular Programs): Do not mention the
Autoconf version in which the AC_PROG_INSTALL change was done.
Suggested by Paul Eggert.
2008-01-23 07:28:19 +01:00
Ralf Wildenhues
4380a86978 AC_PROG_INSTALL: require installation of multiple files.
* lib/autoconf/programs.m4 (AC_PROG_INSTALL): Require that
`install -c file1 file2 dir' works.
* doc/autoconf.texi (Particular Programs): Document this.
* NEWS: Update.
2008-01-22 07:00:44 +01:00
Eric Blake
0b2702981d Improve documentation about default include directives.
* doc/autoconf.texi (Generic Headers, Generic Declarations)
(Generic Structures, Generic Types)
(Generic Compiler Characteristics): Add links to
AC_INCLUDES_DEFAULT.
Reported by Reuben Thomas.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-01-21 12:45:44 -07:00
Ralf Wildenhues
2b1c424154 * doc/autoconf.texi (autom4te Invocation, Autom4te Cache): Fix typos. 2007-12-04 22:36:22 +01:00
Ralf Wildenhues
fefcc77fea Fix copyright years.
* Makefile.am, doc/install.texi, lib/autoconf/fortran.m4,
lib/autoconf/lang.m4, lib/freeze.mk: Likewise.
2007-12-04 22:30:33 +01:00
Eric Blake
3832e8e303 When using older automake, don't downgrade build-aux/texinfo.tex.
* configure.ac (AM_INIT_AUTOMAKE): Add no-texinfo.tex option.
* doc/Makefile.am (TEXINFO_TEX): Add.

Signed-off-by: Eric Blake <ebb9@byu.net>
2007-12-04 10:14:35 -07:00
Ralf Wildenhues
ee28883f0e Document Tru64 awk input splitting limitation.
* doc/autoconf.texi (Limitations of Usual Tools) <awk>:
Document that Tru64 awk always splits $0.
2007-11-26 19:36:48 +01:00
Ralf Wildenhues
a13f9b79a6 * doc/autoconf.texi (Shell Functions): New chapter. Document
IRIX sh $0 issue in functions, move content from ...
(Portable Shell): ... here.
(Shell Script Compiler): Note that shell functions are not
totally unportable any more.
2007-11-22 08:11:00 +01:00
Ralf Wildenhues
d7fd618ede * doc/autoconf.texi (Generic Programs): Fix typo. 2007-11-17 09:24:52 +01:00
Stepan Kasal
cf733bdf5f doc: AC_*_TOOL does not canonicalize the prefix
* doc/autoconf.texi (Generic Programs): Do not say that the *_TOOL
macros canonicalize, they simply use the `host_alias'.
2007-11-16 14:47:00 +01:00
Ralf Wildenhues
c33d474779 Shell functions and variables may share a namespace.
* doc/autoconf.texi (Portable Shell): Mention Solaris sh
limitation.
2007-11-15 07:58:03 +01:00
Paul Eggert
9b0314cc93 Don't worry about preprocessor when testing long long.
See: http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00075.html
* doc/autoconf.texi (Preprocessor Arithmetic): New section.
(AC_TYPE_LONG_LONG_INT, AC_TYPE_UNSIGNED_LONG_LONG_INT):
These no longer check for preprocessor flaws.
* lib/autoconf/types.m4 (_AC_TYPE_LONG_LONG_SNIPPET):
Do not check for preprocessor flows.
2007-11-13 00:16:19 -08:00
Ralf Wildenhues
610817462b * doc/autoconf.texi (Making testsuite Scripts): Document
":;{" shorthand as in previous patch.

2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>

* doc/autoconf.texi (Limitations of Builtins): Document problem
with { ... } a bit more clearly.  Suggest ":;{" as a shorthand
for the workaround.
* lib/m4sugar/Makefile.am (version.m4): Detect 'echo' failure.
Use ":;{" shorthand.
* tests/Makefile.am ($(srcdir)/package.m4): Likewise.
2007-11-12 23:30:58 -08:00
Benoit Sigoure
6d8cbe20d4 Document that $((expression)) is not portable.
* doc/autoconf.texi (Shell Substitutions): Here.

Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr>
2007-11-12 09:42:37 +01:00
Ralf Wildenhues
feef9e7e7e New config files output variable `top_build_prefix'.
* lib/autoconf/status.m4 (_AC_OUTPUT_FILE): Substitute
`top_build_prefix'.
* doc/autoconf.texi (Preset Output Variables): Document it.
* NEWS: Update.
Report by Bob Friesenhahn.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2007-11-09 07:51:19 +01:00
Benoit Sigoure
dc6058abe0 Adjust the documentation of autotest WRT atlocal.
* doc/autoconf.texi (Making testsuite Scripts): It is not necessary,
	when using Automake, to write a rule to produce atlocal, since it's
	an AC_CONFIG_FILES.  Mention that atlocal.in needs to be
	distributed, not atconfig.in.

Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr>
2007-11-04 18:13:48 +01:00
Eric Blake
c79a33de32 Update list information.
* README: Mention new autoconf-commit list.
* doc/autoconf.texi (Introduction): Mention autoconf-commit list.

Signed-off-by: Eric Blake <ebb9@byu.net>
2007-11-04 09:56:50 -07:00