Rename gl_FUNC_MBRTOWC to AC_FUNC_MBRTOWC.
[gnulib.git] / m4 / mbswidth.m4
1 # mbswidth.m4 serial 15
2 dnl Copyright (C) 2000-2002, 2004, 2006-2008 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   AC_FUNC_MBRTOWC
15
16   dnl UnixWare 7.1.1 <wchar.h> has a declaration of a function mbswidth()
17   dnl that clashes with ours.
18   AC_CACHE_CHECK([whether mbswidth is declared in <wchar.h>],
19     ac_cv_have_decl_mbswidth,
20     [AC_TRY_COMPILE([
21 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
22    <wchar.h>.
23    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included
24    before <wchar.h>.  */
25 #include <stddef.h>
26 #include <stdio.h>
27 #include <time.h>
28 #include <wchar.h>
29 ], [
30   char *p = (char *) mbswidth;
31   return !p;
32 ], ac_cv_have_decl_mbswidth=yes, ac_cv_have_decl_mbswidth=no)])
33   if test $ac_cv_have_decl_mbswidth = yes; then
34     ac_val=1
35   else
36     ac_val=0
37   fi
38   AC_DEFINE_UNQUOTED(HAVE_DECL_MBSWIDTH_IN_WCHAR_H, $ac_val,
39     [Define to 1 if you have a declaration of mbswidth() in <wchar.h>, and to 0 otherwise.])
40
41   AC_TYPE_MBSTATE_T
42 ])