Hello Ralf,

> > +macro selects this kind of output.  Though it can be called anywhere in
> > [EMAIL PROTECTED], it is customary to call it right after @code{AC_INIT}.

I decided for this:

        Though it can be called anywhere
        between @code{AC_INIT} and @code{AC_OUTPUT}, it is customary to call
        it right after @code{AC_INIT}.

> > +A third-party macro may, for example, require use of a config header
> > +without invoking AC_CONFIG_HEADERS twice like this:
> 
> Please put a comma after twice.

Done.  Refreshed patch is attached here.

> Please mention your commit, so I can finally commit the
> pending patch to Libtool and get this over with.  Thanks.

Will do.

Stepan
2005-08-18  Ralf Wildenhues  <[EMAIL PROTECTED]>,
            Stepan Kasal  <[EMAIL PROTECTED]>

        * lib/autoconf/status.m4 (_AC_CONFIG_REGISTER_DEST): When the
        first header appears, define AH_HEADER.
        * doc/autoconf.texi (Configuration Headers): Document AH_HEADER.
        Update limitations about when to call AC_CONFIG_HEADERS.
        (Configuration Commands): Document that AC_CONFIG_COMMANDS_PRE
        parameter can call AC_SUBST, AC_DEFINE, or AC_CONFIG_FOOS; explain
        that AC_CONFIG_COMMANDS_PRE and AC_CONFIG_COMMANDS_POST are not
        ``Configuration Actions''; fix their index entries.

Index: doc/autoconf.texi
===================================================================
RCS file: /cvsroot/autoconf/autoconf/doc/autoconf.texi,v
retrieving revision 1.925
diff -u -r1.925 autoconf.texi
--- doc/autoconf.texi   6 Jul 2005 21:39:31 -0000       1.925
+++ doc/autoconf.texi   18 Aug 2005 13:02:00 -0000
@@ -2648,8 +2648,9 @@
 operating systems.  As an alternative to passing @option{-D} options to
 the compiler, @command{configure} scripts can create a C header file
 containing @samp{#define} directives.  The @code{AC_CONFIG_HEADERS}
-macro selects this kind of output.  It should be called right after
[EMAIL PROTECTED]
+macro selects this kind of output.  Though it can be called anywhere
+between @code{AC_INIT} and @code{AC_OUTPUT}, it is customary to call
+it right after @code{AC_INIT}.
 
 The package should @samp{#include} the configuration header file before
 any other header files, to prevent inconsistencies in declarations (for
@@ -2697,6 +2698,19 @@
 to prepend and/or append boilerplate to the file.
 @end defmac
 
[EMAIL PROTECTED] AH_HEADER
+This macro is defined as the name of the first declared config header
+and undefined if no config headers have been declared up to this point.
+A third-party macro may, for example, require use of a config header
+without invoking AC_CONFIG_HEADERS twice, like this:
+
[EMAIL PROTECTED]
+AC_CONFIG_COMMANDS_PRE(
+       [m4_ifndef([AH_HEADER], [AC_CONFIG_HEADERS([config.h])])])
[EMAIL PROTECTED] example
+
[EMAIL PROTECTED] defmac
+
 @xref{Configuration Actions}, for more details on @var{header}.
 
 @menu
@@ -2970,13 +2984,23 @@
 @end example
 @end defmac
 
+The following two macros look similar, but in fact they are not of the same
+breed: they are executed directly by @file{configure}, so you cannot use
[EMAIL PROTECTED] to re-run them.
+
[EMAIL PROTECTED] Yet it is good to leave them here.  The user sees them 
together and
[EMAIL PROTECTED] decides which best fits their needs.
+
 @defmac AC_CONFIG_COMMANDS_PRE (@var{cmds})
[EMAIL PROTECTED]
[EMAIL PROTECTED]
 Execute the @var{cmds} right before creating @file{config.status}.
+
+This macro presents the last opportunity to call @code{AC_SUBST},
[EMAIL PROTECTED], or @code{AC_CONFIG_FOOS} macros. 
 @end defmac
 
 @defmac AC_CONFIG_COMMANDS_POST (@var{cmds})
[EMAIL PROTECTED]
[EMAIL PROTECTED]
 Execute the @var{cmds} right after creating @file{config.status}.
 @end defmac
 
Index: lib/autoconf/status.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/status.m4,v
retrieving revision 1.73
diff -u -r1.73 status.m4
--- lib/autoconf/status.m4      16 Aug 2005 09:11:06 -0000      1.73
+++ lib/autoconf/status.m4      18 Aug 2005 13:02:01 -0000
@@ -258,9 +258,14 @@
 # With CONFIG_LINKS, reject DEST=., because it is makes it hard for 
./config.status
 # to guess the links to establish (`./config.status .').
 #
+# Save the name of the first config header to AH_HEADER.
+#
 m4_define([_AC_CONFIG_REGISTER_DEST],
 [_AC_CONFIG_UNIQUE([$1], [$3])dnl
-m4_if([$1 $3], [LINKS .], [AC_FATAL([invalid destination of a config link: 
`.'])])dnl
+m4_if([$1 $3], [LINKS .],
+      [AC_FATAL([invalid destination of a config link: `.'])])dnl
+m4_if([$1], [HEADERS],
+      [m4_define_default([AH_HEADER], [$3])])dnl
 dnl
 dnl Recognize TAG as an argument to config.status:
 dnl

Reply via email to