Define bit_XXX and index_XXX.
[glibc.git] / iconvdata / tst-tables.sh
blob59bc3f4bac244fe77ea9ae6258a03efe9edce94e
1 #!/bin/sh
2 # Copyright (C) 2000,2001,2002,2003,2004,2007 Free Software Foundation, Inc.
3 # This file is part of the GNU C Library.
4 # Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
7 # The GNU C Library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License, or (at your option) any later version.
12 # The GNU C Library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with the GNU C Library; if not, write to the Free
19 # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
20 # 02111-1307 USA.
22 # Checks that the iconv() implementation (in both directions) for the
23 # stateless encodings agrees with the corresponding charmap table.
25 common_objpfx=$1
26 objpfx=$2
28 status=0
30 cat <<EOF |
31 # Single-byte and other "small" encodings come here.
32 # Keep this list in the same order as gconv-modules.
34 # charset name table name comment
35 ASCII ANSI_X3.4-1968
36 ISO646-GB BS_4730
37 ISO646-CA CSA_Z243.4-1985-1
38 ISO646-CA2 CSA_Z243.4-1985-2
39 ISO646-DE DIN_66003
40 ISO646-DK DS_2089
41 ISO646-ES ES
42 ISO646-ES2 ES2
43 ISO646-CN GB_1988-80
44 ISO646-IT IT
45 ISO646-JP JIS_C6220-1969-RO
46 ISO646-JP-OCR-B JIS_C6229-1984-B
47 ISO646-YU JUS_I.B1.002
48 ISO646-KR KSC5636
49 ISO646-HU MSZ_7795.3
50 ISO646-CU NC_NC00-10
51 ISO646-FR NF_Z_62-010
52 ISO646-FR1 NF_Z_62-010_1973
53 ISO646-NO NS_4551-1
54 ISO646-NO2 NS_4551-2
55 ISO646-PT PT
56 ISO646-PT2 PT2
57 ISO646-SE SEN_850200_B
58 ISO646-SE2 SEN_850200_C
59 ISO-8859-1
60 ISO-8859-2
61 ISO-8859-3
62 ISO-8859-4
63 ISO-8859-5
64 ISO-8859-6
65 ISO-8859-7
66 ISO-8859-8
67 ISO-8859-9
68 ISO-8859-9E
69 ISO-8859-10
70 ISO-8859-11
71 ISO-8859-13
72 ISO-8859-14
73 ISO-8859-15
74 ISO-8859-16
75 T.61-8BIT
76 ISO_6937
77 #ISO_6937-2 ISO-IR-90 Handling of combining marks is broken
78 KOI-8
79 KOI8-R
80 LATIN-GREEK
81 LATIN-GREEK-1
82 HP-ROMAN8
83 HP-ROMAN9
84 HP-TURKISH8
85 HP-THAI8
86 HP-GREEK8
87 EBCDIC-AT-DE
88 EBCDIC-AT-DE-A
89 EBCDIC-CA-FR
90 EBCDIC-DK-NO
91 EBCDIC-DK-NO-A
92 EBCDIC-ES
93 EBCDIC-ES-A
94 EBCDIC-ES-S
95 EBCDIC-FI-SE
96 EBCDIC-FI-SE-A
97 EBCDIC-FR
98 EBCDIC-IS-FRISS
99 EBCDIC-IT
100 EBCDIC-PT
101 EBCDIC-UK
102 EBCDIC-US
103 IBM037
104 IBM038
105 IBM256
106 IBM273
107 IBM274
108 IBM275
109 IBM277
110 IBM278
111 IBM280
112 IBM281
113 IBM284
114 IBM285
115 IBM290
116 IBM297
117 IBM420
118 IBM423
119 IBM424
120 IBM437
121 IBM500
122 IBM850
123 IBM851
124 IBM852
125 IBM855
126 IBM856
127 IBM857
128 IBM860
129 IBM861
130 IBM862
131 IBM863
132 IBM864
133 IBM865
134 IBM866
135 IBM866NAV
136 IBM868
137 IBM869
138 IBM870
139 IBM871
140 IBM875
141 IBM880
142 IBM891
143 IBM903
144 IBM904
145 IBM905
146 IBM918
147 IBM922
148 IBM1004
149 IBM1026
150 #IBM1046 Differs from the AIX and JDK converters
151 IBM1047
152 IBM1124
153 IBM1129
154 IBM1160
155 IBM1161
156 IBM1132
157 IBM1133
158 IBM1162
159 IBM1163
160 IBM1164
161 CP1125
162 CP1250
163 CP1251
164 CP1252
165 CP1253
166 CP1254
167 CP1255
168 CP1256
169 CP1257
170 CP1258
171 IBM874
172 CP737
173 CP775
174 MACINTOSH
175 IEC_P27-1
176 ASMO_449
177 ISO-IR-99 ANSI_X3.110-1983
178 ISO-IR-139 CSN_369103
180 DEC-MCS
181 ECMA-CYRILLIC
182 ISO-IR-153 GOST_19768-74
183 GREEK-CCITT
184 GREEK7
185 GREEK7-OLD
186 INIS
187 INIS-8
188 INIS-CYRILLIC
189 ISO_2033 ISO_2033-1983
190 ISO_5427
191 ISO_5427-EXT
192 #ISO_5428 Handling of combining marks is broken
193 ISO_10367-BOX
194 MAC-IS
195 MAC-UK
196 CP10007
197 NATS-DANO
198 NATS-SEFI
199 WIN-SAMI-2 SAMI-WS2
200 ISO-IR-197
201 TIS-620
202 KOI8-U
203 #ISIRI-3342 This charset concept is completely broken
204 VISCII
205 KOI8-T
206 GEORGIAN-PS
207 GEORGIAN-ACADEMY
208 ISO-IR-209
209 MAC-SAMI
210 ARMSCII-8
211 TCVN5712-1
212 TSCII
213 PT154
214 RK1048
217 MAC-CENTRALEUROPE
218 KOI8-RU
220 # Multibyte encodings come here
222 SJIS SHIFT_JIS
223 CP932 WINDOWS-31J
224 #IBM932 This converter looks quite strange
225 #IBM943 This converter looks quite strange
226 EUC-KR
227 CP949
228 JOHAB
229 BIG5
230 BIG5HKSCS BIG5-HKSCS
231 EUC-JP
232 EUC-JP-MS
233 EUC-CN GB2312
235 EUC-TW
236 GB18030
237 EUC-JISX0213
238 SHIFT_JISX0213
240 # Stateful encodings not testable this way
242 #IBM930
243 #IBM933
244 #IBM935
245 #IBM937
246 #IBM939
247 #ISO-2022-JP
248 #ISO-2022-JP-2
249 #ISO-2022-JP-3
250 #ISO-2022-KR
251 #ISO-2022-CN
252 #ISO-2022-CN-EXT
253 #UTF-7
256 while read charset charmap; do
257 if test "$charset" = GB18030; then echo "This might take a while" 1>&2; fi
258 case ${charset} in \#*) continue;; esac
259 echo -n "Testing ${charset}" 1>&2
260 if ${SHELL} tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}; then
261 echo 1>&2
262 else
263 echo "failed: ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}"
264 echo " *** FAILED ***" 1>&2
265 exit 1
267 done
269 exit $?