X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=m4%2Fmbstate_t.m4;h=ae2bcf1e8e24369a3cc8fd9fc2fc1eff86c4bcfb;hb=1ffb4377a444fb7150030acfe843bc20cfba5d5a;hp=2c14444d7eebbac0a5bef08427278410439a9e6f;hpb=865e5f32959ed99b99f42ecd98de6158e98f53e5;p=chaz%2Ftar diff --git a/m4/mbstate_t.m4 b/m4/mbstate_t.m4 index 2c14444..ae2bcf1 100644 --- a/m4/mbstate_t.m4 +++ b/m4/mbstate_t.m4 @@ -1,39 +1,29 @@ -# serial 4 +# serial 9 # From Paul Eggert. -# Some versions of BeOS define mbstate_t to be an incomplete type, +# BeOS 5 has but does not define mbstate_t, # so you can't declare an object of that type. # Check for this incompatibility with Standard C. # Include stdlib.h first, because otherwise this test would fail on Linux -# (at least glibc-2.1.3) because the `_XOPEN_SOURCE 500' definition elicits +# (at least glibc-2.1.3) because the "_XOPEN_SOURCE 500" definition elicits # a syntax error in wchar.h due to the use of undefined __int32_t. -AC_DEFUN(AC_MBSTATE_T_OBJECT, +AC_DEFUN([AC_MBSTATE_T], [ - # Check for the mbstate_t type. - ac_mbs_tmp=$ac_includes_default - ac_includes_default=" -$ac_includes_default -#if HAVE_WCHAR_H -# include -#endif -" - AC_CHECK_TYPE(mbstate_t, int) - # Restore the default value. - ac_includes_default=$ac_mbs_tmp + AC_CHECK_HEADERS(stdlib.h) - AC_CACHE_CHECK([for mbstate_t object type], ac_cv_type_mbstate_t_object, + AC_CACHE_CHECK([for mbstate_t], ac_cv_type_mbstate_t, [AC_TRY_COMPILE([ #if HAVE_STDLIB_H # include #endif #include ], [mbstate_t x; return sizeof x;], - ac_cv_type_mbstate_t_object=yes, - ac_cv_type_mbstate_t_object=no)]) - if test $ac_cv_type_mbstate_t_object = yes; then - AC_DEFINE(HAVE_MBSTATE_T_OBJECT, 1, - [Define if mbstate_t is an object type.]) + ac_cv_type_mbstate_t=yes, + ac_cv_type_mbstate_t=no)]) + if test $ac_cv_type_mbstate_t = no; then + AC_DEFINE(mbstate_t, int, + [Define to a type if does not define.]) fi])