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


From: Paolo Bonzini
Subject: [SCM] GNU Autoconf source repository branch, master, updated. v2.63-117-g37dd5e9
Date: Tue, 28 Oct 2008 12:25:21 +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=37dd5e9c4927d74ce720f7b012b03001823331bf

The branch, master has been updated
       via  37dd5e9c4927d74ce720f7b012b03001823331bf (commit)
      from  d783e517644aa68e36b34335340d8629114d1f97 (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 37dd5e9c4927d74ce720f7b012b03001823331bf
Author: Paolo Bonzini <address@hidden>
Date:   Mon Oct 20 15:35:47 2008 +0200

    use a shell function for AC_CHECK_MEMBER
    
    * lib/autoconf/types.m4 (_AC_CHECK_MEMBER_BODY): New.
    (AC_CHECK_MEMBER): Define and use a shell function.

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

Summary of changes:
 ChangeLog             |    5 ++++
 lib/autoconf/types.m4 |   52 +++++++++++++++++++++++++++++-------------------
 2 files changed, 36 insertions(+), 21 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 9a6a5f7..7f66556 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-10-28  Paolo Bonzini  <address@hidden>
+
+       * lib/autoconf/types.m4 (_AC_CHECK_MEMBER_BODY): New.
+       (AC_CHECK_MEMBER): Define and use a shell function.
+
 2008-10-27  Eric Blake  <address@hidden>
 
        Prefer m4_fatal over AC_FATAL.
diff --git a/lib/autoconf/types.m4 b/lib/autoconf/types.m4
index 2b63331..c435498 100644
--- a/lib/autoconf/types.m4
+++ b/lib/autoconf/types.m4
@@ -821,6 +821,26 @@ you adjust the code.])
 # Generic checks.  #
 # ---------------- #
 
+# _AC_CHECK_MEMBER_BODY
+# ---------------------
+# Shell function body for AC_CHECK_MEMBER.
+m4_define([_AC_CHECK_MEMBER_BODY],
+[  AS_LINENO_PUSH([$[]1])
+  AC_CACHE_CHECK([for $[]2.$[]3], [$[]4],
+  [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$[]5],
+[static $[]2 ac_aggr;
+if (ac_aggr.$[]3)
+return 0;])],
+               [AS_VAR_SET([$[]4], [yes])],
+  [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$[]5],
+[static $[]2 ac_aggr;
+if (sizeof ac_aggr.$[]3)
+return 0;])],
+               [AS_VAR_SET([$[]4], [yes])],
+               [AS_VAR_SET([$[]4], [no])])])])
+  AS_LINENO_POP
+])dnl
+
 # AC_CHECK_MEMBER(AGGREGATE.MEMBER,
 #                [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
 #                [INCLUDES = DEFAULT-INCLUDES])
@@ -828,28 +848,18 @@ you adjust the code.])
 # AGGREGATE.MEMBER is for instance `struct passwd.pw_gecos', shell
 # variables are not a valid argument.
 AC_DEFUN([AC_CHECK_MEMBER],
-[AS_LITERAL_IF([$1], [],
-              [AC_FATAL([$0: requires literal arguments])])]dnl
-[m4_if(m4_index([$1], [.]), [-1],
-       [m4_fatal([$0: Did not see any dot in `$1'])])]dnl
+[AC_REQUIRE_SHELL_FN([ac_func_]_AC_LANG_ABBREV[_check_member],
+  [AS_FUNCTION_DESCRIBE([ac_func_]_AC_LANG_ABBREV[_check_member],
+    [LINENO AGGR MEMBER VAR INCLUDES],
+    [Tries to find if the field MEMBER exists in type AGGR, after including
+     INCLUDES, setting cache variable VAR accordingly.])],
+    [_$0_BODY])]dnl
+[AS_LITERAL_IF([$1], [], [m4_fatal([$0: requires literal arguments])])]dnl
+[m4_if(m4_index([$1], [.]), -1, [m4_fatal([$0: Did not see any dot in 
`$1'])])]dnl
 [AS_VAR_PUSHDEF([ac_Member], [ac_cv_member_$1])]dnl
-dnl Extract the aggregate name, and the member name
-[AC_CACHE_CHECK([for $1], [ac_Member],
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT([$4])],
-[dnl AGGREGATE ac_aggr;
-static m4_bpatsubst([$1], [\..*]) ac_aggr;
-dnl ac_aggr.MEMBER;
-if (ac_aggr.m4_bpatsubst([$1], [^[^.]*\.]))
-return 0;])],
-               [AS_VAR_SET([ac_Member], [yes])],
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT([$4])],
-[dnl AGGREGATE ac_aggr;
-static m4_bpatsubst([$1], [\..*]) ac_aggr;
-dnl sizeof ac_aggr.MEMBER;
-if (sizeof ac_aggr.m4_bpatsubst([$1], [^[^.]*\.]))
-return 0;])],
-               [AS_VAR_SET([ac_Member], [yes])],
-               [AS_VAR_SET([ac_Member], [no])])])])
+[ac_func_[]_AC_LANG_ABBREV[]_check_member "$LINENO" ]dnl
+[m4_bpatsubst([$1], [^\([^.]*\)\.\(.*\)], ["\1" "\2"]) "ac_Member" ]dnl
+["AS_ESCAPE([AC_INCLUDES_DEFAULT([$4], [""])])"
 AS_VAR_IF([ac_Member], [yes], [$2], [$3])
 AS_VAR_POPDEF([ac_Member])dnl
 ])# AC_CHECK_MEMBER


hooks/post-receive
--
GNU Autoconf source repository




reply via email to

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