New version, incorporating remarks from a linux
[gnulib.git] / lib / config.charset
1 #! /bin/sh
2 # Output a system dependent table of character encoding aliases.
3 #
4 #   Copyright (C) 2000 Free Software Foundation, Inc.
5 #
6 #   This program is free software; you can redistribute it and/or modify it
7 #   under the terms of the GNU Library General Public License as published
8 #   by the Free Software Foundation; either version 2, or (at your option)
9 #   any later version.
10 #
11 #   This program is distributed in the hope that it will be useful,
12 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 #   Library General Public License for more details.
15 #
16 #   You should have received a copy of the GNU Library General Public
17 #   License along with this program; if not, write to the Free Software
18 #   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
19 #   USA.
20 #
21 # The table consists of lines of the form
22 #    ALIAS  CANONICAL
23 #
24 # ALIAS is the (system dependent) result of "nl_langinfo (CODESET)".
25 # ALIAS is compared in a case sensitive way.
26 #
27 # CANONICAL is the GNU canonical name for this character encoding.
28 # It must be an encoding supported by libiconv. Support by GNU libc is
29 # also desirable. CANONICAL is case insensitive. Usually an upper case
30 # MIME charset name is preferred.
31 # The current list of GNU canonical charset names is as follows.
32 #
33 #       name                         used by which systems         a MIME name?
34 #   ASCII                     glibc solaris
35 #   ISO-8859-1                glibc aix hpux irix osf solaris           yes
36 #   ISO-8859-2                glibc aix hpux irix solaris               yes
37 #   ISO-8859-4                solaris                                   yes
38 #   ISO-8859-5                glibc aix hpux irix solaris               yes
39 #   ISO-8859-6                aix hpux solaris                          yes
40 #   ISO-8859-7                glibc aix hpux irix osf solaris           yes
41 #   ISO-8859-8                glibc aix hpux solaris                    yes
42 #   ISO-8859-9                glibc aix hpux irix osf solaris           yes
43 #   ISO-8859-13               glibc
44 #   ISO-8859-15               aix solaris
45 #   KOI8-R                    glibc solaris                             yes
46 #   KOI8-U                    glibc                                     yes
47 #   CP850                     aix osf
48 #   CP856                     aix
49 #   CP922                     aix
50 #   CP932                     aix
51 #   CP943                     aix
52 #   CP1046                    aix
53 #   CP1124                    aix
54 #   CP1129                    aix
55 #   CP1252                    aix
56 #   EUC-CN                    aix hpux solaris
57 #   EUC-JP                    aix hpux solaris                          yes
58 #   EUC-KR                    aix hpux solaris                          yes
59 #   EUC-TW                    aix hpux solaris
60 #   BIG5                      aix hpux solaris                          yes
61 #   GBK                       aix
62 #   SJIS                      hpux solaris
63 #   TIS-620                   aix hpux solaris
64 #   HP-ROMAN8                 hpux
65 #   HP-ARABIC8                hpux
66 #   HP-GREEK8                 hpux
67 #   HP-HEBREW8                hpux
68 #   HP-TURKISH8               hpux
69 #   HP-KANA8                  hpux
70 #   UTF-8                     glibc aix hpux solaris                    yes
71 #
72 # Note: Names which are not marked as being a MIME name should not be used in
73 # Internet protocols for information interchange (mail, news, etc.).
74 #
75 # The first argument passed to this file is the canonical host specification,
76 #    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
77 # or
78 #    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
79
80 host="$1"
81 os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'`
82 echo "# This file contains a table of character encoding aliases,"
83 echo "# suitable for operating system '${os}'."
84 echo "# It was automatically generated from config.charset."
85 case "$os" in
86     linux* | *-gnu*)
87         # With glibc we don't need any canonicalization, because glibc
88         # supports all GNU canonical names directly.
89         echo "ANSI_X3.4-1968 ASCII" # this is a nop
90         echo "ISO_646.IRV:1983 ASCII" # this is a nop
91         echo "BALTIC ISO-8859-13" # in glibc-2.2 or newer, this is a nop
92         ;;
93     aix*)
94         echo "ISO8859-1 ISO-8859-1"
95         echo "ISO8859-2 ISO-8859-2"
96         echo "ISO8859-5 ISO-8859-5"
97         echo "ISO8859-6 ISO-8859-6"
98         echo "ISO8859-7 ISO-8859-7"
99         echo "ISO8859-8 ISO-8859-8"
100         echo "ISO8859-9 ISO-8859-9"
101         echo "ISO8859-15 ISO-8859-15"
102         echo "IBM-850 CP850"
103         echo "IBM-856 CP856"
104         echo "IBM-921 ISO-8859-13"
105         echo "IBM-922 CP922"
106         echo "IBM-932 CP932"
107         echo "IBM-943 CP943"
108         echo "IBM-1046 CP1046"
109         echo "IBM-1124 CP1124"
110         echo "IBM-1129 CP1129"
111         echo "IBM-1252 CP1252"
112         echo "IBM-eucCN EUC-CN"
113         echo "IBM-eucJP EUC-JP"
114         echo "IBM-eucKR EUC-KR"
115         echo "IBM-eucTW EUC-TW"
116         echo "big5 BIG5"
117         echo "GBK GBK"
118         echo "TIS-620 TIS-620"
119         echo "UTF-8 UTF-8"
120         ;;
121     hpux*)
122         echo "iso88591 ISO-8859-1"
123         echo "iso88592 ISO-8859-2"
124         echo "iso88595 ISO-8859-5"
125         echo "iso88596 ISO-8859-6"
126         echo "iso88597 ISO-8859-7"
127         echo "iso88598 ISO-8859-8"
128         echo "iso88599 ISO-8859-9"
129         echo "roman8 HP-ROMAN8"
130         echo "arabic8 HP-ARABIC8"
131         echo "greek8 HP-GREEK8"
132         echo "hebrew8 HP-HEBREW8"
133         echo "turkish8 HP-TURKISH8"
134         echo "kana8 HP-KANA8"
135         echo "tis620 TIS-620"
136         echo "big5 BIG5"
137         echo "eucJP EUC-JP"
138         echo "eucKR EUC-KR"
139         echo "eucTW EUC-TW"
140         echo "hp15CN EUC-CN"
141         #echo "ccdc ?" # what is this?
142         echo "SJIS SJIS"
143         echo "utf8 UTF-8"
144         ;;
145     irix*)
146         echo "ISO8859-1 ISO-8859-1"
147         echo "ISO8859-2 ISO-8859-2"
148         echo "ISO8859-5 ISO-8859-5"
149         echo "ISO8859-7 ISO-8859-7"
150         echo "ISO8859-9 ISO-8859-9"
151         ;;
152     osf*)
153         echo "ISO8859-1 ISO-8859-1"
154         echo "ISO8859-7 ISO-8859-7"
155         echo "ISO8859-9 ISO-8859-9"
156         echo "cp850 CP850"
157         ;;
158     solaris*)
159         echo "646 ASCII"
160         echo "ISO8859-1 ISO-8859-1"
161         echo "ISO8859-2 ISO-8859-2"
162         echo "ISO8859-4 ISO-8859-4"
163         echo "ISO8859-5 ISO-8859-5"
164         echo "ISO8859-6 ISO-8859-6"
165         echo "ISO8859-7 ISO-8859-7"
166         echo "ISO8859-8 ISO-8859-8"
167         echo "ISO8859-9 ISO-8859-9"
168         echo "ISO8859-15 ISO-8859-15"
169         echo "koi8-r KOI8-R"
170         echo "BIG5 BIG5"
171         echo "gb2312 EUC-CN"
172         echo "cns11643 EUC-TW"
173         echo "5601 EUC-KR"
174         echo "eucJP EUC-JP"
175         echo "PCK SJIS"
176         echo "TIS620.2533 TIS-620"
177         #echo "sun_eu_greek ?" # what is this?
178         echo "UTF-8 UTF-8"
179         ;;
180 esac