ChangeLog update from my last commit
[glibc.git] / iconvdata / tst-tables.sh
blobb374861b0bdd1a390b270f9a585660ab9ebb1930
1 #!/bin/sh
2 # Copyright (C) 2000-2019 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, see
19 # <https://www.gnu.org/licenses/>.
21 # Checks that the iconv() implementation (in both directions) for the
22 # stateless encodings agrees with the corresponding charmap table.
24 common_objpfx=$1
25 objpfx=$2
26 test_program_prefix=$3
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 IBM858
129 IBM860
130 IBM861
131 IBM862
132 IBM863
133 IBM864
134 IBM865
135 IBM866
136 IBM866NAV
137 IBM868
138 IBM869
139 IBM870
140 IBM871
141 IBM875
142 IBM880
143 IBM891
144 IBM903
145 IBM904
146 IBM905
147 IBM918
148 IBM922
149 IBM1004
150 IBM1026
151 #IBM1046 Differs from the AIX and JDK converters
152 IBM1047
153 IBM1124
154 IBM1129
155 IBM1160
156 IBM1161
157 IBM1132
158 IBM1133
159 IBM1162
160 IBM1163
161 IBM1164
162 CP1125
163 CP1250
164 CP1251
165 CP1252
166 CP1253
167 CP1254
168 CP1255
169 CP1256
170 CP1257
171 CP1258
172 IBM874
173 CP737
174 CP770
175 CP771
176 CP772
177 CP773
178 CP774
179 CP775
180 MACINTOSH
181 IEC_P27-1
182 ASMO_449
183 ISO-IR-99 ANSI_X3.110-1983
184 ISO-IR-139 CSN_369103
186 DEC-MCS
187 ECMA-CYRILLIC
188 ISO-IR-153 GOST_19768-74
189 GREEK-CCITT
190 GREEK7
191 GREEK7-OLD
192 INIS
193 INIS-8
194 INIS-CYRILLIC
195 ISO_2033 ISO_2033-1983
196 ISO_5427
197 ISO_5427-EXT
198 #ISO_5428 Handling of combining marks is broken
199 ISO_10367-BOX
200 MAC-IS
201 MAC-UK
202 CP10007
203 NATS-DANO
204 NATS-SEFI
205 WIN-SAMI-2 SAMI-WS2
206 ISO-IR-197
207 TIS-620
208 KOI8-U
209 #ISIRI-3342 This charset concept is completely broken
210 VISCII
211 KOI8-T
212 GEORGIAN-PS
213 GEORGIAN-ACADEMY
214 ISO-IR-209
215 MAC-SAMI
216 ARMSCII-8
217 TCVN5712-1
218 TSCII
219 PT154
220 RK1048
223 MAC-CENTRALEUROPE
224 KOI8-RU
226 # Multibyte encodings come here
228 SJIS SHIFT_JIS
229 CP932 WINDOWS-31J
230 #IBM932 This converter looks quite strange
231 #IBM943 This converter looks quite strange
232 EUC-KR
233 CP949
234 JOHAB
235 BIG5
236 BIG5HKSCS BIG5-HKSCS
237 EUC-JP
238 EUC-JP-MS
239 EUC-CN GB2312
241 EUC-TW
242 GB18030
243 EUC-JISX0213
244 SHIFT_JISX0213
246 # Stateful encodings not testable this way
248 #IBM930
249 #IBM933
250 #IBM935
251 #IBM937
252 #IBM939
253 #ISO-2022-JP
254 #ISO-2022-JP-2
255 #ISO-2022-JP-3
256 #ISO-2022-KR
257 #ISO-2022-CN
258 #ISO-2022-CN-EXT
259 #UTF-7
262 while read charset charmap; do
263 if test "$charset" = GB18030; then echo "This might take a while" 1>&2; fi
264 case ${charset} in \#*) continue;; esac
265 printf %s "Testing ${charset}" 1>&2
266 if ./tst-table.sh ${common_objpfx} ${objpfx} "${test_program_prefix}" \
267 ${charset} ${charmap} < /dev/null; then
268 echo 1>&2
269 else
270 echo "failed: ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}"
271 echo " *** FAILED ***" 1>&2
272 exit 1
274 done
276 exit $?