autoconf-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU Autoconf source repository branch, master, updated. v2.63-34-g


From: Paolo Bonzini
Subject: [SCM] GNU Autoconf source repository branch, master, updated. v2.63-34-g06bceef
Date: Sat, 11 Oct 2008 15:25:26 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Autoconf source repository".

http://git.sv.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=06bceefef2590d66bc316e9b02dcbfe325a41600

The branch, master has been updated
       via  06bceefef2590d66bc316e9b02dcbfe325a41600 (commit)
       via  00382ba1b1c11b775a32a14af02a9ae2599c327c (commit)
      from  523ee0e116b772dfc7293212e2481db10042babe (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 06bceefef2590d66bc316e9b02dcbfe325a41600
Author: Paolo Bonzini <address@hidden>
Date:   Fri Oct 10 08:40:52 2008 +0200

    Add and document AS_ME_PREPARE and AS_LINENO_PREPARE
    
    2008-10-10  Paolo Bonzini  <address@hidden>
    
        * 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.

commit 00382ba1b1c11b775a32a14af02a9ae2599c327c
Author: Paolo Bonzini <address@hidden>
Date:   Fri Oct 10 08:33:04 2008 +0200

    extract "Programming in M4sh" into its own chapter
    
    2008-10-10  Paolo Bonzini  <address@hidden>
    
        * doc/autoconf.texi (Programming in M4sh): Make its own chapter.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog               |   14 ++++++
 NEWS                    |    6 ++-
 bin/autoconf.as         |    1 +
 doc/autoconf.texi       |  109 ++++++++++++++++++++++++++++++----------------
 lib/autotest/general.m4 |    1 +
 lib/m4sugar/m4sh.m4     |    2 +
 6 files changed, 94 insertions(+), 39 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 2ab0394..76dc4f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2008-10-10  Paolo Bonzini  <address@hidden>
+
+       * 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.
+       * NEWS: Mention them.
+
+       * bin/autoconf.as: Invoke AS_ME_PREPARE.
+       * lib/autotest/general.m4: Likewise.
+
+2008-10-10  Paolo Bonzini  <address@hidden>
+
+       * doc/autoconf.texi (Programming in M4sh): Make its own chapter.
+
 2008-10-10  Eric Blake  <address@hidden>
 
        Fix _AS_MKDIR_P usage.
diff --git a/NEWS b/NEWS
index 97bcb6a..31e58c6 100644
--- a/NEWS
+++ b/NEWS
@@ -15,8 +15,12 @@ GNU Autoconf NEWS - User visible changes.
 ** The following m4sugar macros are new:
    m4_default_quoted
 
+** The following documented m4sh macros are new:
+   AS_LINENO_PREPARE
+   AS_ME_PREPARE
+
 ** The following m4sh macros are documented now:
-   AS_VERSION_COMPARE.
+   AS_VERSION_COMPARE
 
 
 * Major changes in Autoconf 2.63 (2008-09-09) [stable]
diff --git a/bin/autoconf.as b/bin/autoconf.as
index 3a25322..6eab32a 100644
--- a/bin/autoconf.as
+++ b/bin/autoconf.as
@@ -22,6 +22,7 @@ m4_divert_push([HEADER-COPYRIGHT])dnl
 # 02110-1301, USA.
 
 m4_divert_pop([HEADER-COPYRIGHT])dnl back to BODY
+AS_ME_PREPARE[]dnl
 
 usage=["\
 Usage: $0 [OPTION]... [TEMPLATE-FILE]
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index e1afada..d9d82aa 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -260,6 +260,7 @@ freedom.''
 * Writing Tests::               How to write new feature checks
 * Results::                     What to do with results from feature checks
 * Programming in M4::           Layers on top of which Autoconf is written
+* Programming in M4sh::         Shell portability layer
 * Writing Autoconf Macros::     Adding new macros to Autoconf
 * Portable Shell::              Shell script portability pitfalls
 * Portable Make::               Makefile portability pitfalls
@@ -428,7 +429,11 @@ Programming in M4
 * M4 Quotation::                Protecting macros from unwanted expansion
 * Using autom4te::              The Autoconf executables backbone
 * Programming in M4sugar::      Convenient pure M4 macros
-* Programming in M4sh::         Common shell Constructs
+
+Programming in M4sh
+
+* Common Shell Constructs::     Portability layer for common shell constructs
+* Initialization Macros::       Macros to establish a sane shell environment
 * File Descriptor Macros::      File descriptor macros for input and output
 
 M4 Quotation
@@ -9240,8 +9245,6 @@ matter of fact, @emph{anything that is not documented 
must not be used}.
 * M4 Quotation::                Protecting macros from unwanted expansion
 * Using autom4te::              The Autoconf executables backbone
 * Programming in M4sugar::      Convenient pure M4 macros
-* Programming in M4sh::         Common shell Constructs
-* File Descriptor Macros::      File descriptor macros for input and output
 @end menu
 
 @node M4 Quotation
@@ -11770,10 +11773,7 @@ Any token matching @var{pattern} is allowed, including 
if it matches an
 @end defmac
 
 @node Programming in M4sh
address@hidden Programming in M4sh
-
address@hidden FIXME: Eventually will become a chapter, as it is not related to
address@hidden programming in M4 per se.
address@hidden Programming in M4sh
 
 M4sh, pronounced ``mash'', is aiming at producing portable Bourne shell
 scripts.  This name was coined by Lars J. Aas, who notes that,
@@ -11806,6 +11806,15 @@ delimiter namespace @samp{^_AS[A-Z]} in the output 
file.  You should not
 define your own macros or output shell code that conflicts with these
 namespaces.
 
address@hidden
+* Common Shell Constructs::     Portability layer for common shell constructs
+* Initialization Macros::       Macros to establish a sane shell environment
+* File Descriptor Macros::      File descriptor macros for input and output
address@hidden menu
+
address@hidden Common Shell Constructs
address@hidden Common Shell Constructs
+
 M4sh provides portable alternatives for some common shell constructs
 that unfortunately are not portable in practice.
 
@@ -11819,14 +11828,6 @@ if @code{$file} is @samp{/one/two/three}, the command
 @end defmac
 @end ignore
 
address@hidden AS_BOURNE_COMPATIBLE
address@hidden
-Set up the shell to be more compatible with the Bourne shell as
-standardized by Posix, if possible.  This may involve setting
-environment variables, or setting options, or similar
-implementation-specific actions.
address@hidden defmac
-
 @defmac AS_CASE (@var{word}, @ovar{pattern1}, @ovar{if-matched1}, @
   @dots{}, @ovar{default})
 @asindex{CASE}
@@ -11835,12 +11836,15 @@ against one or more patterns.  @var{if-matched} is 
run if the
 corresponding pattern matched @var{word}, else @var{default} is run.
 @end defmac
 
address@hidden Deprecated, to be replaced by a better API
address@hidden
 @defmac AS_DIRNAME (@var{file-name})
 @asindex{DIRNAME}
 Output the directory portion of @var{file-name}.  For example,
 if @code{$file} is @samp{/one/two/three}, the command
 @code{dir=`AS_DIRNAME(["$file"])`} sets @code{dir} to @samp{/one/two}.
 @end defmac
address@hidden ignore
 
 @defmac AS_IF (@var{test1}, @ovar{run-if-true1}, @dots{}, @ovar{run-if-false})
 @asindex{IF}
@@ -11861,14 +11865,6 @@ ensures any required macros of @code{HANDLE_FOO}
 are expanded before the first test.
 @end defmac
 
address@hidden AS_INIT
address@hidden
-Initialize the M4sh environment.  This macro calls @code{m4_init}, then
-outputs the @code{#! /bin/sh} line, a notice about where the output was
-generated from, and code to sanitize the environment for the rest of the
-script.  Finally, it changes the current diversion to @code{BODY}.
address@hidden defmac
-
 @defmac AS_MKDIR_P (@var{file-name})
 @asindex{MKDIR_P}
 Make the directory @var{file-name}, including intervening directories
@@ -11884,15 +11880,6 @@ script.
 Also see the @code{AC_PROG_MKDIR_P} macro (@pxref{Particular Programs}).
 @end defmac
 
address@hidden AS_SHELL_SANITIZE
address@hidden
-Initialize the shell suitably for @command{configure} scripts.  This has
-the effect of @code{AS_BOURNE_COMPATIBLE}, and sets some other
-environment variables for predictable results from configuration tests.
-For example, it sets @env{LC_ALL} to change to the default C locale.
address@hidden Shell Variables}.
address@hidden defmac
-
 @defmac AS_TR_CPP (@var{expression})
 @asindex{TR_CPP}
 Transform @var{expression} into a valid right-hand side for a C @code{#define}.
@@ -11936,6 +11923,51 @@ glibc (@pxref{String/Array Comparison, , String/Array 
Comparison, libc,
 The @acronym{GNU} C Library}).
 @end defmac
 
address@hidden Initialization Macros
address@hidden Initialization Macros
+
address@hidden AS_BOURNE_COMPATIBLE
address@hidden
+Set up the shell to be more compatible with the Bourne shell as
+standardized by Posix, if possible.  This may involve setting
+environment variables, or setting options, or similar
+implementation-specific actions.  This macro is deprecated, since
address@hidden already invokes it.
address@hidden defmac
+
address@hidden AS_INIT
address@hidden
+Initialize the M4sh environment.  This macro calls @code{m4_init}, then
+outputs the @code{#! /bin/sh} line, a notice about where the output was
+generated from, and code to sanitize the environment for the rest of the
+script.  Finally, it changes the current diversion to @code{BODY}.
address@hidden defmac
+
address@hidden AS_LINENO_PREPARE
address@hidden
address@hidden LINENO
+Find a shell that supports the special variable @env{LINENO}, which
+contains the number of the currently executing line.  This macro is
+automatically invoked by @code{AC_INIT} in configure scripts.
address@hidden defmac
+
address@hidden AS_ME_PREPARE
address@hidden
+Set up variable @env{as_me} to be the basename of the currently executing
+script.  This macro is automatically invoked by @code{AC_INIT} in
+configure scripts.
address@hidden defmac
+
address@hidden AS_SHELL_SANITIZE
address@hidden
+Initialize the shell suitably for @command{configure} scripts.  This has
+the effect of @code{AS_BOURNE_COMPATIBLE}, and sets some other
+environment variables for predictable results from configuration tests.
+For example, it sets @env{LC_ALL} to change to the default C locale.
address@hidden Shell Variables}.  This macro is deprecated, since
address@hidden already invokes it.
address@hidden defmac
+
 
 @node File Descriptor Macros
 @section File Descriptor Macros
@@ -13985,12 +14017,13 @@ etc.)@: as described above.
 @item LINENO
 Most modern shells provide the current line number in @code{LINENO}.
 Its value is the line number of the beginning of the current command.
-Autoconf attempts to execute @command{configure} with a shell that
-supports @code{LINENO}.
-If no such shell is available, it attempts to implement @code{LINENO}
-with a Sed prepass that replaces each instance of the string
address@hidden (not followed by an alphanumeric character) with the
-line's number.
+M4sh, and hence Autoconf, attempts to execute @command{configure} with
+a shell that supports @code{LINENO}.  If no such shell is available, it
+attempts to implement @code{LINENO} with a Sed prepass that replaces each
+instance of the string @code{$LINENO} (not followed by an alphanumeric
+character) with the line's number.  In M4sh scripts you should execute
address@hidden so that these workarounds are included in
+your script; configure scripts do this automatically in @code{AC_INIT}.
 
 You should not rely on @code{LINENO} within @command{eval}, as the
 behavior differs in practice.  Also, the possibility of the Sed
diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4
index d19f9d9..e39aee1 100644
--- a/lib/autotest/general.m4
+++ b/lib/autotest/general.m4
@@ -216,6 +216,7 @@ m4_define([AT_help_all], [])
 m4_foreach([AT_name], [_AT_DEFINE_INIT_LIST], [m4_popdef(m4_defn([AT_name]))])
 m4_wrap([_AT_FINISH])
 AS_INIT[]dnl
+AS_ME_PREPARE[]dnl
 m4_divert_push([DEFAULTS])dnl
 AT_COPYRIGHT(
 [Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4
index 369d27a..ef3d93b 100644
--- a/lib/m4sugar/m4sh.m4
+++ b/lib/m4sugar/m4sh.m4
@@ -914,6 +914,7 @@ fi
 # _AS_ME_PREPARE
 # --------------
 # Define $as_me to the basename of the executable file's name.
+m4_defun([AS_ME_PREPARE], [AS_REQUIRE([_$0])])
 m4_defun([_AS_ME_PREPARE],
 [AS_REQUIRE([_AS_BASENAME_PREPARE])dnl
 as_me=`AS_BASENAME("$[0]")`
@@ -942,6 +943,7 @@ m4_define([_AS_LINENO_WORKS],
 # the case of embedded executables (such as config.status within
 # configure) you'd compare LINENO wrt config.status vs. _oline_ wrt
 # configure.
+m4_defun([AS_LINENO_PREPARE], [AS_REQUIRE([_$0])])
 m4_defun([_AS_LINENO_PREPARE],
 [AS_REQUIRE([_AS_CR_PREPARE])dnl
 AS_REQUIRE([_AS_ME_PREPARE])dnl


hooks/post-receive
--
GNU Autoconf source repository




reply via email to

[Prev in Thread] Current Thread [Next in Thread]