iswblank: Detect declaration correctly.
[pspp] / m4 / iswblank.m4
1 # iswblank.m4 serial 4
2 dnl Copyright (C) 2011 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_ISWBLANK],
8 [
9   AC_REQUIRE([gl_WCTYPE_H_DEFAULTS])
10   AC_REQUIRE([gl_WCTYPE_H])
11   dnl Persuade glibc <wctype.h> to declare iswblank().
12   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
13   AC_CHECK_FUNCS_ONCE([iswblank])
14   AC_CHECK_DECLS([iswblank], , , [[
15 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
16    <wchar.h>.
17    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included
18    before <wchar.h>.  */
19 #include <stddef.h>
20 #include <stdio.h>
21 #include <time.h>
22 #include <wchar.h>
23 #include <wctype.h>
24 ]])
25   if test $ac_cv_func_iswblank = no; then
26     HAVE_ISWBLANK=0
27     if test $ac_cv_have_decl_iswblank = yes; then
28       REPLACE_ISWBLANK=1
29     fi
30   fi
31   if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
32     dnl Redefine all of iswcntrl, ..., towupper in <wctype.h>.
33     :
34   else
35     if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then
36       dnl Redefine only iswblank.
37       :
38     fi
39   fi
40
41 ])