summaryrefslogtreecommitdiffstats
path: root/gl/m4/wchar.m4
diff options
context:
space:
mode:
Diffstat (limited to 'gl/m4/wchar.m4')
-rw-r--r--gl/m4/wchar.m457
1 files changed, 51 insertions, 6 deletions
diff --git a/gl/m4/wchar.m4 b/gl/m4/wchar.m4
index 70b1248f..ba8ee6ab 100644
--- a/gl/m4/wchar.m4
+++ b/gl/m4/wchar.m4
@@ -1,13 +1,13 @@
1dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues. 1dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues.
2 2
3dnl Copyright (C) 2007 Free Software Foundation, Inc. 3dnl Copyright (C) 2007-2008 Free Software Foundation, Inc.
4dnl This file is free software; the Free Software Foundation 4dnl This file is free software; the Free Software Foundation
5dnl gives unlimited permission to copy and/or distribute it, 5dnl gives unlimited permission to copy and/or distribute it,
6dnl with or without modifications, as long as this notice is preserved. 6dnl with or without modifications, as long as this notice is preserved.
7 7
8dnl Written by Eric Blake. 8dnl Written by Eric Blake.
9 9
10# wchar.m4 serial 4 10# wchar.m4 serial 22
11 11
12AC_DEFUN([gl_WCHAR_H], 12AC_DEFUN([gl_WCHAR_H],
13[ 13[
@@ -18,7 +18,16 @@ AC_DEFUN([gl_WCHAR_H],
18wchar_t w;]], 18wchar_t w;]],
19 [gl_cv_header_wchar_h_standalone=yes], 19 [gl_cv_header_wchar_h_standalone=yes],
20 [gl_cv_header_wchar_h_standalone=no])]) 20 [gl_cv_header_wchar_h_standalone=no])])
21 if test $gl_cv_header_wchar_h_standalone != yes; then 21
22 AC_REQUIRE([gt_TYPE_WINT_T])
23 if test $gt_cv_c_wint_t = yes; then
24 HAVE_WINT_T=1
25 else
26 HAVE_WINT_T=0
27 fi
28 AC_SUBST([HAVE_WINT_T])
29
30 if test $gl_cv_header_wchar_h_standalone != yes || test $gt_cv_c_wint_t != yes; then
22 WCHAR_H=wchar.h 31 WCHAR_H=wchar.h
23 fi 32 fi
24 33
@@ -36,6 +45,13 @@ wchar_t w;]],
36 gl_CHECK_NEXT_HEADERS([wchar.h]) 45 gl_CHECK_NEXT_HEADERS([wchar.h])
37]) 46])
38 47
48dnl Unconditionally enables the replacement of <wchar.h>.
49AC_DEFUN([gl_REPLACE_WCHAR_H],
50[
51 AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
52 WCHAR_H=wchar.h
53])
54
39AC_DEFUN([gl_WCHAR_MODULE_INDICATOR], 55AC_DEFUN([gl_WCHAR_MODULE_INDICATOR],
40[ 56[
41 dnl Use AC_REQUIRE here, so that the default settings are expanded once only. 57 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
@@ -45,10 +61,39 @@ AC_DEFUN([gl_WCHAR_MODULE_INDICATOR],
45 61
46AC_DEFUN([gl_WCHAR_H_DEFAULTS], 62AC_DEFUN([gl_WCHAR_H_DEFAULTS],
47[ 63[
48 GNULIB_WCWIDTH=0; AC_SUBST([GNULIB_WCWIDTH]) 64 GNULIB_BTOWC=0; AC_SUBST([GNULIB_BTOWC])
65 GNULIB_WCTOB=0; AC_SUBST([GNULIB_WCTOB])
66 GNULIB_MBSINIT=0; AC_SUBST([GNULIB_MBSINIT])
67 GNULIB_MBRTOWC=0; AC_SUBST([GNULIB_MBRTOWC])
68 GNULIB_MBRLEN=0; AC_SUBST([GNULIB_MBRLEN])
69 GNULIB_MBSRTOWCS=0; AC_SUBST([GNULIB_MBSRTOWCS])
70 GNULIB_MBSNRTOWCS=0; AC_SUBST([GNULIB_MBSNRTOWCS])
71 GNULIB_WCRTOMB=0; AC_SUBST([GNULIB_WCRTOMB])
72 GNULIB_WCSRTOMBS=0; AC_SUBST([GNULIB_WCSRTOMBS])
73 GNULIB_WCSNRTOMBS=0; AC_SUBST([GNULIB_WCSNRTOMBS])
74 GNULIB_WCWIDTH=0; AC_SUBST([GNULIB_WCWIDTH])
49 dnl Assume proper GNU behavior unless another module says otherwise. 75 dnl Assume proper GNU behavior unless another module says otherwise.
76 HAVE_BTOWC=1; AC_SUBST([HAVE_BTOWC])
77 HAVE_MBSINIT=1; AC_SUBST([HAVE_MBSINIT])
78 HAVE_MBRTOWC=1; AC_SUBST([HAVE_MBRTOWC])
79 HAVE_MBRLEN=1; AC_SUBST([HAVE_MBRLEN])
80 HAVE_MBSRTOWCS=1; AC_SUBST([HAVE_MBSRTOWCS])
81 HAVE_MBSNRTOWCS=1; AC_SUBST([HAVE_MBSNRTOWCS])
82 HAVE_WCRTOMB=1; AC_SUBST([HAVE_WCRTOMB])
83 HAVE_WCSRTOMBS=1; AC_SUBST([HAVE_WCSRTOMBS])
84 HAVE_WCSNRTOMBS=1; AC_SUBST([HAVE_WCSNRTOMBS])
85 HAVE_DECL_WCTOB=1; AC_SUBST([HAVE_DECL_WCTOB])
50 HAVE_DECL_WCWIDTH=1; AC_SUBST([HAVE_DECL_WCWIDTH]) 86 HAVE_DECL_WCWIDTH=1; AC_SUBST([HAVE_DECL_WCWIDTH])
87 REPLACE_MBSTATE_T=0; AC_SUBST([REPLACE_MBSTATE_T])
88 REPLACE_BTOWC=0; AC_SUBST([REPLACE_BTOWC])
89 REPLACE_WCTOB=0; AC_SUBST([REPLACE_WCTOB])
90 REPLACE_MBSINIT=0; AC_SUBST([REPLACE_MBSINIT])
91 REPLACE_MBRTOWC=0; AC_SUBST([REPLACE_MBRTOWC])
92 REPLACE_MBRLEN=0; AC_SUBST([REPLACE_MBRLEN])
93 REPLACE_MBSRTOWCS=0; AC_SUBST([REPLACE_MBSRTOWCS])
94 REPLACE_MBSNRTOWCS=0;AC_SUBST([REPLACE_MBSNRTOWCS])
95 REPLACE_WCRTOMB=0; AC_SUBST([REPLACE_WCRTOMB])
96 REPLACE_WCSRTOMBS=0; AC_SUBST([REPLACE_WCSRTOMBS])
51 REPLACE_WCWIDTH=0; AC_SUBST([REPLACE_WCWIDTH]) 97 REPLACE_WCWIDTH=0; AC_SUBST([REPLACE_WCWIDTH])
52 WCHAR_H= 98 WCHAR_H=''; AC_SUBST([WCHAR_H])
53 AC_SUBST([WCHAR_H])
54]) 99])