~blowry/file

a8b75e30adbb84abbede1bc005a5911f544d8b27 — Christos Zoulas 17 years ago 4ae7086
Support for mbstate_t autoconf.
2 files changed, 31 insertions(+), 0 deletions(-)

M acinclude.m4
M configure.in
M acinclude.m4 => acinclude.m4 +30 -0
@@ 252,3 252,33 @@ AC_DEFUN([AC_FUNC_FSEEKO],
       [Define if fseeko (and presumably ftello) exists and is declared.])
   fi])

# serial 9

# From Paul Eggert.

# BeOS 5 has <wchar.h> 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
# a syntax error in wchar.h due to the use of undefined __int32_t.
AC_DEFUN([AC_MBSTATE_T],
  [
   AC_CHECK_HEADERS(stdlib.h)
  
   AC_CACHE_CHECK([for mbstate_t], ac_cv_type_mbstate_t,
    [AC_TRY_COMPILE([
#if HAVE_STDLIB_H 
# include <stdlib.h>
#endif
#include <wchar.h>],
      [mbstate_t x; return sizeof x;],
      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 <wchar.h> does not define.])
   fi])



M configure.in => configure.in +1 -0
@@ 77,6 77,7 @@ AC_TYPE_SIZE_T
AC_STRUCT_ST_RDEV
AC_STRUCT_TIMEZONE_DAYLIGHT
AC_SYS_LARGEFILE
AC_MBSTATE_T

AC_CHECK_TYPE_STDC(uint8_t, unsigned char)
AC_CHECK_TYPE_STDC(uint16_t, unsigned short)