From: Ralf Wildenhues Date: Mon, 10 Aug 2009 18:35:12 +0000 (+0200) Subject: Ensure we do not regress with AC_CHECK_MEMBERS. X-Git-Tag: v2.65~80 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=50e64b37cdbe5655fe21adf10b58bc32248f5801;p=thirdparty%2Fautoconf.git Ensure we do not regress with AC_CHECK_MEMBERS. * tests/semantics.at (AC_CHECK_MEMBERS): Expose the recent AC_CHECK_MEMBERS fix. (AC_CHECK_MEMBER): New test group. Signed-off-by: Ralf Wildenhues --- diff --git a/ChangeLog b/ChangeLog index 20c592189..80cd9a139 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-08-10 Ralf Wildenhues + + Ensure we do not regress with AC_CHECK_MEMBERS. + * tests/semantics.at (AC_CHECK_MEMBERS): Expose the recent + AC_CHECK_MEMBERS fix. + (AC_CHECK_MEMBER): New test group. + 2009-08-10 Jeff Squyres (tiny change) Fix typo in AC_REQUIRE description. diff --git a/tests/semantics.at b/tests/semantics.at index 9908a15c4..d25b18832 100644 --- a/tests/semantics.at +++ b/tests/semantics.at @@ -255,6 +255,32 @@ AT_CHECK_DEFINES( AT_CLEANUP +# AC_CHECK_MEMBER +# ---------------- +# Check that it performs the correct actions. +# Must define HAVE_STRUCT_YES_S_YES, but not HAVE_STRUCT_YES_S_NO. +AT_CHECK_MACRO([AC_CHECK_MEMBER], +[[AC_CHECK_MEMBER([struct yes_s.yes], + [AC_DEFINE([HAVE_STRUCT_YES_S_YES], [1], + [Define to 1 if `yes' is a member of `struct yes_s'.])],, + [struct sub { int x; }; + struct yes_s { int yes; struct sub substruct; };]) + AC_CHECK_MEMBER([struct yes_s.no], + [AC_DEFINE([HAVE_STRUCT_YES_S_NO], [1], + [Define to 1 if `no' is a member of `struct yes_s'.])],, + [struct sub { int x; }; + struct yes_s { int yes; struct sub substruct; };]) + AC_CHECK_MEMBER([struct yes_s.substruct], + [AC_DEFINE([HAVE_STRUCT_YES_S_SUBSTRUCT], [1], + [Define to 1 if `substruct' is a member of `struct yes_s'.])],, + [struct sub { int x; }; + struct yes_s { int yes; struct sub substruct; };])]], +[AT_CHECK_DEFINES( +[/* #undef HAVE_STRUCT_YES_S_NO */ +#define HAVE_STRUCT_YES_S_SUBSTRUCT 1 +#define HAVE_STRUCT_YES_S_YES 1 +])]) + # AC_CHECK_MEMBERS # ---------------- # Check that it performs the correct actions. @@ -267,7 +293,9 @@ AT_CHECK_MACRO([AC_CHECK_MEMBERS], [/* #undef HAVE_STRUCT_YES_S_NO */ #define HAVE_STRUCT_YES_S_SUBSTRUCT 1 #define HAVE_STRUCT_YES_S_YES 1 -])]) +]) +AT_CHECK([grep 'yes.*member of.*yes_s' config.h], [], [ignore]) +]) # AC_CHECK_ALIGNOF