]>
Commit | Line | Data |
---|---|---|
053cfcdd VS |
1 | # mbswidth.m4 serial 18 |
2 | dnl Copyright (C) 2000-2002, 2004, 2006-2013 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 | dnl autoconf tests required for use of mbswidth.c | |
8 | dnl From Bruno Haible. | |
9 | ||
10 | AC_DEFUN([gl_MBSWIDTH], | |
11 | [ | |
12 | AC_CHECK_HEADERS_ONCE([wchar.h]) | |
13 | AC_CHECK_FUNCS_ONCE([isascii mbsinit]) | |
14 | ||
15 | dnl UnixWare 7.1.1 <wchar.h> has a declaration of a function mbswidth() | |
16 | dnl that clashes with ours. | |
17 | AC_CACHE_CHECK([whether mbswidth is declared in <wchar.h>], | |
18 | [ac_cv_have_decl_mbswidth], | |
19 | [AC_COMPILE_IFELSE( | |
20 | [AC_LANG_PROGRAM( | |
21 | [[ | |
22 | /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before | |
23 | <wchar.h>. | |
24 | BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included | |
25 | before <wchar.h>. */ | |
26 | #include <stddef.h> | |
27 | #include <stdio.h> | |
28 | #include <time.h> | |
29 | #include <wchar.h> | |
30 | ]], | |
31 | [[ | |
32 | char *p = (char *) mbswidth; | |
33 | return !p; | |
34 | ]])], | |
35 | [ac_cv_have_decl_mbswidth=yes], | |
36 | [ac_cv_have_decl_mbswidth=no])]) | |
37 | if test $ac_cv_have_decl_mbswidth = yes; then | |
38 | ac_val=1 | |
39 | else | |
40 | ac_val=0 | |
41 | fi | |
42 | AC_DEFINE_UNQUOTED([HAVE_DECL_MBSWIDTH_IN_WCHAR_H], [$ac_val], | |
43 | [Define to 1 if you have a declaration of mbswidth() in <wchar.h>, and to 0 otherwise.]) | |
44 | ||
45 | AC_TYPE_MBSTATE_T | |
46 | ]) |