Commit | Line | Data |
---|---|---|
8690e634 | 1 | # mbsinit.m4 serial 8 |
7a6dbc2f | 2 | dnl Copyright (C) 2008, 2010-2018 Free Software Foundation, Inc. |
8690e634 JK |
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 | ]) |