Reduce kernel-features.h duplication.
[glibc.git] / iconvdata / tst-tables.sh
blob116d88ed7a3e04785743f5aa4f5e2fd24c2ab543
1 #!/bin/sh
2 # Copyright (C) 2000-2014 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 # <http://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 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 CP770
174 CP771
175 CP772
176 CP773
177 CP774
178 CP775
179 MACINTOSH
180 IEC_P27-1
181 ASMO_449
182 ISO-IR-99 ANSI_X3.110-1983
183 ISO-IR-139 CSN_369103
185 DEC-MCS
186 ECMA-CYRILLIC
187 ISO-IR-153 GOST_19768-74
188 GREEK-CCITT
189 GREEK7
190 GREEK7-OLD
191 INIS
192 INIS-8
193 INIS-CYRILLIC
194 ISO_2033 ISO_2033-1983
195 ISO_5427
196 ISO_5427-EXT
197 #ISO_5428 Handling of combining marks is broken
198 ISO_10367-BOX
199 MAC-IS
200 MAC-UK
201 CP10007
202 NATS-DANO
203 NATS-SEFI
204 WIN-SAMI-2 SAMI-WS2
205 ISO-IR-197
206 TIS-620
207 KOI8-U
208 #ISIRI-3342 This charset concept is completely broken
209 VISCII
210 KOI8-T
211 GEORGIAN-PS
212 GEORGIAN-ACADEMY
213 ISO-IR-209
214 MAC-SAMI
215 ARMSCII-8
216 TCVN5712-1
217 TSCII
218 PT154
219 RK1048
222 MAC-CENTRALEUROPE
223 KOI8-RU
225 # Multibyte encodings come here
227 SJIS SHIFT_JIS
228 CP932 WINDOWS-31J
229 #IBM932 This converter looks quite strange
230 #IBM943 This converter looks quite strange
231 EUC-KR
232 CP949
233 JOHAB
234 BIG5
235 BIG5HKSCS BIG5-HKSCS
236 EUC-JP
237 EUC-JP-MS
238 EUC-CN GB2312
240 EUC-TW
241 GB18030
242 EUC-JISX0213
243 SHIFT_JISX0213
245 # Stateful encodings not testable this way
247 #IBM930
248 #IBM933
249 #IBM935
250 #IBM937
251 #IBM939
252 #ISO-2022-JP
253 #ISO-2022-JP-2
254 #ISO-2022-JP-3
255 #ISO-2022-KR
256 #ISO-2022-CN
257 #ISO-2022-CN-EXT
258 #UTF-7
261 while read charset charmap; do
262 if test "$charset" = GB18030; then echo "This might take a while" 1>&2; fi
263 case ${charset} in \#*) continue;; esac
264 echo -n "Testing ${charset}" 1>&2
265 if ./tst-table.sh ${common_objpfx} ${objpfx} "${test_program_prefix}" \
266 ${charset} ${charmap} < /dev/null; then
267 echo 1>&2
268 else
269 echo "failed: ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}"
270 echo " *** FAILED ***" 1>&2
271 exit 1
273 done
275 exit $?