Switch to automake 1.15.
[libiconv.git] / ChangeLog
blobd9e77c32d7ec3a3ef0c954a506fa99a7da7d02cf
1 2016-10-01  Bruno Haible  <bruno@clisp.org>
3         Switch to automake 1.15.
4         * autogen.sh: Update comment.
5         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
6         (srclib/Makefile.in): Don't remove auxiliary files brought in by
7         automake.
8         * preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
9         * srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
10         * build-aux/missing: Update from automake-1.15.
12 2016-10-01  Bruno Haible  <bruno@clisp.org>
14         Remove autogenerated doc files from version control.
15         * man/iconvctl.3.html: Remove file.
16         * man/iconv_open_into.3.html: Remove file.
18 2012-12-06  Bruno Haible  <bruno@clisp.org>
20         Change copyright holder of man pages.
21         * man/*.[13]: Replace myself with FSF.
23 2012-06-30  Bruno Haible  <bruno@clisp.org>
25         Make it possible to run 'genaliases2' on native Windows.
26         * lib/genaliases2.c (main): Expect 3 arguments. Open the output files
27         explicitly. Complain if they don't exist.
28         * Makefile.devel (lib/aliases_*.h): Pass the output filenames as
29         arguments to genaliases.
30         Reported at <http://savannah.gnu.org/bugs/?36748>.
32         Make it possible to run 'genaliases' on native Windows.
33         * lib/genaliases.c (main): Expect 3 arguments. Open the output files
34         explicitly. Complain if they don't exist. Improve error checking.
35         * Makefile.devel (lib/aliases*.h): Pass the output filenames as
36         arguments to genaliases.
37         Reported at <http://savannah.gnu.org/bugs/?36748>.
39 2012-05-13  Bruno Haible  <bruno@clisp.org>
41         Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
42         * lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
43         from U+E7C7 to 0xA8BC.
44         * lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
45         case.
46         (gb18030uni_wctomb): Treat U+E7C7 as a special case.
47         * tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
48         * tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
49         0x8135F437 and U+E7C7.
51 2012-04-28  Bruno Haible  <bruno@clisp.org>
53         Switch to autoconf 2.69 and automake 1.12.
54         * autogen.sh: Update comment.
55         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
56         (AUTOMAKE, ACLOCAL): Switch to version 1.12.
57         * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
58         (ACLOCAL): Switch to version 1.12.
60 2012-03-24  Bruno Haible  <bruno@clisp.org>
62         Avoid a GCC warning.
63         * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
65 2012-01-26  Bruno Haible  <bruno@clisp.org>
67         Modernize quoting.
68         * README: Quote 'like this', not `like this', as per the recent change
69         to the GNU coding standards.
70         * NOTES: Likewise.
71         * gnulib-local/lib/xmalloc.c: Likewise.
72         * lib/config.h.in: Likewise.
73         * src/iconv.c (usage): Likewise.
74         * tests/uniq-u.c: Likewise.
75         * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
76         Likewise.
77         * lib/big5.h: Update accordingly.
78         * lib/cns11643_inv.h: Likewise.
79         * lib/cp932ext.h: Likewise.
80         * lib/cp950ext.h: Likewise.
81         * lib/gb12345ext.h: Likewise.
82         * lib/gb2312.h: Likewise.
83         * lib/gbkext_inv.h: Likewise.
84         * lib/hkscs1999.h: Likewise.
85         * lib/hkscs2001.h: Likewise.
86         * lib/hkscs2004.h: Likewise.
87         * lib/hkscs2008.h: Likewise.
88         * lib/isoir165ext.h: Likewise.
89         * lib/jisx0208.h: Likewise.
90         * lib/jisx0212.h: Likewise.
91         * lib/jisx0213.h: Likewise.
92         * lib/ksc5601.h: Likewise.
93         * lib/uhc_1.h: Likewise.
94         * lib/uhc_2.h: Likewise.
96 2012-01-15  Bruno Haible  <bruno@clisp.org>
98         Support for MSVC 9.
99         * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
100         config.h.in.
101         * tests/genutf8.c: Include config.h.
102         * tests/gengb18030z.c: Likewise.
103         * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
105 2011-01-28  Bruno Haible  <bruno@clisp.org>
107         Add a comment.
108         * woe32dll/export.h: Add a reference to the woe32dll writeup.
110 2012-01-06  Bruno Haible  <bruno@clisp.org>
112         Update after gnulib changed.
113         * gnulib-local/lib/error.h.diff: Update.
115 2012-01-06  Bruno Haible  <bruno@clisp.org>
117         Talk about "native Windows API", not "Woe32".
118         * lib/relocatable.c: Update comments to mention native Windows.
120 2012-01-04  Bruno Haible  <bruno@clisp.org>
122         Talk about "native Windows API", not "Win32".
123         * lib/relocatable.c: Update comments to mention native Windows.
124         (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
126 2011-10-27  Bruno Haible  <bruno@clisp.org>
128         Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
129         * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
130         * lib/ucs4.h (ucs4_mbtowc): Likewise.
131         * lib/utf32.h (utf32_mbtowc): Likewise.
132         Reported at <https://savannah.gnu.org/bugs/?34916>.
134 2012-06-30  Bruno Haible  <bruno@clisp.org>
136         Improve ISO-2022-CP-MS versus CP932.
137         * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
138         the rows 0x79..0x7C as rows from CP932.
139         * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
140         tests/ISO-2022-JP-MS-snippet.
141         * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
142         to ESC $ B 0x79..0x7C.
143         * tests/ISO-2022-JP-MS-snippet: Likewise.
144         * tests/check-stateful: Also test the *-snippet.alt file if it exists.
145         * tests/check-stateful.bat: Likewise.
147 2012-06-30  Bruno Haible  <bruno@clisp.org>
149         Improve ISO-2022-CP-MS versus CP932.
150         * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
151         U+301E.
152         * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
153         0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
154         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
156 2011-10-23  Bruno Haible  <bruno@clisp.org>
158         New encoding ISO-2022-CP-MS.
159         * NOTES: Mention ISO-2022-JP-MS.
160         * tools/CP50221-0208-EXT.TXT: New file.
161         * tools/CP50221-0212-EXT.TXT: New file.
162         * tools/8bit_tab_to_h.c: Add comments about how to generate
163         cp50221_0208_ext.h, cp50221_0212_ext.h.
164         * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
165         cp50221_0212_ext.h.
166         * lib/cp50221_0208_ext.h: New file, mostly generated.
167         * lib/cp50221_0212_ext.h: New file, mostly generated.
168         * lib/iso2022_jpms.h: New file.
169         * lib/converters.h: Include it.
170         * lib/encodings.def: Add ISO-2022-JP-MS.
171         * README, man/iconv_open.3: Add ISO-2022-JP-MS.
172         * tests/ISO-2022-JP-MS-snippet: New file.
173         * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
174         * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
175         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
177 2011-10-23  Bruno Haible  <bruno@clisp.org>
179         * lib/encodings.def: Add comments about Windows names of encodings.
181 2011-10-18  Bruno Haible  <bruno@clisp.org>
183         * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
184         2008-04-06  Bruno Haible  <bruno@clisp.org>
185                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
186                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
187                 to ${CONFIG_SHELL}..
188         * m4/ltoptions.m4: Likewise.
189         * m4/ltversion.m4: Likewise.
190         * build-aux/ltmain.sh: Likewise.
192 2011-10-03  Bruno Haible  <bruno@clisp.org>
194         * lib/relocatable.c: Update from gnulib.
196 2011-09-02  Bruno Haible  <bruno@clisp.org>
198         Fix "make check" failure when $(srcdir) != $(builddir).
199         * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
200         GB18030.IRREVERSIBLE.TXT into the build directory.
201         Reported by Christian Weisgerber <naddy@mips.inka.de>.
203 2011-08-07  Bruno Haible  <bruno@clisp.org>
205         Ensure all HTML-formatted man pages are up-to-date.
206         * Makefile.devel (all): Depend on man/iconvctl.3.html and
207         man/iconv_open_into.3.html.
209 2011-08-07  Bruno Haible  <bruno@clisp.org>
211         * Version 1.14 released.
213 2011-08-07  Bruno Haible  <bruno@clisp.org>
215         * configure.ac: Bump version number to 1.14.
216         * README: Likewise.
217         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
218         * windows/iconv.rc: Update.
219         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
220         * src/iconv.c (print_version): Update copyright year.
222 2011-08-07  Bruno Haible  <bruno@clisp.org>
224         Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
225         * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
226         is not supported.
228 2011-08-07  Bruno Haible  <bruno@clisp.org>
230         * tests/check-subst: Add comments about OSF/1.
232 2011-08-07  Bruno Haible  <bruno@clisp.org>
234         * lib/relocatable.c: Update from gnulib.
236 2011-08-06  Bruno Haible  <bruno@clisp.org>
238         Upgrade the GB18030 converter to the version from 2005.
239         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
240         'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
241         0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
242         (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
243         for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
244         (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
245         (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
246         U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
247         * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
248         0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
249         0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
250         to now-assigned Unicode codepoints.
251         * tests/GB18030.IRREVERSIBLE.TXT: New file.
253 2011-08-06  Bruno Haible  <bruno@clisp.org>
255         Fix conversion bug in CP1258 converter.
256         * lib/vietcomb.h (viet_comp_table_data): Remove entry for
257         U+00A5 U+0301. Fix entry for U+00A8 U+0301.
258         (viet_decomp_table): Fix entry for U+0385.
259         * tests/CP1258.IRREVERSIBLE.TXT: Update.
260         Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
262 2011-07-03  Bruno Haible  <bruno@clisp.org>
264         Improve interactive behaviour of iconv program.
265         * src/iconv.c (convert): Flush the output before starting a possibly
266         blocking safe_read call.
268 2011-07-03  Bruno Haible  <bruno@clisp.org>
270         Fix interactive behaviour of iconv program.
271         * Makefile.devel (GNULIB_MODULES): Add safe-read.
272         * src/iconv.c: Include safe-read.h.
273         (convert): Take the infile as a file descriptor, not as a FILE stream.
274         Use safe_read() instead of fread().
275         (main): Update.
276         Reported by Xavier Pucel <xpucel@hotmail.com>.
278 2011-05-02  Bruno Haible  <bruno@clisp.org>
280         Update after gnulib changed.
281         * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
283 2011-06-02  Bruno Haible  <bruno@clisp.org>
285         Update after gnulib changed.
286         * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
288 2011-06-04  Bruno Haible  <bruno@clisp.org>
290         Work around <wchar.h> bug on OSF/1 5.1.
291         * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
292         some other includes.
294 2011-03-27  KO Myung-Hun  <komh@chollian.net>
296         Fix installation on OS/2.
297         * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
298         iconv_no_i18n. This is the recommended way to use libtool, see
299         <http://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
301 2011-03-31  Bruno Haible  <bruno@clisp.org>
303         gentranslit: Fix buffer overrun.
304         * lib/gentranslit.c (main): Allocate more room for the suffix strings
305         of the translit pages.
306         Reported by Ben Noordhuis <info@bnoordhuis.nl>.
308 2011-02-28  Bruno Haible  <bruno@clisp.org>
310         * lib/relocatable.h: Update from gnulib.
311         * lib/relocatable.c: Likewise.
313 2011-01-29  Corinna Vinschen  <corinna-cygwin@cygwin.com>
314             Bruno Haible  <bruno@clisp.org>
316         Simplify "wchar_t" handling on Cygwin 1.7.x.
317         * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
318         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
319         * lib/iconv_open1.h: Likewise.
320         Rationale: <http://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
322 2011-01-29  Bruno Haible  <bruno@clisp.org>
324         Adjust the meaning of "wchar_t" on native Windows systems.
325         * lib/iconv.c (iconv_canonicalize): On native Windows, map
326         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
327         * lib/iconv_open1.h: Likewise.
328         Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
329         in <http://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
331 2010-11-23  Bruno Haible  <bruno@clisp.org>
333         Implement newer release of BIG5-HKSCS.
334         * tools/Makefile (ALL): Add hkscs2008.h.
335         (hkscs2008.h): New rule.
336         * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
337         * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
338         equivalent to BIG5-HKSCS:2008.
339         * lib/hkscs2008.h: New file, autogenerated.
340         * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
341         * lib/converters.h: Include the new file.
342         * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
343         * tests/BIG5-HKSCS-2008.TXT: New file, based on
344         tests/BIG5-HKSCS-2004.TXT.
345         * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
346         tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
347         * tests/BIG5-HKSCS-2008-snippet: New file, based on
348         tests/BIG5-HKSCS-2004-snippet.
349         * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
350         tests/BIG5-HKSCS-2004-snippet.UTF-8.
351         * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
352         Reported by oCameLo <camel322@gmail.com>.
354 2010-11-23  Bruno Haible  <bruno@clisp.org>
356         Make cjk_tab_to_h 64-bit clean.
357         * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
358         (output_title): Update copyright year.
360 2010-09-23  Bruno Haible  <bruno@clisp.org>
362         Switch to autoconf 2.68.
363         * autogen.sh: Update comment.
364         * configure.ac: Fix AC_COMPILE_IFELSE invocation.
365         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
366         * preload/Makefile.devel (AUTOCONF): Likewise.
368 2010-09-23  Bruno Haible  <bruno@clisp.org>
370         * m4/libtool.m4: Update from libtool-2.4, with modifications:
371         2008-04-06  Bruno Haible  <bruno@clisp.org>
372                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
373                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
374                 to ${CONFIG_SHELL}.
375         * m4/ltversion.m4: Update from libtool-2.4.
376         * build-aux/ltmain.sh: Likewise.
378 2010-09-23  Bruno Haible  <bruno@clisp.org>
380         Simplify use of gnulib-tool now that gnulib-tool --import works better.
381         * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
382         * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
384 2010-07-31  Bruno Haible  <bruno@clisp.org>
386         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
387         * preload/Makefile.devel (AUTOCONF): Likewise.
389 2010-07-03  Bruno Haible  <bruno@clisp.org>
391         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
392         * preload/Makefile.devel (AUTOCONF): Likewise.
394 2010-06-04  Bruno Haible  <bruno@clisp.org>
396         Addendum to 2009-10-18 commit.
397         * m4/fcntl-o.m4: New file, from gnulib.
398         * configure.ac: Invoke gl_FCNTL_O_FLAGS.
399         * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
401 2010-06-04  Bruno Haible  <bruno@clisp.org>
403         * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
404         2008-04-06  Bruno Haible  <bruno@clisp.org>
405                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
406                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
407                 to ${CONFIG_SHELL}.
408         * m4/ltoptions.m4: Update from libtool-2.2.8.
409         * m4/ltversion.m4: Likewise.
410         * m4/lt~obsolete.m4: Likewise.
411         * build-aux/ltmain.sh: Likewise.
413 2010-04-06  Bruno Haible  <bruno@clisp.org>
415         Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
416         * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
417         doesn't contains #include directives.
419 2010-03-30  Bruno Haible  <bruno@clisp.org>
421         * README.woe32: Update for Cygwin 1.7.x.
423 2009-12-26  Bruno Haible  <bruno@clisp.org>
425         * windows/libiconv.rc: Update.
426         * windows/iconv.rc: Update.
428 2009-12-11  Bruno Haible  <bruno@clisp.org>
430         * include/iconv.h.in: Untabify.
431         * gnulib-local/lib/xalloc.h: Untabify.
432         * woe32dll/export.h: Untabify.
433         * tests/uniq-u.c: Untabify.
435 2009-12-11  Bruno Haible  <bruno@clisp.org>
437         * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
439 2009-12-11  Bruno Haible  <bruno@clisp.org>
441         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
442         * preload/Makefile.devel (AUTOCONF): Likewise.
444 2009-11-22  Bruno Haible  <bruno@clisp.org>
446         * tests/check-subst: Add reference to the Solaris printf bug.
447         Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
449 2009-09-01  Bruno Haible  <bruno@clisp.org>
451         * README.woe32: Put the -mno-cygwin option into CC and CXX.
452         Recommended by Paolo Bonzini and Eric Blake.
454 2009-08-15  Bruno Haible  <bruno@clisp.org>
456         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
457         * preload/Makefile.devel (AUTOCONF): Likewise.
459 2009-08-15  Bruno Haible  <bruno@clisp.org>
461         Use .git/info/exclude, not .gitignore, for imported or generated files.
462         * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
463         gnulib-tool.
465 2009-07-07  Bruno Haible  <bruno@clisp.org>
467         Fix an endless loop.
468         * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
469         incomplete input correctly.
470         * tests/test-to-wchar.c: New file.
471         * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
472         (check): Depend on and run tests-to-wchar.
473         (clean): Add tests-to-wchar.
474         Reported by Tristan Gingold <gingold@adacore.com>.
476 2009-06-30  Bruno Haible  <bruno@clisp.org>
478         * Version 1.13.1 released.
480 2009-06-30  Bruno Haible  <bruno@clisp.org>
482         * configure.ac: Bump version number to 1.13.1.
483         * README: Likewise.
485 2009-06-04  Bruno Haible  <bruno@clisp.org>
487         * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
488         (ACLOCAL): Switch to version 1.11.
490 2009-05-19  Bruno Haible  <bruno@clisp.org>
492         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
493         * autogen.sh: Update comments.
495 2009-04-24  Bruno Haible  <bruno@clisp.org>
497         Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
498         * src/iconv_open2.h: Don't initialize nonexistent field if
499         !(HAVE_WCRTOMB || HAVE_MBRTOWC).
500         Patch by Joel Brobecker <brobecker@adacore.com>.
502 2009-04-15  Bruno Haible  <bruno@clisp.org>
504         * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
505         explicitly. Needed on Cygwin.
507 2009-04-11  Bruno Haible  <bruno@clisp.org>
509         * configure.ac: Move the statements for WOE32 and WINDRES.
511 2009-03-26  Bruno Haible  <bruno@clisp.org>
513         * Version 1.13 released.
515 2009-03-26  Bruno Haible  <bruno@clisp.org>
517         * src/iconv.c: Update copyright header to GPLv3+.
518         (print_version): Update license info.
520 2009-03-26  Bruno Haible  <bruno@clisp.org>
522         * src/iconv.c (print_version): Bump year.
524 2009-03-25  Bruno Haible  <bruno@clisp.org>
526         * build-aux/config.guess: Update to GNU version 2009-02-03.
527         * build-aux/config.sub: Likewise.
529 2009-03-25  Bruno Haible  <bruno@clisp.org>
531         * configure.ac: Bump version number to 1.13.
532         * README: Likewise.
533         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
534         * windows/iconv.rc: Update.
535         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
537 2009-03-25  Bruno Haible  <bruno@clisp.org>
539         Fix the handling of Windows resources in shared libraries.
540         * configure.ac: Invoke LT_LANG for 'Windows Resource'.
541         * lib/Makefile.in (RC): New variable.
542         (WINDRES): Remove variable.
543         (OBJECTS_RES_yes): Add .lo suffix.
544         (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
545         (clean): Simplify.
546         Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
548 2009-03-14  Bruno Haible  <bruno@clisp.org>
550         * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
552 2009-01-24  Bruno Haible  <bruno@clisp.org>
554         * tools/Makefile (ALL): Add cp1131.h.
555         (cp1131.h): New rule.
556         * lib/encodings.def: Add CP1131.
557         * lib/cp1131.h: New file.
558         * lib/converters.h: Include it.
559         * README, man/iconv_open.3: Add CP1131.
560         * NOTES: Mention CP1131.
561         * tests/CP1131.TXT: New file.
562         * tests/Makefile.in (check): Also test CP1131.
564 2009-01-17  Bruno Haible  <bruno@clisp.org>
566         Add support for "make install-strip".
567         * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
568         * Makefile.in (install-strip): New rule.
569         * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
570         variables.
571         (install-strip): New rule.
572         * lib/Makefile.in (install-strip): New target.
573         * preload/Makefile.in (install-strip): Likewise.
574         * man/Makefile.in (install-strip): Likewise.
575         Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
577 2009-01-17  Bruno Haible  <bruno@clisp.org>
579         Update after gnulib changed.
580         * src/Makefile.in (RELOCATABLE_STRIP): New variable.
582 2009-01-17  Bruno Haible  <bruno@clisp.org>
584         Make --enable-relocatable work on glibc systems.
585         * src/Makefile.in (host): New variable.
587 2009-01-17  Bruno Haible  <bruno@clisp.org>
589         * lib/genflags.c: Include <string.h>.
591 2009-01-14  Bruno Haible  <bruno@clisp.org>
593         * configure.ac: More consistent m4 quoting.
594         * preload/configure.ac: Likewise.
596 2008-09-28  Bruno Haible  <bruno@clisp.org>
598         * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
599         preprocess the argument vector through prepare_spawn.
601 2008-09-27  Bruno Haible  <bruno@clisp.org>
603         * build-aux/config.guess: Update to GNU version 2008-09-08.
604         * build-aux/config.sub: Likewise.
606 2008-09-26  Bruno Haible  <bruno@clisp.org>
608         * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
610 2008-09-26  Bruno Haible  <bruno@clisp.org>
612         * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
613         * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
614         all programs against libicrt.a. Needed for the stdio function
615         replacements on mingw.
617 2008-09-21  Tadamasa Teranishi  <yw3t-trns@asahi-net.or.jp>
619         * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
620         ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
622 2008-09-20  Bruno Haible  <bruno@clisp.org>
624         * man/iconv_open_into.3: New file.
626 2008-09-16  Bruno Haible  <bruno@clisp.org>
628         New function iconv_open_into.
629         * include/iconv.h.in: Include <wchar.h> and its prerequisites.
630         (iconv_allocation_t): New type.
631         (iconv_open_into): New declaration.
632         * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
633         * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
634         * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
635         Verify size of iconv_allocation_t.
636         (iconv_open_into): New function.
637         * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
638         field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
639         * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
640         Reported by Roman Rybalko <romanr@romanr.info>.
642 2008-09-16  Bruno Haible  <bruno@clisp.org>
644         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
646 2008-09-16  Bruno Haible  <bruno@clisp.org>
648         * include/iconv.h.in: Use Unicode single-quotes in comments.
650 2008-09-14  Bruno Haible  <bruno@clisp.org>
652         * Makefile.devel (GNULIB_MODULES): Add strerror.
654 2008-09-07  Bruno Haible  <bruno@clisp.org>
656         Make behaviour when encountering invalid input after a shift sequence
657         more consistent.
658         * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
659         (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
660         (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
661         (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
662         * lib/loop_unicode.h (unicode_loop_convert): Take into account the
663         shift count contained in the negative return values.
664         * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
665         modified state and return RET_SHIFT_ILSEQ.
666         * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
667         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
668         * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
669         * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
670         * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
671         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
672         * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
673         * lib/ucs2.h (ucs2_mbtowc): Likewise.
674         * lib/ucs4.h (ucs4_mbtowc): Likewise.
675         * lib/utf16.h (utf16_mbtowc): Likewise.
676         * lib/utf32.h (utf32_mbtowc): Likewise.
677         * lib/utf7.h (utf7_mbtowc): Likewise.
678         * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
679         invalid input, return RET_SHIFT_ILSEQ.
680         * lib/utf16le.h (utf16le_mbtowc): Likewise.
681         * tests/test-shiftseq.c: New file.
682         * tests/Makefile.in (check): Run test-shiftseq.
683         (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
684         (clean): Remove test-shiftseq executable.
685         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
686         at <http://savannah.gnu.org/bugs/?24216>.
688 2008-09-07  Bruno Haible  <bruno@clisp.org>
690         * man/iconv.3: Clarify the processing of shift-sequences.
692 2008-09-07  Bruno Haible  <bruno@clisp.org>
694         * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
695         2008-04-06  Bruno Haible  <bruno@clisp.org>
696                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
697                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
698                 to ${CONFIG_SHELL}.
699         * m4/ltoptions.m4: Update from libtool-2.2.6.
700         * m4/ltsugar.m4: Likewise.
701         * m4/ltversion.m4: Likewise.
702         * build-aux/ltmain.sh: Likewise.
704 2008-09-06  Bruno Haible  <bruno@clisp.org>
706         * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
707         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
708         at <http://savannah.gnu.org/bugs/?24214>.
710 2008-06-30  Bruno Haible  <bruno@clisp.org>
712         Fix sed expressions to work with the old sed-3.02 on MSYS.
713         * windows/windres-options (sed_extract_major, sed_extract_minor,
714         sed_extract_subminor): Put a semicolon before the closing brace. Use
715         an i\ command instead of an a\ command.
716         Reported by Sunil Negi <sunil.negi@morningstar.com>
717         in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
718         via Keith Marshall <keithmarshall@users.sourceforge.net>.
720 2008-05-22  Bruno Haible  <bruno@clisp.org>
722         * README.woe32: Update with info from GNU gettext's README.woe32.
724 2008-05-18  Bruno Haible  <bruno@clisp.org>
726         * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
727         2008-04-06  Bruno Haible  <bruno@clisp.org>
728                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
729                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
730                 to ${CONFIG_SHELL}.
731         * m4/ltoptions.m4: Update from libtool-2.2.4.
732         * m4/ltversion.m4: Likewise.
733         * m4/lt~obsolete.m4: Likewise.
734         * build-aux/ltmain.sh: Likewise.
736 2008-04-14  Bruno Haible  <bruno@clisp.org>
738         * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
739         on MacOS X 10.5.
741 2008-04-14  Bruno Haible  <bruno@clisp.org>
743         * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
744         AC_AIX and AC_MINIX.
745         * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
746         * preload/Makefile.devel (AUTOCONF): Likewise.
747         * autogen.sh: Likewise.
749 2008-04-06  Bruno Haible  <bruno@clisp.org>
751         * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
752         2008-04-06  Bruno Haible  <bruno@clisp.org>
753                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
754                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
755                 to ${CONFIG_SHELL}.
756         * m4/ltoptions.m4: New file, from libtool-2.2.2.
757         * m4/ltsugar.m4: New file, from libtool-2.2.2.
758         * m4/ltversion.m4: New file, from libtool-2.2.2.
759         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
760         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
761         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
762         * preload/configure.ac: Likewise.
764 2008-04-06  Bruno Haible  <bruno@clisp.org>
766         More portable way of building the preloadable library.
767         * preload/Makefile.devel: New file.
768         * preload/Makefile.in: New file, based on lib/Makefile.in.
769         * preload/configure.ac: New file, based on configure.ac.
770         * Makefile.devel (all): Recurse into preload directory.
771         * Makefile.in (all, install, installdirs, uninstall, check,
772         mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
773         directory.
774         * configure.ac: Likewise.
775         (OS, GCC, PLUGLIB): Remove definitions.
776         * lib/Makefile.in (all): Don't depend on PLUGLIB.
777         (preloadable_libiconv.so, preloadable_libiconv_linux.so,
778         preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
779         rules.
780         (install, uninstall, clean): Don't handle the preloadable library here.
782 2008-04-06  Bruno Haible  <bruno@clisp.org>
784         Avoid a gcc warning.
785         * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
787 2008-04-06  Bruno Haible  <bruno@clisp.org>
789         * src/iconv.c (print_version): Bump year.
791 2008-04-06  Bruno Haible  <bruno@clisp.org>
793         Support all possible nl_langinfo(CODESET) results on the respective
794         platforms, according to libcharset/lib/config.charset.
795         * lib/encodings.def: Add DEFALIAS statements, conditional on
796         USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
797         USE_SOLARIS_ALIASES.
798         * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
799         USE_AIX_ALIASES.
800         * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
801         USE_OSF1_ALIASES.
802         * lib/genaliases.c (emit_alias): New function, extracted from
803         emit_encoding.
804         (emit_encoding): Use it.
805         (main): Define DEFALIAS.
806         * lib/genaliases2.c (counter): New variable, extracted from
807         emit_encoding.
808         (emit_alias): New function, extracted from emit_encoding.
809         (emit_encoding): Use it.
810         (main): Define DEFALIAS.
811         * lib/genflags.c (main): Define DEFALIAS.
812         * lib/iconv.c (all_encodings): Define DEFALIAS.
813         Include the system dependent variant of aliases.h on the appropriate
814         systems.
815         (all_canonical): Include the system dependent variant of canonical.h,
816         canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
817         systems.
818         * lib/aliases2.h: Include the system dependent variant of
819         aliases_aix.h or aliases_osf1.h on the appropriate systems.
820         * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
821         aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
822         aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
823         aliases_extra.h, translit.h.
824         * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
825         lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
826         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
827         (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
828         lib/aliases_syssolaris.h): New rules.
829         (lib/aliases_aix_sysaix.h): New rule.
830         (lib/aliases_osf1_sysosf1.h): New rule.
831         * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
832         lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
833         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
835 2008-04-06  Bruno Haible  <bruno@clisp.org>
837         * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
838         * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
840 2007-11-11  Bruno Haible  <bruno@clisp.org>
842         * Version 1.12 released.
844 2007-11-11  Bruno Haible  <bruno@clisp.org>
846         * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
847         (AUTOMAKE, ACLOCAL): Require version 1.10.
848         (srclib/Makefile.in): Avoid error from automake.
850 2007-10-26  Bruno Haible  <bruno@clisp.org>
852         * m4/libtool.m4: Update, based on libtool-1.5.24.
853         * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
855 2007-10-23  Bruno Haible  <bruno@clisp.org>
857         * build-aux/config.guess: Update to GNU version 2007-07-22.
858         * build-aux/config.sub: Likewise.
860 2007-10-23  Bruno Haible  <bruno@clisp.org>
862         * configure.ac: Bump version number to 1.12.
863         * README: Likewise.
865 2007-10-23  Bruno Haible  <bruno@clisp.org>
867         Move relocatability infrastructure to gnulib.
868         * gnulib-local/lib/relocatable.h: Remove file.
869         * gnulib-local/lib/relocatable.c: Remove file.
871 2007-10-23  Bruno Haible  <bruno@clisp.org>
873         Update from GNU gettext.
874         2006-11-26  Bruno Haible  <bruno@clisp.org>
875                 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
876                 template variant.
877                 Based on a patch from Paul Eggert in gnulib.
878         2006-11-06  Bruno Haible  <bruno@clisp.org>
879                 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
880                 (xmemdup): New declaration.
881                 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
882         2006-11-03  Bruno Haible  <bruno@clisp.org>
883                 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
884                 XCALLOC): New macros.
885                 (xnboundedmalloc): New inline function.
886                 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
887                 xmalloc.
888         2006-11-02  Bruno Haible  <bruno@clisp.org>
889                 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
890                 xalloc.h.
891                 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
892                 (xnmalloc): New function.
894 2007-10-23  Bruno Haible  <bruno@clisp.org>
896         Moved module xreadlink to gnulib.
897         * gnulib-local/modules/xreadlink: Remove file.
898         * gnulib-local/lib/xreadlink.h: Remove file.
899         * gnulib-local/lib/xreadlink.c: Remove file.
900         * gnulib-local/m4/xreadlink.m4: Remove file.
902 2007-10-07  Bruno Haible  <bruno@clisp.org>
904         Update program license to GPLv3.
905         * COPYING: Replace with GPL 3.
906         * windows/iconv.rc (Comments): Update.
908 2007-10-07  Bruno Haible  <bruno@clisp.org>
910         * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
912 2007-03-30  Bruno Haible  <bruno@clisp.org>
914         * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
915         macro to _GL_.
917 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
919         * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
920         declare.
922 2007-09-29  Bruno Haible  <bruno@clisp.org>
924         * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
925         valid since 2007-09-19.
927 2007-07-07  Bruno Haible  <bruno@clisp.org>
929         * autogen.sh: Add an option --skip-gnulib.
931 2007-07-07  Bruno Haible  <bruno@clisp.org>
933         * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
934         * gnulib-local/lib/width.c: Remove file, moved to gnulib.
935         * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
936         * gnulib-local/modules/uniwidth: Remove file.
937         * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
938         * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
940 2007-06-30  Bruno Haible  <bruno@clisp.org>
942         * src/iconv.c (print_version): Use the standard --version output, see
943         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
945 2007-06-30  Bruno Haible  <bruno@clisp.org>
947         * autogen.sh: New file.
948         * DEPENDENCIES: New file.
949         * HACKING: New file.
951 2007-06-30  Bruno Haible  <bruno@clisp.org>
953         * src/iconv.c: Provide translator comments for many messages.
954         (conversion_error_EILSEQ, conversion_error_EINVAL,
955         conversion_error_other): New functions, extracted from convert.
956         (convert): Use them.
957         Reported by Tim Van Holder <tim.van.holder@telenet.be>.
959 2007-06-09  Bruno Haible  <bruno@clisp.org>
961         * gnulib-local/lib/relocwrapper.c: Remove file.
963 2007-05-27  Bruno Haible  <bruno@clisp.org>
965         * windows/libiconv.rc: New file.
966         * windows/iconv.rc: New file.
967         * windows/windres-options: New file.
968         * configure.ac (WOE32): New variable.
969         (WINDRES) [WOE32]: New variable.
970         * lib/Makefile.in (WINDRES): New variable.
971         (PACKAGE_VERSION): New variable.
972         (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
973         (OBJECTS_EXP_no): Renamed from OBJECTS_no.
974         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
975         (OBJECTS): Add one of them.
976         (libiconv.res): New rule.
977         (clean): Remove also libiconv.res.
978         * src/Makefile.in (WINDRES): New variable.
979         (PACKAGE_VERSION): New variable.
980         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
981         (all, iconv_no_i18n, install): Use them.
982         (iconv.res): New rule.
983         (clean): Remove also iconv.res.
984         Suggested and inspired by work by Perry Rapp.
986 2007-05-27  Bruno Haible  <bruno@clisp.org>
988         Follow broken iconv() prototype in POSIX.
989         * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
990         * lib/config.h.in (ICONV_CONST): Change default value to an empty
991         comment.
992         * src/iconv.c (ICONV_CONST): Change default value to empty.
993         Reported by Andreas Krennmair <ak@synflood.at>.
995 2007-05-25  Bruno Haible  <bruno@clisp.org>
997         * tools/Makefile (ALL): Add rk1048.h.
998         (rk1048.h): New rule.
999         * lib/encodings.def: Add RK1048.
1000         * lib/rk1048.h: New file.
1001         * lib/converters.h: Include it.
1002         * README, man/iconv_open.3: Add RK1048.
1003         * NOTES: Mention RK1048.
1004         * tests/RK1048.TXT: New file.
1005         * tests/Makefile.in (check): Also test RK1048.
1006         Suggested by Timur Birsh <team9@host.kz>.
1008 2007-04-24  Bruno Haible  <bruno@clisp.org>
1010         * man/iconv_open.3: Tweak explanation of TRANSLIT.
1011         Reported by Perry Rapp.
1013 2007-04-23  Bruno Haible  <bruno@clisp.org>
1015         * tests/check-subst: Use the output of 'printf' only if it didn't
1016         crash. Needed to work around a buffer overflow in Solaris /bin/printf.
1017         Reported by Arto C. Nirkko <anirkko@insel.ch>.
1019 2007-04-23  Bruno Haible  <bruno@clisp.org>
1021         * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
1022         systems like those which define __STDC_ISO_10646__.
1023         Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
1025 2007-03-31  Bruno Haible  <bruno@clisp.org>
1027         * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
1028         appropriate.
1029         * man/iconv_open.3: Likewise.
1030         * man/iconv.3: Likewise.
1031         * man/iconv_close.3: Likewise.
1032         * man/iconvctl.3: Likewise.
1034 2007-03-31  Bruno Haible  <bruno@clisp.org>
1036         * man/iconv.1: Mark as POSIX compliant.
1037         * man/iconv_open.3: Likewise.
1038         * man/iconv.3: Likewise.
1039         * man/iconv_close.3: Likewise.
1041         * man/*.[13]: Syntactic simplifications.
1043 2007-03-19  Bruno Haible  <bruno@clisp.org>
1045         Assume that mkinstalldirs also creates the necessary parent directories.
1046         * Makefile.in (install, installdirs): Don't explicitly create the
1047         parent directories.
1048         * lib/Makefile.in (install, installdirs): Likewise.
1049         * src/Makefile.in (install, installdirs): Likewise.
1050         * man/Makefile.in (install, installdirs): Likewise.
1051         Reported by Thomas Klausner <tk@giga.or.at>.
1053 2007-03-04  Bruno Haible  <bruno@clisp.org>
1055         * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
1056         relocatable, relocwrapper.
1057         * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
1058         * gnulib-local/modules/progreloc: Remove file.
1059         * gnulib-local/modules/relocatable: Remove file.
1060         * gnulib-local/modules/relocwrapper: Remove file.
1061         * gnulib-local/m4/relocatable.m4: Remove file.
1062         * gnulib-local/lib/strerror.c.diff: Remove file.
1063         * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
1064         RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
1066 2007-02-19  Bruno Haible  <bruno@clisp.org>
1068         * gnulib-local/lib/xmalloc.c: Don't include exit.h.
1069         * src/iconv.c: Likewise.
1071 2007-02-16  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1073         * djgpp/*: Update.
1075 2007-02-03  Bruno Haible  <bruno@clisp.org>
1077         * tools/Makefile (ksc5601.h): Add one extra character.
1078         * lib/ksc5601.h: Regenerated.
1079         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
1080         * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
1081         * tests/JOHAB.TXT: Likewise.
1082         Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
1084         * lib/euc_kr.h: Update comments.
1085         * lib/johab.h: Likewise.
1087 2007-02-03  Bruno Haible  <bruno@clisp.org>
1089         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
1091 2007-01-26  Bruno Haible  <bruno@clisp.org>
1093         Moved streq.h to gnulib.
1094         * gnulib-local/lib/streq.h: Remove file.
1095         * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
1096         (Depends-on): Add streq.
1097         (lib_SOURCES): Remove streq.h.
1099 2007-01-26  Bruno Haible  <bruno@clisp.org>
1101         Moved unitypes.h to gnulib.
1102         * gnulib-local/lib/unitypes.h: Remove file.
1103         * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
1104         (Depends-on): Add unitypes.
1105         (lib_SOURCES): Remove unitypes.h.
1107 2007-01-26  Bruno Haible  <bruno@clisp.org>
1109         Moved canonicalize to gnulib.
1110         * gnulib-local/modules/canonicalize: Remove file.
1111         * gnulib-local/lib/canonicalize.h: Remove file.
1112         * gnulib-local/lib/canonicalize.c: Remove file.
1113         * gnulib-local/m4/canonicalize.m4: Remove file.
1114         * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
1115         with 'canonicalize-lgpl'.
1117 2006-12-20  Bruno Haible  <bruno@clisp.org>
1119         * lib/Makefile.in (install): On AIX, add the contents of
1120         /lib/libiconv.a to libiconv.a.
1122 2006-12-20  Bruno Haible  <bruno@clisp.org>
1124         * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
1125         srclib/Makefile.am.
1126         (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
1127         always does it.
1128         (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
1129         option --makefile-name.
1130         (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
1131         * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
1133 2006-10-31  Bruno Haible  <bruno@clisp.org>
1135         Update from GNU gettext.
1136         2006-10-29  Bruno Haible  <bruno@clisp.org>
1137                 Make it compile in C++ mode.
1138                 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
1139                 with appropriate return type.
1140                 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
1141         2006-10-26  Bruno Haible  <bruno@clisp.org>
1142                 * gnulib-local/modules/canonicalize (Makefile.am): Remove
1143                 EXTRA_DIST. Now done by gnulib-tool.
1144                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1145                 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
1146         2006-10-25  Bruno Haible  <bruno@clisp.org>
1147                 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
1148                 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
1149                 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
1150                 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
1151                 AC_RELOCATABLE instead of requiring it.
1152         2006-10-12  Bruno Haible  <bruno@clisp.org>
1153                 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
1154                 all files in lib/ through EXTRA_DIST.
1155                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1156         2006-09-14  Bruno Haible  <bruno@clisp.org>
1157                 * gnulib-local/lib/canonicalize.c: Include <config.h>
1158                 unconditionally.
1159                 * gnulib-local/lib/relocatable.c: Likewise.
1160                 * lib/relocatable.c: Likewise.
1161                 * gnulib-local/lib/relocwrapper.c: Likewise.
1162                 * gnulib-local/lib/xmalloc.c: Likewise.
1163                 * gnulib-local/lib/xreadlink.c: Likewise.
1164                 * gnulib-local/lib/xstrdup.c: Likewise.
1165         2006-08-02  Bruno Haible  <bruno@clisp.org>
1166                 * gnulib-local/modules/canonicalize: Put under LGPL.
1167                 * gnulib-local/modules/relocatable: Likewise.
1168         2006-07-18  Bruno Haible  <bruno@clisp.org>
1169                 * gnulib-local/xalloc.h (xzalloc): New declaration.
1170                 * gnulib-local/xmalloc.c (xzalloc): New function.
1172 2006-10-24  Bruno Haible  <bruno@clisp.org>
1174         * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
1175         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1177 2006-10-14  Bruno Haible  <bruno@clisp.org>
1179         * COPYING: New file.
1180         * README: Clarify copyright of the iconv program.
1181         Reported by Charles Wilson <cwilson@fastmail.fm>.
1183 2006-08-08  Bruno Haible  <bruno@clisp.org>
1185         * INSTALL.generic: Add a recommendation for Tru64.
1186         Reported by Gary V. Vaughan <gary@gnu.org>.
1188 2006-07-29  Bruno Haible  <bruno@clisp.org>
1190         * tests/check-subst: Set CHARSETALIASDIR.
1191         Needed so that "make check" works before "make install" on systems
1192         such as NetBSD.
1194 2006-07-29  Bruno Haible  <bruno@clisp.org>
1196         * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
1197         (AUTOCONF_FILES): Add the existing *.m4 files.
1199 2006-07-29  Bruno Haible  <bruno@clisp.org>
1201         * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
1202         * src/iconv.c: Assume <locale.h> exists.
1203         * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
1204         <string.h>.
1206 2006-07-29  Bruno Haible  <bruno@clisp.org>
1208         * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
1209         AC_ISC_POSIX, AC_HEADER_STDC.
1211 2006-07-29  Bruno Haible  <bruno@clisp.org>
1213         * configure.ac: Remove macro invocations that are redundant through
1214         gl_EARLY and gl_INIT.
1216 2006-07-29  Bruno Haible  <bruno@clisp.org>
1218         * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
1219         Avoids a sh syntax error.
1221 2006-07-29  Bruno Haible  <bruno@clisp.org>
1223         * gnulib-local/m4/relocatable.m4: Add comments.
1225 2006-07-29  Bruno Haible  <bruno@clisp.org>
1227         * gnulib-local/modules/libiconv-misc: New file.
1228         * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
1230         * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
1232 2006-07-29  Bruno Haible  <bruno@clisp.org>
1234         Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
1235         AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
1236         because we now assume that the system defines size_t and ptrdiff_t.
1238 2006-07-29  Bruno Haible  <bruno@clisp.org>
1240         Switch to using gnulib.
1241         * configure.ac (AC_PREREQ): Require autoconf-2.60.
1242         Invoke gl_EARLY and gl_INIT.
1243         * Makefile.devel (all): Depend on srclib/Makefile.am.
1244         (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
1245         GNU make.
1246         (GNULIB_MODULES): New variable.
1247         (srclib/Makefile.am): New rule.
1248         * gnulib-local: New directory.
1249         * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
1250         * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
1251         * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
1252         * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
1253         * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
1254         * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
1255         * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
1256         * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
1257         * gnulib-local/lib/error.h.diff: New file.
1258         * gnulib-local/lib/progname.h.diff: New file.
1259         * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
1260         * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
1261         * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
1262         * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
1263         * gnulib-local/lib/strerror.c.diff: New file.
1264         * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
1265         * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
1266         * gnulib-local/lib/width.c: Moved here from srclib/width.c.
1267         * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
1268         * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
1269         * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
1270         * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
1271         * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
1272         * gnulib-local/modules/canonicalize: New file.
1273         * gnulib-local/modules/progreloc: New file.
1274         * gnulib-local/modules/relocatable: New file.
1275         * gnulib-local/modules/relocwrapper: New file.
1276         * gnulib-local/modules/uniwidth: New file.
1277         * gnulib-local/modules/xalloc: New file.
1278         * gnulib-local/modules/xreadlink: New file.
1280         * m4/allocsa.m4: Remove file. Now taken from gnulib.
1281         * m4/codeset.m4: Likewise.
1282         * m4/eealloc.m4: Likewise.
1283         * m4/error.m4: Likewise.
1284         * m4/extensions.m4: Likewise.
1285         * m4/full-header-path.m4: Likewise.
1286         * m4/gettext.m4: Likewise.
1287         * m4/glibc21.m4: Likewise.
1288         * m4/iconv.m4: Likewise.
1289         * m4/intmax.m4: Likewise.
1290         * m4/inttypes-h.m4: Likewise.
1291         * m4/inttypes_h.m4: Likewise.
1292         * m4/isc-posix.m4: Likewise.
1293         * m4/lcmessage.m4: Likewise.
1294         * m4/lib-ld.m4: Likewise.
1295         * m4/lib-link.m4: Likewise.
1296         * m4/lib-prefix.m4: Likewise.
1297         * m4/longdouble.m4: Likewise.
1298         * m4/longlong.m4: Likewise.
1299         * m4/mbstate_t.m4: Likewise.
1300         * m4/nls.m4: Likewise.
1301         * m4/onceonly.m4: Likewise.
1302         * m4/pathmax.m4: Likewise.
1303         * m4/po.m4: Likewise.
1304         * m4/printf-posix.m4: Likewise.
1305         * m4/progtest.m4: Likewise.
1306         * m4/readlink.m4: Likewise.
1307         * m4/setenv.m4: Likewise.
1308         * m4/signed.m4: Likewise.
1309         * m4/size_max.m4: Likewise.
1310         * m4/ssize_t.m4: Likewise.
1311         * m4/stdbool.m4: Likewise.
1312         * m4/stdint.m4: Likewise.
1313         * m4/stdint_h.m4: Likewise.
1314         * m4/strerror.m4: Likewise.
1315         * m4/strerror_r.m4: Likewise.
1316         * m4/unistd_h.m4: Likewise.
1317         * m4/unlocked-io.m4: Likewise.
1318         * m4/visibility.m4: Likewise.
1319         * m4/wchar_t.m4: Likewise.
1320         * m4/wint_t.m4: Likewise.
1322         * srclib/allocsa.h: Remove file. Now taken from gnulib.
1323         * srclib/allocsa.c: Likewise.
1324         * srclib/binary-io.h: Likewise.
1325         * srclib/error.h: Likewise.
1326         * srclib/error.c: Likewise.
1327         * srclib/exit.h: Likewise.
1328         * srclib/gettext.h: Likewise.
1329         * srclib/memmove.c: Likewise.
1330         * srclib/pathmax.h: Likewise.
1331         * srclib/progname.h: Likewise.
1332         * srclib/progname.c: Likewise.
1333         * srclib/progreloc.c: Likewise.
1334         * srclib/readlink.c: Likewise.
1335         * srclib/setenv.h: Likewise.
1336         * srclib/setenv.c: Likewise.
1337         * srclib/stdbool_.h: Likewise.
1338         * srclib/stdint_.h: Likewise.
1339         * srclib/strerror.c: Likewise.
1340         * srclib/unlocked-io.h: Likewise.
1341         * srclib/unsetenv.c: Likewise.
1342         * srclib/Makefile.am: Remove file.
1344 2006-07-27  Bruno Haible  <bruno@clisp.org>
1346         Remove OS/2 build support that doesn't assume GNU make and GNU bash.
1347         * README.os2: Remove file.
1348         * Makefile.os2: Remove file.
1349         * lib/Makefile.os2: Remove file.
1350         * src/Makefile.os2: Remove file.
1351         * man/Makefile.os2: Remove file.
1352         * tests/Makefile.os2: Remove file.
1353         * tests/check-stateful.cmd: Remove file.
1354         * tests/check-stateless.cmd: Remove file.
1355         * tests/check-translit.cmd: Remove file.
1357 2006-07-25  Bruno Haible  <bruno@clisp.org>
1359         Remove MSVC/nmake build support.
1360         * windows: Remove directory.
1361         * Makefile.msvc: Remove file.
1362         * lib/Makefile.msvc: Remove file.
1363         * srclib/Makefile.msvc: Remove file.
1364         * src/Makefile.msvc: Remove file.
1365         * tests/Makefile.msvc: Remove file.
1366         * man/Makefile.msvc: Remove file.
1367         * po/Rules-msvc: Remove file.
1368         * po/Makefile.msvc.sh: Remove file.
1369         * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
1370         (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
1371         rules.
1372         (po/Makefile.msvc): Remove rule.
1373         (all): Update.
1375 2006-07-25  Bruno Haible  <bruno@clisp.org>
1377         Remove VMS support.
1378         * vms: Remove directory.
1379         * Makefile.vms: Remove file.
1380         * lib/Makefile.vms: Remove file.
1381         * srclib/Makefile.vms: Remove file.
1382         * src/Makefile.vms: Remove file.
1383         * tests/Makefile.vms: Remove file.
1384         * man/Makefile.vms: Remove file.
1385         * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
1386         (include/iconv.h_vms): Remove rule.
1387         (all): Update.
1389 2006-07-23  Bruno Haible  <bruno@clisp.org>
1391         * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
1392         * src/Makefile.in (iconv_no_i18n): Likewise.
1393         (install): Likewise.
1394         * tests/Makefile.in (table-from, table-to): Likewise.
1395         Needed because the CFLAGS can e.g. trigger profiling.
1396         Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
1398 2006-07-19  Bruno Haible  <bruno@clisp.org>
1400         * Version 1.11 released.
1402 2006-07-19  Bruno Haible  <bruno@clisp.org>
1404         * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
1405         (LIBADD_SOURCE): Add them here.
1407 2006-07-19  Bruno Haible  <bruno@clisp.org>
1409         * build-aux/config.guess: Update to GNU version 2006-07-02.
1410         * build-aux/config.sub: Likewise.
1412 2006-07-14  Bruno Haible  <bruno@clisp.org>
1414         * lib/Makefile.in (clean): Remove also *.stackdump.
1415         * src/Makefile.in (clean): Likewise.
1416         * tests/Makefile.in (clean): Likewise.
1418 2006-07-14  Bruno Haible  <bruno@clisp.org>
1420         * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
1421         cygwin or mingw.
1422         * tests/Makefile.in (clean): Remove also the programs, without
1423         EXEEXT. Needed for cygwin or mingw.
1424         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
1425         Remove also bin directory. Needed for cygwin and mingw.
1427 2006-07-03  Bruno Haible  <bruno@clisp.org>
1429         * src/iconv.c (check_subst_formatstring): Use ngettext.
1430         (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
1431         after 2006-01-22 change.
1432         * configure.ac: Require a gettext version with ngettext.
1434 2006-06-28  Bruno Haible  <bruno@clisp.org>
1436         * m4/gettext.m4: Update from GNU gettext.
1437         * m4/po.m4: Update from GNU gettext.
1439 2006-06-27  Bruno Haible  <bruno@clisp.org>
1441         * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
1442         * Makefile.in (datarootdir): New variable.
1443         (install, installdirs, uninstall): Also pass datarootdir.
1444         * configure.ac (mandir): Remove customization.
1445         * man/Makefile.in (datarootdir): New variable.
1446         (docdir, htmldir): Use autoconf-substituted value.
1447         * src/Makefile.in (datarootdir): New variable.
1448         (localedir): Use autoconf-substituted value.
1450 2006-06-27  Bruno Haible  <bruno@clisp.org>
1452         * m4/stdint.m4: Update from gnulib.
1453         * srclib/stdint_.h: Update from gnulib.
1454         * srclib/Makefile.am: Update.
1456 2006-06-17  Bruno Haible  <bruno@clisp.org>
1458         * srclib/unsetenv.c: Update from GNU gettext.
1459         * srclib/xreadlink.c: Likewise.
1461 2006-06-16  Bruno Haible  <bruno@clisp.org>
1463         * m4/full-header-path.m4: New file, from gnulib.
1464         * m4/size_max.m4: New file, from gnulib.
1465         * m4/stdint.m4: Update from gnulib.
1466         * srclib/stdint_.h: Update from gnulib.
1467         * srclib/Makefile.am (stdint.h): Likewise.
1468         * Makefile.devel (aclocal.m4): Update dependencies.
1470 2006-06-16  Bruno Haible  <bruno@clisp.org>
1472         * m4/ssize_t.m4: Update from GNU gettext.
1474 2006-06-12  Bruno Haible  <bruno@clisp.org>
1476         * m4/gettext.m4: Update from GNU gettext.
1477         * m4/inttypes-h.m4: New file, from GNU gettext.
1478         * m4/inttypes.m4: Remove file.
1479         * m4/stdint.m4 (gl_STDINT_H): Update.
1480         * Makefile.devel (aclocal.m4): Update dependencies.
1482 2006-06-10  Bruno Haible  <bruno@clisp.org>
1484         * src/iconv.c (error) [NO_I18N]: Define here instead of including
1485         error.h. Fixes link failure introduced on 2006-01-22.
1487 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1489         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
1490         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
1492 2006-05-20  Bruno Haible  <bruno@clisp.org>
1494         * tests/BIG5-HKSCS-1999-snippet: New file.
1495         * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
1496         * tests/BIG5-HKSCS-2001-snippet: New file.
1497         * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
1498         * tests/BIG5-HKSCS-2004-snippet: New file.
1499         * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
1500         * tests/Makefile.in (check): Test also the stateful parts of
1501         BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
1503 2006-05-17  Bruno Haible  <bruno@clisp.org>
1505         Implement newer releases of BIG5-HKSCS.
1506         * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
1507         hkscs2004.h.
1508         (hkscs.h): Remove rule.
1509         (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
1510         * tools/cjk_tab_to_h.c (output_title): Update year.
1511         (main): Recognize hkscs1999, hkscs2001, hkscs2004.
1512         * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
1513         BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
1514         * lib/hkscs.h: Remove file.
1515         * lib/hkscs1999.h: New file.
1516         * lib/hkscs2001.h: New file.
1517         * lib/hkscs2004.h: New file.
1518         * lib/big5hkscs.h: Remove file.
1519         * lib/big5hkscs1999.h: New file.
1520         * lib/big5hkscs2001.h: New file.
1521         * lib/big5hkscs2004.h: New file.
1522         * lib/converters.h: Include the new files.
1523         * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
1524         * tests/BIG5-HKSCS.TXT: Remove file.
1525         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
1526         * tests/BIG5-HKSCS-1999.TXT: New file.
1527         * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
1528         * tests/BIG5-HKSCS-2001.TXT: New file.
1529         * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
1530         * tests/BIG5-HKSCS-2004.TXT: New file.
1531         * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
1532         * tests/check-stateless: Convert colon in the charset name to a dash in
1533         the file name.
1534         * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
1535         BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
1536         * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
1537         * tests/Makefile.os2 (check): Likewise.
1539 2006-05-17  Bruno Haible  <bruno@clisp.org>
1541         * srclib/progreloc.c: Update from GNU gettext.
1543 2006-05-16  Bruno Haible  <bruno@clisp.org>
1545         * src/Makefile.in (clean): Use EXEEXT.
1546         * tests/Makefile.in (check, clean): Likewise.
1548 2006-05-15  Bruno Haible  <bruno@clisp.org>
1550         * configure.ac: Move some checks before AC_RELOCATABLE.
1552 2006-05-15  Bruno Haible  <bruno@clisp.org>
1554         Support for building shared libraries on mingw and Cygwin.
1555         * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
1556         * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
1557         * woe32dll/export.h: New file, from GNU gettext.
1558         * woe32dll/iconv-exports.h: New file.
1559         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1560         include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
1561         * lib/Makefile.in (INCLUDES): Add -I for parent directory.
1562         (LDFLAGS): Add WOE32DLL dependent flags.
1563         (LDFLAGS_yes, LDFLAGS_no): New variables.
1564         (OBJECTS): Add WOE32DLL dependent objects.
1565         (OBJECTS_yes, OBJECTS_no): New variables.
1566         (iconv-exports.lo): New rule.
1568 2006-05-15  Bruno Haible  <bruno@clisp.org>
1570         * srclib/gettext.h: Update from GNU gettext.
1571         * srclib/pathmax.h: Update from GNU gettext.
1572         * srclib/progreloc.c: Update from GNU gettext.
1573         * srclib/unsetenv.c: Update from GNU gettext.
1574         * srclib/Makefile.am: Add snippet for creation of unistd.h.
1575         * m4/extensions.m4: Update from GNU gettext.
1576         * m4/gettext.m4: Update from GNU gettext.
1577         * m4/lib-ld.m4: Update from GNU gettext.
1578         * m4/lib-link.m4: Update from GNU gettext.
1579         * m4/lib-prefix.m4: Update from GNU gettext.
1580         * m4/longdouble.m4: Update from GNU gettext.
1581         * m4/nls.m4: Update from GNU gettext.
1582         * m4/onceonly.m4: Update from GNU gettext.
1583         * m4/po.m4: Update from GNU gettext.
1584         * m4/relocatable.m4: Update from GNU gettext.
1585         * m4/unistd_h.m4: New file, from GNU gettext.
1586         * Makefile.devel (aclocal.m4): Depend on it.
1587         * configure.ac: Invoke gl_HEADER_UNISTD.
1589 2006-05-14  Bruno Haible  <bruno@clisp.org>,
1590             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1592         * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
1593         (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
1594         (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
1595         Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
1597 2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
1599         * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
1600         compiling a shared library object.
1602 2006-05-15  Bruno Haible  <bruno@clisp.org>
1604         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
1606 2006-03-31  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1608         * djgpp/*: Update.
1610 2006-01-23  Bruno Haible  <bruno@clisp.org>
1612         * configure.ac: Invoke gl_ALLOCSA.
1614         * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
1616 2006-01-22  Bruno Haible  <bruno@clisp.org>
1618         * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
1619         gettext().
1621 2006-01-22  Bruno Haible  <bruno@clisp.org>
1623         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
1625 2006-01-22  Bruno Haible  <bruno@clisp.org>
1627         * src/iconv.c: Include error.h, exit.h.
1628         (print_version): Use EXIT_SUCCESS.
1629         (check_subst_formatstring, subst_mb_to_uc_fallback,
1630         subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
1631         subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
1632         error() instead of fprintf to stderr.
1634 2006-01-22  Bruno Haible  <bruno@clisp.org>
1636         New feature: character-dependent substitutions.
1637         * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
1638         iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
1639         iconv_wchar_wc_to_mb_fallback): New types.
1640         (struct iconv_fallbacks): New structure type.
1641         (ICONV_SET_FALLBACKS): New macro.
1642         * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
1643         * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
1644         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1645         include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
1646         * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
1647         * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
1648         (uc_to_mb_write_replacement): New function.
1649         (struct mb_to_uc_fallback_locals): New type.
1650         (mb_to_uc_write_replacement): New function.
1651         (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
1652         (unicode_loop_reset): Call uc_to_mb_fallback.
1653         * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
1654         (wc_to_mb_write_replacement): New function.
1655         (wchar_from_loop_convert): Call wc_to_mb_fallback.
1656         (struct mb_to_wc_fallback_locals): New type.
1657         (mb_to_wc_write_replacement): New function.
1658         (wchar_to_loop_convert): Call mb_to_wc_fallback.
1659         * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
1660         (iconvctl): Handle ICONV_SET_FALLBACKS.
1661         * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
1662         * src/iconv.c: Include limits.h.
1663         (isdigit, c_isprint): New macros.
1664         (usage): Document long options and new options.
1665         (check_subst_formatstring): New function.
1666         (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
1667         variables.
1668         (ilseq_byte_subst_size, ilseq_wchar_subst_size,
1669         ilseq_unicode_subst_size): New variables.
1670         (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
1671         ilseq_unicode_subst_buffer): New variables.
1672         (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
1673         (subst_mb_to_uc_fallback): New function.
1674         (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
1675         (subst_uc_to_mb_fallback): New function.
1676         (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
1677         (subst_mb_to_wc_fallback): New function.
1678         (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
1679         (subst_wc_to_mb_fallback): New function.
1680         (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
1681         (subst_mb_to_mb_fallback): New function.
1682         (convert): Enlarge the outbuf when the conversion failed with E2BIG.
1683         (main): Handle new options --byte-subst, --widechar-subst,
1684         --unicode-subst.
1685         * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
1686         options.
1687         * tests/check-subst: New file.
1688         * tests/Makefile.in (check): Also invoke check-subst.
1689         Suggested by James Taylor <james@oakseed.demon.co.uk>.
1691 2006-01-21  Bruno Haible  <bruno@clisp.org>
1693         * src/iconv.c (print_version): Bump copyright year.
1694         (main): Accept long options --from-code, --to-code, --list, --silent.
1695         Accept abbreviated long options, like getopt() does.
1696         * man/iconv.1: Document long options.
1698 2005-12-29  Bruno Haible  <bruno@clisp.org>
1700         * src/iconv.c (print_version): Update copyright year.
1702 2005-12-29  Bruno Haible  <bruno@clisp.org>
1704         * configure.ac: Renamed from configure.in.
1705         * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
1707 2005-12-29  Bruno Haible  <bruno@clisp.org>
1709         * configure.in: Bump version number.
1710         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1711         * windows/iconv.rc: Likewise.
1712         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
1714 2005-12-29  Bruno Haible  <bruno@clisp.org>
1716         * build-aux/config.guess: Update to GNU version 2005-12-23.
1717         * build-aux/config.sub: Likewise.
1718         * build-aux/config.libpath: Update from GNU gettext.
1719         * build-aux/install-sh: Upgrade to automake-1.9.5.
1720         * build-aux/missing: Upgrade to automake-1.9.5.
1721         * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
1723 2005-12-29  Bruno Haible  <bruno@clisp.org>
1725         * m4/alloca.m4: Update from GNU gettext.
1726         * m4/allocsa.m4: Update from GNU gettext.
1727         * m4/canonicalize.m4: Update from GNU gettext.
1728         * m4/codeset.m4: Update from GNU gettext.
1729         * m4/eealloc.m4: Update from GNU gettext.
1730         * m4/error.m4: Update from GNU gettext.
1731         * m4/extensions.m4: Update from GNU gettext.
1732         * m4/gettext.m4: Update from GNU gettext.
1733         * m4/glibc21.m4: Update from GNU gettext.
1734         * m4/iconv.m4: Update from GNU gettext.
1735         * m4/intmax.m4: Update from GNU gettext.
1736         * m4/inttypes_h.m4: New file, from GNU gettext.
1737         * m4/isc-posix.m4: Update from GNU gettext.
1738         * m4/lcmessage.m4: Update from GNU gettext.
1739         * m4/longdouble.m4: Update from GNU gettext.
1740         * m4/longlong.m4: Update from GNU gettext.
1741         * m4/mbstate_t.m4: Update from GNU gettext.
1742         * m4/nls.m4: Update from GNU gettext.
1743         * m4/onceonly.m4: Update from GNU gettext.
1744         * m4/pathmax.m4: Update from GNU gettext.
1745         * m4/po.m4: Update from GNU gettext.
1746         * m4/printf-posix.m4: Update from GNU gettext.
1747         * m4/progtest.m4: Update from GNU gettext.
1748         * m4/readlink.m4: Update from GNU gettext.
1749         * m4/relocatable.m4: Update from GNU gettext.
1750         * m4/setenv.m4: Update from GNU gettext.
1751         * m4/signed.m4: Update from GNU gettext.
1752         * m4/ssize_t.m4: Update from GNU gettext.
1753         * m4/stdbool.m4: Update from GNU gettext.
1754         * m4/stdint_h.m4: New file, from GNU gettext.
1755         * m4/strerror.m4: Update from GNU gettext.
1756         * m4/strerror_r.m4: Update from GNU gettext.
1757         * m4/unlocked-io.m4: Update from GNU gettext.
1758         * m4/wchar_t.m4: Update from GNU gettext.
1759         * m4/wint_t.m4: Update from GNU gettext.
1760         * m4/xreadlink.m4: Update from GNU gettext.
1761         * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
1762         m4/stdint_h.m4 as well.
1763         * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
1764         Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
1765         Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
1766         Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
1767         Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
1768         SRCLIBOBJS instead of LIBOBJS.
1769         * srclib/alloca_.h: Update from GNU gettext.
1770         * srclib/allocsa.h: Update from GNU gettext.
1771         * srclib/canonicalize.c: Update from GNU gettext.
1772         * srclib/error.h: Update from GNU gettext.
1773         * srclib/error.c: Update from GNU gettext.
1774         * srclib/gettext.h: Update from GNU gettext.
1775         * srclib/memmove.c: Update from GNU gettext.
1776         * srclib/progname.h: Update from GNU gettext.
1777         * srclib/progname.c: Update from GNU gettext.
1778         * srclib/progreloc.c: Update from GNU gettext.
1779         * srclib/readlink.c: Update from GNU gettext.
1780         * srclib/relocatable.c: Update from GNU gettext.
1781         * srclib/relocwrapper.c: Update from GNU gettext.
1782         * srclib/setenv.h: Update from GNU gettext.
1783         * srclib/setenv.c: Update from GNU gettext.
1784         * srclib/stdbool_.h: Update from GNU gettext.
1785         * srclib/stdint_.h: Update from gnulib.
1786         * srclib/strerror.c: Update from GNU gettext.
1787         * srclib/unlocked-io.h: Update from GNU gettext.
1788         * srclib/unsetenv.c: Update from GNU gettext.
1789         * srclib/xalloc.h: Update from GNU gettext.
1790         * srclib/xmalloc.c: Update from GNU gettext.
1791         * srclib/xreadlink.c: Update from GNU gettext.
1792         * srclib/xstrdup.c: Update from GNU gettext.
1793         * srclib/Makefile.am (DEFS): Also define EXEEXT.
1794         (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
1795         (libicrt_a_DEPENDENCIES): New variable.
1796         * src/Makefile.in (EXEEXT): New variable.
1797         * build-aux/install-reloc: Update from GNU gettext.
1798         * build-aux/reloc-ldflags: Update from GNU gettext.
1799         * build-aux/config.rpath: Update from GNU gettext.
1801 2005-12-29  Bruno Haible  <bruno@clisp.org>
1803         * m4/libtool.m4: Update, based on libtool-1.5.22.
1804         * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
1806 2005-12-24  Bruno Haible  <bruno@clisp.org>
1808         Check the whole range of GB18030.
1809         * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
1810         * tests/gengb18030z.c: New file.
1811         * tests/table-from.c (main): For GB18030, don't stop at U+10000.
1812         * tests/table-to.c (main): Likewise.
1813         * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
1814         GB18030-BMP.TXT.
1815         (clean): Remove also gengb18030z and GB18030.TXT.
1816         * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
1817         GB18030-BMP.TXT.
1818         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1819         * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
1820         GB18030.TXT on the fly from GB18030-BMP.TXT.
1821         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1823 2005-12-20  Bruno Haible  <bruno@clisp.org>
1825         * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
1826         up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
1827         to nothing.
1829 2005-12-22  Bruno Haible  <bruno@clisp.org>
1831         Extend GB18030 converter to cover the entire Unicode PUA.
1832         * lib/gb18030.h: Update comments, based on second printing.
1833         (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
1834         (gb18030_pua2charset): New array.
1835         (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
1836         part of range U+E766..U+E864.
1837         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
1838         area.
1839         (gb18030ext_mbtowc): Add mapping for the two-byte part of range
1840         U+E766..U+E864.
1841         * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
1842         gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
1843         intervals.
1844         (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
1845         * tests/GB18030.TXT: Complete mappings to private area.
1847 2005-12-22  Bruno Haible  <bruno@clisp.org>
1849         * lib/gbk.h: Update comments.
1851 2005-12-20  Bruno Haible  <bruno@clisp.org>
1853         Add private area mappings to CP949.
1854         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
1855         many others do it.
1856         * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
1858 2005-12-15  Bruno Haible  <bruno@clisp.org>
1860         Add private area mappings to CP950.
1861         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
1862         most others do it.
1863         * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
1865 2005-12-15  Bruno Haible  <bruno@clisp.org>
1867         Make CP936 follow what Microsoft does.
1868         In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
1869         added a 0x80 - U+20AC mapping to the code chart, but not to the
1870         tooltips and not to the list of mappings.
1871         * lib/cp936.h: New file.
1872         * lib/gbk.h: Update comments.
1873         * lib/ces_gbk.h: Update comments.
1874         * lib/converters.h: Include cp936.h.
1875         * lib/encodings.def (CP936): New encoding.
1876         (GBK): Remove CP936 aliases.
1877         * README, man/iconv_open.3: Add CP936.
1878         * tests/Makefile.in (check): Check CP936.
1879         * tests/Makefile.msvc (check): Likewise.
1880         * tests/Makefile.os2 (check): Likewise.
1881         * tests/CP936.TXT: New file.
1883 2005-12-14  Bruno Haible  <bruno@clisp.org>
1885         * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
1886         U+FFE1 like Microsoft does it.
1887         * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
1888         Reported by Lei Wang <lwang@qilinsoft.com>.
1890 2005-12-14  Bruno Haible  <bruno@clisp.org>
1892         Follow Euro sign addition done in 1999 in
1893         http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
1894         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
1895         * tests/CP950.TXT: Add mapping for 0xA3E1.
1897 2005-11-11  Bruno Haible  <bruno@clisp.org>
1899         * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
1900         and only two bytes are available in the output buffer, return
1901         RET_TOOSMALL instead of overrunning the output buffer.
1902         * lib/isoir165.h (isoir165_wctomb): When only one byte is available
1903         in the output buffer, don't overrun the output buffer.
1904         Reported by William Bardwell <bardwell@curl.com>.
1906 2005-09-18  Bruno Haible  <bruno@clisp.org>
1908         * m4/libtool.m4: Update, based on libtool-1.5.20.
1909         * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
1911 2005-08-12  Bruno Haible  <bruno@clisp.org>
1913         * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
1914         * tests/BIG5-2003.TXT: Likewise.
1915         * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
1916         Reported by Ping Yeh <ping@pingyeh.net>.
1918 2005-07-24  Bruno Haible  <bruno@clisp.org>
1920         Tidy up exported symbols.
1921         * m4/visibility.m4: New file.
1922         * include/export.h: New file.
1923         * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
1924         create also include/iconv.h.inst.
1925         * Makefile.devel (all): Depend on include/iconv.h.build.in.
1926         (aclocal.m4): Depend on m4/visibility.m4.
1927         (include/iconv.h.build.in): New rule.
1928         * Makefile.in (install-lib, install): Install include/iconv.h.inst,
1929         not the include/iconv.h that was used for building.
1930         (distclean, maintainer-clean): Remove also include/iconv.h.inst.
1931         * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
1932         (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
1933         * lib/config.h.in (HAVE_VISIBILITY): New macro.
1934         * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1935         Define to the gcc visibility attribute.
1936         * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1937         Likewise.
1939 2005-07-25  Bruno Haible  <bruno@clisp.org>
1941         2003-08-24  Bruno Haible  <bruno@clisp.org>
1942         * lib/relocatable.h: Make this file includable in C++ mode: add extern
1943         "C".
1945 2005-07-08  Bruno Haible  <bruno@clisp.org>
1947         * Version 1.10 released.
1949 2005-07-08  Bruno Haible  <bruno@clisp.org>
1951         * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
1952         executable after installing it.
1954 2005-07-08  Bruno Haible  <bruno@clisp.org>
1956         * configure.in: Bump version number.
1957         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1958         * windows/iconv.rc: Likewise.
1959         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
1961 2005-07-05  Bruno Haible  <bruno@clisp.org>
1963         * Makefile.devel (ACLOCAL): New variable.
1964         (aclocal.m4): Use it.
1966 2005-07-05  Bruno Haible  <bruno@clisp.org>
1968         * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
1969         SET_RELOCATABLE to a trivial value.
1971 2004-08-08  Bruno Haible  <bruno@clisp.org>
1973         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1974         be used.
1976 2004-04-28  Bruno Haible  <bruno@clisp.org>
1978         * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
1979         Treat Cygwin like Windows, since it now accepts Windows pathnames.
1981 2005-06-09  Bruno Haible  <bruno@clisp.org>
1983         * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
1984         * lib/Makefile.in (mkinstalldirs): Likewise.
1985         * src/Makefile.in (mkinstalldirs): Likewise.
1986         * man/Makefile.in (mkinstalldirs): Likewise.
1988 2005-06-08  Bruno Haible  <bruno@clisp.org>
1990         * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
1991         that don't support symbolic links.
1993 2005-06-08  Bruno Haible  <bruno@clisp.org>
1995         * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
1996         gcc warning on mingw.
1998 2005-05-22  Bruno Haible  <bruno@clisp.org>
2000         Implement and document BIG5-2003.
2001         * lib/big5_2003.h: New file.
2002         * lib/converters.h: Include it.
2003         * lib/encodings_extra.def (BIG5-2003): New encoding.
2004         * README, man/iconv_open.3: Add BIG5-2003.
2005         * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
2006         * tests/BIG5-2003.TXT: New file.
2008 2005-05-21  Bruno Haible  <bruno@clisp.org>
2010         Add EURO SIGN to EUC-TW converter.
2011         * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
2012         (cns11643_1_mbtowc): Update.
2013         * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
2014         (cns11643_inv_uni2indx_page*): Update.
2015         * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
2016         part of row 42.
2017         * tests/EUC-TW.TXT: Add entry for 0x20AC.
2018         * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
2020 2005-05-03  Bruno Haible  <bruno@clisp.org>
2022         * tools/Makefile (ALL): Add pt154.h.
2023         (pt154.h): New rule.
2024         * lib/encodings.def: Add PT154.
2025         * lib/pt154.h: New file.
2026         * lib/converters.h: Include it.
2027         * README, man/iconv_open.3: Add PT154.
2028         * NOTES: Mention PT154.
2029         * tests/PT154.TXT: New file.
2030         * tests/Makefile.in (check): Also test PT154.
2031         * tests/Makefile.msvc (check): Likewise.
2032         * tests/Makefile.os2 (check): Likewise.
2034 2005-03-29  Bruno Haible  <bruno@clisp.org>
2036         Rename libiconv_plug.so to preloadable_libiconv.so.
2037         * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
2038         libiconv_plug.so.
2039         * lib/Makefile.in (preloadable_libiconv.so): Renamed from
2040         libiconv_plug.so.
2041         (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
2042         (preloadable_libiconv_solaris.so): Renamed from
2043         libiconv_plug_solaris.so.
2044         (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
2045         (clean): Update.
2046         * README: Update.
2048 2005-03-29  Bruno Haible  <bruno@clisp.org>
2050         Implement and document ATARIST.
2051         * tools/Makefile (ALL): Add atarist.h.
2052         (atarist.h): New rule.
2053         * lib/atarist.h: New file.
2054         * lib/converters.h: Include it.
2055         * lib/encodings_extra.def (ATARIST): New encoding.
2056         * README, man/iconv_open.3: Add ATARIST.
2057         * tests/Makefile.in (check-extra-yes): Check ATARIST.
2058         * tests/ATARIST.TXT: New file.
2060 2005-03-22  Bruno Haible  <bruno@clisp.org>
2062         * build-aux: New directory, renamed from autoconf.
2063         * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2065 2005-03-16  Bruno Haible  <bruno@clisp.org>
2067         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
2068         HAVE_LONGLONG_64BIT.
2069         * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
2070         HAVE_LONGLONG_64BIT.
2071         * srclib/Makefile.am (stdint.h): Likewise.
2073 2005-03-14  Bruno Haible  <bruno@clisp.org>
2075         * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
2076         extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
2077         printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
2078         wchar_t.m4, wint_t.m4.
2080 2005-03-13  Bruno Haible  <bruno@clisp.org>
2082         Make stdout error checking reliable, also when writing to a NFS file.
2083         * src/iconv.c (main): Check the return value of fclose(stdout).
2084         * lib/genaliases.c (main): Likewise.
2085         * lib/genaliases2.c (main): Likewise.
2086         * lib/genflags.c (main): Likewise.
2087         * lib/gentranslit.c (main): Likewise.
2088         * tests/genutf8.c (main): Likewise.
2089         * tests/table-from.c (main): Likewise.
2090         * tests/table-to.c (main): Likewise.
2092 2005-03-13  Bruno Haible  <bruno@clisp.org>
2094         * src/iconv.c (convert): Before outputting an error message, flush
2095         stdout and output a newline if suitable.
2097 2005-03-13  Bruno Haible  <bruno@clisp.org>
2099         Improved error messages.
2100         * srclib/width.c: New file, from GNU clisp.
2101         * srclib/uniwidth.h: New file, from GNU clisp with modifications.
2102         * srclib/unitypes.h: New file, from GNU clisp with modifications.
2103         * srclib/cjk.h: New file, from GNU clisp.
2104         * srclib/streq.h: New file, from GNU clisp.
2105         * srclib/stdint_.h: New file, from gnulib.
2106         * m4/stdint.m4: New file, from gnulib.
2107         * m4/inttypes.m4: New file, from gnulib.
2108         * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
2109         (BUILT_SOURCES): New variable.
2110         (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
2111         streq.h.
2112         * configure.in: Invoke gl_STDINT_H.
2113         * src/iconv.c: Include cjk.h, uniwidth.h.
2114         (line, column, cjkcode): New variables.
2115         (update_line_column): New function.
2116         (convert): Initialize line and column. In all error message, show also
2117         the line and column number.
2118         (main): Initialize cjkcode. Set up hooks to call update_line_column.
2120 2005-03-13  Bruno Haible  <bruno@clisp.org>
2122         * include/iconv.h.in (iconv_canonicalize): New declaration.
2123         * lib/genaliases.c (emit_encoding): Take two output streams as
2124         arguments. To the second stream, emit a shell command for extracting
2125         offsets into the gperf generated string pool.
2126         (main): Write the shell commands into file descriptors 3 and 4.
2127         * lib/genaliases2.c (emit_encoding): Take two output streams as
2128         arguments. To the second stream, emit an expression for the offset
2129         into the string pool.
2130         (main): Write the offsets into file descriptor 3.
2131         * Makefile.devel (lib/aliases.gperf): Remove target.
2132         (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
2133         lib/canonical.h and lib/canonical_local.h.
2134         (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
2135         (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
2136         (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
2137         (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
2138         * lib/iconv.c (stringpool2): Provide default definition when it doesn't
2139         exist.
2140         (all_canonical): New array.
2141         (iconv_canonicalize): New function.
2143 2005-03-13  Bruno Haible  <bruno@clisp.org>
2145         * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
2146         iconv_hooks): New types.
2147         (ICONV_SET_HOOKS): New macro.
2148         * lib/converters.h (struct conv_struct): Add field 'hooks'.
2149         * lib/iconv.c (iconv_open): Initialize hooks to NULL.
2150         (iconvctl): Handle ICONV_SET_HOOKS.
2151         * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
2152         conversion of a character, call the uc_hook.
2153         * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
2154         the wc_hook.
2155         * lib/genflags.c (iconv_hooks): Provide a dummy definition.
2157 2005-02-05  Bruno Haible  <bruno@clisp.org>
2159         * src/iconv.c (main): In case of unsupported encodings, show a hint
2160         towards "iconv -l".
2162 2005-01-06  Bruno Haible  <bruno@clisp.org>
2164         * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
2165         * lib/Makefile.vms (DEFS): Likewise.
2166         Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2168 2005-01-05  Bruno Haible  <bruno@clisp.org>
2170         * autoconf/config.rpath: Update from GNU gettext.
2172 2005-01-05  Bruno Haible  <bruno@clisp.org>
2174         Assume automake-1.9.
2175         * Makefile.devel (AUTOMAKE): Assume automake-1.9.
2177 2005-01-05  Bruno Haible  <bruno@clisp.org>
2179         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
2180         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2182 2004-11-11  Bruno Haible  <bruno@clisp.org>
2184         * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
2185         in arbitrary order.
2186         Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2188 2004-09-21  Juan Manuel Guerrero  <st001906@hrz1.hrz.tu-darmstadt.de>
2190         * djgpp/config.bat: Update.
2191         * djgpp/config.sed: Update.
2192         * djgpp/config.site: Update.
2193         * djgpp/edtest.bat: Update.
2194         * djgpp/fnchange.in: Update.
2195         * djgpp/Makefile.maint: Update.
2196         * djgpp/makefile.sed: Update.
2197         * djgpp/README.in: Update.
2198         * djgpp/sources.sed: Update.
2199         * djgpp/translit-check.sed: Update.
2201 2004-08-25  Bruno Haible  <bruno@clisp.org>
2203         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
2204         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2206 2004-07-31  Bruno Haible  <bruno@clisp.org>
2208         Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
2209         * tools/Makefile (jisx0213.h): Bump version number.
2210         * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
2211         U+2299 -> U+29BF, and add 10 new characters.
2212         * tools/cjk_tab_to_h.c (output_title): Bump year.
2213         (do_jisx0213): Update comments. Emit a conditional 'inline'.
2214         * lib/jisx0213.h: Regenerated.
2215         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
2216         ESC $ ( Q as a synonym of ESC $ ( O.
2217         (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
2218         * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
2219         U+2299 -> U+29BF, and add 10 new characters.
2220         * tests/SHIFT_JISX0213.TXT: Likewise.
2221         * tests/ISO-2022-JP-3-snippet: Update.
2222         * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2224 2004-07-22  Bruno Haible  <bruno@clisp.org>
2226         * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
2227         * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
2228         * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
2229         * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2231 2004-07-22  Bruno Haible  <bruno@clisp.org>
2233         * tools/Makefile (ALL): Add iso8859_11.h.
2234         (iso8859_11.h): New rule.
2235         * lib/encodings.def: Add ISO-8859-11.
2236         * lib/iso8859_11.h: New file.
2237         * lib/converters.h: Include it.
2238         * tests/ISO-8859-11.TXT: New file.
2239         * tests/Makefile.in (check): Also test ISO-8859-11.
2240         * tests/Makefile.msvc (check): Likewise.
2241         * tests/Makefile.os2 (check): Likewise.
2243 2004-07-17  Bruno Haible  <bruno@clisp.org>
2245         * src/iconv.c (main): Terminate option parsing when option -- is seen.
2246         Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2248 2004-03-05  Bruno Haible  <bruno@clisp.org>
2250         * src/Makefile.in (install): Make DESTDIR work on HP-UX.
2251         Reported by Bob Proulx <box@proulx.com>.
2253 2004-02-19  Bruno Haible  <bruno@clisp.org>
2255         * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
2256         0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
2257         (viet_comp_table0301_len): Increment by 4.
2259         * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
2260         which are not entries in cp1255_comp_table_data.
2261         * lib/cp1258.h (cp1258_comp_bases): New array.
2262         (cp1258_mbtowc): Don't delay the handling of characters which are not
2263         relevant entries in viet_comp_table_data.
2264         * lib/tcvn.h (tcvn_comp_bases): New array.
2265         (tcvn_mbtowc): Don't delay the handling of characters which are not
2266         relevant entries in viet_comp_table_data.
2267         Reported by Alain Bench <veronatif@free.fr>.
2269 2004-02-02  Perry Rapp  <lifelines_3_0_18@hotmail.com>
2270             Bruno Haible  <bruno@clisp.org>
2272         * man/iconvctl.3: New file.
2273         * man/iconv.3: Refer to it in "See also".
2274         * man/iconv_open.3: Likewise.
2276 2004-01-24  Bruno Haible  <bruno@clisp.org>
2278         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2279         be used.
2281 2004-01-20  Bruno Haible  <bruno@clisp.org>
2283         Upgrade from gettext-0.14.
2285         * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
2286         instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
2287         * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
2288         xalloc.h. Remove xmalloc.h.
2289         (libicrt_a_LIBADD): Remove @ALLOCA@.
2290         * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
2291         (allocsa.obj): New rule.
2292         * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
2293         (allocsa.obj): New rule.
2294         * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
2295         (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
2297     lib/:
2299         2003-10-09  Bruno Haible  <bruno@clisp.org>
2300         * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2302         2003-08-01  Bruno Haible  <bruno@clisp.org>
2303         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2304         Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2306         2003-06-22  Bruno Haible  <bruno@clisp.org>
2307         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2308         the case when it is not used.
2309         Reported by Pavel Roskin <proski@gnu.org>.
2311     m4/:
2313         * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
2314         * m4/po.m4: Likewise.
2316         * m4/readlink.m4: New file, from GNU gettext.
2318         2003-11-30  Bruno Haible  <bruno@clisp.org>
2319         * m4/allocsa.m4: New file.
2320         * m4/eealloc.m4: New file.
2321         * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
2322         AC_FUNC_ALLOCA.
2324         2003-10-21  Bruno Haible  <bruno@clisp.org>
2325         * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
2326         readlink().
2328         2003-08-24  Bruno Haible  <bruno@clisp.org>
2329         * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
2330         since the substitution of @host@ may occur before the substitution of
2331         @SET_RELOCATABLE@.
2333         2003-08-23  Bruno Haible  <bruno@clisp.org>
2334         * stdbool.m4: Replace with the version from gnulib, without
2335         AC_HEADER_STDBOOL.
2337         2003-08-08  Paul Eggert  <eggert@twinsun.com>
2338         * m4/extensions.m4: New file.
2339         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
2340         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
2342         2003-07-01  Bruno Haible  <bruno@clisp.org>
2343         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
2344         <sys/types.h> should be sufficient.
2345         Reported by Paul Eggert.
2347         2003-07-01  Bruno Haible  <bruno@clisp.org>
2348         * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
2349         from aclocal-1.4-p4.
2350         Reported by Luke Schierer <lschiere@rackspace.com> and
2351         Michael C. Toren <mct@toren.net>.
2353         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2354         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
2355         xreadlink.c now includes it unconditionally.
2357         2003-06-17  Paul Eggert  <eggert@twinsun.com>
2358         * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
2359         for portability to POSIX 1003.1-2001.  Backported from libtool-1.5.
2361         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2362         * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
2363         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
2365         2002-12-24  Bruno Haible  <bruno@clisp.org>
2366         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
2367         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
2368         when invoked twice.
2369         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
2370         gt_FUNC_SETENV.
2372     srclib/:
2374         2003-11-30  Bruno Haible  <bruno@clisp.org>
2375         * srclib/alloca.c: Remove file.
2377         2003-11-30  Bruno Haible  <bruno@clisp.org>
2378         Safer stack allocation.
2379         * srclib/allocsa.h: New file.
2380         * srclib/allocsa.c: New file.
2381         * canonicalize.c: Include allocsa.h.
2382         (__realpath): Use allocsa instead of alloca. Don't clobber errno right
2383         before returning NULL.
2384         * srclib/relocwrapper.c: Indirectly depends on allocsa.
2385         * srclib/setenv.c: Include allocsa.h.
2386         (alloca): Remove fallback definition.
2387         (freea): Remove macro.
2388         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
2389         instead of freea.
2391         2003-11-17  Bruno Haible  <bruno@clisp.org>
2392         * srclib/canonicalize.c: #undef realpath after <config.h> but before
2393         the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
2394         Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2396         2003-10-21  Bruno Haible  <bruno@clisp.org>
2397         * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
2398         systems without symbolic links.
2400         2003-10-17  Bruno Haible  <bruno@clisp.org>
2401         * srclib/binary-io.h: Avoid warnings on Cygwin.
2403         2003-10-09  Bruno Haible  <bruno@clisp.org>
2404         * srclib/xalloc.h: Renamed from xmalloc.h.
2405         * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
2406         * srclib/relocatable.c: Likewise.
2407         * srclib/xmalloc.c: Likewise.
2408         * srclib/xreadlink.c: Likewise.
2409         * srclib/xstrdup.c: Likewise.
2411         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2412         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2414         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2415         * srclib/setenv.c (clearenv): Define via prototype.
2417         2003-09-10  Bruno Haible  <bruno@clisp.org>
2418         * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
2419         * srclib/unsetenv.c: Likewise.
2421         2003-08-28  Bruno Haible  <bruno@clisp.org>
2422         * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
2423         a warning on QNX, which defines O_BINARY to 000000.
2425         2003-08-24  Bruno Haible  <bruno@clisp.org>
2426         * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
2427         when MSVC7 <stdio.h> is included later.
2429         2003-08-24  Bruno Haible  <bruno@clisp.org>
2430         * srclib/error.h: Use ANSI C "..." declarations when compiling with
2431         MSVC, even though it doesn't define __STDC__ by default.
2432         * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
2433         it doesn't define __STDC__ by default.
2435         2003-08-24  Bruno Haible  <bruno@clisp.org>
2436         Support for building DLLs on Windows.
2437         * srclib/error.h (error_print_progname, error_message_count,
2438         error_one_per_line): Add DLL_VARIABLE attribute.
2439         * srclib/progname.h (program_name): Likewise.
2441         2003-08-24  Bruno Haible  <bruno@clisp.org>
2442         * srclib/progname.h: Make this file includable in C++ mode: add extern
2443         "C".
2444         * srclib/relocatable.h: Likewise.
2445         * srclib/xmalloc.h: Likewise.
2447         2003-08-22  Bruno Haible  <bruno@clisp.org>
2448         * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
2449         declarations.
2450         * srclib/progname.c (error_with_progname): Remove variable.
2451         (maybe_print_progname): Remove function.
2453         2003-08-01  Bruno Haible  <bruno@clisp.org>
2454         * srclib/relocatable.c (find_shared_library_fullname): Disable the code
2455         on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2457         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2458         * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
2459         having it depend on HAVE_SYS_TYPES_H.
2461         2003-06-23  Bruno Haible  <bruno@clisp.org>
2462         Avoid compilation units that are empty after preprocessing.
2463         * srclib/canonicalize.c: Add dummy declaration.
2464         * srclib/strerror.c: Likewise.
2465         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2466         compiled.
2468         2003-06-22  Bruno Haible  <bruno@clisp.org>
2469         * srclib/relocatable.c (compute_curr_prefix): Comment out this function
2470         in the case when it is not used.
2471         Reported by Pavel Roskin <proski@gnu.org>.
2473         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2474         * srclib/pathmax.h: Include <limits.h> without checking for
2475         HAVE_LIMITS_H.
2476         * srclib/xreadlink.c: Likewise.
2478 2004-01-20  Bruno Haible  <bruno@clisp.org>
2480         Assume automake-1.8.
2481         * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
2482         (AUTOMAKE): Assume automake-1.8.
2483         * Makefile.in (am--refresh): New target.
2485 2004-01-23  Bruno Haible  <bruno@clisp.org>
2487         * Version 1.9.2 released.
2489 2004-01-23  Bruno Haible  <bruno@clisp.org>
2491         * tests/table-from.c: Include binary-io.h.
2492         (main): Switch stdout to binary mode.
2493         * tests/table-to.c: Include binary-io.h.
2494         (main): Switch stdout to binary mode.
2495         * tests/genutf8.c: Include binary-io.h.
2496         (main): Switch stdout to binary mode.
2497         * tests/Makefile.in (INCLUDES): Also look in srclib.
2498         (check): Pass INCLUDES when compiling genutf8.c.
2499         * tests/Makefile.os2 (INCLUDES): Also look in srclib.
2500         (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
2501         * tests/Makefile.msvc (INCLUDES): Also look in srclib.
2502         (check): Pass INCLUDES when compiling genutf8.c.
2504 2004-01-21  Bruno Haible  <bruno@clisp.org>
2506         * src/iconv.c (force_binary): Remove variable.
2507         (usage): Don't document --binary any more.
2508         (convert, main): Always switch to binary mode.
2509         * tests/check-stateful.bat: Remove --binary option.
2510         * tests/check-translit.bat: Likewise.
2511         * tests/check-stateful.cmd: Likewise.
2512         * tests/check-translit.cmd: Likewise.
2513         * djgpp/stateful-check.sed: Remove MODE variable.
2514         * djgpp/translit-check.sed: Likewise.
2516 2004-01-21  Bruno Haible  <bruno@clisp.org>
2518         * man/iconv.3: Fix description of return value in case of error.
2519         Reported by Jonathan Wakely <redi@users.sf.net>.
2521 2003-09-12  Paul Eggert  <eggert@twinsun.com>
2523         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2525 2003-08-15  Bruno Haible  <bruno@clisp.org>
2527         * Makefile.devel (lib/translit.h): Add ulimit command so that the
2528         gentranslit program gets the stack it needs. Many Linux distributions
2529         allow only 8 MB of stack by default.
2531 2003-08-01  Bruno Haible  <bruno@clisp.org>
2533         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2534         Linux/libc5.
2535         * srclib/relocatable.c (find_shared_library_fullname): Likewise.
2536         Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2538 2003-07-02  Bruno Haible  <bruno@clisp.org>
2540         * m4/lib-ld.m4: Update from GNU gettext.
2541         * m4/lib-prefix.m4: Update from GNU gettext.
2542         * m4/gettext.m4: Update from GNU gettext.
2543         * m4/intmax.m4: New file, from GNU gettext.
2544         * m4/longdouble.m4: New file, from GNU gettext.
2545         * m4/longlong.m4: New file, from GNU gettext.
2546         * m4/printf-posix.m4: New file, from GNU gettext.
2547         * m4/signed.m4: New file, from GNU gettext.
2548         * m4/wchar_t.m4: New file, from GNU gettext.
2549         * m4/wint_t.m4: New file, from GNU gettext.
2550         * m4/pathmax.m4: Update from GNU gettext and gnulib.
2551         * m4/ssize_t.m4: Update from GNU gettext and gnulib.
2552         * m4/xreadlink.m4: Update from GNU gettext and gnulib.
2553         * m4/readlink.m4: New file, from gnulib.
2554         * autoconf/install-reloc: Update from GNU gettext.
2555         * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
2556         * srclib/readlink.c: New file, from GNU gettext and gnulib.
2557         * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
2558         (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
2559         * configure.in: Invoke gl_FUNC_READLINK.
2561 2003-06-22  Bruno Haible  <bruno@clisp.org>
2563         * src/Makefile.in (install): Link with the already installed library.
2564         This fixes a link error on Solaris.
2565         Reported by Paul Eggert.
2567 2003-06-08  Bruno Haible  <bruno@clisp.org>
2569         * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
2571 2003-05-02  Bruno Haible  <bruno@clisp.org>
2573         Support for libtool-1.5.
2574         * srclib/progname.c (set_program_name): Remove a leading
2575         "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
2577 2003-06-23  Bruno Haible  <bruno@clisp.org>
2579         Avoid compilation units that are empty after preprocessing.
2580         * srclib/canonicalize.c: Add dummy declaration.
2581         * srclib/strerror.c: Likewise.
2582         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2583         compiled.
2585 2003-06-22  Bruno Haible  <bruno@clisp.org>
2587         Portability to mingw32.
2588         * m4/ssize_t.m4: New file, from GNU gettext.
2589         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
2590         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2592 2003-06-22  Bruno Haible  <bruno@clisp.org>
2594         Portability to mingw32.
2595         * lib/relocatable.c [WIN32]: Include <windows.h>.
2596         * srclib/relocatable.c: Likewise.
2597         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2599 2003-06-22  Bruno Haible  <bruno@clisp.org>
2601         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2602         the case when it is not used.
2603         * srclib/relocatable.c (compute_curr_prefix): Likewise.
2604         Reported by Pavel Roskin <proski@gnu.org>.
2606 2003-06-18  Bruno Haible  <bruno@clisp.org>
2608         * config/install-sh: Update from automake-1.7.5.
2610 2003-06-16  Bruno Haible  <bruno@clisp.org>
2612         * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
2613         (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
2614         ISO_8859-16:2000.
2615         (GBK): Add aliases MS936, WINDOWS-936.
2616         Reported by Guido Flohr <guido@imperia.net>.
2618 2003-05-09  Bruno Haible  <bruno@clisp.org>
2620         * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
2621         "extraneous semicolon" warning from Tru64 cc.
2623 2003-06-07  Bruno Haible  <bruno@clisp.org>
2625         * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
2626         * Makefile.vms (config.h): New rule.
2627         (all, install): Depend on it.
2628         (all, install, installdirs, uninstall, check): Fix typo.
2629         (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
2630         config.h.
2631         * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
2632         (OBJECTS): Use libiconv.obj instead of iconv.obj.
2633         (libiconv.obj): Renamed from iconv.obj.
2634         * srclib/Makefile.vms (INCLUDES): Add parent directory.
2635         (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
2636         (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
2637         (alloca.h): New rule.
2638         (canonicalize.obj): Depend on it.
2639         (clean): Remove alloca.h.
2640         * src/Makefile.vms (datadir, localedir): New variables.
2641         (DEFS): Also define LOCALEDIR.
2642         (iconv.obj): Add flags for relocatability,
2643         (iconv.exe): Link with libicrt. Use link_options.
2644         * vms/link_options.opt: New file.
2645         Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
2647 2003-06-07  Bruno Haible  <bruno@clisp.org>
2649         Support for relocatable data files even on Woe32.
2650         * lib/Makefile.msvc (PICFLAGS): Also define PIC.
2652 2003-05-22  Bruno Haible  <bruno@clisp.org>
2654         * Version 1.9.1 released.
2656 2003-05-22  Bruno Haible  <bruno@clisp.org>
2658         * lib/genaliases.c (main): Emit %pic instead of %null-strings.
2659         Change type of 'name' field to 'int'.
2660         * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
2661         invocation of macro S(), including the tag and a counter.
2662         (main): Use the command-line argument as tag.
2663         * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
2664         lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
2665         * lib/iconv.c (stringpool2_t): New type.
2666         (stringpool2_contents): New data table.
2667         (stringpool2): New macro.
2668         (sysdep_aliases): Make position-independent. Move #includes out to
2669         aliases2.h.
2670         (aliases2_lookup): Update.
2671         (nalias): New type.
2672         (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
2673         (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
2674         * lib/aliases2.h: New file, extracted from lib/iconv.c.
2676 2003-05-20  Bruno Haible  <bruno@clisp.org>
2678         * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
2679         Reported by Muraoka Taro <koron@tka.att.ne.jp>.
2681 2003-05-19  Bruno Haible  <bruno@clisp.org>
2683         * windows/iconv.rc: Include <winver.h>.
2684         Reported by Perry Rapp.
2686 2003-05-18  Bruno Haible  <bruno@clisp.org>
2688         * Version 1.9 released.
2690 2003-05-18  Bruno Haible  <bruno@clisp.org>
2692         * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
2694 2003-05-18  Bruno Haible  <bruno@clisp.org>
2696         * lib/Makefile.msvc (DEBUGFLAGS): New variable.
2697         (iconv.lib): Use it.
2698         * src/Makefile.msvc (DEBUGFLAGS): New variable.
2699         * tests/Makefile.msvc (DEBUGFLAGS): New variable.
2701 2003-05-17  Bruno Haible  <bruno@clisp.org>
2703         * src/Makefile.msvc (libdir, datadir, localedir): New variables.
2704         (IIlibdir, IIdatadir, IIlocaledir): New variables.
2705         (CFLAGS): Define LOCALEDIR.
2706         (iconv_no_i18n.exe): New rule.
2707         (all): Depend on it.
2708         * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
2709         * tests/check-translit.bat: Likewise.
2711 2003-05-16  Bruno Haible  <bruno@clisp.org>
2713         * lib/genaliases.c (main): Emit declarations for gperf-3.0.
2714         * Makefile.devel (lib/aliases.h): Remove gperf command line options;
2715         add new option "-m 10" for gperf-3.0.
2717 2003-05-12  Bruno Haible  <bruno@clisp.org>
2719         * m4/error.m4: Update from gettext.
2721 2003-05-12  Bruno Haible  <bruno@clisp.org>
2723         * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
2725 2003-05-12  Bruno Haible  <bruno@clisp.org>
2727         * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
2728         CFLAGS to PICFLAGS.
2730 2003-05-09  Bruno Haible  <bruno@clisp.org>
2732         * srclib/error.c: Update from gnulib with modifications.
2733         * srclib/unlocked-io.h: New file, from gnulib.
2734         * m4/strerror_r.m4: New file, from gnulib.
2735         * m4/unlocked-io.m4: New file, from gnulib.
2736         * Makefile.devel (aclocal.m4): Depend on them.
2738 2003-05-08  Bruno Haible  <bruno@clisp.org>
2740         * Makefile.msvc (IIPREFIX): New variable.
2741         * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
2742         * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
2743         IIincludedir): New variables.
2744         (INCLUDES): Add -I..\windows.
2745         (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
2746         ../srclib/icrt.lib.
2747         Patches by Perry Rapp.
2749 2003-05-07  Bruno Haible  <bruno@clisp.org>
2751         * README.woe32: Fix instructions for step 1.
2752         * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
2753         (strtoul.obj): Remove rule.
2754         Reported by Perry Rapp.
2756 2003-05-07  Bruno Haible  <bruno@clisp.org>
2758         * Makefile.vms: New file.
2759         * lib/Makefile.vms: New file.
2760         * srclib/Makefile.vms: New file.
2761         * src/Makefile.vms: New file.
2762         * man/Makefile.vms: New file.
2763         * tests/Makefile.vms: New file.
2764         * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
2765         New rules.
2766         (all): Depend on them.
2768 2003-05-07  Bruno Haible  <bruno@clisp.org>
2770         * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
2771         (findprog.obj): Remove rule.
2772         * src/Makefile.msvc (includedir): New variable.
2774 2003-05-06  Bruno Haible  <bruno@clisp.org>
2776         * lib/translit.def: Upgrade to Unicode 4.0.
2778 2003-05-06  Bruno Haible  <bruno@clisp.org>
2780         * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
2781         * srclib/Makefile.msvc (CFLAGS): Likewise.
2783         * srclib/Makefile.msvc (INCLUDES): Add -I.. .
2784         Reported by Perry Rapp.
2786         * Makefile.msvc (config.h): New rule.
2787         (all): Depend on it.
2788         (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
2789         Reported by Perry Rapp.
2791 2003-05-06  Bruno Haible  <bruno@clisp.org>
2793         * autoconf/config.guess: Update to GNU version 2003-02-22.
2794         * autoconf/config.sub: Likewise.
2796 2003-05-06  Bruno Haible  <bruno@clisp.org>
2798         * m4/lib-link.m4: Update from GNU gettext.
2799         * autoconf/config.rpath: Update from GNU gettext.
2801         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
2802         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
2804         * m4/gettext.m4: Update from GNU gettext.
2805         * m4/nls.m4: Update from GNU gettext.
2806         * m4/po.m4: Update from GNU gettext.
2807         * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
2809 2003-04-12  Bruno Haible  <bruno@clisp.org>
2811         Support for OpenVMS 7.3.
2812         * lib/iconv.c (USE_OSF1): Define also on VMS.
2814 2003-04-12  Bruno Haible  <bruno@clisp.org>
2816         Better support for FreeBSD.
2817         * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
2818         aliases, for compatibility with earlier FreeBSD iconv implementation
2819         by Konstantin Chuguev.
2820         * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
2821         aliases.
2822         * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
2824 2003-04-12  Bruno Haible  <bruno@clisp.org>
2826         * configure.in (mandir): Change default value.
2827         * Makefile.in (datadir): New variable.
2828         (install, installdirs, uninstall): Pass datadir to po and man
2829         directories.
2830         * Makefile.os2 (datadir): New variable.
2831         (mandir): Use it instead of prefix.
2832         (install, uninstall): Pass datadir to man directory.
2833         * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
2834         * man/Makefile.in (datadir): New variable.
2835         (docdir): Use it instead of prefix.
2836         (install, installdirs): Update.
2837         * man/Makefile.os2 (datadir): New variable.
2838         (mandir): Use it instead of prefix.
2839         * man/Makefile.msvc (datadir): New variable.
2840         (mandir, docdir): Use it instead of prefix.
2841         (install, installdirs): Update.
2843 2003-04-06  Bruno Haible  <bruno@clisp.org>
2845         Make it possible to build with or without libintl support on Woe32.
2846         * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
2847         * Makefile.msvc (NO_NLS): New variable.
2848         * srclib/Makefile.msvc (NO_NLS): New variable.
2849         (CFLAGS, INCLUDES): Use them.
2850         * src/Makefile.msvc (NO_NLS): New variable.
2851         (NLSFLAGS, INCINTL, LIBINTL): New variables.
2852         (CFLAGS, INCLUDES, iconv.exe): Use them.
2854 2003-04-12  Bruno Haible  <bruno@clisp.org>
2856         * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
2857         variants transliteration failed with RET_ILUNI, don't return
2858         RET_TOOSMALL.
2859         Reported by the FreeBSD porters.
2861 2003-04-06  Bruno Haible  <bruno@clisp.org>
2863         * srclib/binary-io.h: New file, from GNU gettext.
2864         * src/iconv.c: Include it.
2865         (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
2867 2003-04-05  Bruno Haible  <bruno@clisp.org>
2869         Support for relocatable installation.
2870         * m4/alloca.m4: New file, from GNU gettext.
2871         * m4/canonicalize.m4: New file, from GNU gettext.
2872         * m4/error.m4: New file, from GNU gettext.
2873         * m4/onceonly.m4: New file, from GNU gettext.
2874         * m4/pathmax.m4: New file, from GNU gettext.
2875         * m4/relocatable.m4: New file, from GNU gettext.
2876         * m4/setenv.m4: New file, from GNU gettext.
2877         * m4/stdbool.m4: New file, from GNU gettext.
2878         * m4/strerror.m4: New file, from GNU gettext.
2879         * m4/xreadlink.m4: New file, from GNU gettext.
2880         * autoconf/config.libpath: New file, from GNU gettext.
2881         * autoconf/install-reloc: New file, from GNU gettext.
2882         * autoconf/reloc-ldflags: New file, from GNU gettext.
2883         * autoconf/missing: New file, from GNU automake 1.7.3.
2884         * lib/relocatable.h: New file, from GNU gettext.
2885         * lib/relocatable.c: New file, from GNU gettext.
2886         * srclib/alloca.c: New file, from GNU gettext.
2887         * srclib/alloca_.h: New file, from GNU gettext.
2888         * srclib/canonicalize.c: New file, from GNU gettext.
2889         * srclib/canonicalize.h: New file, from GNU gettext.
2890         * srclib/error.c: New file, from GNU gettext.
2891         * srclib/error.h: New file, from GNU gettext.
2892         * srclib/exit.h: New file, from GNU gettext.
2893         * srclib/gettext.h: New file, from GNU gettext.
2894         * srclib/memmove.c: New file, from GNU gettext.
2895         * srclib/pathmax.h: New file, from GNU gettext.
2896         * srclib/progname.c: New file, from GNU gettext.
2897         * srclib/progname.h: New file, from GNU gettext.
2898         * srclib/progreloc.c: New file, from GNU gettext.
2899         * srclib/relocatable.c: New file, from GNU gettext.
2900         * srclib/relocatable.h: New file, from GNU gettext.
2901         * srclib/relocwrapper.c: New file, from GNU gettext.
2902         * srclib/setenv.c: New file, from GNU gettext.
2903         * srclib/setenv.h: New file, from GNU gettext.
2904         * srclib/stdbool.h.in: New file, from GNU gettext.
2905         * srclib/strerror.c: New file, from GNU gettext.
2906         * srclib/unsetenv.c: New file, from GNU gettext.
2907         * srclib/xmalloc.c: New file, from GNU gettext.
2908         * srclib/xmalloc.h: New file, from GNU gettext.
2909         * srclib/xreadlink.c: New file, from GNU gettext.
2910         * srclib/xreadlink.h: New file, from GNU gettext.
2911         * srclib/xstrdup.c: New file, from GNU gettext.
2912         * srclib/Makefile.am: New file.
2913         * srclib/Makefile.msvc: New file.
2914         * windows/alloca.h: New file, from GNU gettext.
2915         * windows/stdbool.h: New file, from GNU gettext.
2916         * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
2917         Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
2918         string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
2919         AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
2920         gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
2921         gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
2922         * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
2923         HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
2924         localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
2925         relocatable.c.
2926         * lib/Makefile.in (DEFS): New variable.
2927         (SOURCES): Add localcharset.c and relocatable.c.
2928         (OBJECTS): Add localcharset.lo and relocatable.lo.
2929         (LIBCHARSET_OBJECTS): Remove variable.
2930         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
2931         libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
2932         (iconv.lo): Use $(DEFS).
2933         (localcharset.lo, relocatable.lo): New rules.
2934         * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
2935         ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
2936         set_relocation_prefix, relocate. Remove $(PICFLAGS).
2937         (INCLUDES): Simplify.
2938         (SOURCES): Remove variable.
2939         (OBJECTS): Add localcharset.obj and relocatable.obj.
2940         (LIBCHARSET_OBJECTS): Remove variable.
2941         (iconv.obj): Add $(PICFLAGS).
2942         (localcharset.obj, relocatable.obj): New rules.
2943         (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
2944         * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
2945         * src/gettext.h: Remove file.
2946         * src/iconv.c: Include progname.h and relocatable.h.
2947         (ICONV_CONST): Define to const if the system has no iconv.
2948         (main): Invoke set_program_name. Relocate LOCALEDIR.
2949         * src/Makefile.in (top_srcdir): New variable.
2950         (INCLUDES): Add .. and ../srclib.
2951         (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
2952         (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
2953         (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
2954         RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
2955         variables.
2956         (iconv): Use $(iconv_LDFLAGS).
2957         (install): Use $(INSTALL_PROGRAM_ENV).
2958         (distclean): Drop removing config.h.
2959         * src/Makefile.msvc (INCLUDES): Add .., simplify.
2960         * tests/Makefile.msvc (INCLUDES): Simplify.
2961         * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
2962         (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
2963         (all): Depend on them.
2964         (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
2965         m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
2966         m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
2967         (lib/config.h.msvc): Additional processing.
2968         * Makefile.in (all, install, installdirs, uninstall, check): Recurse
2969         into srclib.
2970         (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
2971         lib/localcharset.h.
2972         (distclean, maintainerclean): Remove also config.h and some stamps.
2973         * Makefile.msvc (all, install, installdirs, uninstall, check,
2974         mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
2975         * INSTALL.generic: Document --enable-relocatable and
2976         --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
2977         LDFLAGS. The lib-link.m4 macros make this unnecessary.
2979 2003-04-05  Bruno Haible  <bruno@clisp.org>
2981         * configure.in: Bump version number to 1.9.
2982         * include/iconv.h.in (_LIBICONV_VERSION): Bump.
2983         * windows/iconv.rc: Bump version number.
2984         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
2986 2003-04-05  Bruno Haible  <bruno@clisp.org>
2988         * Makefile.msvc (PREFIX): New variable.
2989         (prefix): Use it.
2990         (distclean, maintainer-clean): Drop Unix specific removals.
2991         * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
2992         (prefix): Use it.
2993         (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
2994         (clean): Drop Unix specific removal.
2995         * src/Makefile.msvc (PREFIX): New variable.
2996         (prefix): Use it.
2997         (clean): Drop Unix specific removal.
2998         (distclean): Likewise.
2999         * tests/Makefile.msvc (clean): Drop Unix specific removal.
3000         (distclean): Likewise.
3002 2003-04-05  Bruno Haible  <bruno@clisp.org>
3004         * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
3006 2003-04-05  Bruno Haible  <bruno@clisp.org>
3008         * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
3009         CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
3010         macros.
3011         * m4/gettext.m4: Update from GNU gettext.
3012         * m4/iconv.m4: Update from GNU gettext.
3013         * m4/lcmessage.m4: Update from GNU gettext.
3014         * m4/progtest.m4: Update from GNU gettext.
3015         * m4/libtool.m4: Update from GNU gettext.
3016         2003-02-16  Bruno Haible  <bruno@clisp.org>
3017                 Workaround autoconf >= 2.52 breakage.
3018                 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
3019                 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
3020         * autoconf/ltmain.sh: Update from GNU gettext.
3021         2003-02-18  Bruno Haible  <bruno@clisp.org>
3022                 Fix the 2002-09-16 fix.
3023                 * ltmain.sh (install): If "ln -s -f" fails (this is the case
3024                 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
3026 2003-04-05  Bruno Haible  <bruno@clisp.org>
3028         Start using automake.
3029         * configure.in: Add AM_INIT_AUTOMAKE invocation.
3030         (PACKAGE, VERSION): Remove.
3031         Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
3032         Use AC_PROG_LN_S instead of CL_PROG_LN_S.
3033         Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
3034         Reorder so that AC_CANONICAL_HOST comes early but still after
3035         AC_PROG_CC.
3036         * m4/ranlib.m4: Remove file.
3037         * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
3038         * Makefile.devel (CLISP_DIR): Comment out.
3039         (AUTOCONF_FILES): Change to aclocal.m4.
3040         (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
3041         (configure.in): Drop --include option.
3043 2003-03-17  Bruno Haible  <bruno@clisp.org>
3045         Improved MSVC support.
3046         * Makefile.msvc (prefix): Use less Unixy value.
3047         (local_prefix): Remove variable.
3048         (libdir, includedir, mandir): Use backslashes.
3049         (bindir, datadir, localedir, docdir): New variables.
3050         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3051         (all): Recurse into po/ and man/.
3052         (install, installdirs, uninstall): Rewritten.
3053         (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
3054         into po/ and man/.
3055         * lib/Makefile.msvc (prefix): Use less Unixy value.
3056         (local_prefix): Remove variable.
3057         (libdir): Use backslashes.
3058         (bindir): New variable.
3059         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
3060         (RESOURCES): Enable iconv.res.
3061         (install, installdirs, uninstall): New rules.
3062         (clean): Remove config.h.
3063         (distclean): Don't remove config.h here.
3064         * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
3065         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3066         (install, installdirs, uninstall): New rules.
3067         * man/Makefile.msvc: New file.
3068         * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
3069         * Makefile.devel (all): Depend on po/Makefile.msvc.
3070         (po/Makefile.msvc): New rule.
3071         * windows/iconv.rc: Update.
3072         * README.woe32: Mention automatic installation command.
3074         Rename libcharset.h to localcharset.h.
3075         * lib/iconv.c: Include localcharset.h, not libcharset.h.
3076         * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
3077         (all, install): Update dependencies.
3078         (all): Create lib/localcharset.h, not lib/libcharset.h.
3079         (mostlyclean, clean, distclean, maintainer-clean): Remove
3080         lib/localcharset.h, not lib/libcharset.h.
3081         * djgpp/README.in, djgpp/README: Update.
3082         * djgpp/config.bat: Update.
3083         * djgpp/config.sed: Update.
3084         * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
3086 2003-01-31  Bruno Haible  <bruno@clisp.org>
3088         * src/Makefile.in (all): Don't do the chmod if it has already been
3089         done.
3091 2003-01-31  Bruno Haible  <bruno@clisp.org>
3093         * lib/loop_unicode.h (unicode_transliterate): Enable recursive
3094         transliteration. Idea from Perry Rapp.
3095         * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
3096         Change element type of translit_data to 'unsigned int'.
3097         * lib/translit.def: Many new transliterations, mostly taken from glibc.
3098         * lib/translit.h: Regenerated.
3099         * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
3100         * tests/Makefile.in (check): Add Translit1 check.
3101         * tests/Makefile.msvc (check): Likewise.
3102         * tests/Makefile.os2 (check): Likewise.
3103         * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
3104         improved transliteration cannot do.
3106 2003-02-14  Bruno Haible  <bruno@clisp.org>
3108         * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
3109         (configure): Update rule.
3111 2003-01-03  Albert Chin  <libtool@thewrittenword.com>
3113         * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
3114         dependency_libs variable directly down to the linker.
3115         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
3117 2003-01-01  Bruno Haible  <bruno@clisp.org>
3119         * src/Makefile.in (install): Use libiconv.la in ../lib, not in
3120         $(libdir), so that installing with DESTDIR works.
3121         Reported by Michael Adams <michael@michaeladams.org>.
3123 2003-01-01  Bruno Haible  <bruno@clisp.org>
3125         * Makefile.in (mkinstalldirs): New variable.
3126         (install-lib, install, installdirs): Use it instead of mkdir.
3127         * lib/Makefile.in (mkinstalldirs): New variable.
3128         (install-lib, install, installdirs): Use it instead of mkdir.
3129         * man/Makefile.in (mkinstalldirs): New variable.
3130         (install, installdirs): Use it instead of mkdir.
3131         * src/Makefile.in (mkinstalldirs): New variable.
3132         (install, installdirs): Use it instead of mkdir.
3134 2002-09-27  Bruno Haible  <bruno@clisp.org>
3136         * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
3138 2002-11-07  Bruno Haible  <bruno@clisp.org>
3140         * m4/libtool.m4: Upgrade to libtool-1.4.3.
3141         * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
3143 2002-07-14  Bruno Haible  <bruno@clisp.org>
3145         * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
3147 2002-06-12  Bruno Haible  <bruno@clisp.org>
3149         * configure.in: Use new AC_* names of libtool macros. Invoke
3150         AC_LIBTOOL_WIN32_DLL.
3152 2002-12-19  Bruno Haible  <bruno@clisp.org>
3154         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
3155         Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
3157 2002-11-07  Bruno Haible  <bruno@clisp.org>
3159         Make "make install" without prior "make" work.
3160         * Makefile.in (lib/libcharset.h): New rule.
3161         (all, install): Depend on it.
3162         Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
3164 2002-10-28  Bruno Haible  <bruno@clisp.org>
3166         * man/Makefile.in (install): Change directory back to the working
3167         directory, so that install-sh (which may be a relative pathname) is
3168         found in the right place.
3170 2002-09-16  Bruno Haible  <bruno@clisp.org>
3172         * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
3173         "rm -f && ln -s" to make a symlink for a shared library.
3174         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3176 2002-09-02  Bruno Haible  <bruno@clisp.org>
3178         * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
3180 2002-08-16  Bruno Haible  <bruno@clisp.org>
3182         * src/iconv.c (main): Perform fflush before testing ferror(stdout).
3184 2002-05-29  Bruno Haible  <bruno@clisp.org>
3186         * Version 1.8 released.
3188 2002-05-26  Bruno Haible  <bruno@clisp.org>
3190         * lib/c99.h: New file.
3191         * lib/converters.h: Include it.
3192         * lib/encodings.def (C99): New encoding.
3193         * README, man/iconv_open.3: Document C99 encoding.
3195 2002-05-26  Bruno Haible  <bruno@clisp.org>
3197         * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
3198         characters.
3199         (java_wctomb): Produce 12-byte sequences for non-BMP characters.
3201 2002-05-29  Bruno Haible  <bruno@clisp.org>
3203         Fix installation of iconv program when linked with a libintl that was
3204         built against an earlier libiconv.
3205         * src/iconv.c: Conditionally disable NLS.
3206         * src/iconv_no_i18n.c: New file.
3207         * src/Makefile.in (libdir): New variable.
3208         (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
3209         directory writable, so iconv executable can be created during "make
3210         install".
3211         (iconv): Remove rule.
3212         (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
3213         (install): Link iconv now, after the new libiconv.so is installed.
3214         (clean): Also remove iconv_no_i18n.
3215         * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
3216         not iconv.
3217         * tests/check-stateful: Use iconv_no_i18n, not iconv.
3218         * tests/check-translit: LIkewise.
3219         * tests/check-translitfailure: Likewise.
3221 2002-05-29  Bruno Haible  <bruno@clisp.org>
3223         * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
3224         * m4/install.m4: Remove file.
3225         * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
3227 2002-05-24  Bruno Haible  <bruno@clisp.org>
3229         * lib/jisx0213.h: Use 'inline' only conditionally.
3231 2002-05-18  Bruno Haible  <bruno@clisp.org>
3233         * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
3234         README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
3235         Bump version number.
3236         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
3238 2002-02-06  Bruno Haible  <bruno@clisp.org>
3240         * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
3242 2002-02-02  Bruno Haible  <bruno@clisp.org>
3244         * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
3246 2001-11-03  Bruno Haible  <haible@clisp.cons.org>
3248         * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
3249         "make install" succeeds.
3251 2002-05-18  Bruno Haible  <bruno@clisp.org>
3253         * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
3254         from the command line. Needed to ensure that the new libiconv version
3255         is used on FreeBSD.
3257 2002-05-14  Bruno Haible  <bruno@clisp.org>
3259         Implement and document CP853, TDS565, RISCOS-LATIN1.
3260         * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
3261         (cp853.h, tds565.h, riscos1.h): New rules.
3262         * lib/cp853.h: New file.
3263         * lib/tds565.h: New file.
3264         * lib/riscos1.h: New file.
3265         * lib/converters.h: Include them.
3266         * lib/encodings_dos.def (CP853): New encoding.
3267         * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
3268         * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
3269         * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
3270         RISCOS-LATIN1.
3271         * tests/Makefile.msvc (check): Check CP853.
3272         * tests/CP853.TXT: New file.
3273         * tests/TDS565.TXT: New file.
3274         * tests/RISCOS-LATIN1.TXT: New file.
3276         * lib/cp860.h (cp860_wctomb): Optimize.
3278 2002-05-12  Bruno Haible  <bruno@clisp.org>
3280         * tools/Makefile (ksc5601.h): Add two extra characters.
3281         * lib/ksc5601.h: Regenerated.
3282         * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
3283         * tests/CP949.TXT: Likewise.
3284         * tests/JOHAB.TXT: Likewise.
3286 2002-05-12  Bruno Haible  <bruno@clisp.org>
3288         * README: Mention extra encodings.
3289         * man/iconv_open.3: Likewise. Improve formatting in text and html
3290         output formats.
3292 2002-05-12  Bruno Haible  <bruno@clisp.org>
3294         * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
3296 2002-05-12  Bruno Haible  <bruno@clisp.org>
3298         * Makefile.devel (AUTOCONF): New variable.
3299         (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
3300         (configure): Use the AUTOCONF variable.
3301         * autoconf/autoconf: Remove file.
3302         * autoconf/autoconf.m4: Remove file.
3303         * autoconf/autoconf.m4f: Remove file.
3305 2002-05-12  Bruno Haible  <bruno@clisp.org>
3307         * tools/JISX0213.TXT: New file.
3308         * tools/cjk_tab_to_h.c (do_jisx0213): New function.
3309         (main): Accept "jisx0213".
3310         * tools/Makefile (all): Add jisx0213.h.
3311         (jisx0213.h): New rule.
3312         * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
3313         * lib/euc_jisx0213.h: New file.
3314         * lib/shift_jisx0213.h: New file.
3315         * lib/iso2022_jp3.h: New file.
3316         * lib/converters.h: Include them.
3317         * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
3318         ISO-2022-JP-3): New encodings.
3319         * tests/EUC-JISX0213.TXT: New file.
3320         * tests/SHIFT_JISX0213.TXT: New file.
3321         * tests/ISO-2022-JP-3-snippet: New file.
3322         * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
3323         * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
3324         SHIFT_JISX0213, ISO-2022-JP-3.
3325         * tests/check-stateless: Add support for encodings which contain
3326         precomposed Unicode characters, by eliminating precomposed characters
3327         before the comparison.
3328         * tests/table-from.c (main): Fix usage message.
3329         * tests/table-to.c (main): Make it work for encodings for which the
3330         "to" direction is stateful.
3332 2002-05-09  Bruno Haible  <bruno@clisp.org>
3334         New configure option --enable-extra-encodings.
3335         * lib/encodings_extra.def: New file.
3336         * lib/converters.h: Handle USE_EXTRA.
3337         * lib/genaliases2.c (main): Handle USE_EXTRA.
3338         * lib/genflags.c: Define USE_EXTRA.
3339         (main): Include encodings_extra.def.
3340         * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
3341         Handle USE_EXTRA.
3342         * lib/config.h.in (ENABLE_EXTRA): New macro.
3343         * configure.in: Accept option --enable-extra-encodings.
3344         * Makefile.devel (all): Depend on lib/aliases_extra.h.
3345         (lib/aliases_extra.h): New rule.
3346         (lib/flags.h): Depend on lib/encodings_extra.def.
3347         * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
3348         New rules.
3349         (check): Invoke check-extra.
3350         * tests/Makefile.msvc (check): Also check the DOS encodings.
3352         Support for testing the AIX encodings.
3353         * tests/CP856.TXT: New file.
3354         * tests/CP922.TXT: New file.
3355         * tests/CP1046.TXT: New file.
3356         * tests/CP1124.TXT: New file.
3357         * tests/CP1129.TXT: New file.
3358         * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
3359         * tests/CP1162.TXT: New file.
3360         * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
3362         Support for testing the OSF/1 encodings.
3363         * tests/DEC-KANJI.TXT: New file.
3364         * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
3366         Support for testing the DOS encodings.
3367         * tests/CP437.TXT: New file.
3368         * tests/CP737.TXT: New file.
3369         * tests/CP775.TXT: New file.
3370         * tests/CP852.TXT: New file.
3371         * tests/CP855.TXT: New file.
3372         * tests/CP857.TXT: New file.
3373         * tests/CP858.TXT: New file.
3374         * tests/CP860.TXT: New file.
3375         * tests/CP861.TXT: New file.
3376         * tests/CP863.TXT: New file.
3377         * tests/CP864.TXT: New file.
3378         * tests/CP865.TXT: New file.
3379         * tests/CP869.TXT: New file.
3380         * tests/CP1125.TXT: New file.
3382 2002-05-09  Bruno Haible  <bruno@clisp.org>
3384         Implement more ASCII compatible DOS encodings.
3385         * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
3386         (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
3387         * lib/cp737.h: New file.
3388         * lib/cp858.h: New file.
3389         * lib/cp860.h: New file.
3390         * lib/cp863.h: New file.
3391         * lib/converters.h: Include them.
3392         * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
3394 2002-05-09  Bruno Haible  <bruno@clisp.org>
3396         Implement new ASCII compatible encodings from IBM.
3397         * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
3398         (cp1161.h, cp1162.h, cp1163.h): New rules.
3399         * lib/cp1161.h: New file.
3400         * lib/cp1162.h: New file.
3401         * lib/cp1163.h: New file.
3402         * lib/converters.h: Include them.
3403         * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
3405 2002-05-09  Bruno Haible  <bruno@clisp.org>
3407         Implement and document KOI8-T.
3408         * tools/Makefile (ALL): Add koi8_t.h.
3409         (koi8_t.h): New rule.
3410         * lib/koi8_t.h: New file.
3411         * lib/converters.h: Include it.
3412         * lib/encodings.def (KOI8-T): New encoding.
3413         * README, man/iconv_open.3: Add KOI8-T.
3414         * tests/Makefile.in (tests): Check KOI8-T.
3415         * tests/Makefile.os2 (tests): Likewise.
3416         * tests/Makefile.msvc (tests): Likewise.
3417         * tests/KOI8-T.TXT: New file.
3419 2002-05-09  Bruno Haible  <bruno@clisp.org>
3421         * tools/8bit_tab_to_h.c (main): Update copyright year.
3422         * tools/cjk_variants.c (main): Likewise.
3424 2002-05-08  Bruno Haible  <bruno@clisp.org>
3426         * README.woe32: Renamed from README.win32.
3428 2002-05-08  Bruno Haible  <bruno@clisp.org>
3430         * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
3431         because the Woe32 consoles use them.
3433 2002-05-04  Bruno Haible  <bruno@clisp.org>
3435         * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
3436         without writing an output character, restore cd->istate to its value
3437         before the xxx_mbtowc call. Otherwise we lose some characters during
3438         CP1255/CP1258/TCVN to Unicode conversion.
3439         (unicode_loop_reset): Likewise for the xxx_flushwc call.
3440         * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
3441         files large enough to test against the bug.
3442         * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
3443         * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
3445 2002-04-28  Bruno Haible  <bruno@clisp.org>
3447         * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
3448         * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
3449         * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
3450         * lib/armscii_8.h: Regenerated.
3452 2002-04-28  Bruno Haible  <bruno@clisp.org>
3454         * src/iconv.c: Include gettext.h.
3455         (_): New macro.
3456         (usage, print_version, convert, main): Internationalize.
3457         (main): Call setlocale, bindtextdomain, textdomain.
3458         * src/gettext.h: New file, from GNU gettext 0.11.2.
3459         * src/config.h.in: New file, needed for ENABLE_NLS.
3460         * src/Makefile.in (datadir, localedir): New variables.
3461         (iconv): Link with @LTLIBINTL@.
3462         (iconv.@OBJEXT@): Define LOCALEDIR.
3463         (distclean): Remove config.h.
3464         * po: New directory.
3465         * Makefile.in (all, install, installdirs, uninstall, check,
3466         mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
3467         directory.
3468         * autoconf/mkinstalldirs: New file, from automake-1.5.
3469         * ABOUT-NLS: New file, from GNU gettext 0.11.2.
3470         * m4/codeset.m4: New file, from GNU gettext 0.11.2.
3471         * m4/gettext.m4: New file, from GNU gettext 0.11.2.
3472         * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
3473         * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
3474         * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
3475         * m4/progtest.m4: New file, from GNU gettext 0.11.2.
3476         * configure.in: Require autoconf-2.52, needed for multiple config.h.in
3477         files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
3478         (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
3479         * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
3481 2002-04-28  gettextize  <bug-gnu-gettext@gnu.org>
3483         * configure.in (AC_OUTPUT): Add po/Makefile.in.
3485 2002-04-28  Bruno Haible  <bruno@clisp.org>
3487         * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
3488         * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
3489         * m4/general.m4: New file, from GNU clisp.
3490         * m4/proto.m4: New file, from GNU clisp.
3491         * m4/ranlib.m4: New file, from GNU clisp.
3492         * m4/install.m4: New file, from GNU clisp.
3493         * m4/cp.m4: New file, from GNU clisp.
3494         * m4/ln.m4: New file, from GNU clisp.
3495         * m4/endian.m4: New file, from GNU clisp.
3496         * m4/iconv.m4: New file, from GNU gettext 0.11.2.
3497         * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
3498         * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
3499         * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
3500         * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
3501         * m4/libtool.m4: New file, based on libtool-1.4.2.
3502         * Makefile.devel (ACLOCAL): Remove variable.
3503         (ACSELECT): Remove variable.
3504         (OTHERMACROS): Remove variable.
3505         (m4/*.m4): New rules.
3506         (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
3507         * configure.in: Invoke AM_ICONV instead of CL_ICONV.
3509 2002-04-06  Bruno Haible  <bruno@clisp.org>
3511         Upgrade to Unicode 3.2.
3512         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
3513         (compact_large_charset2uni): Add an argument. Determine optimal shift.
3514         Copy modified enc->charset2uni table.
3515         (output_charset2uni): Deal with shift other than 8. Copy encoding, so
3516         as to not disturb subsequent output_uni2charset[_sparse] call.
3517         * lib/hkscs.h: Regenerated.
3518         * tests/BIG5-HKSCS.TXT: Update.
3519         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
3521 2002-04-06  Bruno Haible  <bruno@clisp.org>
3523         Upgrade to Unicode 3.2.
3524         * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
3525         cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3526         cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
3527         CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
3528         * lib/cns11643_3.h: Regenerated.
3529         * lib/cns11643_4a.h: Regenerated.
3530         * lib/cns11643_4b.h: Regenerated.
3531         * lib/cns11643_5.h: Regenerated.
3532         * lib/cns11643_6.h: Regenerated.
3533         * lib/cns11643_7.h: Regenerated.
3534         * lib/cns11643_15.h: Regenerated.
3535         * lib/cns11643_inv.h: Regenerated.
3536         * tests/EUC-TW.TXT: Update.
3538 2002-01-17  Bruno Haible  <bruno@clisp.org>
3540         * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
3541         (tcvn_mbtowc): Small optimization.
3543 2002-01-13  Bruno Haible  <bruno@clisp.org>
3545         New options -l, -c, -s.
3546         * src/iconv.c (discard_unconvertible, silent): New variables.
3547         (usage): Document options -l, -c, -s.
3548         (print_one): New function.
3549         (convert): If silent is true, don't print error messages about the
3550         conversion to stderr. If discard_unconvertible is true, set the
3551         iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
3552         return the same return code as when discard_unconvertible is false.
3553         (main): Accept options -l, -c, -s. Implement option -l.
3554         * man/iconv.1: Document options -l, -c, -s.
3556 2002-01-13  Bruno Haible  <bruno@clisp.org>
3558         Support for "iconv -c".
3559         * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
3560         (ICONV_SET_DISCARD_ILSEQ): Likewise.
3561         * lib/converters.h (struct conv_struct): New field discard_ilseq.
3562         * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
3563         has an "//IGNORE" suffix, and to false otherwise.
3564         (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
3565         * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
3566         true, skip one input character instead of returning EILSEQ.
3567         (unicode_loop_reset): Likewise.
3568         * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
3569         (wchar_to_loop_convert): Likewise.
3571 2002-01-13  Bruno Haible  <bruno@clisp.org>
3573         Support for "iconv -l".
3574         * include/iconv.h.in (iconvlist): New declaration.
3575         * Makefile.devel (lib/aliases.h): Change gperf options.
3576         * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
3577         functions.
3579 2002-01-06  Bruno Haible  <bruno@clisp.org>
3581         * lib/loop_unicode.h (unicode_transliterate): If the transliteration
3582         fails due to limited output encoding, return RET_ILUNI, not
3583         RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3584         * tests/check-translitfailure: New file.
3585         * tests/TranslitFail1.ISO-8859-1: New file.
3586         * tests/Makefile.in (check): Call check-translitfailure.
3588 2001-12-15  Bruno Haible  <bruno@clisp.org>
3590         * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
3591         Shift_JIS characters 0x5C and 0x7E.
3592         * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
3594 2001-12-05  Bruno Haible  <bruno@clisp.org>
3596         * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
3597           endless loop if locale_charset() returns the empty string.
3598         * README, man/iconv_open.3: Add the empty encoding name.
3600 2001-11-10  Bruno Haible  <haible@clisp.cons.org>
3602         * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
3603           non-gcc compiler.
3605 2001-10-23  Bruno Haible  <haible@clisp.cons.org>
3607         * tools/Makefile (cp1125.h): New target.
3608           (ALL): Add it.
3609         * lib/cp1125.h: New file.
3610         * lib/converters.h: Include it.
3611         * lib/encodings_dos.def (CP1125): New encoding.
3613 2001-09-08  Bruno Haible  <haible@clisp.cons.org>
3615         * autoconf/eilseq.m4: New file.
3616         * Makefile.devel (OTHERMACROS): Add it.
3617         * configure.in: Call AC_EILSEQ.
3618         * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
3620 2001-08-25  Bruno Haible  <haible@clisp.cons.org>
3622         Upgrade to autoconf-2.52.
3623         * autoconf/autoconf: Upgrade to autoconf-2.52.
3624         * autoconf/acgeneral.m4: Remove file.
3625         * autoconf/acspecific.m4: Remove file.
3626         * autoconf/autoconf.m4f: New file, from autoconf-2.52.
3627         * autoconf/aclocal.m4: Require autoconf-2.52.
3628         (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
3629         AC_CANONICAL_HOST does it itself. Add $SHELL in front of
3630         $ac_config_guess and $ac_config_sub.
3631         * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
3632         Add autoconf.m4f.
3633         (configure): Use autoconf options -A, -l instead of -m.
3634         * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
3636 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3638         * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
3639         (AC_LANG_EXTERN): Move to aclocal.m4.
3640         * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
3641         (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
3642         (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
3644 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3646         Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
3647         * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
3648         'try' to 'incount'.
3649         * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
3650         between sources and libs.
3651         (libiconv_plug_solaris.so) [GCC]: Likewise.
3652         (libiconv_plug_osf.so) [GCC]: Likewise.
3653         * src/Makefile.in (iconv.@OBJEXT@): New rule.
3654         (iconv): Depend on it.
3655         (clean): Erase *.@OBJEXT@, not *.o.
3656         * tests/Makefile.in (table-from.@OBJEXT@): New rule.
3657         (table-from): Depend on it.
3658         (table-to.@OBJEXT@): New rule.
3659         (table-to): Depend on it.
3660         (clean): Erase *.@OBJEXT@, not *.o.
3662 2001-07-28  Bruno Haible  <haible@clisp.cons.org>
3664         * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
3665         * lib/iso8859_16.h: Regenerated.
3666         * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
3668 2001-07-17  Bruno Haible  <haible@clisp.cons.org>
3670         * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
3672 2001-07-03  Bruno Haible  <haible@clisp.cons.org>
3674         * configure.in: Also check for mbsinit.
3675         * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
3676         Needed for SCO 3.2v5.0.2.
3678 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3680         * Version 1.7 released.
3682 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3684         * INSTALL.generic (Particular Systems): Generalize section about
3685         /usr/local to "most systems".
3687         * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
3688         Solaris cc destroys iconv.o and iconv.lo while building
3689         libiconv_plug_solaris.so.
3690         (clean): Remove so_locations, left there by the OSF/1 linker.
3692         * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
3694         * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
3695         'unsigned short'.
3697         * tests/table-from.c: Include string.h.
3698         * tests/table-to.c: Likewise.
3700 2001-06-26  Bruno Haible  <haible@clisp.cons.org>
3702         * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
3703         (jisx0212.h): Replace U+007E with U+FF5E.
3704         * lib/jisx0208.h: Regenerated.
3705         * lib/jisx0212.h: Regenerated.
3706         * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
3707         * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
3708         * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
3709         * tests/CP932.TXT: Likewise.
3710         * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
3712 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3714         * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
3715         $(CPPFLAGS).
3716         * src/Makefile.msvc (iconv.exe): Likewise.
3717         * src/Makefile.os2 (iconv.exe): Likewise.
3718         * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
3719         (libiconv_plug_solaris.so): Likewise.
3720         (libiconv_plug_osf.so): Likewise.
3721         (iconv.lo): Likewise.
3722         * lib/Makefile.msvc (iconv.obj): Likewise.
3723         * lib/Makefile.os2 (iconv.obj): Likewise.
3724         * tests/Makefile.in (table-from, table-to): Likewise.
3725         * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
3726         * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
3727         (genutf8.exe): Don't use $(INCLUDES).
3729 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3731         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3732           Bump version number.
3733         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
3735 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3737         * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
3739 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3741         * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
3743 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3745         * autoconf/ltmain.sh: Upgrade to libtool-1.4.
3746         * autoconf/ltconfig: Remove file.
3748 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3750         * autoconf/config.guess: Update to GNU version 2001-05-11.
3751         * autoconf/config.sub: Likewise.
3753 2001-06-03  Bruno Haible  <haible@clisp.cons.org>
3755         * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
3756           characters if they cannot be converted.
3757           (unicode_loop_reset): Likewise.
3758         * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
3759            STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
3760            STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
3761           New macros.
3762           (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
3763           direction.
3764           (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
3765           If "ja", prefer conversion to Japanese character sets. If "zh",
3766           prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
3768         * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
3769           (RET_TOOSMALL): Change value from -1 to -2.
3770         * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
3771           return 0 written bytes.
3773 2001-06-06  Bruno Haible  <haible@clisp.cons.org>
3775         * lib/encodings.def: Align with IANA character-set registry.
3776           (US-ASCII): Add alias "ANSI_X3.4-1986".
3777           (ISO-8859-14): Add alias "ISO-CELTIC".
3778           (JIS_X0208): Add alias "JIS_C6226-1983".
3779           (BIG5HKSCS): Add alias "BIG5-HKSCS".
3780         * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
3781         * tests/Makefile.in (check): Likewise.
3782         * tests/Makefile.os2 (check): Likewise.
3783         * tests/Makefile.msvc (check): Likewise.
3784         * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
3785         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
3786           BIG5HKSCS.IRREVERSIBLE.TXT.
3788 2001-06-02  Bruno Haible  <haible@clisp.cons.org>
3790         * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
3791           (is_charset2uni_large, compact_large_charset2uni): New functions.
3792           (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
3793           (output_charset2uni): If mapping to more than the Unicode BMP,
3794           use an extra indirection to keep each value in 16 bits.
3795           (invert): Bump limit from U+10000 to U+30000.
3796           (output_uni2charset_dense): Likewise.
3797           (output_uni2charset_sparse): Likewise. If mapping to more than one
3798           CJK plane, use three bytes per value instead of two bytes.
3799           (byte_row_cns11643): Allow more than 3 CJK planes.
3800           (do_cns11643_only_uni2charset): Increase number of rows, to include
3801           plane 15. Remove plane bits hack.
3802           (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
3803         * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
3804           cns11643_6.h, cns11643_7.h, cns11643_15.h.
3805           (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
3806           derived table.
3807           (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3808            cns11643_7.h, cns11643_15.h): New rules.
3809           (cns11643_inv.h): Change title.
3810         * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
3811         * lib/cns11643_3.h: Likewise.
3812         * lib/cns11643_4a.h: New file.
3813         * lib/cns11643_4b.h: New file.
3814         * lib/cns11643_4.h: New file.
3815         * lib/cns11643_5.h: New file.
3816         * lib/cns11643_6.h: New file.
3817         * lib/cns11643_7.h: New file.
3818         * lib/cns11643_15.h: New file.
3819         * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
3820           (cns11643_inv_wctomb): Return 3 bytes now.
3821         * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
3822           cns11643_7.h, cns11643_15.h.
3823           (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
3824           plane number starting at 1, not 0.
3825         * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
3826           change.
3827         * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
3828           well.
3829           (euc_tw_wctomb): Update for cns11643_wctomb change.
3830         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3831         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
3832           4,5,6,7 as well.
3833           (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
3834           Try CNS11643 planes 4,5,6,7 as well.
3835         * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
3836         * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
3837           Add U+5344.
3839 2001-06-01  Bruno Haible  <haible@clisp.cons.org>
3841         * tests/table-from.c (bmp_only): New variable.
3842           (ucs4_decode): If bmp_only, don't return characters outside Unicode
3843           plane 0.
3844           (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
3845           a conversion line if ucs4_decode returns NULL.
3846         * tests/table-to.c (main): When testing encodings other than UTF-8 and
3847           GB18030, loop upto U+30000 instead of U+10000.
3849 2001-05-24  Bruno Haible  <haible@clisp.cons.org>
3851         * lib/converters.h (mbtowc_funcs): Add flushwc member function.
3852         * lib/flushwc.h: New file.
3853         * lib/cp1255.h: Include flushwc.h.
3854           (cp1255_comp_table_data, cp1255_comp_table): New arrays.
3855           (cp1255_mbtowc): Compose base and combining characters.
3856           (cp1255_flushwc): New macro.
3857         * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
3858         * lib/cp1258.h: Include flushwc.h.
3859           (cp1258_mbtowc): Compose base and combining characters.
3860           (cp1258_flushwc): New macro.
3861         * lib/tcvn.h: Include flushwc.h.
3862           (tcvn_mbtowc): Compose base and combining characters.
3863           (tcvn_flushwc): New macro.
3864         * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
3865           from unicode_loop_convert.
3866           (unicode_loop_convert): Use unicode_transliterate.
3867           (unicode_loop_reset): Call xxx_flushwc and output the resulting
3868           character.
3869         * lib/encodings.def: Add xxx_flushwc member.
3870         * lib/encodings_aix.def: Likewise.
3871         * lib/encodings_dos.def: Likewise.
3872         * lib/encodings_local.def: Likewise.
3873         * lib/encodings_osf1.def: Likewise.
3874         * lib/genaliases.c: Add an argument to the DEFENCODING macro.
3875         * lib/genaliases2.c: Likewise.
3876         * lib/genflags.c: Likewise.
3877         * lib/iconv.c: Likewise.
3878         * tests/table-from.c (try): Reset the iconv descriptor before the main
3879           call, and flush it afterwards.
3880           (ucs4_decode): New function.
3881           (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
3882         * tests/CP1255-snippet: New file.
3883         * tests/CP1255-snippet.UTF-8: New file.
3884         * tests/CP1258-snippet: New file.
3885         * tests/CP1258-snippet.UTF-8: New file.
3886         * tests/TCVN-snippet: New file.
3887         * tests/TCVN-snippet.UTF-8: New file.
3888         * tests/Makefile.in (check): Check combining behaviour of CP1255,
3889           CP1258, TCVN.
3890         * tests/Makefile.msvc (check): Likewise.
3891         * tests/Makefile.os2 (check): Likewise.
3893 2001-05-22  Bruno Haible  <haible@clisp.cons.org>
3895         * lib/converters.h (RET_ILUNI): New macro.
3896           (RET_ILSEQ): Change value to -1.
3897           (RET_TOOFEW): Change value.
3898         * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
3899           of 0. Update handling of xxx_mbtowc return value.
3900         * lib/genflags.c (emit_encoding): Likewise.
3901         * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
3902         * lib/armscii_8.h (armscii_8_wctomb): Likewise.
3903         * lib/big5.h (big5_wctomb): Likewise.
3904         * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
3905         * lib/ces_big5.h (ces_big5_wctomb): Likewise.
3906         * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
3907         * lib/cns11643.h (cns11643_wctomb): Likewise.
3908         * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
3909         * lib/cp437.h (cp437_wctomb): Likewise.
3910         * lib/cp775.h (cp775_wctomb): Likewise.
3911         * lib/cp850.h (cp850_wctomb): Likewise.
3912         * lib/cp852.h (cp852_wctomb): Likewise.
3913         * lib/cp855.h (cp855_wctomb): Likewise.
3914         * lib/cp856.h (cp856_wctomb): Likewise.
3915         * lib/cp857.h (cp857_wctomb): Likewise.
3916         * lib/cp861.h (cp861_wctomb): Likewise.
3917         * lib/cp862.h (cp862_wctomb): Likewise.
3918         * lib/cp864.h (cp864_wctomb): Likewise.
3919         * lib/cp865.h (cp865_wctomb): Likewise.
3920         * lib/cp866.h (cp866_wctomb): Likewise.
3921         * lib/cp869.h (cp869_wctomb): Likewise.
3922         * lib/cp874.h (cp874_wctomb): Likewise.
3923         * lib/cp922.h (cp922_wctomb): Likewise.
3924         * lib/cp932ext.h (cp932ext_wctomb): Likewise.
3925         * lib/cp932.h (cp932_wctomb): Likewise.
3926         * lib/cp936ext.h (cp936ext_wctomb): Likewise.
3927         * lib/cp949.h (cp949_wctomb): Likewise.
3928         * lib/cp950ext.h (cp950ext_wctomb): Likewise.
3929         * lib/cp950.h (cp950_wctomb): Likewise.
3930         * lib/cp1046.h (cp1046_wctomb): Likewise.
3931         * lib/cp1124.h (cp1124_wctomb): Likewise.
3932         * lib/cp1129.h (cp1129_wctomb): Likewise.
3933         * lib/cp1133.h (cp1133_wctomb): Likewise.
3934         * lib/cp1250.h (cp1250_wctomb): Likewise.
3935         * lib/cp1251.h (cp1251_wctomb): Likewise.
3936         * lib/cp1252.h (cp1252_wctomb): Likewise.
3937         * lib/cp1253.h (cp1253_wctomb): Likewise.
3938         * lib/cp1254.h (cp1254_wctomb): Likewise.
3939         * lib/cp1255.h (cp1255_wctomb): Likewise.
3940         * lib/cp1256.h (cp1256_wctomb): Likewise.
3941         * lib/cp1257.h (cp1257_wctomb): Likewise.
3942         * lib/cp1258.h (cp1258_wctomb): Likewise.
3943         * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
3944         * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
3945         * lib/euc_cn.h (euc_cn_wctomb): Likewise.
3946         * lib/euc_jp.h (euc_jp_wctomb): Likewise.
3947         * lib/euc_kr.h (euc_kr_wctomb): Likewise.
3948         * lib/euc_tw.h (euc_tw_wctomb): Likewise.
3949         * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
3950         * lib/gb12345.h (gb12345_wctomb): Likewise.
3951         * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
3952         * lib/gb18030.h (gb18030_wctomb): Likewise.
3953         * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
3954         * lib/gb2312.h (gb2312_wctomb): Likewise.
3955         * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
3956         * lib/gbk.h (gbk_wctomb): Likewise.
3957         * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
3958         * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
3959         * lib/hkscs.h (hkscs_wctomb): Likewise.
3960         * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
3961         * lib/hz.h (hz_wctomb): Likewise.
3962         * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
3963         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3964         * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
3965         * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
3966         * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
3967         * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
3968         * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
3969         * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
3970         * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
3971         * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
3972         * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
3973         * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
3974         * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
3975         * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
3976         * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
3977         * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
3978         * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
3979         * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
3980         * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
3981         * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
3982         * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
3983         * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
3984         * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
3985         * lib/isoir165.h (isoir165_wctomb): Likewise.
3986         * lib/jisx0201.h (jisx0201_wctomb): Likewise.
3987         * lib/jisx0208.h (jisx0208_wctomb): Likewise.
3988         * lib/jisx0212.h (jisx0212_wctomb): Likewise.
3989         * lib/johab.h (johab_wctomb): Likewise.
3990         * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
3991           Likewise.
3992         * lib/koi8_r.h (koi8_r_wctomb): Likewise.
3993         * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
3994         * lib/koi8_u.h (koi8_u_wctomb): Likewise.
3995         * lib/ksc5601.h (ksc5601_wctomb): Likewise.
3996         * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
3997         * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
3998         * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
3999         * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
4000         * lib/mac_greek.h (mac_greek_wctomb): Likewise.
4001         * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
4002         * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
4003         * lib/mac_roman.h (mac_roman_wctomb): Likewise.
4004         * lib/mac_romania.h (mac_romania_wctomb): Likewise.
4005         * lib/mac_thai.h (mac_thai_wctomb): Likewise.
4006         * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
4007         * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
4008         * lib/mulelao.h (mulelao_wctomb): Likewise.
4009         * lib/nextstep.h (nextstep_wctomb): Likewise.
4010         * lib/sjis.h (sjis_wctomb): Likewise.
4011         * lib/tcvn.h (tcvn_wctomb): Likewise.
4012         * lib/tis620.h (tis620_wctomb): Likewise.
4013         * lib/ucs2be.h (ucs2be_wctomb): Likewise.
4014         * lib/ucs2.h (ucs2_wctomb): Likewise.
4015         * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
4016         * lib/ucs2le.h (ucs2le_wctomb): Likewise.
4017         * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
4018         * lib/ucs4.h (ucs4_wctomb): Likewise.
4019         * lib/uhc_1.h (uhc_1_wctomb): Likewise.
4020         * lib/uhc_2.h (uhc_2_wctomb): Likewise.
4021         * lib/utf16be.h (utf16be_wctomb): Likewise.
4022         * lib/utf16.h (utf16_wctomb): Likewise.
4023         * lib/utf16le.h (utf16le_wctomb): Likewise.
4024         * lib/utf32be.h (utf32be_wctomb): Likewise.
4025         * lib/utf32.h (utf32_wctomb): Likewise.
4026         * lib/utf32le.h (utf32le_wctomb): Likewise.
4027         * lib/utf7.h (utf7_wctomb): Likewise.
4028         * lib/utf8.h (utf8_wctomb): Likewise.
4029         * lib/viscii.h (viscii_wctomb): Likewise.
4030         * tools/8bit_tab_to_h.c (main): Likewise.
4031         * tools/cjk_tab_to_h.c (output_uni2charset_dense,
4032            output_uni2charset_sparse, do_gb18030uni): Likewise.
4034 2001-05-19  Bruno Haible  <haible@clisp.cons.org>
4036         * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
4037           (man/%.html): New rule.
4038         * man/Makefile.in (docdir, htmldir): New variables.
4039           (install, installdirs): Install the HTML formatted man pages in
4040           $(htmldir).
4041           (uninstall): Uninstall them.
4043 2001-05-20  Bruno Haible  <haible@clisp.cons.org>
4045         * lib/cp1255.h (cp1255_decomp_table): New array.
4046           (cp1255_comb_table): New array.
4047           (cp1255_wctomb): Decompose Unicode characters.
4048         * tests/CP1255.IRREVERSIBLE.TXT: New file.
4050 2001-05-13  Bruno Haible  <haible@clisp.cons.org>
4052         * lib/vietcomb.h: New file.
4053         * lib/cp1258.h: Include it.
4054           (cp1258_comb_table): New array.
4055           (cp1258_wctomb): Decompose Unicode characters.
4056         * lib/tcvn.h: Include it.
4057           (tcvn_comb_table): New array.
4058           (tcvn_wctomb): Decompose Unicode characters.
4059         * tests/CP1258.IRREVERSIBLE.TXT: New file.
4060         * tests/TCVN.IRREVERSIBLE.TXT: New file.
4062 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4064         * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
4065         (iconv.lib): Likewise.
4067 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4069         * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4070         (CPP): Remove variable.
4071         (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
4072          libiconv_plug_osf.so): Use LDFLAGS.
4073         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4074          libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
4075         * lib/Makefile.msvc (CPP): Remove variable.
4076         * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4077         (CPP): Remove variable.
4078         (iconv): Use CPPFLAGS and LDFLAGS.
4079         * src/Makefile.msvc (CPP): Remove variable.
4080         * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4081         (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
4082         * tests/Makefile.msvc (CPP): Remove variable.
4084 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4086         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
4087           gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
4089 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4091         Implement and document UTF-32, UTF-32BE, UTF-32LE.
4092         * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
4093         * src/converters.h: Include them.
4094         * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
4095         * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
4096         * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
4097         * tests/Makefile.os2 (check): Likewise.
4098         * tests/Makefile.msvc (check): Likewise.
4099         * tests/UTF-32*snippet*: New files.
4101         * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
4102           (ucs4_wctomb): Allow any 31-bit codepoint.
4104 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4106         * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
4107           unassigned code points.
4108         * tests/table-from.c (main); When dumping GB18030, don't print code
4109           points larger than U+FFFF.
4111 2001-03-30  Bruno Haible  <haible@clisp.cons.org>
4113         * tools/Makefile (GB18030uni.TXT): Use a table source which includes
4114           the unassigned Unicode code points.
4115         * lib/gb18030uni.h: Update.
4116           (gb18030uni_ranges): Remove bitmap_offset field.
4117           (gb18030uni_bitmap): Remove array.
4118           (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
4119           (gb18030uni_wctomb): Likewise.
4120         * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
4121           (gb18030_wctomb): Likewise.
4123 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4125         * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
4127 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4129         * src/iconv.c (print_version): Now called GNU libiconv.
4131 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
4133         * README: This package is now called GNU libiconv.
4135         * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
4136           file.
4137         * tools/cjk_tab_to_h.c (output_title): Likewise.
4138         * tools/cjk_variants.c (main): Likewise.
4139         * lib/gentranslit.c (main): Likewise.
4141 2001-03-19  Bruno Haible  <haible@clisp.cons.org>
4143         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
4144           ac_config_guess and ac_config_sub. Then ignore requests for
4145           AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
4147 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4149         * INSTALL.generic: New section "Particular Systems".
4151 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4153         * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
4154           platforms like BeOS.
4156         * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
4157           config.h.
4159 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
4161         * Version 1.6 released.
4162         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4163           Bump version number.
4164         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
4166 2001-03-05  Bruno Haible  <haible@clisp.cons.org>
4168         Provide all encodings used by OSF/1 5.1 locales.
4169         * lib/dec_kanji.h: New file.
4170         * lib/dec_hanyu.h: New file.
4171         * lib/converters.h: Include them if USE_OSF1 is defined.
4172         * lib/encodings_osf1.def: New file.
4173         * lib/genflags.c (main): Include it. Define USE_OSF1.
4174         * lib/genaliases2.c (main): Include it conditionally.
4175         * lib/iconv.c: Define USE_OSF1 on OSF/1.
4176           Include encodings_osf1.def and aliases_osf1.h.
4177         * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
4178           aliases_osf1.h.
4179         * Makefile.devel (lib/aliases_osf1.h): New target.
4180           (all): Depend on lib/aliases_osf1.h.
4181           (lib/flags.h): Depend on lib/encodings_osf1.def.
4183 2001-03-01  Bruno Haible  <haible@clisp.cons.org>
4185         * tools/Makefile (cp775.h): New target.
4186           (ALL): Add it.
4187         * lib/cp775.h: New file.
4188         * lib/converters.h: Include it.
4189         * lib/encodings_dos.def (CP775): New encoding.
4191 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4193         * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
4194           more.
4196 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4198         * src/iconv.c (convert): Use ICONV_CONST.
4199         * tests/table-from.c: Include config.h.
4200           (try): Use ICONV_CONST.
4201         * tests/table-to.c: Include config.h.
4202           (main): Use ICONV_CONST.
4203         * tests/Makefile.in (INCLUDES): Add -I../lib.
4204         * tests/Makefile.os2 (INCLUDES): Likewise.
4205         * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
4207 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4209         Provide all encodings used by DOS locales.
4210         * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
4211            cp864.h, cp865.h, cp869.h): New targets.
4212           (ALL): Add them.
4213         * lib/cp437.h: New file.
4214         * lib/cp852.h: New file.
4215         * lib/cp855.h: New file.
4216         * lib/cp857.h: New file.
4217         * lib/cp861.h: New file.
4218         * lib/cp864.h: New file.
4219         * lib/cp865.h: New file.
4220         * lib/cp869.h: New file.
4221         * lib/converters.h: Include them if USE_DOS is defined.
4222         * lib/encodings_dos.def: New file.
4223         * lib/genflags.c (main): Include it. Define USE_DOS.
4224         * lib/genaliases2.c (main): Include it conditionally.
4225         * lib/iconv.c: Define USE_DOS on DJGPP.
4226           Include encodings_dos.def and aliases_dos.h.
4227         * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
4228           aliases_dos.h.
4229         * Makefile.devel (lib/aliases_dos.h): New target.
4230           (all): Depend on lib/aliases_dos.h.
4231           (lib/flags.h): Depend on lib/encodings_dos.def.
4233 2001-02-23  Bruno Haible  <haible@clisp.cons.org>
4235         * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
4236           (SET_BINARY) [O_BINARY]: New macro.
4237           (usage): Mention --binary if available.
4238           (convert): Use SET_BINARY instead of setmode.
4239           (main): Likewise.
4240           Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
4242 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4244         * autoconf/ltconfig:
4245           sed -e 's/reload object files/produce relocatable object files/'.
4247 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4249         * src/iconv.c (usage, main): Make -f and -t options optional.
4250         * man/iconv.1: Mark them as optional.
4252 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4254         * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
4255           glibc-2.2.2 table.
4256         * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
4257           0xFE5E -> U+2E97. Shift the entire four-byte range.
4258         * tests/GB18030.TXT: Regenerated.
4260 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4262         Better support for DOS/Windows platforms.
4263         * autoconf/ltconfig: Upgrade to libtool-1.3.5.
4264         * autoconf/ltmain.sh: Likewise.
4265         * autoconf/aclocal.m4: Likewise.
4266         * autoconf/install-sh: New file.
4267         * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
4269 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4271         * Makefile.in (libdir, includedir, mandir): Use the autoconf
4272           determined value, in order to respect the configure arguments.
4273         * lib/Makefile.in (libdir): Likewise.
4274         * src/Makefile.in (bindir): Likewise.
4275         * man/Makefile.in (mandir): Likewise.
4277 2001-02-04  Bruno Haible  <haible@clisp.cons.org>
4279         * lib/translit.def: Add all the neutral transliterations from glibc.
4280         * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
4281           UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
4282           Avoid accessing data[-1].
4283         * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
4284           into translit_data.
4286 2001-01-05  Bruno Haible  <haible@clisp.cons.org>
4288         Implement and document CP862.
4289         * tools/Makefile (ALL): Add cp862.h.
4290           (cp862.h): New target.
4291         * lib/cp862.h: New file.
4292         * lib/converters.h: Include it.
4293         * lib/encodings.def (CP862): New encoding.
4294         * README, man/iconv_open.3: Add CP862.
4295         * tests/Makefile.in (check): Check CP862.
4296         * tests/Makefile.msvc (check): Likewise.
4297         * tests/Makefile.os2 (check): Likewise.
4298         * tests/CP862.TXT: New file.
4300 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
4302         * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
4303         * Makefile.devel (OTHERMACROS): Add it.
4304         * configure.in: Call AC_MBSTATE_T.
4305         * lib/config.h.in (mbstate_t): New definition.
4306         * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
4308 2000-12-12  Bruno Haible  <haible@clisp.cons.org>
4310         * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
4311           "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
4312           given. Reported by Toshimitsu Fujiwara.
4314 2000-12-08  Bruno Haible  <haible@clisp.cons.org>
4316         * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
4317         * lib/Makefile.in (exec_prefix): Likewise.
4318         * src/Makefile.in (exec_prefix): Likewise.
4319         * man/Makefile.in (exec_prefix): Likewise.
4321 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4323         * Version 1.5 released.
4324         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4325           Bump version number.
4326         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
4328 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4330         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
4331           Remove files installed in lib by libcharset.
4332         * Makefile.msvc (mostlyclean): Likewise.
4334         * Makefile.in (check): Depend on target 'all'.
4335         * Makefile.os2 (check): Likewise.
4336         * Makefile.msvc (check): Depend on target 'force' as well.
4338         * src/iconv.c (usage): Take an exitcode argument.
4339           (print_version): New function.
4340           (main): Recognize --help and --version command line options.
4342 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4344         * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
4345         * lib/Makefile.msvc: Likewise.
4346         * src/Makefile.msvc: Likewise.
4347         * tests/Makefile.msvc: Likewise.
4349 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4351         * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
4352           (force_binary): New variable.
4353           (convert): If requested, set the input O_BINARY.
4354           (main): Accept --binary option. If requested, set the output O_BINARY.
4355         * tests/check-stateful.bat: Pass --binary to iconv.
4356         * tests/check-stateful.cmd: Likewise.
4357         * tests/check-translit.bat: Likewise.
4358         * tests/check-translit.cmd: Likewise.
4360 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4362         * include/iconv.h.in (_libiconv_version): New declaration.
4363         * lib/iconv.c (_libiconv_version): New variable.
4365 2000-11-30  Bruno Haible  <haible@clisp.cons.org>
4367         * Makefile.msvc (all): File now named lib/libcharset.h.
4368           (clean, distclean, maintainer-clean): Likewise.
4370 2000-11-23  Bruno Haible  <haible@clisp.cons.org>
4372         * lib/*: Move here all files from src/*.
4373         * src/*: Move all files to lib.
4374         * lib/Makefile.in (distclean): No need to remove config.status,
4375           config.log, config.cache.
4376         * configure.in: Require lib/iconv.c, not src/iconv.c. Create
4377           lib/config.h, not src/config.h. Also create lib/Makefile.
4378         * Makefile.in (all): Install libcharset into lib, not src. Recurse
4379           into lib and src.
4380           (install-lib): Recurse into lib, not src.
4381           (install): Recurse into libcharset, lib and src.
4382           (installdirs, uninstall): Likewise.
4383           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4384         * Makefile.msvc (all): Recurse into lib and src.
4385           (install): Recurse into libcharset, lib and src.
4386           (installdirs, uninstall): Likewise.
4387           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4388         * Makefile.os2 (all): Recurse into lib and src.
4389           (install-lib): Recurse into lib, not src.
4390           (install, uninstall): Recurse into lib and src.
4391           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4392         * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
4393           (lib/aliases.h): Renamed from src/aliases.h.
4394           (lib/aliases.gperf): Renamed from src/aliases.gperf.
4395           (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
4396           (lib/flags.h): Renamed from src/flags.h.
4397           (lib/translit.h): Renamed from src/translit.h.
4398         * src/iconv.c: Moved here from tests/iconv.c.
4399         * src/Makefile.in: New file.
4400         * src/Makefile.msvc: New file.
4401         * src/Makefile.os2: New file.
4402         * tests/Makefile.in (iconv): Remove target.
4403           (../lib/libiconv.la): Renamed from ../src/libiconv.la.
4404           (clean): No need to remove iconv.
4405         * tests/Makefile.msvc (iconv.exe): Remove target.
4406         * tests/Makefile.os2 (iconv.exe): Likewise.
4407         * tests/check-stateful: iconv is in ../src.
4408         * tests/check-stateful.bat: Likewise.
4409         * tests/check-stateful.cmd: Likewise.
4410         * tests/check-translit: iconv is in ../src.
4411         * tests/check-translit.bat: Likewise.
4412         * tests/check-translit.cmd: Likewise.
4413         * man/iconv.1: New file.
4414         * man/Makefile.in (install, installdirs, uninstall): Also install *.1
4415           man pages.
4416         * man/Makefile.os2 (MAN3): Renamed from MAN.
4417           (MAN1): New variable.
4418           (install, uninstall): Also install *.1 man pages.
4420 2000-11-21  Bruno Haible  <haible@clisp.cons.org>
4422         * Makefile.msvc (all, check, mostlyclean, clean, distclean,
4423            maintainer-clean): Recurse into libcharset.
4424           (clean, distclean, maintainer-clean): Remove src\libcharset.h.
4425         * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
4426           (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
4428 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4430         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
4431           so that it agrees with Microsoft's definition of CP950.
4432         * tests/CP950.TXT: Likewise.
4433         * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
4435 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4437         Add support for locale dependent "char" and "wchar_t" encodings.
4438         * libcharset: New subdirectory.
4439         * src/loop_unicode.h: New file, extracted from src/iconv.c.
4440         * src/loop_wchar.h: New file.
4441         * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
4442         * src/encodings_local.def: New file.
4443         * src/genaliases.c: Also create aliases for encodings_local.def.
4444         * src/converters.h (conv_struct): Add lfuncs field.
4445         * src/genflags.c: Add dummy definitions of struct loop_funcs.
4446         * src/iconv.c: Include libcharset.h.
4447           (loop_funcs): New structure.
4448           Treat encodings_local.def like encodings.def.
4449           Include loops.h.
4450           (iconv_open): Move the bulk of the code to loop_unicode.h.
4451           (iconv): Likewise.
4452           (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
4453           descriptors.
4454         * src/Makefile.in (PLUG_SOURCES): Remove variable.
4455           (LIBCHARSET_OBJECTS): New variable.
4456           (libiconv.la): Link in the LIBCHARSET_OBJECTS.
4457           (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4458            libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
4459           LIBTOOL_LINK.
4460           (iconv.lo): Depend on encodings_local.def.
4461         * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
4462         * src/Makefile.os2 (iconv.obj): Likewise.
4463         * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
4464           Recurse into libcharset.
4465         * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
4466            HAVE_SETLOCALE): New macros.
4467         * tests/iconv.c: Include config.h and locale.h.
4468           (main): Call setlocale.
4469         * tests/Makefile.in (iconv): Search for config.h in ../src.
4470         * tests/Makefile.os2 (iconv.exe): Likewise.
4471         * tests/Makefile.msvc (iconv.exe): Likewise.
4472         * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
4473         * Makefile.in: After "cd", use "&&" not ";".
4474           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4475           Recurse into libcharset.
4476         * Makefile.devel (all): Recurse into libcharset.
4477           (src/aliases.gperf): Depend on src/encodings_local.def.
4479 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4481         * src/converters.h (ucs4_t): New type.
4482           (wchar_t): Remove locally defined override.
4483           (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
4484         * src/iconv.c (iconv): Likewise.
4485         * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
4486         * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
4487         * tools/cjk_tab_to_h.c: Likewise.
4488         * src/armscii_8.h: Use ucs4_t instead of wchar_t.
4489         * src/ascii.h: Likewise.
4490         * src/big5.h: Likewise.
4491         * src/big5hkscs.h: Likewise.
4492         * src/ces_big5.h: Likewise.
4493         * src/ces_gbk.h: Likewise.
4494         * src/cns11643.h: Likewise.
4495         * src/cns11643_1.h: Likewise.
4496         * src/cns11643_2.h: Likewise.
4497         * src/cns11643_3.h: Likewise.
4498         * src/cns11643_inv.h: Likewise.
4499         * src/cp1046.h: Likewise.
4500         * src/cp1124.h: Likewise.
4501         * src/cp1129.h: Likewise.
4502         * src/cp1133.h: Likewise.
4503         * src/cp1250.h: Likewise.
4504         * src/cp1251.h: Likewise.
4505         * src/cp1252.h: Likewise.
4506         * src/cp1253.h: Likewise.
4507         * src/cp1254.h: Likewise.
4508         * src/cp1255.h: Likewise.
4509         * src/cp1256.h: Likewise.
4510         * src/cp1257.h: Likewise.
4511         * src/cp1258.h: Likewise.
4512         * src/cp850.h: Likewise.
4513         * src/cp856.h: Likewise.
4514         * src/cp866.h: Likewise.
4515         * src/cp874.h: Likewise.
4516         * src/cp922.h: Likewise.
4517         * src/cp932.h: Likewise.
4518         * src/cp932ext.h: Likewise.
4519         * src/cp936ext.h: Likewise.
4520         * src/cp949.h: Likewise.
4521         * src/cp950.h: Likewise.
4522         * src/cp950ext.h: Likewise.
4523         * src/euc_cn.h: Likewise.
4524         * src/euc_jp.h: Likewise.
4525         * src/euc_kr.h: Likewise.
4526         * src/euc_tw.h: Likewise.
4527         * src/gb12345.h: Likewise.
4528         * src/gb12345ext.h: Likewise.
4529         * src/gb18030.h: Likewise.
4530         * src/gb18030ext.h: Likewise.
4531         * src/gb18030uni.h: Likewise.
4532         * src/gb2312.h: Likewise.
4533         * src/gbk.h: Likewise.
4534         * src/gbkext1.h: Likewise.
4535         * src/gbkext2.h: Likewise.
4536         * src/gbkext_inv.h: Likewise.
4537         * src/georgian_academy.h: Likewise.
4538         * src/georgian_ps.h: Likewise.
4539         * src/hkscs.h: Likewise.
4540         * src/hp_roman8.h: Likewise.
4541         * src/hz.h: Likewise.
4542         * src/iso2022_cn.h: Likewise.
4543         * src/iso2022_cnext.h: Likewise.
4544         * src/iso2022_jp.h: Likewise.
4545         * src/iso2022_jp1.h: Likewise.
4546         * src/iso2022_jp2.h: Likewise.
4547         * src/iso2022_kr.h: Likewise.
4548         * src/iso646_cn.h: Likewise.
4549         * src/iso646_jp.h: Likewise.
4550         * src/iso8859_1.h: Likewise.
4551         * src/iso8859_10.h: Likewise.
4552         * src/iso8859_13.h: Likewise.
4553         * src/iso8859_14.h: Likewise.
4554         * src/iso8859_15.h: Likewise.
4555         * src/iso8859_16.h: Likewise.
4556         * src/iso8859_2.h: Likewise.
4557         * src/iso8859_3.h: Likewise.
4558         * src/iso8859_4.h: Likewise.
4559         * src/iso8859_5.h: Likewise.
4560         * src/iso8859_6.h: Likewise.
4561         * src/iso8859_7.h: Likewise.
4562         * src/iso8859_8.h: Likewise.
4563         * src/iso8859_9.h: Likewise.
4564         * src/isoir165.h: Likewise.
4565         * src/isoir165ext.h: Likewise.
4566         * src/java.h: Likewise.
4567         * src/jisx0201.h: Likewise.
4568         * src/jisx0208.h: Likewise.
4569         * src/jisx0212.h: Likewise.
4570         * src/johab.h: Likewise.
4571         * src/johab_hangul.h: Likewise.
4572         * src/koi8_r.h: Likewise.
4573         * src/koi8_ru.h: Likewise.
4574         * src/koi8_u.h: Likewise.
4575         * src/ksc5601.h: Likewise.
4576         * src/mac_arabic.h: Likewise.
4577         * src/mac_centraleurope.h: Likewise.
4578         * src/mac_croatian.h: Likewise.
4579         * src/mac_cyrillic.h: Likewise.
4580         * src/mac_greek.h: Likewise.
4581         * src/mac_hebrew.h: Likewise.
4582         * src/mac_iceland.h: Likewise.
4583         * src/mac_roman.h: Likewise.
4584         * src/mac_romania.h: Likewise.
4585         * src/mac_thai.h: Likewise.
4586         * src/mac_turkish.h: Likewise.
4587         * src/mac_ukraine.h: Likewise.
4588         * src/mulelao.h: Likewise.
4589         * src/nextstep.h: Likewise.
4590         * src/sjis.h: Likewise.
4591         * src/tcvn.h: Likewise.
4592         * src/tis620.h: Likewise.
4593         * src/ucs2.h: Likewise.
4594         * src/ucs2be.h: Likewise.
4595         * src/ucs2internal.h: Likewise.
4596         * src/ucs2le.h: Likewise.
4597         * src/ucs2swapped.h: Likewise.
4598         * src/ucs4.h: Likewise.
4599         * src/ucs4be.h: Likewise.
4600         * src/ucs4internal.h: Likewise.
4601         * src/ucs4le.h: Likewise.
4602         * src/ucs4swapped.h: Likewise.
4603         * src/uhc_1.h: Likewise.
4604         * src/uhc_2.h: Likewise.
4605         * src/utf16.h: Likewise.
4606         * src/utf16be.h: Likewise.
4607         * src/utf16le.h: Likewise.
4608         * src/utf7.h: Likewise.
4609         * src/utf8.h: Likewise.
4610         * src/viscii.h: Likewise.
4612 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4614         Make transliteration optional.
4615         * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
4616           Set transliteration on if and only if tocode ends in //TRANSLIT.
4617         * README, man/iconv_open.3: Document how to enable transliteration.
4618         * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
4619         * tests/check-translit.bat: Likewise.
4620         * tests/check-translit.cmd: Likewise.
4622 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4624         * man/iconv.3: Fix typo.
4626 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
4628         * README, man/iconv_open.3: Document JOHAB again.
4630 2000-11-15  Bruno Haible  <haible@clisp.cons.org>
4632         * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
4633           (STATIC): Change default from 0 to 1.
4634         * src/Makefile.msvc: Likewise.
4635         * tests/Makefile.msvc: Likewise.
4636         * tests/check-stateless.bat: Call 'sort' with no arguments.
4638 2000-11-12  Bruno Haible  <haible@clisp.cons.org>
4640         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
4641           version from GNU CVS.
4643 2000-10-24  Bruno Haible  <haible@clisp.cons.org>
4645         * Version 1.4 released.
4646         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4647           Bump version number.
4648         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
4650 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4652         Implement and document GB18030 and BIG5HKSCS.
4653         * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
4654           functions.
4655           (do_gb18030uni): New function.
4656           (main): Accept gb18030ext, gb18030uni, hkscs.
4657         * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
4658           (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
4659            hkscs.h): New targets.
4660         * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
4661         * src/hkscs.h, src/big5hkscs.h: New files.
4662         * src/converters.h: Include gb18030.h and big5hkscs.h.
4663         * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
4664         * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
4665         * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
4666         * tests/Makefile.msvc (check): Likewise.
4667         * tests/Makefile.os2 (check): Likewise.
4668         * tests/GB18030.TXT: New file.
4669         * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
4671 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4673         * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
4674           UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
4675         * tests/table-to.c (main): Likewise.
4677 2000-10-22  Bruno Haible  <haible@clisp.cons.org>
4679         * src/gentranslit.c (main): Read the input in UTF-8 encoding.
4681 2000-10-09  Bruno Haible  <haible@clisp.cons.org>
4683         CPU recognition on OpenBSD.
4684         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
4685           __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
4687 2000-10-03  Bruno Haible  <haible@clisp.cons.org>
4689         * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
4690           character literals, use the numeric value instead.
4691           Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
4693 2000-09-29  Bruno Haible  <haible@clisp.cons.org>
4695         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
4696           change.
4698 2000-09-25  Bruno Haible  <haible@clisp.cons.org>
4700         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
4701           as equivalent to __i386. For OpenBSD.
4703 2000-09-21  Bruno Haible  <haible@clisp.cons.org>
4705         * src/utf16.h (utf16_wctomb): Reject single surrogates.
4706         * src/utf16be.h (utf16be_wctomb): Likewise.
4707         * src/utf16le.h (utf16le_wctomb): Likewise.
4708         * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
4709         * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
4710         * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
4711         * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
4712           Likewise.
4713         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
4714           Likewise.
4716 2000-09-15  Bruno Haible  <haible@clisp.cons.org>
4718         * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
4719         * src/Makefile.in (install, installdirs, uninstall): Likewise.
4720         * man/Makefile.in (install, installdirs, uninstall): Likewise.
4722 2000-09-11  Bruno Haible  <haible@clisp.cons.org>
4724         * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
4726 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
4728         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
4729           value, not parens.
4731 2000-07-04  Akira Hatakeyama  <akira@sra.co.jp>
4732             Bruno Haible  <haible@clisp.cons.org>
4734         * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
4735           tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
4736           tests/check-stateless.cmd, tests/check-translit.cmd: New files.
4738 2000-06-28  Bruno Haible  <haible@clisp.cons.org>
4740         * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
4741           cast.
4742         * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
4743         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
4744           sizeof(unsigned short).
4745         * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
4746           sizeof(unsigned int).
4747         Reported by François Pinard <pinard@iro.umontreal.ca>.
4749 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
4751         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
4752         Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
4754 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
4756         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
4757           host_vendor, host_os correctly if $host has more than two hyphens.
4759 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4761         * Version 1.3 released.
4762         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4763           Bump version number.
4764         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
4766 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4768         * THANKS: New file.
4769         * INSTALL.generic: New file.
4771         Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4772         * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
4773         * src/converters.h: Include them.
4774         * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
4775         * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
4776         * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
4777           (UCS-2LE): Renamed from UCS-2-LE.
4778           (UCS-4BE): Renamed from UCS-4-BE.
4779           (UCS-4LE): Renamed from UCS-4-LE.
4780         * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
4781         * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4782         * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4783         * tests/Makefile.msvc (check): Likewise.
4784         * tests/UCS-*snippet*: New files.
4786         Allow building as a shared library on Windows.
4787         Allow running the tests on Windows.
4788         * Makefile.devel (include/iconv.h.msvc): Remove rule.
4789           (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
4790           rules.
4791           (all): Update.
4792         * windows/dllexport.h: New file.
4793         * include/iconv.h.msvc: Remove file.
4794         * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
4795           autogenerated files.
4796         * Makefile.msvc (STATIC, DEBUG): Default to 0.
4797           (all): Choose either include\iconv.h.msvc-static or
4798           include\iconv.h.msvc-shared.
4799           (check): Depend on all.
4800           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4801           Recurse into tests directory.
4802         * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
4803           (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
4804           (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
4805           (RESOURCES): New variable.
4806           (iconv.lib): Change rule when building DLL.
4807           (clean, distclean): One filename per line.
4808         * tests/Makefile.msvc: New file.
4809         * tests/check-stateful.bat, tests/check-stateless.bat,
4810           tests/check-translit.bat: New files.
4811         * tests/uniq-u.c: New file, taken from GNU textutils.
4812         * README.win32: Update.
4813         Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
4815 2000-04-14  Bruno Haible  <haible@clisp.cons.org>
4817         Fix an OSF/1 problem.
4818         * configure.in: Define GCC variable for substitution.
4819         * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
4820           gcc.
4822 2000-04-13  Bruno Haible  <haible@clisp.cons.org>
4824         Fix a SunOS 4 problem.
4825         * include/iconv.h.in: If EILSEQ is not defined by the system, define
4826           it to ENOENT, not EINVAL.
4828 2000-04-02  Bruno Haible  <haible@clisp.cons.org>
4830         Allow building on filesystems lacking symlinks and hard links.
4831         * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
4832           CL_PROG_LN_S.
4833         * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
4834         * src/Makefile.in (LN): Use autoconfigured value @LN@.
4835           (LN_S): Use autoconfigured value @LN_S@.
4837 2000-03-15  Bruno Haible  <haible@clisp.cons.org>
4839         * Version 1.2 released.
4840         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4841         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
4843 2000-03-14  Bruno Haible  <haible@clisp.cons.org>
4845         Implement and document UTF-16BE and UTF16LE.
4846         * src/utf16be.h, src/utf16le.h: New files.
4847         * src/converters.h: Include them.
4848         * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
4849         * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
4850         * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
4851         * tests/UTF-16*snippet*: New files.
4853         * src/utf16.h (utf16_wctomb): Output a byte order mark.
4855 2000-03-13  Bruno Haible  <haible@clisp.cons.org>
4857         Provide all encodings used by AIX locales.
4858         * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
4859           cp1129.h.
4860           (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
4861         * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
4862           src/cp1129.h: New files.
4863         * src/converters.h: Include them if USE_AIX is defined.
4864         * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
4865           CP1124, CP1129.
4866         * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
4867         * src/genaliases2.c: New file.
4868         * src/iconv.c: Define USE_AIX on AIX.
4869           Include encodings_aix.def and aliases_aix.h.
4870           (aliases2_lookup): New function.
4871           (iconv_open): Call aliases2_lookup.
4872         * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
4873           aliases_aix.h.
4874         * Makefile.devel (all): Add src/aliases_aix.h.
4875           (src/aliases_aix.h): New rule.
4876           (src/flags.h): Depend on src/encodings_aix.def.
4878 2000-02-24  Bruno Haible  <haible@clisp.cons.org>
4880         * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
4881           Reported by Edmund Grimley Evans <edmundo@rano.org>.
4883 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
4885         * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
4887 2000-02-15  Bruno Haible  <haible@clisp.cons.org>
4889         * src/iconv.c (iconv): Add cast in xxx_reset call.
4891 2000-02-05  Bruno Haible  <haible@clisp.cons.org>
4893         * src/tis620.h: Simplify.
4895 2000-01-27  Bruno Haible  <haible@clisp.cons.org>
4897         * Makefile.devel (CLISP_DIR): Change to "..".
4899 2000-01-24  Bruno Haible  <haible@clisp.cons.org>
4901         * Version 1.1 released.
4902         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4903         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
4905 2000-01-23  Bruno Haible  <haible@clisp.cons.org>
4907         * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
4908           '+' as "+-".
4910 2000-01-22  Bruno Haible  <haible@clisp.cons.org>
4912         * include/iconv.h.in (iconvctl): New declaration.
4913           (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
4914           New macros.
4915         * src/iconv.c (iconvctl): New function.
4917         * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
4919         Solve a build problem.
4920         * include/iconv.h.in: Renamed from include/libiconv.h.in.
4921         * Makefile.devel: libiconv.h -> iconv.h.
4922         * Makefile.in: Likewise.
4923         * configure.in: Likewise. Remove check for <iconv.h>.
4924         * src/iconv.c: Include iconv.h instead of libiconv.h.
4925         * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
4927         * README, man/iconv_open.3: Don't document JOHAB any more.
4929         * man/iconv.3: Clarify return value again.
4931 2000-01-16  Bruno Haible  <haible@clisp.cons.org>
4933         Add aliases.
4934         * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
4935           (ISO-8859-15): Add alias ISO-IR-203.
4936           (EUC-CN): Add alias CN-GB, from RFC 1922.
4937           (BIG5): Add alias CN-BIG5, from RFC 1922.
4938         * Makefile.devel (src/aliases.h): Add 8th character to key set.
4940         Drop X11 aliases.
4941         * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
4942           (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
4943           (KSC_5601): Drop KSC5601.1987-0 alias.
4945         Improve GB/T 12345 (not used yet).
4946         * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
4947         * src/gb12345ext.h: Regenerated.
4949         Improve and document CP949.
4950         * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
4951           (uhc_1.h, uhc_2.h): New rules.
4952         * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
4953           function.
4954           (output_uni2charset_sparse): Take an additional boolean argument.
4955           All callers changed.
4956           (*_uhc_1, *_uhc_2): New functions.
4957           (main): Treat uhc_1 and uhc_2.
4958         * src/uhc_1.h, src/uhc_2.h: New files.
4959         * src/cp949.h: New file, include them.
4960         * src/converters.h: Include it.
4961         * src/encodings.def (KSC_5601): Remove alias CP949.
4962           (CP949): New encoding.
4963         * README, man/iconv_open.3: Add CP949.
4964         * tests/Makefile.in (check): Check CP949.
4965         * tests/CP949.TXT: New file.
4967         Document CP932.
4968         * README, man/iconv_open.3: Add CP932.
4969         * tests/Makefile.in (check): Check CP932.
4970         * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
4972         * Makefile.devel (src/flags.h): Depend on src/converters.h.
4974         * tests/Makefile.in (check): Check JIS_X0201.
4975         * tests/JIS_X0201.TXT: New file.
4977         * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
4978         * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4980         * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
4981           (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
4983         Add ISO-IR-165 (undocumented).
4984         * tools/Makefile (all): Add isoir165ext.h.
4985           (isoir165ext.h): New rule.
4986         * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
4987         * src/isoir165.h, src/isoir165ext.h: New files.
4988         * src/converters.h: Include it.
4989         * src/encodings.def: Add ISO-IR-165.
4990         * tests/Makefile.in (check): Check ISO-IR-165.
4991         * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
4993         Add ISO646-CN (undocumented).
4994         * src/iso646_cn.h: New file.
4995         * src/converters.h: Include it.
4996         * src/encodings.def: Add ISO646-CN.
4997         * tests/Makefile.in (check): Check ISO646-CN.
4998         * tests/ISO646-CN.TXT: New file.
5000         Add ISO646-JP (undocumented).
5001         * src/iso646_jp.h: New file.
5002         * src/converters.h: Include it.
5003         * src/encodings.def: Add ISO646-JP.
5004         * tests/Makefile.in (check): Check ISO646-JP.
5005         * tests/ISO646-JP.TXT: New file.
5007 2000-01-05  Bruno Haible  <haible@clisp.cons.org>
5009         Add ISO-8859-16.
5010         * tools/Makefile (all): Add iso8859_16.h.
5011           (iso8859_16.h): New rule.
5012         * src/iso8859_16.h: New file.
5013         * src/converters.h: Include it.
5014         * src/encodings.def: Add ISO-8859-16.
5015         * README, man/iconv_open.3: Add ISO-8859-16.
5016         * tests/Makefile.in (check): Check ISO-8859-16.
5017         * tests/ISO-8859-16.TXT: New file.
5019         * man/iconv.3: Clarify what happens *inbuf in case 3.
5021         * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
5022         * tests/ISO-8859-8.TXT: Likewise.
5024 2000-01-04  Bruno Haible  <haible@clisp.cons.org>
5026         * Version 1.0 released.
5027         * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
5028         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
5029           (libiconv.la): Use LIBICONV_VERSION_INFO.
5031 2000-01-03  Bruno Haible  <haible@clisp.cons.org>
5033         * tests/Makefile.in: New file.
5034           tests/check-stateless, tests/table-from.c, tests/table-to.c,
5035           tests/*.TXT, tests/genutf8.c: New files, checks for stateless
5036           encodings.
5037           tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
5038           checks for stateful encodings.
5039         * Makefile.in (all, check, mostlyclean, clean, distclean,
5040            maintainer-clean): Descend into tests directory.
5041         * configure.in: Add tests/Makefile to AC_OUTPUT duties.
5043         * src/gentranslit.c: New file.
5044         * Makefile.devel (src/translit.h): New rule.
5045         * src/translit.def, src/translit.h: New files.
5046         * src/iconv.c: Include it.
5047           (iconv): Transliterate using translit.h table.
5049         * src/genflags.c: New file.
5050         * Makefile.devel (src/flags.h): New rule.
5051         * src/flags.h: New file.
5052         * src/iconv.c: Include it.
5053           (encoding): Add field 'oflags'.
5054           (all_encodings): Initialize the field 'oflags'.
5055           (iconv_open): Copy field 'oflags'.
5056           (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
5057         * src/Makefile.in (iconv.lo): Update dependencies.
5059         * src/converters.h: New file, extracted from src/iconv.c.
5060         * src/iconv.c: Include it.
5061         * src/Makefile.in (iconv.lo): Update dependencies.
5063         * tools/cjk_variants.c: New file.
5064         * tools/Makefile (ALL): Add cjk_variants.h.
5065           (cjk_variants.h, cjk_variants): New rules.
5066         * src/cjk_variants.h: New file.
5067         * src/iconv.c: Include it.
5068           (iconv): Use cjk_variants for transliteration.
5070         * man/iconv.3: Fix description of return value.
5071         * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
5072         * iso2022_kr.h (iso2022kr_wctomb): Likewise.
5073         * src/iconv.c (iconv): Do Hangul transliteration here and increment
5074           result once for every transliterated character.
5075         * src/johab_hangul.h (johab_hangul_decompose): Change result array
5076           from 'unsigned char*' to 'wchar_t*'.
5078         * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
5079           0xfffd.
5081         * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
5083         * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
5084           Katakana.
5086         * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
5088         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
5089           0xC6A1..0xC7FE.
5091         * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
5092           not being excluded. Fix that.
5093         * src/ksc5601.h: Regenerated.
5094         * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
5095           valid in KSC5601/KSX1001 but not in JOHAB.
5097         * src/iconv.c (conv_struct): Add fields iindex, oindex.
5098           (iconv_open): Fill in iindex, oindex.
5100         * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
5101           "csUnicode11", from IANA charset list.
5102           (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
5103           from IANA charset list.
5104           (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
5105           from IANA charset list.
5106           (GB_2312-80): New encoding, from IANA charset list.
5108         * README, man/iconv_open.3: Add MacIceland and MacUkraine.
5110         * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
5111           (all): Depend on src/aliases.h.
5112         * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
5113           $(srcdir)/aliases.gperf.
5114           (clean): Clean up.
5116         * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
5118 1999-12-31  Bruno Haible  <haible@clisp.cons.org>
5120         * Version 0.3 released.