X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Flocale-tr.m4;h=6162f65ccc4ebf2dcb169defe45e7403ae7a1c50;hb=05a96e0bca75d5b01c337cd7dacd04507d6e6497;hp=6bb7847f91d8898b1b421e8c960f24055c8f23ba;hpb=82604061d22a5663f5a26aafd5c63fc5685aa307;p=gnulib.git diff --git a/m4/locale-tr.m4 b/m4/locale-tr.m4 index 6bb7847f9..6162f65cc 100644 --- a/m4/locale-tr.m4 +++ b/m4/locale-tr.m4 @@ -1,5 +1,5 @@ -# locale-tr.m4 serial 4 -dnl Copyright (C) 2003, 2005-2007 Free Software Foundation, Inc. +# locale-tr.m4 serial 6 +dnl Copyright (C) 2003, 2005-2009 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,7 +10,7 @@ dnl Determine the name of a turkish locale with UTF-8 encoding. AC_DEFUN([gt_LOCALE_TR_UTF8], [ AC_REQUIRE([AM_LANGINFO_CODESET]) - AC_CACHE_CHECK([for a turkish Unicode locale], gt_cv_locale_tr_utf8, [ + AC_CACHE_CHECK([for a turkish Unicode locale], [gt_cv_locale_tr_utf8], [ AC_LANG_CONFTEST([AC_LANG_SOURCE([ changequote(,)dnl #include @@ -30,11 +30,18 @@ int main () { program return 1 on BeOS. */ /* Check whether the given locale name is recognized by the system. */ if (setlocale (LC_ALL, "") == NULL) return 1; - /* Check whether nl_langinfo(CODESET) is nonempty. + /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". On MacOS X 10.3.5 (Darwin 7.5) in the tr_TR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. */ + is empty, and the behaviour of Tcl 8.4 in this locale is not useful. + On OpenBSD 4.0, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "646". In this situation, + some unit tests fail. */ #if HAVE_LANGINFO_CODESET - if (nl_langinfo (CODESET) [0] == '\0') return 1; + { + const char *cs = nl_langinfo (CODESET); + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + return 1; + } #endif #ifdef __CYGWIN__ /* On Cygwin, avoid locale names without encoding suffix, because the