1 2001-06-08 Bruno Haible <haible@clisp.cons.org>
3 * autoconf/ltmain.sh: Upgrade to libtool-1.4.
4 * autoconf/ltconfig: Remove file.
6 2001-06-08 Bruno Haible <haible@clisp.cons.org>
8 * autoconf/config.guess: Update to GNU version 2001-05-11.
9 * autoconf/config.sub: Likewise.
11 2001-06-03 Bruno Haible <haible@clisp.cons.org>
13 * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
14 characters if they cannot be converted.
15 (unicode_loop_reset): Likewise.
16 * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
17 STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
18 STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
20 (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
22 (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
23 If "ja", prefer conversion to Japanese character sets. If "zh",
24 prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
26 * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
27 (RET_TOOSMALL): Change value from -1 to -2.
28 * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
29 return 0 written bytes.
31 2001-06-06 Bruno Haible <haible@clisp.cons.org>
33 * lib/encodings.def: Align with IANA character-set registry.
34 (US-ASCII): Add alias "ANSI_X3.4-1986".
35 (ISO-8859-14): Add alias "ISO-CELTIC".
36 (JIS_X0208): Add alias "JIS_C6226-1983".
37 (BIG5HKSCS): Add alias "BIG5-HKSCS".
38 * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
39 * tests/Makefile.in (check): Likewise.
40 * tests/Makefile.os2 (check): Likewise.
41 * tests/Makefile.msvc (check): Likewise.
42 * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
43 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
44 BIG5HKSCS.IRREVERSIBLE.TXT.
46 2001-06-02 Bruno Haible <haible@clisp.cons.org>
48 * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
49 (is_charset2uni_large, compact_large_charset2uni): New functions.
50 (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
51 (output_charset2uni): If mapping to more than the Unicode BMP,
52 use an extra indirection to keep each value in 16 bits.
53 (invert): Bump limit from U+10000 to U+30000.
54 (output_uni2charset_dense): Likewise.
55 (output_uni2charset_sparse): Likewise. If mapping to more than one
56 CJK plane, use three bytes per value instead of two bytes.
57 (byte_row_cns11643): Allow more than 3 CJK planes.
58 (do_cns11643_only_uni2charset): Increase number of rows, to include
59 plane 15. Remove plane bits hack.
60 (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
61 * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
62 cns11643_6.h, cns11643_7.h, cns11643_15.h.
63 (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
65 (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
66 cns11643_7.h, cns11643_15.h): New rules.
67 (cns11643_inv.h): Change title.
68 * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
69 * lib/cns11643_3.h: Likewise.
70 * lib/cns11643_4a.h: New file.
71 * lib/cns11643_4b.h: New file.
72 * lib/cns11643_4.h: New file.
73 * lib/cns11643_5.h: New file.
74 * lib/cns11643_6.h: New file.
75 * lib/cns11643_7.h: New file.
76 * lib/cns11643_15.h: New file.
77 * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
78 (cns11643_inv_wctomb): Return 3 bytes now.
79 * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
80 cns11643_7.h, cns11643_15.h.
81 (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
82 plane number starting at 1, not 0.
83 * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
85 * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
87 (euc_tw_wctomb): Update for cns11643_wctomb change.
88 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
89 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
91 (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
92 Try CNS11643 planes 4,5,6,7 as well.
93 * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
94 * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
97 2001-06-01 Bruno Haible <haible@clisp.cons.org>
99 * tests/table-from.c (bmp_only): New variable.
100 (ucs4_decode): If bmp_only, don't return characters outside Unicode
102 (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
103 a conversion line if ucs4_decode returns NULL.
104 * tests/table-to.c (main): When testing encodings other than UTF-8 and
105 GB18030, loop upto U+30000 instead of U+10000.
107 2001-05-24 Bruno Haible <haible@clisp.cons.org>
109 * lib/converters.h (mbtowc_funcs): Add flushwc member function.
110 * lib/flushwc.h: New file.
111 * lib/cp1255.h: Include flushwc.h.
112 (cp1255_comp_table_data, cp1255_comp_table): New arrays.
113 (cp1255_mbtowc): Compose base and combining characters.
114 (cp1255_flushwc): New macro.
115 * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
116 * lib/cp1258.h: Include flushwc.h.
117 (cp1258_mbtowc): Compose base and combining characters.
118 (cp1258_flushwc): New macro.
119 * lib/tcvn.h: Include flushwc.h.
120 (tcvn_mbtowc): Compose base and combining characters.
121 (tcvn_flushwc): New macro.
122 * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
123 from unicode_loop_convert.
124 (unicode_loop_convert): Use unicode_transliterate.
125 (unicode_loop_reset): Call xxx_flushwc and output the resulting
127 * lib/encodings.def: Add xxx_flushwc member.
128 * lib/encodings_aix.def: Likewise.
129 * lib/encodings_dos.def: Likewise.
130 * lib/encodings_local.def: Likewise.
131 * lib/encodings_osf1.def: Likewise.
132 * lib/genaliases.c: Add an argument to the DEFENCODING macro.
133 * lib/genaliases2.c: Likewise.
134 * lib/genflags.c: Likewise.
135 * lib/iconv.c: Likewise.
136 * tests/table-from.c (try): Reset the iconv descriptor before the main
137 call, and flush it afterwards.
138 (ucs4_decode): New function.
139 (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
140 * tests/CP1255-snippet: New file.
141 * tests/CP1255-snippet.UTF-8: New file.
142 * tests/CP1258-snippet: New file.
143 * tests/CP1258-snippet.UTF-8: New file.
144 * tests/TCVN-snippet: New file.
145 * tests/TCVN-snippet.UTF-8: New file.
146 * tests/Makefile.in (check): Check combining behaviour of CP1255,
148 * tests/Makefile.msvc (check): Likewise.
149 * tests/Makefile.os2 (check): Likewise.
151 2001-05-22 Bruno Haible <haible@clisp.cons.org>
153 * lib/converters.h (RET_ILUNI): New macro.
154 (RET_ILSEQ): Change value to -1.
155 (RET_TOOFEW): Change value.
156 * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
157 of 0. Update handling of xxx_mbtowc return value.
158 * lib/genflags.c (emit_encoding): Likewise.
159 * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
160 * lib/armscii_8.h (armscii_8_wctomb): Likewise.
161 * lib/big5.h (big5_wctomb): Likewise.
162 * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
163 * lib/ces_big5.h (ces_big5_wctomb): Likewise.
164 * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
165 * lib/cns11643.h (cns11643_wctomb): Likewise.
166 * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
167 * lib/cp437.h (cp437_wctomb): Likewise.
168 * lib/cp775.h (cp775_wctomb): Likewise.
169 * lib/cp850.h (cp850_wctomb): Likewise.
170 * lib/cp852.h (cp852_wctomb): Likewise.
171 * lib/cp855.h (cp855_wctomb): Likewise.
172 * lib/cp856.h (cp856_wctomb): Likewise.
173 * lib/cp857.h (cp857_wctomb): Likewise.
174 * lib/cp861.h (cp861_wctomb): Likewise.
175 * lib/cp862.h (cp862_wctomb): Likewise.
176 * lib/cp864.h (cp864_wctomb): Likewise.
177 * lib/cp865.h (cp865_wctomb): Likewise.
178 * lib/cp866.h (cp866_wctomb): Likewise.
179 * lib/cp869.h (cp869_wctomb): Likewise.
180 * lib/cp874.h (cp874_wctomb): Likewise.
181 * lib/cp922.h (cp922_wctomb): Likewise.
182 * lib/cp932ext.h (cp932ext_wctomb): Likewise.
183 * lib/cp932.h (cp932_wctomb): Likewise.
184 * lib/cp936ext.h (cp936ext_wctomb): Likewise.
185 * lib/cp949.h (cp949_wctomb): Likewise.
186 * lib/cp950ext.h (cp950ext_wctomb): Likewise.
187 * lib/cp950.h (cp950_wctomb): Likewise.
188 * lib/cp1046.h (cp1046_wctomb): Likewise.
189 * lib/cp1124.h (cp1124_wctomb): Likewise.
190 * lib/cp1129.h (cp1129_wctomb): Likewise.
191 * lib/cp1133.h (cp1133_wctomb): Likewise.
192 * lib/cp1250.h (cp1250_wctomb): Likewise.
193 * lib/cp1251.h (cp1251_wctomb): Likewise.
194 * lib/cp1252.h (cp1252_wctomb): Likewise.
195 * lib/cp1253.h (cp1253_wctomb): Likewise.
196 * lib/cp1254.h (cp1254_wctomb): Likewise.
197 * lib/cp1255.h (cp1255_wctomb): Likewise.
198 * lib/cp1256.h (cp1256_wctomb): Likewise.
199 * lib/cp1257.h (cp1257_wctomb): Likewise.
200 * lib/cp1258.h (cp1258_wctomb): Likewise.
201 * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
202 * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
203 * lib/euc_cn.h (euc_cn_wctomb): Likewise.
204 * lib/euc_jp.h (euc_jp_wctomb): Likewise.
205 * lib/euc_kr.h (euc_kr_wctomb): Likewise.
206 * lib/euc_tw.h (euc_tw_wctomb): Likewise.
207 * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
208 * lib/gb12345.h (gb12345_wctomb): Likewise.
209 * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
210 * lib/gb18030.h (gb18030_wctomb): Likewise.
211 * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
212 * lib/gb2312.h (gb2312_wctomb): Likewise.
213 * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
214 * lib/gbk.h (gbk_wctomb): Likewise.
215 * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
216 * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
217 * lib/hkscs.h (hkscs_wctomb): Likewise.
218 * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
219 * lib/hz.h (hz_wctomb): Likewise.
220 * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
221 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
222 * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
223 * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
224 * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
225 * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
226 * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
227 * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
228 * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
229 * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
230 * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
231 * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
232 * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
233 * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
234 * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
235 * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
236 * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
237 * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
238 * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
239 * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
240 * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
241 * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
242 * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
243 * lib/isoir165.h (isoir165_wctomb): Likewise.
244 * lib/jisx0201.h (jisx0201_wctomb): Likewise.
245 * lib/jisx0208.h (jisx0208_wctomb): Likewise.
246 * lib/jisx0212.h (jisx0212_wctomb): Likewise.
247 * lib/johab.h (johab_wctomb): Likewise.
248 * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
250 * lib/koi8_r.h (koi8_r_wctomb): Likewise.
251 * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
252 * lib/koi8_u.h (koi8_u_wctomb): Likewise.
253 * lib/ksc5601.h (ksc5601_wctomb): Likewise.
254 * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
255 * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
256 * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
257 * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
258 * lib/mac_greek.h (mac_greek_wctomb): Likewise.
259 * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
260 * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
261 * lib/mac_roman.h (mac_roman_wctomb): Likewise.
262 * lib/mac_romania.h (mac_romania_wctomb): Likewise.
263 * lib/mac_thai.h (mac_thai_wctomb): Likewise.
264 * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
265 * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
266 * lib/mulelao.h (mulelao_wctomb): Likewise.
267 * lib/nextstep.h (nextstep_wctomb): Likewise.
268 * lib/sjis.h (sjis_wctomb): Likewise.
269 * lib/tcvn.h (tcvn_wctomb): Likewise.
270 * lib/tis620.h (tis620_wctomb): Likewise.
271 * lib/ucs2be.h (ucs2be_wctomb): Likewise.
272 * lib/ucs2.h (ucs2_wctomb): Likewise.
273 * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
274 * lib/ucs2le.h (ucs2le_wctomb): Likewise.
275 * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
276 * lib/ucs4.h (ucs4_wctomb): Likewise.
277 * lib/uhc_1.h (uhc_1_wctomb): Likewise.
278 * lib/uhc_2.h (uhc_2_wctomb): Likewise.
279 * lib/utf16be.h (utf16be_wctomb): Likewise.
280 * lib/utf16.h (utf16_wctomb): Likewise.
281 * lib/utf16le.h (utf16le_wctomb): Likewise.
282 * lib/utf32be.h (utf32be_wctomb): Likewise.
283 * lib/utf32.h (utf32_wctomb): Likewise.
284 * lib/utf32le.h (utf32le_wctomb): Likewise.
285 * lib/utf7.h (utf7_wctomb): Likewise.
286 * lib/utf8.h (utf8_wctomb): Likewise.
287 * lib/viscii.h (viscii_wctomb): Likewise.
288 * tools/8bit_tab_to_h.c (main): Likewise.
289 * tools/cjk_tab_to_h.c (output_uni2charset_dense,
290 output_uni2charset_sparse, do_gb18030uni): Likewise.
292 2001-05-19 Bruno Haible <haible@clisp.cons.org>
294 * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
295 (man/%.html): New rule.
296 * man/Makefile.in (docdir, htmldir): New variables.
297 (install, installdirs): Install the HTML formatted man pages in
299 (uninstall): Uninstall them.
301 2001-05-20 Bruno Haible <haible@clisp.cons.org>
303 * lib/cp1255.h (cp1255_decomp_table): New array.
304 (cp1255_comb_table): New array.
305 (cp1255_wctomb): Decompose Unicode characters.
306 * tests/CP1255.IRREVERSIBLE.TXT: New file.
308 2001-05-13 Bruno Haible <haible@clisp.cons.org>
310 * lib/vietcomb.h: New file.
311 * lib/cp1258.h: Include it.
312 (cp1258_comb_table): New array.
313 (cp1258_wctomb): Decompose Unicode characters.
314 * lib/tcvn.h: Include it.
315 (tcvn_comb_table): New array.
316 (tcvn_wctomb): Decompose Unicode characters.
317 * tests/CP1258.IRREVERSIBLE.TXT: New file.
318 * tests/TCVN.IRREVERSIBLE.TXT: New file.
320 2001-05-06 Bruno Haible <haible@clisp.cons.org>
322 * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
323 (iconv.lib): Likewise.
325 2001-05-06 Bruno Haible <haible@clisp.cons.org>
327 * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
328 (CPP): Remove variable.
329 (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
330 libiconv_plug_osf.so): Use LDFLAGS.
331 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
332 libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
333 * lib/Makefile.msvc (CPP): Remove variable.
334 * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
335 (CPP): Remove variable.
336 (iconv): Use CPPFLAGS and LDFLAGS.
337 * src/Makefile.msvc (CPP): Remove variable.
338 * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
339 (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
340 * tests/Makefile.msvc (CPP): Remove variable.
342 2001-05-06 Bruno Haible <haible@clisp.cons.org>
344 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
345 gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
347 2001-04-11 Bruno Haible <haible@clisp.cons.org>
349 Implement and document UTF-32, UTF-32BE, UTF-32LE.
350 * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
351 * src/converters.h: Include them.
352 * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
353 * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
354 * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
355 * tests/Makefile.os2 (check): Likewise.
356 * tests/Makefile.msvc (check): Likewise.
357 * tests/UTF-32*snippet*: New files.
359 * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
360 (ucs4_wctomb): Allow any 31-bit codepoint.
362 2001-04-11 Bruno Haible <haible@clisp.cons.org>
364 * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
365 unassigned code points.
366 * tests/table-from.c (main); When dumping GB18030, don't print code
367 points larger than U+FFFF.
369 2001-03-30 Bruno Haible <haible@clisp.cons.org>
371 * tools/Makefile (GB18030uni.TXT): Use a table source which includes
372 the unassigned Unicode code points.
373 * lib/gb18030uni.h: Update.
374 (gb18030uni_ranges): Remove bitmap_offset field.
375 (gb18030uni_bitmap): Remove array.
376 (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
377 (gb18030uni_wctomb): Likewise.
378 * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
379 (gb18030_wctomb): Likewise.
381 2001-03-21 Bruno Haible <haible@clisp.cons.org>
383 * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
385 2001-03-21 Bruno Haible <haible@clisp.cons.org>
387 * src/iconv.c (print_version): Now called GNU libiconv.
389 2001-03-20 Bruno Haible <haible@clisp.cons.org>
391 * README: This package is now called GNU libiconv.
393 * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
395 * tools/cjk_tab_to_h.c (output_title): Likewise.
396 * tools/cjk_variants.c (main): Likewise.
397 * lib/gentranslit.c (main): Likewise.
399 2001-03-19 Bruno Haible <haible@clisp.cons.org>
401 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
402 ac_config_guess and ac_config_sub. Then ignore requests for
403 AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
405 2001-03-10 Bruno Haible <haible@clisp.cons.org>
407 * INSTALL.generic: New section "Particular Systems".
409 2001-03-10 Bruno Haible <haible@clisp.cons.org>
411 * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
414 * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
417 2001-03-06 Bruno Haible <haible@clisp.cons.org>
419 * Version 1.6 released.
420 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
422 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
424 2001-03-05 Bruno Haible <haible@clisp.cons.org>
426 Provide all encodings used by OSF/1 5.1 locales.
427 * lib/dec_kanji.h: New file.
428 * lib/dec_hanyu.h: New file.
429 * lib/converters.h: Include them if USE_OSF1 is defined.
430 * lib/encodings_osf1.def: New file.
431 * lib/genflags.c (main): Include it. Define USE_OSF1.
432 * lib/genaliases2.c (main): Include it conditionally.
433 * lib/iconv.c: Define USE_OSF1 on OSF/1.
434 Include encodings_osf1.def and aliases_osf1.h.
435 * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
437 * Makefile.devel (lib/aliases_osf1.h): New target.
438 (all): Depend on lib/aliases_osf1.h.
439 (lib/flags.h): Depend on lib/encodings_osf1.def.
441 2001-03-01 Bruno Haible <haible@clisp.cons.org>
443 * tools/Makefile (cp775.h): New target.
445 * lib/cp775.h: New file.
446 * lib/converters.h: Include it.
447 * lib/encodings_dos.def (CP775): New encoding.
449 2001-02-25 Bruno Haible <haible@clisp.cons.org>
451 * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
454 2001-02-24 Bruno Haible <haible@clisp.cons.org>
456 * src/iconv.c (convert): Use ICONV_CONST.
457 * tests/table-from.c: Include config.h.
458 (try): Use ICONV_CONST.
459 * tests/table-to.c: Include config.h.
460 (main): Use ICONV_CONST.
461 * tests/Makefile.in (INCLUDES): Add -I../lib.
462 * tests/Makefile.os2 (INCLUDES): Likewise.
463 * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
465 2001-02-24 Bruno Haible <haible@clisp.cons.org>
467 Provide all encodings used by DOS locales.
468 * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
469 cp864.h, cp865.h, cp869.h): New targets.
471 * lib/cp437.h: New file.
472 * lib/cp852.h: New file.
473 * lib/cp855.h: New file.
474 * lib/cp857.h: New file.
475 * lib/cp861.h: New file.
476 * lib/cp864.h: New file.
477 * lib/cp865.h: New file.
478 * lib/cp869.h: New file.
479 * lib/converters.h: Include them if USE_DOS is defined.
480 * lib/encodings_dos.def: New file.
481 * lib/genflags.c (main): Include it. Define USE_DOS.
482 * lib/genaliases2.c (main): Include it conditionally.
483 * lib/iconv.c: Define USE_DOS on DJGPP.
484 Include encodings_dos.def and aliases_dos.h.
485 * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
487 * Makefile.devel (lib/aliases_dos.h): New target.
488 (all): Depend on lib/aliases_dos.h.
489 (lib/flags.h): Depend on lib/encodings_dos.def.
491 2001-02-23 Bruno Haible <haible@clisp.cons.org>
493 * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
494 (SET_BINARY) [O_BINARY]: New macro.
495 (usage): Mention --binary if available.
496 (convert): Use SET_BINARY instead of setmode.
498 Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
500 2001-02-25 Bruno Haible <haible@clisp.cons.org>
503 sed -e 's/reload object files/produce relocatable object files/'.
505 2001-02-20 Bruno Haible <haible@clisp.cons.org>
507 * src/iconv.c (usage, main): Make -f and -t options optional.
508 * man/iconv.1: Mark them as optional.
510 2001-02-20 Bruno Haible <haible@clisp.cons.org>
512 * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
514 * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
515 0xFE5E -> U+2E97. Shift the entire four-byte range.
516 * tests/GB18030.TXT: Regenerated.
518 2001-02-20 Bruno Haible <haible@clisp.cons.org>
520 Better support for DOS/Windows platforms.
521 * autoconf/ltconfig: Upgrade to libtool-1.3.5.
522 * autoconf/ltmain.sh: Likewise.
523 * autoconf/aclocal.m4: Likewise.
524 * autoconf/install-sh: New file.
525 * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
527 2001-02-20 Bruno Haible <haible@clisp.cons.org>
529 * Makefile.in (libdir, includedir, mandir): Use the autoconf
530 determined value, in order to respect the configure arguments.
531 * lib/Makefile.in (libdir): Likewise.
532 * src/Makefile.in (bindir): Likewise.
533 * man/Makefile.in (mandir): Likewise.
535 2001-02-04 Bruno Haible <haible@clisp.cons.org>
537 * lib/translit.def: Add all the neutral transliterations from glibc.
538 * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
539 UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
540 Avoid accessing data[-1].
541 * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
544 2001-01-05 Bruno Haible <haible@clisp.cons.org>
546 Implement and document CP862.
547 * tools/Makefile (ALL): Add cp862.h.
548 (cp862.h): New target.
549 * lib/cp862.h: New file.
550 * lib/converters.h: Include it.
551 * lib/encodings.def (CP862): New encoding.
552 * README, man/iconv_open.3: Add CP862.
553 * tests/Makefile.in (check): Check CP862.
554 * tests/Makefile.msvc (check): Likewise.
555 * tests/Makefile.os2 (check): Likewise.
556 * tests/CP862.TXT: New file.
558 2000-12-18 Bruno Haible <haible@clisp.cons.org>
560 * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
561 * Makefile.devel (OTHERMACROS): Add it.
562 * configure.in: Call AC_MBSTATE_T.
563 * lib/config.h.in (mbstate_t): New definition.
564 * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
566 2000-12-12 Bruno Haible <haible@clisp.cons.org>
568 * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
569 "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
570 given. Reported by Toshimitsu Fujiwara.
572 2000-12-08 Bruno Haible <haible@clisp.cons.org>
574 * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
575 * lib/Makefile.in (exec_prefix): Likewise.
576 * src/Makefile.in (exec_prefix): Likewise.
577 * man/Makefile.in (exec_prefix): Likewise.
579 2000-12-02 Bruno Haible <haible@clisp.cons.org>
581 * Version 1.5 released.
582 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
584 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
586 2000-12-02 Bruno Haible <haible@clisp.cons.org>
588 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
589 Remove files installed in lib by libcharset.
590 * Makefile.msvc (mostlyclean): Likewise.
592 * Makefile.in (check): Depend on target 'all'.
593 * Makefile.os2 (check): Likewise.
594 * Makefile.msvc (check): Depend on target 'force' as well.
596 * src/iconv.c (usage): Take an exitcode argument.
597 (print_version): New function.
598 (main): Recognize --help and --version command line options.
600 2000-12-02 Bruno Haible <haible@clisp.cons.org>
602 * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
603 * lib/Makefile.msvc: Likewise.
604 * src/Makefile.msvc: Likewise.
605 * tests/Makefile.msvc: Likewise.
607 2000-12-01 Bruno Haible <haible@clisp.cons.org>
609 * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
610 (force_binary): New variable.
611 (convert): If requested, set the input O_BINARY.
612 (main): Accept --binary option. If requested, set the output O_BINARY.
613 * tests/check-stateful.bat: Pass --binary to iconv.
614 * tests/check-stateful.cmd: Likewise.
615 * tests/check-translit.bat: Likewise.
616 * tests/check-translit.cmd: Likewise.
618 2000-12-01 Bruno Haible <haible@clisp.cons.org>
620 * include/iconv.h.in (_libiconv_version): New declaration.
621 * lib/iconv.c (_libiconv_version): New variable.
623 2000-11-30 Bruno Haible <haible@clisp.cons.org>
625 * Makefile.msvc (all): File now named lib/libcharset.h.
626 (clean, distclean, maintainer-clean): Likewise.
628 2000-11-23 Bruno Haible <haible@clisp.cons.org>
630 * lib/*: Move here all files from src/*.
631 * src/*: Move all files to lib.
632 * lib/Makefile.in (distclean): No need to remove config.status,
633 config.log, config.cache.
634 * configure.in: Require lib/iconv.c, not src/iconv.c. Create
635 lib/config.h, not src/config.h. Also create lib/Makefile.
636 * Makefile.in (all): Install libcharset into lib, not src. Recurse
638 (install-lib): Recurse into lib, not src.
639 (install): Recurse into libcharset, lib and src.
640 (installdirs, uninstall): Likewise.
641 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
642 * Makefile.msvc (all): Recurse into lib and src.
643 (install): Recurse into libcharset, lib and src.
644 (installdirs, uninstall): Likewise.
645 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
646 * Makefile.os2 (all): Recurse into lib and src.
647 (install-lib): Recurse into lib, not src.
648 (install, uninstall): Recurse into lib and src.
649 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
650 * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
651 (lib/aliases.h): Renamed from src/aliases.h.
652 (lib/aliases.gperf): Renamed from src/aliases.gperf.
653 (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
654 (lib/flags.h): Renamed from src/flags.h.
655 (lib/translit.h): Renamed from src/translit.h.
656 * src/iconv.c: Moved here from tests/iconv.c.
657 * src/Makefile.in: New file.
658 * src/Makefile.msvc: New file.
659 * src/Makefile.os2: New file.
660 * tests/Makefile.in (iconv): Remove target.
661 (../lib/libiconv.la): Renamed from ../src/libiconv.la.
662 (clean): No need to remove iconv.
663 * tests/Makefile.msvc (iconv.exe): Remove target.
664 * tests/Makefile.os2 (iconv.exe): Likewise.
665 * tests/check-stateful: iconv is in ../src.
666 * tests/check-stateful.bat: Likewise.
667 * tests/check-stateful.cmd: Likewise.
668 * tests/check-translit: iconv is in ../src.
669 * tests/check-translit.bat: Likewise.
670 * tests/check-translit.cmd: Likewise.
671 * man/iconv.1: New file.
672 * man/Makefile.in (install, installdirs, uninstall): Also install *.1
674 * man/Makefile.os2 (MAN3): Renamed from MAN.
675 (MAN1): New variable.
676 (install, uninstall): Also install *.1 man pages.
678 2000-11-21 Bruno Haible <haible@clisp.cons.org>
680 * Makefile.msvc (all, check, mostlyclean, clean, distclean,
681 maintainer-clean): Recurse into libcharset.
682 (clean, distclean, maintainer-clean): Remove src\libcharset.h.
683 * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
684 (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
686 2000-11-18 Bruno Haible <haible@clisp.cons.org>
688 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
689 so that it agrees with Microsoft's definition of CP950.
690 * tests/CP950.TXT: Likewise.
691 * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
693 2000-11-18 Bruno Haible <haible@clisp.cons.org>
695 Add support for locale dependent "char" and "wchar_t" encodings.
696 * libcharset: New subdirectory.
697 * src/loop_unicode.h: New file, extracted from src/iconv.c.
698 * src/loop_wchar.h: New file.
699 * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
700 * src/encodings_local.def: New file.
701 * src/genaliases.c: Also create aliases for encodings_local.def.
702 * src/converters.h (conv_struct): Add lfuncs field.
703 * src/genflags.c: Add dummy definitions of struct loop_funcs.
704 * src/iconv.c: Include libcharset.h.
705 (loop_funcs): New structure.
706 Treat encodings_local.def like encodings.def.
708 (iconv_open): Move the bulk of the code to loop_unicode.h.
710 (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
712 * src/Makefile.in (PLUG_SOURCES): Remove variable.
713 (LIBCHARSET_OBJECTS): New variable.
714 (libiconv.la): Link in the LIBCHARSET_OBJECTS.
715 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
716 libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
718 (iconv.lo): Depend on encodings_local.def.
719 * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
720 * src/Makefile.os2 (iconv.obj): Likewise.
721 * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
722 Recurse into libcharset.
723 * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
724 HAVE_SETLOCALE): New macros.
725 * tests/iconv.c: Include config.h and locale.h.
726 (main): Call setlocale.
727 * tests/Makefile.in (iconv): Search for config.h in ../src.
728 * tests/Makefile.os2 (iconv.exe): Likewise.
729 * tests/Makefile.msvc (iconv.exe): Likewise.
730 * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
731 * Makefile.in: After "cd", use "&&" not ";".
732 (all, check, mostlyclean, clean, distclean, maintainer-clean):
733 Recurse into libcharset.
734 * Makefile.devel (all): Recurse into libcharset.
735 (src/aliases.gperf): Depend on src/encodings_local.def.
737 2000-11-18 Bruno Haible <haible@clisp.cons.org>
739 * src/converters.h (ucs4_t): New type.
740 (wchar_t): Remove locally defined override.
741 (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
742 * src/iconv.c (iconv): Likewise.
743 * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
744 * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
745 * tools/cjk_tab_to_h.c: Likewise.
746 * src/armscii_8.h: Use ucs4_t instead of wchar_t.
747 * src/ascii.h: Likewise.
748 * src/big5.h: Likewise.
749 * src/big5hkscs.h: Likewise.
750 * src/ces_big5.h: Likewise.
751 * src/ces_gbk.h: Likewise.
752 * src/cns11643.h: Likewise.
753 * src/cns11643_1.h: Likewise.
754 * src/cns11643_2.h: Likewise.
755 * src/cns11643_3.h: Likewise.
756 * src/cns11643_inv.h: Likewise.
757 * src/cp1046.h: Likewise.
758 * src/cp1124.h: Likewise.
759 * src/cp1129.h: Likewise.
760 * src/cp1133.h: Likewise.
761 * src/cp1250.h: Likewise.
762 * src/cp1251.h: Likewise.
763 * src/cp1252.h: Likewise.
764 * src/cp1253.h: Likewise.
765 * src/cp1254.h: Likewise.
766 * src/cp1255.h: Likewise.
767 * src/cp1256.h: Likewise.
768 * src/cp1257.h: Likewise.
769 * src/cp1258.h: Likewise.
770 * src/cp850.h: Likewise.
771 * src/cp856.h: Likewise.
772 * src/cp866.h: Likewise.
773 * src/cp874.h: Likewise.
774 * src/cp922.h: Likewise.
775 * src/cp932.h: Likewise.
776 * src/cp932ext.h: Likewise.
777 * src/cp936ext.h: Likewise.
778 * src/cp949.h: Likewise.
779 * src/cp950.h: Likewise.
780 * src/cp950ext.h: Likewise.
781 * src/euc_cn.h: Likewise.
782 * src/euc_jp.h: Likewise.
783 * src/euc_kr.h: Likewise.
784 * src/euc_tw.h: Likewise.
785 * src/gb12345.h: Likewise.
786 * src/gb12345ext.h: Likewise.
787 * src/gb18030.h: Likewise.
788 * src/gb18030ext.h: Likewise.
789 * src/gb18030uni.h: Likewise.
790 * src/gb2312.h: Likewise.
791 * src/gbk.h: Likewise.
792 * src/gbkext1.h: Likewise.
793 * src/gbkext2.h: Likewise.
794 * src/gbkext_inv.h: Likewise.
795 * src/georgian_academy.h: Likewise.
796 * src/georgian_ps.h: Likewise.
797 * src/hkscs.h: Likewise.
798 * src/hp_roman8.h: Likewise.
799 * src/hz.h: Likewise.
800 * src/iso2022_cn.h: Likewise.
801 * src/iso2022_cnext.h: Likewise.
802 * src/iso2022_jp.h: Likewise.
803 * src/iso2022_jp1.h: Likewise.
804 * src/iso2022_jp2.h: Likewise.
805 * src/iso2022_kr.h: Likewise.
806 * src/iso646_cn.h: Likewise.
807 * src/iso646_jp.h: Likewise.
808 * src/iso8859_1.h: Likewise.
809 * src/iso8859_10.h: Likewise.
810 * src/iso8859_13.h: Likewise.
811 * src/iso8859_14.h: Likewise.
812 * src/iso8859_15.h: Likewise.
813 * src/iso8859_16.h: Likewise.
814 * src/iso8859_2.h: Likewise.
815 * src/iso8859_3.h: Likewise.
816 * src/iso8859_4.h: Likewise.
817 * src/iso8859_5.h: Likewise.
818 * src/iso8859_6.h: Likewise.
819 * src/iso8859_7.h: Likewise.
820 * src/iso8859_8.h: Likewise.
821 * src/iso8859_9.h: Likewise.
822 * src/isoir165.h: Likewise.
823 * src/isoir165ext.h: Likewise.
824 * src/java.h: Likewise.
825 * src/jisx0201.h: Likewise.
826 * src/jisx0208.h: Likewise.
827 * src/jisx0212.h: Likewise.
828 * src/johab.h: Likewise.
829 * src/johab_hangul.h: Likewise.
830 * src/koi8_r.h: Likewise.
831 * src/koi8_ru.h: Likewise.
832 * src/koi8_u.h: Likewise.
833 * src/ksc5601.h: Likewise.
834 * src/mac_arabic.h: Likewise.
835 * src/mac_centraleurope.h: Likewise.
836 * src/mac_croatian.h: Likewise.
837 * src/mac_cyrillic.h: Likewise.
838 * src/mac_greek.h: Likewise.
839 * src/mac_hebrew.h: Likewise.
840 * src/mac_iceland.h: Likewise.
841 * src/mac_roman.h: Likewise.
842 * src/mac_romania.h: Likewise.
843 * src/mac_thai.h: Likewise.
844 * src/mac_turkish.h: Likewise.
845 * src/mac_ukraine.h: Likewise.
846 * src/mulelao.h: Likewise.
847 * src/nextstep.h: Likewise.
848 * src/sjis.h: Likewise.
849 * src/tcvn.h: Likewise.
850 * src/tis620.h: Likewise.
851 * src/ucs2.h: Likewise.
852 * src/ucs2be.h: Likewise.
853 * src/ucs2internal.h: Likewise.
854 * src/ucs2le.h: Likewise.
855 * src/ucs2swapped.h: Likewise.
856 * src/ucs4.h: Likewise.
857 * src/ucs4be.h: Likewise.
858 * src/ucs4internal.h: Likewise.
859 * src/ucs4le.h: Likewise.
860 * src/ucs4swapped.h: Likewise.
861 * src/uhc_1.h: Likewise.
862 * src/uhc_2.h: Likewise.
863 * src/utf16.h: Likewise.
864 * src/utf16be.h: Likewise.
865 * src/utf16le.h: Likewise.
866 * src/utf7.h: Likewise.
867 * src/utf8.h: Likewise.
868 * src/viscii.h: Likewise.
870 2000-11-18 Bruno Haible <haible@clisp.cons.org>
872 Make transliteration optional.
873 * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
874 Set transliteration on if and only if tocode ends in //TRANSLIT.
875 * README, man/iconv_open.3: Document how to enable transliteration.
876 * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
877 * tests/check-translit.bat: Likewise.
878 * tests/check-translit.cmd: Likewise.
880 2000-11-18 Bruno Haible <haible@clisp.cons.org>
882 * man/iconv.3: Fix typo.
884 2000-10-31 Bruno Haible <haible@clisp.cons.org>
886 * README, man/iconv_open.3: Document JOHAB again.
888 2000-11-15 Bruno Haible <haible@clisp.cons.org>
890 * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
891 (STATIC): Change default from 0 to 1.
892 * src/Makefile.msvc: Likewise.
893 * tests/Makefile.msvc: Likewise.
894 * tests/check-stateless.bat: Call 'sort' with no arguments.
896 2000-11-12 Bruno Haible <haible@clisp.cons.org>
898 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
899 version from GNU CVS.
901 2000-10-24 Bruno Haible <haible@clisp.cons.org>
903 * Version 1.4 released.
904 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
906 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
908 2000-10-23 Bruno Haible <haible@clisp.cons.org>
910 Implement and document GB18030 and BIG5HKSCS.
911 * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
913 (do_gb18030uni): New function.
914 (main): Accept gb18030ext, gb18030uni, hkscs.
915 * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
916 (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
917 hkscs.h): New targets.
918 * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
919 * src/hkscs.h, src/big5hkscs.h: New files.
920 * src/converters.h: Include gb18030.h and big5hkscs.h.
921 * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
922 * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
923 * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
924 * tests/Makefile.msvc (check): Likewise.
925 * tests/Makefile.os2 (check): Likewise.
926 * tests/GB18030.TXT: New file.
927 * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
929 2000-10-23 Bruno Haible <haible@clisp.cons.org>
931 * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
932 UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
933 * tests/table-to.c (main): Likewise.
935 2000-10-22 Bruno Haible <haible@clisp.cons.org>
937 * src/gentranslit.c (main): Read the input in UTF-8 encoding.
939 2000-10-09 Bruno Haible <haible@clisp.cons.org>
941 CPU recognition on OpenBSD.
942 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
943 __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
945 2000-10-03 Bruno Haible <haible@clisp.cons.org>
947 * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
948 character literals, use the numeric value instead.
949 Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
951 2000-09-29 Bruno Haible <haible@clisp.cons.org>
953 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
956 2000-09-25 Bruno Haible <haible@clisp.cons.org>
958 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
959 as equivalent to __i386. For OpenBSD.
961 2000-09-21 Bruno Haible <haible@clisp.cons.org>
963 * src/utf16.h (utf16_wctomb): Reject single surrogates.
964 * src/utf16be.h (utf16be_wctomb): Likewise.
965 * src/utf16le.h (utf16le_wctomb): Likewise.
966 * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
967 * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
968 * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
969 * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
971 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
974 2000-09-15 Bruno Haible <haible@clisp.cons.org>
976 * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
977 * src/Makefile.in (install, installdirs, uninstall): Likewise.
978 * man/Makefile.in (install, installdirs, uninstall): Likewise.
980 2000-09-11 Bruno Haible <haible@clisp.cons.org>
982 * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
984 2000-08-26 Bruno Haible <haible@clisp.cons.org>
986 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
989 2000-07-04 Akira Hatakeyama <akira@sra.co.jp>
990 Bruno Haible <haible@clisp.cons.org>
992 * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
993 tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
994 tests/check-stateless.cmd, tests/check-translit.cmd: New files.
996 2000-06-28 Bruno Haible <haible@clisp.cons.org>
998 * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
1000 * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
1001 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
1002 sizeof(unsigned short).
1003 * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
1004 sizeof(unsigned int).
1005 Reported by François Pinard <pinard@iro.umontreal.ca>.
1007 2000-05-29 Bruno Haible <haible@clisp.cons.org>
1009 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
1010 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
1012 2000-05-23 Bruno Haible <haible@clisp.cons.org>
1014 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
1015 host_vendor, host_os correctly if $host has more than two hyphens.
1017 2000-04-15 Bruno Haible <haible@clisp.cons.org>
1019 * Version 1.3 released.
1020 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
1021 Bump version number.
1022 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
1024 2000-04-15 Bruno Haible <haible@clisp.cons.org>
1027 * INSTALL.generic: New file.
1029 Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
1030 * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
1031 * src/converters.h: Include them.
1032 * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
1033 * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
1034 * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
1035 (UCS-2LE): Renamed from UCS-2-LE.
1036 (UCS-4BE): Renamed from UCS-4-BE.
1037 (UCS-4LE): Renamed from UCS-4-LE.
1038 * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
1039 * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
1040 * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
1041 * tests/Makefile.msvc (check): Likewise.
1042 * tests/UCS-*snippet*: New files.
1044 Allow building as a shared library on Windows.
1045 Allow running the tests on Windows.
1046 * Makefile.devel (include/iconv.h.msvc): Remove rule.
1047 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
1050 * windows/dllexport.h: New file.
1051 * include/iconv.h.msvc: Remove file.
1052 * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
1053 autogenerated files.
1054 * Makefile.msvc (STATIC, DEBUG): Default to 0.
1055 (all): Choose either include\iconv.h.msvc-static or
1056 include\iconv.h.msvc-shared.
1057 (check): Depend on all.
1058 (all, check, mostlyclean, clean, distclean, maintainer-clean):
1059 Recurse into tests directory.
1060 * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
1061 (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
1062 (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
1063 (RESOURCES): New variable.
1064 (iconv.lib): Change rule when building DLL.
1065 (clean, distclean): One filename per line.
1066 * tests/Makefile.msvc: New file.
1067 * tests/check-stateful.bat, tests/check-stateless.bat,
1068 tests/check-translit.bat: New files.
1069 * tests/uniq-u.c: New file, taken from GNU textutils.
1070 * README.win32: Update.
1071 Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
1073 2000-04-14 Bruno Haible <haible@clisp.cons.org>
1075 Fix an OSF/1 problem.
1076 * configure.in: Define GCC variable for substitution.
1077 * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
1080 2000-04-13 Bruno Haible <haible@clisp.cons.org>
1082 Fix a SunOS 4 problem.
1083 * include/iconv.h.in: If EILSEQ is not defined by the system, define
1084 it to ENOENT, not EILSEQ.
1086 2000-04-02 Bruno Haible <haible@clisp.cons.org>
1088 Allow building on filesystems lacking symlinks and hard links.
1089 * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
1091 * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
1092 * src/Makefile.in (LN): Use autoconfigured value @LN@.
1093 (LN_S): Use autoconfigured value @LN_S@.
1095 2000-03-15 Bruno Haible <haible@clisp.cons.org>
1097 * Version 1.2 released.
1098 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
1099 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
1101 2000-03-14 Bruno Haible <haible@clisp.cons.org>
1103 Implement and document UTF-16BE and UTF16LE.
1104 * src/utf16be.h, src/utf16le.h: New files.
1105 * src/converters.h: Include them.
1106 * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
1107 * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
1108 * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
1109 * tests/UTF-16*snippet*: New files.
1111 * src/utf16.h (utf16_wctomb): Output a byte order mark.
1113 2000-03-13 Bruno Haible <haible@clisp.cons.org>
1115 Provide all encodings used by AIX locales.
1116 * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
1118 (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
1119 * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
1120 src/cp1129.h: New files.
1121 * src/converters.h: Include them if USE_AIX is defined.
1122 * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
1124 * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
1125 * src/genaliases2.c: New file.
1126 * src/iconv.c: Define USE_AIX on AIX.
1127 Include encodings_aix.def and aliases_aix.h.
1128 (aliases2_lookup): New function.
1129 (iconv_open): Call aliases2_lookup.
1130 * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
1132 * Makefile.devel (all): Add src/aliases_aix.h.
1133 (src/aliases_aix.h): New rule.
1134 (src/flags.h): Depend on src/encodings_aix.def.
1136 2000-02-24 Bruno Haible <haible@clisp.cons.org>
1138 * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
1139 Reported by Edmund Grimley Evans <edmundo@rano.org>.
1141 2000-02-22 Bruno Haible <haible@clisp.cons.org>
1143 * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
1145 2000-02-15 Bruno Haible <haible@clisp.cons.org>
1147 * src/iconv.c (iconv): Add cast in xxx_reset call.
1149 2000-02-05 Bruno Haible <haible@clisp.cons.org>
1151 * src/tis620.h: Simplify.
1153 2000-01-27 Bruno Haible <haible@clisp.cons.org>
1155 * Makefile.devel (CLISP_DIR): Change to "..".
1157 2000-01-24 Bruno Haible <haible@clisp.cons.org>
1159 * Version 1.1 released.
1160 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
1161 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
1163 2000-01-23 Bruno Haible <haible@clisp.cons.org>
1165 * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
1168 2000-01-22 Bruno Haible <haible@clisp.cons.org>
1170 * include/iconv.h.in (iconvctl): New declaration.
1171 (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
1173 * src/iconv.c (iconvctl): New function.
1175 * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
1177 Solve a build problem.
1178 * include/iconv.h.in: Renamed from include/libiconv.h.in.
1179 * Makefile.devel: libiconv.h -> iconv.h.
1180 * Makefile.in: Likewise.
1181 * configure.in: Likewise. Remove check for <iconv.h>.
1182 * src/iconv.c: Include iconv.h instead of libiconv.h.
1183 * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
1185 * README, man/iconv_open.3: Don't document JOHAB any more.
1187 * man/iconv.3: Clarify return value again.
1189 2000-01-16 Bruno Haible <haible@clisp.cons.org>
1192 * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
1193 (ISO-8859-15): Add alias ISO-IR-203.
1194 (EUC-CN): Add alias CN-GB, from RFC 1922.
1195 (BIG5): Add alias CN-BIG5, from RFC 1922.
1196 * Makefile.devel (src/aliases.h): Add 8th character to key set.
1199 * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
1200 (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
1201 (KSC_5601): Drop KSC5601.1987-0 alias.
1203 Improve GB/T 12345 (not used yet).
1204 * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
1205 * src/gb12345ext.h: Regenerated.
1207 Improve and document CP949.
1208 * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
1209 (uhc_1.h, uhc_2.h): New rules.
1210 * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
1212 (output_uni2charset_sparse): Take an additional boolean argument.
1213 All callers changed.
1214 (*_uhc_1, *_uhc_2): New functions.
1215 (main): Treat uhc_1 and uhc_2.
1216 * src/uhc_1.h, src/uhc_2.h: New files.
1217 * src/cp949.h: New file, include them.
1218 * src/converters.h: Include it.
1219 * src/encodings.def (KSC_5601): Remove alias CP949.
1220 (CP949): New encoding.
1221 * README, man/iconv_open.3: Add CP949.
1222 * tests/Makefile.in (check): Check CP949.
1223 * tests/CP949.TXT: New file.
1226 * README, man/iconv_open.3: Add CP932.
1227 * tests/Makefile.in (check): Check CP932.
1228 * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
1230 * Makefile.devel (src/flags.h): Depend on src/converters.h.
1232 * tests/Makefile.in (check): Check JIS_X0201.
1233 * tests/JIS_X0201.TXT: New file.
1235 * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
1236 * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
1238 * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
1239 (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
1241 Add ISO-IR-165 (undocumented).
1242 * tools/Makefile (all): Add isoir165ext.h.
1243 (isoir165ext.h): New rule.
1244 * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
1245 * src/isoir165.h, src/isoir165ext.h: New files.
1246 * src/converters.h: Include it.
1247 * src/encodings.def: Add ISO-IR-165.
1248 * tests/Makefile.in (check): Check ISO-IR-165.
1249 * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
1251 Add ISO646-CN (undocumented).
1252 * src/iso646_cn.h: New file.
1253 * src/converters.h: Include it.
1254 * src/encodings.def: Add ISO646-CN.
1255 * tests/Makefile.in (check): Check ISO646-CN.
1256 * tests/ISO646-CN.TXT: New file.
1258 Add ISO646-JP (undocumented).
1259 * src/iso646_jp.h: New file.
1260 * src/converters.h: Include it.
1261 * src/encodings.def: Add ISO646-JP.
1262 * tests/Makefile.in (check): Check ISO646-JP.
1263 * tests/ISO646-JP.TXT: New file.
1265 2000-01-05 Bruno Haible <haible@clisp.cons.org>
1268 * tools/Makefile (all): Add iso8859_16.h.
1269 (iso8859_16.h): New rule.
1270 * src/iso8859_16.h: New file.
1271 * src/converters.h: Include it.
1272 * src/encodings.def: Add ISO-8859-16.
1273 * README, man/iconv_open.3: Add ISO-8859-16.
1274 * tests/Makefile.in (check): Check ISO-8859-16.
1275 * tests/ISO-8859-16.TXT: New file.
1277 * man/iconv.3: Clarify what happens *inbuf in case 3.
1279 * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
1280 * tests/ISO-8859-8.TXT: Likewise.
1282 2000-01-04 Bruno Haible <haible@clisp.cons.org>
1284 * Version 1.0 released.
1285 * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
1286 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
1287 (libiconv.la): Use LIBICONV_VERSION_INFO.
1289 2000-01-03 Bruno Haible <haible@clisp.cons.org>
1291 * tests/Makefile.in: New file.
1292 tests/check-stateless, tests/table-from.c, tests/table-to.c,
1293 tests/*.TXT, tests/genutf8.c: New files, checks for stateless
1295 tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
1296 checks for stateful encodings.
1297 * Makefile.in (all, check, mostlyclean, clean, distclean,
1298 maintainer-clean): Descend into tests directory.
1299 * configure.in: Add tests/Makefile to AC_OUTPUT duties.
1301 * src/gentranslit.c: New file.
1302 * Makefile.devel (src/translit.h): New rule.
1303 * src/translit.def, src/translit.h: New files.
1304 * src/iconv.c: Include it.
1305 (iconv): Transliterate using translit.h table.
1307 * src/genflags.c: New file.
1308 * Makefile.devel (src/flags.h): New rule.
1309 * src/flags.h: New file.
1310 * src/iconv.c: Include it.
1311 (encoding): Add field 'oflags'.
1312 (all_encodings): Initialize the field 'oflags'.
1313 (iconv_open): Copy field 'oflags'.
1314 (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
1315 * src/Makefile.in (iconv.lo): Update dependencies.
1317 * src/converters.h: New file, extracted from src/iconv.c.
1318 * src/iconv.c: Include it.
1319 * src/Makefile.in (iconv.lo): Update dependencies.
1321 * tools/cjk_variants.c: New file.
1322 * tools/Makefile (ALL): Add cjk_variants.h.
1323 (cjk_variants.h, cjk_variants): New rules.
1324 * src/cjk_variants.h: New file.
1325 * src/iconv.c: Include it.
1326 (iconv): Use cjk_variants for transliteration.
1328 * man/iconv.3: Fix description of return value.
1329 * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
1330 * iso2022_kr.h (iso2022kr_wctomb): Likewise.
1331 * src/iconv.c (iconv): Do Hangul transliteration here and increment
1332 result once for every transliterated character.
1333 * src/johab_hangul.h (johab_hangul_decompose): Change result array
1334 from 'unsigned char*' to 'wchar_t*'.
1336 * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
1339 * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
1341 * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
1344 * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
1346 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
1349 * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
1350 not being excluded. Fix that.
1351 * src/ksc5601.h: Regenerated.
1352 * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
1353 valid in KSC5601/KSX1001 but not in JOHAB.
1355 * src/iconv.c (conv_struct): Add fields iindex, oindex.
1356 (iconv_open): Fill in iindex, oindex.
1358 * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
1359 "csUnicode11", from IANA charset list.
1360 (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
1361 from IANA charset list.
1362 (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
1363 from IANA charset list.
1364 (GB_2312-80): New encoding, from IANA charset list.
1366 * README, man/iconv_open.3: Add MacIceland and MacUkraine.
1368 * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
1369 (all): Depend on src/aliases.h.
1370 * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
1371 $(srcdir)/aliases.gperf.
1374 * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
1376 1999-12-31 Bruno Haible <haible@clisp.cons.org>
1378 * Version 0.3 released.