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-105-


From: Eric Blake
Subject: [SCM] GNU Autoconf source repository branch, master, updated. v2.63-105-gce2d0f0
Date: Sat, 25 Oct 2008 12:49:17 +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=ce2d0f043cbe77a78fb1d0e2427543cf8cb9c9ca

The branch, master has been updated
       via  ce2d0f043cbe77a78fb1d0e2427543cf8cb9c9ca (commit)
       via  5d9dae38a348f4e9cc827bed1e97b6b5a522dcfa (commit)
       via  489b6dac8c6c037499908e17171b2fcc75aa7512 (commit)
      from  8425d6363bf57cfef26496576e9ba5f5dc51b67b (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 ce2d0f043cbe77a78fb1d0e2427543cf8cb9c9ca
Author: Eric Blake <address@hidden>
Date:   Sat Oct 25 06:37:43 2008 -0600

    Simplify _AS_PREPARE handling of functions.
    
    * lib/m4sugar/m4sh.m4 (AS_REQUIRE_SHELL_FN): Factor...
    (_AS_REQUIRE_SHELL_FN): ...into new helper macro.
    (_AS_PREPARE): Temporarily redefine AS_REQUIRE_SHELL_FN to make
    this task easier.
    (_AS_LINENO_PREPARE): Make more efficient.
    (_AS_MKDIR_P_PREPARE): Simplify use in _AS_PREPARE.
    (_AS_UNSET_PREPARE): Avoid blank newline.
    (AS_INIT): Emit as_func_unset alongside other functions.
    
    Signed-off-by: Eric Blake <address@hidden>

commit 5d9dae38a348f4e9cc827bed1e97b6b5a522dcfa
Author: Eric Blake <address@hidden>
Date:   Sat Oct 25 06:29:37 2008 -0600

    Document AS_EXIT.
    
    * doc/autoconf.texi (Common Shell Constructs) <AS_EXIT>: Document
    this macro.
    (Limitations of Builtins): Mention AS_EXIT.
    * NEWS: Mention it.
    
    Signed-off-by: Eric Blake <address@hidden>

commit 489b6dac8c6c037499908e17171b2fcc75aa7512
Author: Eric Blake <address@hidden>
Date:   Sat Oct 25 06:26:49 2008 -0600

    Use AS_EXIT in autoconf.as.
    
    * bin/autoconf.as: Consistently use AS_EXIT.
    
    Signed-off-by: Eric Blake <address@hidden>

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

Summary of changes:
 ChangeLog           |   23 +++++++++++++++++++++++
 NEWS                |    6 +++---
 bin/autoconf.as     |    8 ++++----
 doc/autoconf.texi   |   11 ++++++++++-
 lib/m4sugar/m4sh.m4 |   49 +++++++++++++++++++++++++------------------------
 5 files changed, 65 insertions(+), 32 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6be628c..dab6a6e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+2008-10-25  Eric Blake  <address@hidden>
+
+       Simplify _AS_PREPARE handling of functions.
+       * lib/m4sugar/m4sh.m4 (AS_REQUIRE_SHELL_FN): Factor...
+       (_AS_REQUIRE_SHELL_FN): ...into new helper macro.
+       (_AS_PREPARE): Temporarily redefine AS_REQUIRE_SHELL_FN to make
+       this task easier.
+       (_AS_LINENO_PREPARE): Make more efficient.
+       (_AS_MKDIR_P_PREPARE): Simplify use in _AS_PREPARE.
+       (_AS_UNSET_PREPARE): Avoid blank newline.
+       (AS_INIT): Emit as_func_unset alongside other functions.
+
+2008-10-25  Eric Blake  <address@hidden>
+
+       Document AS_EXIT.
+       * doc/autoconf.texi (Common Shell Constructs) <AS_EXIT>: Document
+       this macro.
+       (Limitations of Builtins): Mention AS_EXIT.
+       * NEWS: Mention it.
+
+       Use AS_EXIT in autoconf.as.
+       * bin/autoconf.as: Consistently use AS_EXIT.
+
 2008-10-24  Eric Blake  <address@hidden>
 
        Fix m4 underquoting in AC_PROG_INSTALL.
diff --git a/NEWS b/NEWS
index 496fac7..5bdff48 100644
--- a/NEWS
+++ b/NEWS
@@ -23,9 +23,9 @@ GNU Autoconf NEWS - User visible changes.
    AS_LINENO_PREPARE  AS_ME_PREPARE  AS_VAR_APPEND  AS_VAR_COPY
 
 ** The following m4sh macros are documented now:
-   AS_ECHO  AS_ECHO_N  AS_LITERAL_IF  AS_UNSET  AS_VAR_IF  AS_VAR_POPDEF
-   AS_VAR_PUSHDEF  AS_VAR_SET  AS_VAR_SET_IF  AS_VAR_TEST_SET
-   AS_VERSION_COMPARE
+   AS_ECHO  AS_ECHO_N  AS_EXIT  AS_LITERAL_IF  AS_UNSET  AS_VAR_IF
+   AS_VAR_POPDEF  AS_VAR_PUSHDEF  AS_VAR_SET  AS_VAR_SET_IF
+   AS_VAR_TEST_SET  AS_VERSION_COMPARE
 
 ** The m4sh macros AS_IF and AS_CASE can now be used in shell lists.
    The responsibility for supplying a trailing newline now belongs to
diff --git a/bin/autoconf.as b/bin/autoconf.as
index 6eab32a..c678e55 100644
--- a/bin/autoconf.as
+++ b/bin/autoconf.as
@@ -81,7 +81,7 @@ Try \`$as_me --help' for more information."
 exit_missing_arg='
   AS_ECHO(["$as_me: option \`$[1]'\'' requires an argument"]) >&2
   AS_ECHO(["$help"]) >&2
-  exit 1
+  AS_EXIT([1])
 ' # restore font-lock: "
 
 # Variables.
@@ -156,7 +156,7 @@ while test $# -gt 0 ; do
        exec >&2
        AS_ECHO(["$as_me: invalid option $[1]"])
        AS_ECHO(["$help"])
-       exit 1 ;;
+       AS_EXIT([1]) ;;
     * )
        break ;;
   esac
@@ -175,7 +175,7 @@ case $# in
       infile=configure.in
     else
       AS_ECHO(["$as_me: no input file"]) >&2
-      exit 1
+      AS_EXIT([1])
     fi
     test -z "$traces" && test -z "$outfile" && outfile=configure;;
   1)
@@ -183,7 +183,7 @@ case $# in
   *) exec >&2
      AS_ECHO(["$as_me: invalid number of arguments."])
      AS_ECHO(["$help"])
-     (exit 1); exit 1 ;;
+     AS_EXIT([1]) ;;
 esac
 
 # Unless specified, the output is stdout.
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index 8509322..b89ce5b 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -11966,6 +11966,14 @@ for portability, should not include more than one 
newline.  The bytes of
 Redirections can be placed outside the macro invocation.
 @end defmac
 
address@hidden AS_EXIT (@dvar{status, 1})
address@hidden
+Emit code to exit the shell with @var{status}.  This works around shells
+that see the exit status of the command prior to @code{exit} inside a
address@hidden 0} handler (@pxref{Limitations of Builtins, , Limitations of
+Shell Builtins}).
address@hidden defmac
+
 @defmac AS_IF (@var{test1}, @ovar{run-if-true1}, @dots{}, @ovar{run-if-false})
 @asindex{IF}
 Run shell code @var{test1}.  If @var{test1} exits with a zero status then
@@ -15433,7 +15441,8 @@ $ @kbd{bash trap.sh}
 The portable solution is then simple: when you want to @samp{exit 42},
 run @samp{(exit 42); exit 42}, the first @command{exit} being used to
 set the exit status to 42 for Zsh, and the second to trigger the trap
-and pass 42 as exit status for Bash.
+and pass 42 as exit status for Bash.  In m4sh, this is covered by using
address@hidden
 
 The shell in address@hidden 4.0 has the following bug: @samp{$?} is
 reset to 0 by empty lines if the code is inside @command{trap}.
diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4
index 6620a56..6124065 100644
--- a/lib/m4sugar/m4sh.m4
+++ b/lib/m4sugar/m4sh.m4
@@ -255,17 +255,17 @@ fi
 # and config.status.  Relying on AS_REQUIRE is of course fine for
 # configure, but fails for config.status (which is created by
 # configure).  So we need a means to force the inclusion of the
-# various _AS_PREPARE_* on top of config.status.  That's basically why
-# there are so many _AS_PREPARE_* below, and that's also why it is
+# various _AS_*_PREPARE on top of config.status.  That's basically why
+# there are so many _AS_*_PREPARE below, and that's also why it is
 # important not to forget some: config.status needs them.
+# List any preparations that create shell functions first, then
+# topologically sort the others by their dependencies.
 m4_defun([_AS_PREPARE],
-[m4_pushdef([AS_REQUIRE], [])]dnl
-[AS_FUNCTION_DESCRIBE([as_func_mkdir_p], [],
-[Create "$as_dir" as a directory, including parents if necessary.])
-as_func_mkdir_p ()
-{
-  _AS_MKDIR_P
-}
+[m4_pushdef([AS_REQUIRE])]dnl
+[m4_pushdef([AS_REQUIRE_SHELL_FN], _m4_defn([_AS_REQUIRE_SHELL_FN])
+)]dnl
+[_AS_UNSET_PREPARE
+_AS_VAR_APPEND_PREPARE
 
 _AS_EXPR_PREPARE
 _AS_BASENAME_PREPARE
@@ -278,9 +278,7 @@ _AS_MKDIR_P_PREPARE
 _AS_TEST_PREPARE
 _AS_TR_CPP_PREPARE
 _AS_TR_SH_PREPARE
-_AS_UNSET_PREPARE
-_AS_VAR_APPEND_PREPARE
-m4_popdef([AS_REQUIRE])])
+_m4_popdef([AS_REQUIRE], [AS_REQUIRE_SHELL_FN])])
 
 # AS_PREPARE
 # ----------
@@ -325,6 +323,14 @@ m4_defun([AS_REQUIRE],
        1, [m4_require(],
          [m4_divert_require(_m4_divert(_m4_divert_desired),]) [$1], [$2])])
 
+# _AS_REQUIRE_SHELL_FN(NAME-TO-CHECK, COMMENT, BODY-TO-EXPAND)
+# ------------------------------------------------------------
+# Core of AS_REQUIRE_SHELL_FN, but without diversion support.
+m4_define([_AS_REQUIRE_SHELL_FN], [
+m4_n([$2])$1 ()
+{
+$3
+} @%:@ $1[]])
 
 # AS_REQUIRE_SHELL_FN(NAME-TO-CHECK, COMMENT, BODY-TO-EXPAND,
 #                     [DIVERSION = M4SH-INIT-FN])
@@ -337,12 +343,8 @@ m4_defun([AS_REQUIRE],
 m4_define([AS_REQUIRE_SHELL_FN],
 [m4_provide_if([AS_SHELL_FN_$1], [],
 [AS_REQUIRE([AS_SHELL_FN_$1],
-[m4_provide([AS_SHELL_FN_$1])
-m4_n([$2])$1 ()
-{
-$3
-} [#] $1
-], m4_default_quoted([$4], [M4SH-INIT-FN]))])])
+[m4_provide([AS_SHELL_FN_$1])_$0($@)],
+m4_default_quoted([$4], [M4SH-INIT-FN]))])])
 
 
 # _AS_RUN(TEST, [SHELL])
@@ -555,8 +557,7 @@ as_func_unset ()
 {
   AS_UNSET([$[1]])
 }
-as_unset=as_func_unset
-])
+as_unset=as_func_unset])
 
 
 # AS_UNSET(VAR)
@@ -1001,7 +1002,7 @@ dnl Eggert wrote the scripts with optimization help from 
Paolo Bonzini).
   # Exit status is that of the last command.
   exit
 }
-m4_popdef([AS_MESSAGE_LOG_FD])])# _AS_LINENO_PREPARE
+_m4_popdef([AS_MESSAGE_LOG_FD])])# _AS_LINENO_PREPARE
 
 
 # _AS_LN_S_PREPARE
@@ -1090,8 +1091,8 @@ m4_defun([_AS_MKDIR_P_PREPARE],
     [Create "$as_dir" as a directory, including parents if necessary.])],
 [
   _AS_MKDIR_P
-])
-if mkdir -p . 2>/dev/null; then
+])]dnl
+[if mkdir -p . 2>/dev/null; then
   as_mkdir_p='mkdir -p "$as_dir"'
 else
   test -d ./-p && rmdir ./-p
@@ -1818,5 +1819,5 @@ m4_divert_pop([KILL])[]dnl
 m4_divert_push([BODY])
 m4_text_box([Main body of script.])
 _AS_DETECT_REQUIRED([_AS_SHELL_FN_WORK])dnl
-AS_REQUIRE([_AS_UNSET_PREPARE])dnl For backwards compatibility.
+AS_REQUIRE([_AS_UNSET_PREPARE], [], [M4SH-INIT-FN])dnl
 ])


hooks/post-receive
--
GNU Autoconf source repository




reply via email to

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