diff options
Diffstat (limited to 'gl/m4/iconv.m4')
-rw-r--r-- | gl/m4/iconv.m4 | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/gl/m4/iconv.m4 b/gl/m4/iconv.m4 index 3cc6268..f46ff14 100644 --- a/gl/m4/iconv.m4 +++ b/gl/m4/iconv.m4 | |||
@@ -1,5 +1,5 @@ | |||
1 | # iconv.m4 serial AM7 (gettext-0.18) | 1 | # iconv.m4 serial 9 (gettext-0.18) |
2 | dnl Copyright (C) 2000-2002, 2007-2009 Free Software Foundation, Inc. | 2 | dnl Copyright (C) 2000-2002, 2007-2010 Free Software Foundation, Inc. |
3 | dnl This file is free software; the Free Software Foundation | 3 | dnl This file is free software; the Free Software Foundation |
4 | dnl gives unlimited permission to copy and/or distribute it, | 4 | dnl gives unlimited permission to copy and/or distribute it, |
5 | dnl with or without modifications, as long as this notice is preserved. | 5 | dnl with or without modifications, as long as this notice is preserved. |
@@ -58,7 +58,7 @@ AC_DEFUN([AM_ICONV_LINK], | |||
58 | ]) | 58 | ]) |
59 | if test "$am_cv_func_iconv" = yes; then | 59 | if test "$am_cv_func_iconv" = yes; then |
60 | AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ | 60 | AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ |
61 | dnl This tests against bugs in AIX 5.1 and HP-UX 11.11. | 61 | dnl This tests against bugs in AIX 5.1, HP-UX 11.11, Solaris 10. |
62 | am_save_LIBS="$LIBS" | 62 | am_save_LIBS="$LIBS" |
63 | if test $am_cv_lib_iconv = yes; then | 63 | if test $am_cv_lib_iconv = yes; then |
64 | LIBS="$LIBS $LIBICONV" | 64 | LIBS="$LIBS $LIBICONV" |
@@ -87,6 +87,25 @@ int main () | |||
87 | return 1; | 87 | return 1; |
88 | } | 88 | } |
89 | } | 89 | } |
90 | /* Test against Solaris 10 bug: Failures are not distinguishable from | ||
91 | successful returns. */ | ||
92 | { | ||
93 | iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); | ||
94 | if (cd_ascii_to_88591 != (iconv_t)(-1)) | ||
95 | { | ||
96 | static const char input[] = "\263"; | ||
97 | char buf[10]; | ||
98 | const char *inptr = input; | ||
99 | size_t inbytesleft = strlen (input); | ||
100 | char *outptr = buf; | ||
101 | size_t outbytesleft = sizeof (buf); | ||
102 | size_t res = iconv (cd_ascii_to_88591, | ||
103 | (char **) &inptr, &inbytesleft, | ||
104 | &outptr, &outbytesleft); | ||
105 | if (res == 0) | ||
106 | return 1; | ||
107 | } | ||
108 | } | ||
90 | #if 0 /* This bug could be worked around by the caller. */ | 109 | #if 0 /* This bug could be worked around by the caller. */ |
91 | /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ | 110 | /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ |
92 | { | 111 | { |
@@ -172,8 +191,8 @@ size_t iconv(); | |||
172 | ], [], [am_cv_proto_iconv_arg1=""], [am_cv_proto_iconv_arg1="const"]) | 191 | ], [], [am_cv_proto_iconv_arg1=""], [am_cv_proto_iconv_arg1="const"]) |
173 | am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) | 192 | am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) |
174 | am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` | 193 | am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` |
175 | AC_MSG_RESULT([${ac_t:- | 194 | AC_MSG_RESULT([ |
176 | }$am_cv_proto_iconv]) | 195 | $am_cv_proto_iconv]) |
177 | AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], | 196 | AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], |
178 | [Define as const if the declaration of iconv() needs const.]) | 197 | [Define as const if the declaration of iconv() needs const.]) |
179 | fi | 198 | fi |