1 # mbsinit.m4 serial 8 2 dnl Copyright (C) 2008, 2010-2012 Free Software Foundation, Inc. 3 dnl This file is free software; the Free Software Foundation 4 dnl gives unlimited permission to copy and/or distribute it, 5 dnl with or without modifications, as long as this notice is preserved. 6 7 AC_DEFUN([gl_FUNC_MBSINIT], 8 [ 9 AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) 10 AC_REQUIRE([AC_CANONICAL_HOST]) 11 12 AC_REQUIRE([AC_TYPE_MBSTATE_T]) 13 gl_MBSTATE_T_BROKEN 14 15 AC_CHECK_FUNCS_ONCE([mbsinit]) 16 if test $ac_cv_func_mbsinit = no; then 17 HAVE_MBSINIT=0 18 AC_CHECK_DECLS([mbsinit],,, [[ 19 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before 20 <wchar.h>. 21 BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be 22 included before <wchar.h>. */ 23 #include <stddef.h> 24 #include <stdio.h> 25 #include <time.h> 26 #include <wchar.h> 27 ]]) 28 if test $ac_cv_have_decl_mbsinit = yes; then 29 dnl On Minix 3.1.8, the system's <wchar.h> declares mbsinit() although 30 dnl it does not have the function. Avoid a collision with gnulib's 31 dnl replacement. 32 REPLACE_MBSINIT=1 33 fi 34 else 35 if test $REPLACE_MBSTATE_T = 1; then 36 REPLACE_MBSINIT=1 37 else 38 dnl On mingw, mbsinit() always returns 1, which is inappropriate for 39 dnl states produced by mbrtowc() for an incomplete multibyte character 40 dnl in multibyte locales. 41 case "$host_os" in 42 mingw*) REPLACE_MBSINIT=1 ;; 43 esac 44 fi 45 fi 46 ]) 47 48 # Prerequisites of lib/mbsinit.c. 49 AC_DEFUN([gl_PREREQ_MBSINIT], [ 50 : 51 ]) 52