diff options
Diffstat (limited to 'contrib/file/acinclude.m4')
-rw-r--r-- | contrib/file/acinclude.m4 | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/contrib/file/acinclude.m4 b/contrib/file/acinclude.m4 index 79ecb0e..4c27a4b 100644 --- a/contrib/file/acinclude.m4 +++ b/contrib/file/acinclude.m4 @@ -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]) + + |