bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-gnulib] update module 'localcharset' from GNU gettext


From: Bruno Haible
Subject: [bug-gnulib] update module 'localcharset' from GNU gettext
Date: Thu, 24 Feb 2005 20:47:38 +0100
User-agent: KMail/1.5

Hi,

I updated the module 'localcharset' from GNU gettext 0.14.2.

Bruno


2004-04-23  Bruno Haible  <address@hidden>

        * localcharset.c (get_charset_aliases): Allow the CHARSETALIASDIR
        environment variable to override LIBDIR.
        Suggested by Matthias Clasen <address@hidden>.

2004-09-01  Bruno Haible  <address@hidden>

        * config.charset: Add support for Darwin 7.

2004-01-21  Bruno Haible  <address@hidden>

        * config.charset: Add support for MacOS X (Darwin).

*** localcharset.c      2004-04-28 13:14:41.000000000 +0200
--- gettext-0.14.2/gettext-runtime/intl/localcharset.c  2004-04-28 
13:01:45.000000000 +0200
***************
*** 115,124 ****
      {
  #if !(defined VMS || defined WIN32)
        FILE *fp;
!       const char *dir = relocate (LIBDIR);
        const char *base = "charset.alias";
        char *file_name;
  
        /* Concatenate dir and base into freshly allocated file_name.  */
        {
        size_t dir_len = strlen (dir);
--- 116,131 ----
      {
  #if !(defined VMS || defined WIN32)
        FILE *fp;
!       const char *dir;
        const char *base = "charset.alias";
        char *file_name;
  
+       /* Make it possible to override the charset.alias location.  This is
+        necessary for running the testsuite before "make install".  */
+       dir = getenv ("CHARSETALIASDIR");
+       if (dir == NULL || dir[0] == '\0')
+       dir = relocate (LIBDIR);
+ 
        /* Concatenate dir and base into freshly allocated file_name.  */
        {
        size_t dir_len = strlen (dir);
*** config.charset      2004-02-07 17:52:45.000000000 +0100
--- gettext-0.14.2/gettext-runtime/intl/config.charset  2004-09-06 
12:13:17.000000000 +0200
***************
*** 37,48 ****
  #   ISO-8859-4              Y   osf solaris freebsd darwin
  #   ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd darwin
  #   ISO-8859-6              Y   glibc aix hpux solaris
! #   ISO-8859-7              Y   glibc aix hpux irix osf solaris
  #   ISO-8859-8              Y   glibc aix hpux osf solaris
! #   ISO-8859-9              Y   glibc aix hpux irix osf solaris
! #   ISO-8859-13                 glibc
  #   ISO-8859-14                 glibc
! #   ISO-8859-15                 glibc aix osf solaris freebsd
  #   KOI8-R                  Y   glibc solaris freebsd darwin
  #   KOI8-U                  Y   glibc freebsd darwin
  #   KOI8-T                      glibc
--- 38,49 ----
  #   ISO-8859-4              Y   osf solaris freebsd darwin
  #   ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd darwin
  #   ISO-8859-6              Y   glibc aix hpux solaris
! #   ISO-8859-7              Y   glibc aix hpux irix osf solaris darwin
  #   ISO-8859-8              Y   glibc aix hpux osf solaris
! #   ISO-8859-9              Y   glibc aix hpux irix osf solaris darwin
! #   ISO-8859-13                 glibc darwin
  #   ISO-8859-14                 glibc
! #   ISO-8859-15                 glibc aix osf solaris freebsd darwin
  #   KOI8-R                  Y   glibc solaris freebsd darwin
  #   KOI8-U                  Y   glibc freebsd darwin
  #   KOI8-T                      glibc
***************
*** 99,105 ****
  #   HP-KANA8                    hpux
  #   DEC-KANJI                   osf
  #   DEC-HANYU                   osf
! #   UTF-8                   Y   glibc aix hpux osf solaris
  #
  # Note: Names which are not marked as being a MIME name should not be used in
  # Internet protocols for information interchange (mail, news, etc.).
--- 100,106 ----
  #   HP-KANA8                    hpux
  #   DEC-KANJI                   osf
  #   DEC-HANYU                   osf
! #   UTF-8                   Y   glibc aix hpux osf solaris darwin
  #
  # Note: Names which are not marked as being a MIME name should not be used in
  # Internet protocols for information interchange (mail, news, etc.).
***************
*** 395,401 ****
        echo "BIG5 BIG5"
        echo "SJIS SHIFT_JIS"
        ;;
!     darwin*)
        # Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore
        # localcharset.c falls back to using the full locale name
        # from the environment variables.
--- 396,402 ----
        echo "BIG5 BIG5"
        echo "SJIS SHIFT_JIS"
        ;;
!     darwin[56]*)
        # Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore
        # localcharset.c falls back to using the full locale name
        # from the environment variables.
***************
*** 436,441 ****
--- 437,472 ----
        echo "ja_JP.SJIS SHIFT_JIS"
        echo "ko_KR.EUC EUC-KR"
        ;;
+     darwin*)
+       # Darwin 7.5 has nl_langinfo(CODESET), but it is useless:
+       # - It returns the empty string when LANG is set to a locale of the
+       #   form ll_CC, although ll_CC/LC_CTYPE is a symlink to an UTF-8
+       #   LC_CTYPE file.
+       # - The environment variables LANG, LC_CTYPE, LC_ALL are not set by
+       #   the system; nl_langinfo(CODESET) returns "US-ASCII" in this case.
+       # - The documentation says:
+       #     "... all code that calls BSD system routines should ensure
+       #      that the const *char parameters of these routines are in UTF-8
+       #      encoding. All BSD system functions expect their string
+       #      parameters to be in UTF-8 encoding and nothing else."
+       #   It also says
+       #     "An additional caveat is that string parameters for files,
+       #      paths, and other file-system entities must be in canonical
+       #      UTF-8. In a canonical UTF-8 Unicode string, all decomposable
+       #      characters are decomposed ..."
+       #   but this is not true: You can pass non-decomposed UTF-8 strings
+       #   to file system functions, and it is the OS which will convert
+       #   them to decomposed UTF-8 before accessing the file system.
+       # - The Apple Terminal application displays UTF-8 by default.
+       # - However, other applications are free to use different encodings:
+       #   - xterm uses ISO-8859-1 by default.
+       #   - TextEdit uses MacRoman by default.
+       # We prefer UTF-8 over decomposed UTF-8-MAC because one should
+       # minimize the use of decomposed Unicode. Unfortunately, through the
+       # Darwin file system, decomposed UTF-8 strings are leaked into user
+       # space nevertheless.
+       echo "* UTF-8"
+       ;;
      beos*)
        # BeOS has a single locale, and it has UTF-8 encoding.
        echo "* UTF-8"





reply via email to

[Prev in Thread] Current Thread [Next in Thread]