Switch to autoconf 2.69 and automake 1.12.
[libiconv.git] / ChangeLog
bloba782e575f09adf8aa8eb84f6cbba67cff345d5dd
1 2012-04-28  Bruno Haible  <bruno@clisp.org>
3         Switch to autoconf 2.69 and automake 1.12.
4         * autogen.sh: Update comment.
5         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
6         (AUTOMAKE, ACLOCAL): Switch to version 1.12.
7         * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
8         (ACLOCAL): Switch to version 1.12.
10 2012-03-24  Bruno Haible  <bruno@clisp.org>
12         Avoid a GCC warning.
13         * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
15 2012-01-26  Bruno Haible  <bruno@clisp.org>
17         Modernize quoting.
18         * README: Quote 'like this', not `like this', as per the recent change
19         to the GNU coding standards.
20         * NOTES: Likewise.
21         * gnulib-local/lib/xmalloc.c: Likewise.
22         * lib/config.h.in: Likewise.
23         * src/iconv.c (usage): Likewise.
24         * tests/uniq-u.c: Likewise.
25         * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
26         Likewise.
27         * lib/big5.h: Update accordingly.
28         * lib/cns11643_inv.h: Likewise.
29         * lib/cp932ext.h: Likewise.
30         * lib/cp950ext.h: Likewise.
31         * lib/gb12345ext.h: Likewise.
32         * lib/gb2312.h: Likewise.
33         * lib/gbkext_inv.h: Likewise.
34         * lib/hkscs1999.h: Likewise.
35         * lib/hkscs2001.h: Likewise.
36         * lib/hkscs2004.h: Likewise.
37         * lib/hkscs2008.h: Likewise.
38         * lib/isoir165ext.h: Likewise.
39         * lib/jisx0208.h: Likewise.
40         * lib/jisx0212.h: Likewise.
41         * lib/jisx0213.h: Likewise.
42         * lib/ksc5601.h: Likewise.
43         * lib/uhc_1.h: Likewise.
44         * lib/uhc_2.h: Likewise.
46 2012-01-15  Bruno Haible  <bruno@clisp.org>
48         Support for MSVC 9.
49         * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
50         config.h.in.
51         * tests/genutf8.c: Include config.h.
52         * tests/gengb18030z.c: Likewise.
53         * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
55 2011-01-28  Bruno Haible  <bruno@clisp.org>
57         Add a comment.
58         * woe32dll/export.h: Add a reference to the woe32dll writeup.
60 2012-01-06  Bruno Haible  <bruno@clisp.org>
62         Update after gnulib changed.
63         * gnulib-local/lib/error.h.diff: Update.
65 2012-01-06  Bruno Haible  <bruno@clisp.org>
67         Talk about "native Windows API", not "Woe32".
68         * lib/relocatable.c: Update comments to mention native Windows.
70 2012-01-04  Bruno Haible  <bruno@clisp.org>
72         Talk about "native Windows API", not "Win32".
73         * lib/relocatable.c: Update comments to mention native Windows.
74         (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
76 2011-10-27  Bruno Haible  <bruno@clisp.org>
78         Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
79         * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
80         * lib/ucs4.h (ucs4_mbtowc): Likewise.
81         * lib/utf32.h (utf32_mbtowc): Likewise.
82         Reported at <https://savannah.gnu.org/bugs/?34916>.
84 2012-06-30  Bruno Haible  <bruno@clisp.org>
86         Improve ISO-2022-CP-MS versus CP932.
87         * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
88         the rows 0x79..0x7C as rows from CP932.
89         * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
90         tests/ISO-2022-JP-MS-snippet.
91         * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
92         to ESC $ B 0x79..0x7C.
93         * tests/ISO-2022-JP-MS-snippet: Likewise.
94         * tests/check-stateful: Also test the *-snippet.alt file if it exists.
95         * tests/check-stateful.bat: Likewise.
97 2012-06-30  Bruno Haible  <bruno@clisp.org>
99         Improve ISO-2022-CP-MS versus CP932.
100         * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
101         U+301E.
102         * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
103         0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
104         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
106 2011-10-23  Bruno Haible  <bruno@clisp.org>
108         New encoding ISO-2022-CP-MS.
109         * NOTES: Mention ISO-2022-JP-MS.
110         * tools/CP50221-0208-EXT.TXT: New file.
111         * tools/CP50221-0212-EXT.TXT: New file.
112         * tools/8bit_tab_to_h.c: Add comments about how to generate
113         cp50221_0208_ext.h, cp50221_0212_ext.h.
114         * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
115         cp50221_0212_ext.h.
116         * lib/cp50221_0208_ext.h: New file, mostly generated.
117         * lib/cp50221_0212_ext.h: New file, mostly generated.
118         * lib/iso2022_jpms.h: New file.
119         * lib/converters.h: Include it.
120         * lib/encodings.def: Add ISO-2022-JP-MS.
121         * README, man/iconv_open.3: Add ISO-2022-JP-MS.
122         * tests/ISO-2022-JP-MS-snippet: New file.
123         * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
124         * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
125         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
127 2011-10-23  Bruno Haible  <bruno@clisp.org>
129         * lib/encodings.def: Add comments about Windows names of encodings.
131 2011-10-18  Bruno Haible  <bruno@clisp.org>
133         * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
134         2008-04-06  Bruno Haible  <bruno@clisp.org>
135                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
136                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
137                 to ${CONFIG_SHELL}..
138         * m4/ltoptions.m4: Likewise.
139         * m4/ltversion.m4: Likewise.
140         * build-aux/ltmain.sh: Likewise.
142 2011-10-03  Bruno Haible  <bruno@clisp.org>
144         * lib/relocatable.c: Update from gnulib.
146 2011-09-02  Bruno Haible  <bruno@clisp.org>
148         Fix "make check" failure when $(srcdir) != $(builddir).
149         * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
150         GB18030.IRREVERSIBLE.TXT into the build directory.
151         Reported by Christian Weisgerber <naddy@mips.inka.de>.
153 2011-08-07  Bruno Haible  <bruno@clisp.org>
155         Ensure all HTML-formatted man pages are up-to-date.
156         * Makefile.devel (all): Depend on man/iconvctl.3.html and
157         man/iconv_open_into.3.html.
159 2011-08-07  Bruno Haible  <bruno@clisp.org>
161         * Version 1.14 released.
163 2011-08-07  Bruno Haible  <bruno@clisp.org>
165         * configure.ac: Bump version number to 1.14.
166         * README: Likewise.
167         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
168         * windows/iconv.rc: Update.
169         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
170         * src/iconv.c (print_version): Update copyright year.
172 2011-08-07  Bruno Haible  <bruno@clisp.org>
174         Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
175         * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
176         is not supported.
178 2011-08-07  Bruno Haible  <bruno@clisp.org>
180         * tests/check-subst: Add comments about OSF/1.
182 2011-08-07  Bruno Haible  <bruno@clisp.org>
184         * lib/relocatable.c: Update from gnulib.
186 2011-08-06  Bruno Haible  <bruno@clisp.org>
188         Upgrade the GB18030 converter to the version from 2005.
189         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
190         'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
191         0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
192         (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
193         for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
194         (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
195         (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
196         U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
197         * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
198         0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
199         0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
200         to now-assigned Unicode codepoints.
201         * tests/GB18030.IRREVERSIBLE.TXT: New file.
203 2011-08-06  Bruno Haible  <bruno@clisp.org>
205         Fix conversion bug in CP1258 converter.
206         * lib/vietcomb.h (viet_comp_table_data): Remove entry for
207         U+00A5 U+0301. Fix entry for U+00A8 U+0301.
208         (viet_decomp_table): Fix entry for U+0385.
209         * tests/CP1258.IRREVERSIBLE.TXT: Update.
210         Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
212 2011-07-03  Bruno Haible  <bruno@clisp.org>
214         Improve interactive behaviour of iconv program.
215         * src/iconv.c (convert): Flush the output before starting a possibly
216         blocking safe_read call.
218 2011-07-03  Bruno Haible  <bruno@clisp.org>
220         Fix interactive behaviour of iconv program.
221         * Makefile.devel (GNULIB_MODULES): Add safe-read.
222         * src/iconv.c: Include safe-read.h.
223         (convert): Take the infile as a file descriptor, not as a FILE stream.
224         Use safe_read() instead of fread().
225         (main): Update.
226         Reported by Xavier Pucel <xpucel@hotmail.com>.
228 2011-05-02  Bruno Haible  <bruno@clisp.org>
230         Update after gnulib changed.
231         * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
233 2011-06-02  Bruno Haible  <bruno@clisp.org>
235         Update after gnulib changed.
236         * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
238 2011-06-04  Bruno Haible  <bruno@clisp.org>
240         Work around <wchar.h> bug on OSF/1 5.1.
241         * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
242         some other includes.
244 2011-03-27  KO Myung-Hun  <komh@chollian.net>
246         Fix installation on OS/2.
247         * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
248         iconv_no_i18n. This is the recommended way to use libtool, see
249         <http://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
251 2011-03-31  Bruno Haible  <bruno@clisp.org>
253         gentranslit: Fix buffer overrun.
254         * lib/gentranslit.c (main): Allocate more room for the suffix strings
255         of the translit pages.
256         Reported by Ben Noordhuis <info@bnoordhuis.nl>.
258 2011-02-28  Bruno Haible  <bruno@clisp.org>
260         * lib/relocatable.h: Update from gnulib.
261         * lib/relocatable.c: Likewise.
263 2011-01-29  Corinna Vinschen  <corinna-cygwin@cygwin.com>
264             Bruno Haible  <bruno@clisp.org>
266         Simplify "wchar_t" handling on Cygwin 1.7.x.
267         * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
268         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
269         * lib/iconv_open1.h: Likewise.
270         Rationale: <http://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
272 2011-01-29  Bruno Haible  <bruno@clisp.org>
274         Adjust the meaning of "wchar_t" on native Windows systems.
275         * lib/iconv.c (iconv_canonicalize): On native Windows, map
276         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
277         * lib/iconv_open1.h: Likewise.
278         Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
279         in <http://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
281 2010-11-23  Bruno Haible  <bruno@clisp.org>
283         Implement newer release of BIG5-HKSCS.
284         * tools/Makefile (ALL): Add hkscs2008.h.
285         (hkscs2008.h): New rule.
286         * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
287         * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
288         equivalent to BIG5-HKSCS:2008.
289         * lib/hkscs2008.h: New file, autogenerated.
290         * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
291         * lib/converters.h: Include the new file.
292         * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
293         * tests/BIG5-HKSCS-2008.TXT: New file, based on
294         tests/BIG5-HKSCS-2004.TXT.
295         * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
296         tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
297         * tests/BIG5-HKSCS-2008-snippet: New file, based on
298         tests/BIG5-HKSCS-2004-snippet.
299         * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
300         tests/BIG5-HKSCS-2004-snippet.UTF-8.
301         * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
302         Reported by oCameLo <camel322@gmail.com>.
304 2010-11-23  Bruno Haible  <bruno@clisp.org>
306         Make cjk_tab_to_h 64-bit clean.
307         * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
308         (output_title): Update copyright year.
310 2010-09-23  Bruno Haible  <bruno@clisp.org>
312         Switch to autoconf 2.68.
313         * autogen.sh: Update comment.
314         * configure.ac: Fix AC_COMPILE_IFELSE invocation.
315         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
316         * preload/Makefile.devel (AUTOCONF): Likewise.
318 2010-09-23  Bruno Haible  <bruno@clisp.org>
320         * m4/libtool.m4: Update from libtool-2.4, with modifications:
321         2008-04-06  Bruno Haible  <bruno@clisp.org>
322                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
323                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
324                 to ${CONFIG_SHELL}.
325         * m4/ltversion.m4: Update from libtool-2.4.
326         * build-aux/ltmain.sh: Likewise.
328 2010-09-23  Bruno Haible  <bruno@clisp.org>
330         Simplify use of gnulib-tool now that gnulib-tool --import works better.
331         * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
332         * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
334 2010-07-31  Bruno Haible  <bruno@clisp.org>
336         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
337         * preload/Makefile.devel (AUTOCONF): Likewise.
339 2010-07-03  Bruno Haible  <bruno@clisp.org>
341         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
342         * preload/Makefile.devel (AUTOCONF): Likewise.
344 2010-06-04  Bruno Haible  <bruno@clisp.org>
346         Addendum to 2009-10-18 commit.
347         * m4/fcntl-o.m4: New file, from gnulib.
348         * configure.ac: Invoke gl_FCNTL_O_FLAGS.
349         * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
351 2010-06-04  Bruno Haible  <bruno@clisp.org>
353         * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
354         2008-04-06  Bruno Haible  <bruno@clisp.org>
355                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
356                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
357                 to ${CONFIG_SHELL}.
358         * m4/ltoptions.m4: Update from libtool-2.2.8.
359         * m4/ltversion.m4: Likewise.
360         * m4/lt~obsolete.m4: Likewise.
361         * build-aux/ltmain.sh: Likewise.
363 2010-04-06  Bruno Haible  <bruno@clisp.org>
365         Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
366         * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
367         doesn't contains #include directives.
369 2010-03-30  Bruno Haible  <bruno@clisp.org>
371         * README.woe32: Update for Cygwin 1.7.x.
373 2009-12-26  Bruno Haible  <bruno@clisp.org>
375         * windows/libiconv.rc: Update.
376         * windows/iconv.rc: Update.
378 2009-12-11  Bruno Haible  <bruno@clisp.org>
380         * include/iconv.h.in: Untabify.
381         * gnulib-local/lib/xalloc.h: Untabify.
382         * woe32dll/export.h: Untabify.
383         * tests/uniq-u.c: Untabify.
385 2009-12-11  Bruno Haible  <bruno@clisp.org>
387         * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
389 2009-12-11  Bruno Haible  <bruno@clisp.org>
391         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
392         * preload/Makefile.devel (AUTOCONF): Likewise.
394 2009-11-22  Bruno Haible  <bruno@clisp.org>
396         * tests/check-subst: Add reference to the Solaris printf bug.
397         Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
399 2009-09-01  Bruno Haible  <bruno@clisp.org>
401         * README.woe32: Put the -mno-cygwin option into CC and CXX.
402         Recommended by Paolo Bonzini and Eric Blake.
404 2009-08-15  Bruno Haible  <bruno@clisp.org>
406         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
407         * preload/Makefile.devel (AUTOCONF): Likewise.
409 2009-08-15  Bruno Haible  <bruno@clisp.org>
411         Use .git/info/exclude, not .gitignore, for imported or generated files.
412         * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
413         gnulib-tool.
415 2009-07-07  Bruno Haible  <bruno@clisp.org>
417         Fix an endless loop.
418         * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
419         incomplete input correctly.
420         * tests/test-to-wchar.c: New file.
421         * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
422         (check): Depend on and run tests-to-wchar.
423         (clean): Add tests-to-wchar.
424         Reported by Tristan Gingold <gingold@adacore.com>.
426 2009-06-30  Bruno Haible  <bruno@clisp.org>
428         * Version 1.13.1 released.
430 2009-06-30  Bruno Haible  <bruno@clisp.org>
432         * configure.ac: Bump version number to 1.13.1.
433         * README: Likewise.
435 2009-06-04  Bruno Haible  <bruno@clisp.org>
437         * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
438         (ACLOCAL): Switch to version 1.11.
440 2009-05-19  Bruno Haible  <bruno@clisp.org>
442         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
443         * autogen.sh: Update comments.
445 2009-04-24  Bruno Haible  <bruno@clisp.org>
447         Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
448         * src/iconv_open2.h: Don't initialize nonexistent field if
449         !(HAVE_WCRTOMB || HAVE_MBRTOWC).
450         Patch by Joel Brobecker <brobecker@adacore.com>.
452 2009-04-15  Bruno Haible  <bruno@clisp.org>
454         * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
455         explicitly. Needed on Cygwin.
457 2009-04-11  Bruno Haible  <bruno@clisp.org>
459         * configure.ac: Move the statements for WOE32 and WINDRES.
461 2009-03-26  Bruno Haible  <bruno@clisp.org>
463         * Version 1.13 released.
465 2009-03-26  Bruno Haible  <bruno@clisp.org>
467         * src/iconv.c: Update copyright header to GPLv3+.
468         (print_version): Update license info.
470 2009-03-26  Bruno Haible  <bruno@clisp.org>
472         * src/iconv.c (print_version): Bump year.
474 2009-03-25  Bruno Haible  <bruno@clisp.org>
476         * build-aux/config.guess: Update to GNU version 2009-02-03.
477         * build-aux/config.sub: Likewise.
479 2009-03-25  Bruno Haible  <bruno@clisp.org>
481         * configure.ac: Bump version number to 1.13.
482         * README: Likewise.
483         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
484         * windows/iconv.rc: Update.
485         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
487 2009-03-25  Bruno Haible  <bruno@clisp.org>
489         Fix the handling of Windows resources in shared libraries.
490         * configure.ac: Invoke LT_LANG for 'Windows Resource'.
491         * lib/Makefile.in (RC): New variable.
492         (WINDRES): Remove variable.
493         (OBJECTS_RES_yes): Add .lo suffix.
494         (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
495         (clean): Simplify.
496         Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
498 2009-03-14  Bruno Haible  <bruno@clisp.org>
500         * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
502 2009-01-24  Bruno Haible  <bruno@clisp.org>
504         * tools/Makefile (ALL): Add cp1131.h.
505         (cp1131.h): New rule.
506         * lib/encodings.def: Add CP1131.
507         * lib/cp1131.h: New file.
508         * lib/converters.h: Include it.
509         * README, man/iconv_open.3: Add CP1131.
510         * NOTES: Mention CP1131.
511         * tests/CP1131.TXT: New file.
512         * tests/Makefile.in (check): Also test CP1131.
514 2009-01-17  Bruno Haible  <bruno@clisp.org>
516         Add support for "make install-strip".
517         * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
518         * Makefile.in (install-strip): New rule.
519         * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
520         variables.
521         (install-strip): New rule.
522         * lib/Makefile.in (install-strip): New target.
523         * preload/Makefile.in (install-strip): Likewise.
524         * man/Makefile.in (install-strip): Likewise.
525         Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
527 2009-01-17  Bruno Haible  <bruno@clisp.org>
529         Update after gnulib changed.
530         * src/Makefile.in (RELOCATABLE_STRIP): New variable.
532 2009-01-17  Bruno Haible  <bruno@clisp.org>
534         Make --enable-relocatable work on glibc systems.
535         * src/Makefile.in (host): New variable.
537 2009-01-17  Bruno Haible  <bruno@clisp.org>
539         * lib/genflags.c: Include <string.h>.
541 2009-01-14  Bruno Haible  <bruno@clisp.org>
543         * configure.ac: More consistent m4 quoting.
544         * preload/configure.ac: Likewise.
546 2008-09-28  Bruno Haible  <bruno@clisp.org>
548         * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
549         preprocess the argument vector through prepare_spawn.
551 2008-09-27  Bruno Haible  <bruno@clisp.org>
553         * build-aux/config.guess: Update to GNU version 2008-09-08.
554         * build-aux/config.sub: Likewise.
556 2008-09-26  Bruno Haible  <bruno@clisp.org>
558         * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
560 2008-09-26  Bruno Haible  <bruno@clisp.org>
562         * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
563         * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
564         all programs against libicrt.a. Needed for the stdio function
565         replacements on mingw.
567 2008-09-21  Tadamasa Teranishi  <yw3t-trns@asahi-net.or.jp>
569         * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
570         ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
572 2008-09-20  Bruno Haible  <bruno@clisp.org>
574         * man/iconv_open_into.3: New file.
576 2008-09-16  Bruno Haible  <bruno@clisp.org>
578         New function iconv_open_into.
579         * include/iconv.h.in: Include <wchar.h> and its prerequisites.
580         (iconv_allocation_t): New type.
581         (iconv_open_into): New declaration.
582         * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
583         * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
584         * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
585         Verify size of iconv_allocation_t.
586         (iconv_open_into): New function.
587         * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
588         field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
589         * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
590         Reported by Roman Rybalko <romanr@romanr.info>.
592 2008-09-16  Bruno Haible  <bruno@clisp.org>
594         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
596 2008-09-16  Bruno Haible  <bruno@clisp.org>
598         * include/iconv.h.in: Use Unicode single-quotes in comments.
600 2008-09-14  Bruno Haible  <bruno@clisp.org>
602         * Makefile.devel (GNULIB_MODULES): Add strerror.
604 2008-09-07  Bruno Haible  <bruno@clisp.org>
606         Make behaviour when encountering invalid input after a shift sequence
607         more consistent.
608         * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
609         (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
610         (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
611         (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
612         * lib/loop_unicode.h (unicode_loop_convert): Take into account the
613         shift count contained in the negative return values.
614         * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
615         modified state and return RET_SHIFT_ILSEQ.
616         * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
617         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
618         * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
619         * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
620         * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
621         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
622         * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
623         * lib/ucs2.h (ucs2_mbtowc): Likewise.
624         * lib/ucs4.h (ucs4_mbtowc): Likewise.
625         * lib/utf16.h (utf16_mbtowc): Likewise.
626         * lib/utf32.h (utf32_mbtowc): Likewise.
627         * lib/utf7.h (utf7_mbtowc): Likewise.
628         * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
629         invalid input, return RET_SHIFT_ILSEQ.
630         * lib/utf16le.h (utf16le_mbtowc): Likewise.
631         * tests/test-shiftseq.c: New file.
632         * tests/Makefile.in (check): Run test-shiftseq.
633         (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
634         (clean): Remove test-shiftseq executable.
635         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
636         at <http://savannah.gnu.org/bugs/?24216>.
638 2008-09-07  Bruno Haible  <bruno@clisp.org>
640         * man/iconv.3: Clarify the processing of shift-sequences.
642 2008-09-07  Bruno Haible  <bruno@clisp.org>
644         * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
645         2008-04-06  Bruno Haible  <bruno@clisp.org>
646                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
647                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
648                 to ${CONFIG_SHELL}.
649         * m4/ltoptions.m4: Update from libtool-2.2.6.
650         * m4/ltsugar.m4: Likewise.
651         * m4/ltversion.m4: Likewise.
652         * build-aux/ltmain.sh: Likewise.
654 2008-09-06  Bruno Haible  <bruno@clisp.org>
656         * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
657         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
658         at <http://savannah.gnu.org/bugs/?24214>.
660 2008-06-30  Bruno Haible  <bruno@clisp.org>
662         Fix sed expressions to work with the old sed-3.02 on MSYS.
663         * windows/windres-options (sed_extract_major, sed_extract_minor,
664         sed_extract_subminor): Put a semicolon before the closing brace. Use
665         an i\ command instead of an a\ command.
666         Reported by Sunil Negi <sunil.negi@morningstar.com>
667         in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
668         via Keith Marshall <keithmarshall@users.sourceforge.net>.
670 2008-05-22  Bruno Haible  <bruno@clisp.org>
672         * README.woe32: Update with info from GNU gettext's README.woe32.
674 2008-05-18  Bruno Haible  <bruno@clisp.org>
676         * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
677         2008-04-06  Bruno Haible  <bruno@clisp.org>
678                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
679                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
680                 to ${CONFIG_SHELL}.
681         * m4/ltoptions.m4: Update from libtool-2.2.4.
682         * m4/ltversion.m4: Likewise.
683         * m4/lt~obsolete.m4: Likewise.
684         * build-aux/ltmain.sh: Likewise.
686 2008-04-14  Bruno Haible  <bruno@clisp.org>
688         * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
689         on MacOS X 10.5.
691 2008-04-14  Bruno Haible  <bruno@clisp.org>
693         * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
694         AC_AIX and AC_MINIX.
695         * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
696         * preload/Makefile.devel (AUTOCONF): Likewise.
697         * autogen.sh: Likewise.
699 2008-04-06  Bruno Haible  <bruno@clisp.org>
701         * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
702         2008-04-06  Bruno Haible  <bruno@clisp.org>
703                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
704                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
705                 to ${CONFIG_SHELL}.
706         * m4/ltoptions.m4: New file, from libtool-2.2.2.
707         * m4/ltsugar.m4: New file, from libtool-2.2.2.
708         * m4/ltversion.m4: New file, from libtool-2.2.2.
709         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
710         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
711         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
712         * preload/configure.ac: Likewise.
714 2008-04-06  Bruno Haible  <bruno@clisp.org>
716         More portable way of building the preloadable library.
717         * preload/Makefile.devel: New file.
718         * preload/Makefile.in: New file, based on lib/Makefile.in.
719         * preload/configure.ac: New file, based on configure.ac.
720         * Makefile.devel (all): Recurse into preload directory.
721         * Makefile.in (all, install, installdirs, uninstall, check,
722         mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
723         directory.
724         * configure.ac: Likewise.
725         (OS, GCC, PLUGLIB): Remove definitions.
726         * lib/Makefile.in (all): Don't depend on PLUGLIB.
727         (preloadable_libiconv.so, preloadable_libiconv_linux.so,
728         preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
729         rules.
730         (install, uninstall, clean): Don't handle the preloadable library here.
732 2008-04-06  Bruno Haible  <bruno@clisp.org>
734         Avoid a gcc warning.
735         * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
737 2008-04-06  Bruno Haible  <bruno@clisp.org>
739         * src/iconv.c (print_version): Bump year.
741 2008-04-06  Bruno Haible  <bruno@clisp.org>
743         Support all possible nl_langinfo(CODESET) results on the respective
744         platforms, according to libcharset/lib/config.charset.
745         * lib/encodings.def: Add DEFALIAS statements, conditional on
746         USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
747         USE_SOLARIS_ALIASES.
748         * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
749         USE_AIX_ALIASES.
750         * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
751         USE_OSF1_ALIASES.
752         * lib/genaliases.c (emit_alias): New function, extracted from
753         emit_encoding.
754         (emit_encoding): Use it.
755         (main): Define DEFALIAS.
756         * lib/genaliases2.c (counter): New variable, extracted from
757         emit_encoding.
758         (emit_alias): New function, extracted from emit_encoding.
759         (emit_encoding): Use it.
760         (main): Define DEFALIAS.
761         * lib/genflags.c (main): Define DEFALIAS.
762         * lib/iconv.c (all_encodings): Define DEFALIAS.
763         Include the system dependent variant of aliases.h on the appropriate
764         systems.
765         (all_canonical): Include the system dependent variant of canonical.h,
766         canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
767         systems.
768         * lib/aliases2.h: Include the system dependent variant of
769         aliases_aix.h or aliases_osf1.h on the appropriate systems.
770         * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
771         aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
772         aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
773         aliases_extra.h, translit.h.
774         * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
775         lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
776         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
777         (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
778         lib/aliases_syssolaris.h): New rules.
779         (lib/aliases_aix_sysaix.h): New rule.
780         (lib/aliases_osf1_sysosf1.h): New rule.
781         * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
782         lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
783         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
785 2008-04-06  Bruno Haible  <bruno@clisp.org>
787         * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
788         * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
790 2007-11-11  Bruno Haible  <bruno@clisp.org>
792         * Version 1.12 released.
794 2007-11-11  Bruno Haible  <bruno@clisp.org>
796         * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
797         (AUTOMAKE, ACLOCAL): Require version 1.10.
798         (srclib/Makefile.in): Avoid error from automake.
800 2007-10-26  Bruno Haible  <bruno@clisp.org>
802         * m4/libtool.m4: Update, based on libtool-1.5.24.
803         * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
805 2007-10-23  Bruno Haible  <bruno@clisp.org>
807         * build-aux/config.guess: Update to GNU version 2007-07-22.
808         * build-aux/config.sub: Likewise.
810 2007-10-23  Bruno Haible  <bruno@clisp.org>
812         * configure.ac: Bump version number to 1.12.
813         * README: Likewise.
815 2007-10-23  Bruno Haible  <bruno@clisp.org>
817         Move relocatability infrastructure to gnulib.
818         * gnulib-local/lib/relocatable.h: Remove file.
819         * gnulib-local/lib/relocatable.c: Remove file.
821 2007-10-23  Bruno Haible  <bruno@clisp.org>
823         Update from GNU gettext.
824         2006-11-26  Bruno Haible  <bruno@clisp.org>
825                 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
826                 template variant.
827                 Based on a patch from Paul Eggert in gnulib.
828         2006-11-06  Bruno Haible  <bruno@clisp.org>
829                 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
830                 (xmemdup): New declaration.
831                 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
832         2006-11-03  Bruno Haible  <bruno@clisp.org>
833                 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
834                 XCALLOC): New macros.
835                 (xnboundedmalloc): New inline function.
836                 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
837                 xmalloc.
838         2006-11-02  Bruno Haible  <bruno@clisp.org>
839                 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
840                 xalloc.h.
841                 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
842                 (xnmalloc): New function.
844 2007-10-23  Bruno Haible  <bruno@clisp.org>
846         Moved module xreadlink to gnulib.
847         * gnulib-local/modules/xreadlink: Remove file.
848         * gnulib-local/lib/xreadlink.h: Remove file.
849         * gnulib-local/lib/xreadlink.c: Remove file.
850         * gnulib-local/m4/xreadlink.m4: Remove file.
852 2007-10-07  Bruno Haible  <bruno@clisp.org>
854         Update program license to GPLv3.
855         * COPYING: Replace with GPL 3.
856         * windows/iconv.rc (Comments): Update.
858 2007-10-07  Bruno Haible  <bruno@clisp.org>
860         * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
862 2007-03-30  Bruno Haible  <bruno@clisp.org>
864         * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
865         macro to _GL_.
867 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
869         * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
870         declare.
872 2007-09-29  Bruno Haible  <bruno@clisp.org>
874         * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
875         valid since 2007-09-19.
877 2007-07-07  Bruno Haible  <bruno@clisp.org>
879         * autogen.sh: Add an option --skip-gnulib.
881 2007-07-07  Bruno Haible  <bruno@clisp.org>
883         * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
884         * gnulib-local/lib/width.c: Remove file, moved to gnulib.
885         * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
886         * gnulib-local/modules/uniwidth: Remove file.
887         * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
888         * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
890 2007-06-30  Bruno Haible  <bruno@clisp.org>
892         * src/iconv.c (print_version): Use the standard --version output, see
893         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
895 2007-06-30  Bruno Haible  <bruno@clisp.org>
897         * autogen.sh: New file.
898         * DEPENDENCIES: New file.
899         * HACKING: New file.
901 2007-06-30  Bruno Haible  <bruno@clisp.org>
903         * src/iconv.c: Provide translator comments for many messages.
904         (conversion_error_EILSEQ, conversion_error_EINVAL,
905         conversion_error_other): New functions, extracted from convert.
906         (convert): Use them.
907         Reported by Tim Van Holder <tim.van.holder@telenet.be>.
909 2007-06-09  Bruno Haible  <bruno@clisp.org>
911         * gnulib-local/lib/relocwrapper.c: Remove file.
913 2007-05-27  Bruno Haible  <bruno@clisp.org>
915         * windows/libiconv.rc: New file.
916         * windows/iconv.rc: New file.
917         * windows/windres-options: New file.
918         * configure.ac (WOE32): New variable.
919         (WINDRES) [WOE32]: New variable.
920         * lib/Makefile.in (WINDRES): New variable.
921         (PACKAGE_VERSION): New variable.
922         (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
923         (OBJECTS_EXP_no): Renamed from OBJECTS_no.
924         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
925         (OBJECTS): Add one of them.
926         (libiconv.res): New rule.
927         (clean): Remove also libiconv.res.
928         * src/Makefile.in (WINDRES): New variable.
929         (PACKAGE_VERSION): New variable.
930         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
931         (all, iconv_no_i18n, install): Use them.
932         (iconv.res): New rule.
933         (clean): Remove also iconv.res.
934         Suggested and inspired by work by Perry Rapp.
936 2007-05-27  Bruno Haible  <bruno@clisp.org>
938         Follow broken iconv() prototype in POSIX.
939         * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
940         * lib/config.h.in (ICONV_CONST): Change default value to an empty
941         comment.
942         * src/iconv.c (ICONV_CONST): Change default value to empty.
943         Reported by Andreas Krennmair <ak@synflood.at>.
945 2007-05-25  Bruno Haible  <bruno@clisp.org>
947         * tools/Makefile (ALL): Add rk1048.h.
948         (rk1048.h): New rule.
949         * lib/encodings.def: Add RK1048.
950         * lib/rk1048.h: New file.
951         * lib/converters.h: Include it.
952         * README, man/iconv_open.3: Add RK1048.
953         * NOTES: Mention RK1048.
954         * tests/RK1048.TXT: New file.
955         * tests/Makefile.in (check): Also test RK1048.
956         Suggested by Timur Birsh <team9@host.kz>.
958 2007-04-24  Bruno Haible  <bruno@clisp.org>
960         * man/iconv_open.3: Tweak explanation of TRANSLIT.
961         Reported by Perry Rapp.
963 2007-04-23  Bruno Haible  <bruno@clisp.org>
965         * tests/check-subst: Use the output of 'printf' only if it didn't
966         crash. Needed to work around a buffer overflow in Solaris /bin/printf.
967         Reported by Arto C. Nirkko <anirkko@insel.ch>.
969 2007-04-23  Bruno Haible  <bruno@clisp.org>
971         * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
972         systems like those which define __STDC_ISO_10646__.
973         Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
975 2007-03-31  Bruno Haible  <bruno@clisp.org>
977         * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
978         appropriate.
979         * man/iconv_open.3: Likewise.
980         * man/iconv.3: Likewise.
981         * man/iconv_close.3: Likewise.
982         * man/iconvctl.3: Likewise.
984 2007-03-31  Bruno Haible  <bruno@clisp.org>
986         * man/iconv.1: Mark as POSIX compliant.
987         * man/iconv_open.3: Likewise.
988         * man/iconv.3: Likewise.
989         * man/iconv_close.3: Likewise.
991         * man/*.[13]: Syntactic simplifications.
993 2007-03-19  Bruno Haible  <bruno@clisp.org>
995         Assume that mkinstalldirs also creates the necessary parent directories.
996         * Makefile.in (install, installdirs): Don't explicitly create the
997         parent directories.
998         * lib/Makefile.in (install, installdirs): Likewise.
999         * src/Makefile.in (install, installdirs): Likewise.
1000         * man/Makefile.in (install, installdirs): Likewise.
1001         Reported by Thomas Klausner <tk@giga.or.at>.
1003 2007-03-04  Bruno Haible  <bruno@clisp.org>
1005         * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
1006         relocatable, relocwrapper.
1007         * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
1008         * gnulib-local/modules/progreloc: Remove file.
1009         * gnulib-local/modules/relocatable: Remove file.
1010         * gnulib-local/modules/relocwrapper: Remove file.
1011         * gnulib-local/m4/relocatable.m4: Remove file.
1012         * gnulib-local/lib/strerror.c.diff: Remove file.
1013         * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
1014         RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
1016 2007-02-19  Bruno Haible  <bruno@clisp.org>
1018         * gnulib-local/lib/xmalloc.c: Don't include exit.h.
1019         * src/iconv.c: Likewise.
1021 2007-02-16  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1023         * djgpp/*: Update.
1025 2007-02-03  Bruno Haible  <bruno@clisp.org>
1027         * tools/Makefile (ksc5601.h): Add one extra character.
1028         * lib/ksc5601.h: Regenerated.
1029         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
1030         * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
1031         * tests/JOHAB.TXT: Likewise.
1032         Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
1034         * lib/euc_kr.h: Update comments.
1035         * lib/johab.h: Likewise.
1037 2007-02-03  Bruno Haible  <bruno@clisp.org>
1039         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
1041 2007-01-26  Bruno Haible  <bruno@clisp.org>
1043         Moved streq.h to gnulib.
1044         * gnulib-local/lib/streq.h: Remove file.
1045         * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
1046         (Depends-on): Add streq.
1047         (lib_SOURCES): Remove streq.h.
1049 2007-01-26  Bruno Haible  <bruno@clisp.org>
1051         Moved unitypes.h to gnulib.
1052         * gnulib-local/lib/unitypes.h: Remove file.
1053         * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
1054         (Depends-on): Add unitypes.
1055         (lib_SOURCES): Remove unitypes.h.
1057 2007-01-26  Bruno Haible  <bruno@clisp.org>
1059         Moved canonicalize to gnulib.
1060         * gnulib-local/modules/canonicalize: Remove file.
1061         * gnulib-local/lib/canonicalize.h: Remove file.
1062         * gnulib-local/lib/canonicalize.c: Remove file.
1063         * gnulib-local/m4/canonicalize.m4: Remove file.
1064         * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
1065         with 'canonicalize-lgpl'.
1067 2006-12-20  Bruno Haible  <bruno@clisp.org>
1069         * lib/Makefile.in (install): On AIX, add the contents of
1070         /lib/libiconv.a to libiconv.a.
1072 2006-12-20  Bruno Haible  <bruno@clisp.org>
1074         * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
1075         srclib/Makefile.am.
1076         (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
1077         always does it.
1078         (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
1079         option --makefile-name.
1080         (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
1081         * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
1083 2006-10-31  Bruno Haible  <bruno@clisp.org>
1085         Update from GNU gettext.
1086         2006-10-29  Bruno Haible  <bruno@clisp.org>
1087                 Make it compile in C++ mode.
1088                 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
1089                 with appropriate return type.
1090                 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
1091         2006-10-26  Bruno Haible  <bruno@clisp.org>
1092                 * gnulib-local/modules/canonicalize (Makefile.am): Remove
1093                 EXTRA_DIST. Now done by gnulib-tool.
1094                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1095                 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
1096         2006-10-25  Bruno Haible  <bruno@clisp.org>
1097                 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
1098                 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
1099                 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
1100                 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
1101                 AC_RELOCATABLE instead of requiring it.
1102         2006-10-12  Bruno Haible  <bruno@clisp.org>
1103                 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
1104                 all files in lib/ through EXTRA_DIST.
1105                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1106         2006-09-14  Bruno Haible  <bruno@clisp.org>
1107                 * gnulib-local/lib/canonicalize.c: Include <config.h>
1108                 unconditionally.
1109                 * gnulib-local/lib/relocatable.c: Likewise.
1110                 * lib/relocatable.c: Likewise.
1111                 * gnulib-local/lib/relocwrapper.c: Likewise.
1112                 * gnulib-local/lib/xmalloc.c: Likewise.
1113                 * gnulib-local/lib/xreadlink.c: Likewise.
1114                 * gnulib-local/lib/xstrdup.c: Likewise.
1115         2006-08-02  Bruno Haible  <bruno@clisp.org>
1116                 * gnulib-local/modules/canonicalize: Put under LGPL.
1117                 * gnulib-local/modules/relocatable: Likewise.
1118         2006-07-18  Bruno Haible  <bruno@clisp.org>
1119                 * gnulib-local/xalloc.h (xzalloc): New declaration.
1120                 * gnulib-local/xmalloc.c (xzalloc): New function.
1122 2006-10-24  Bruno Haible  <bruno@clisp.org>
1124         * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
1125         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1127 2006-10-14  Bruno Haible  <bruno@clisp.org>
1129         * COPYING: New file.
1130         * README: Clarify copyright of the iconv program.
1131         Reported by Charles Wilson <cwilson@fastmail.fm>.
1133 2006-08-08  Bruno Haible  <bruno@clisp.org>
1135         * INSTALL.generic: Add a recommendation for Tru64.
1136         Reported by Gary V. Vaughan <gary@gnu.org>.
1138 2006-07-29  Bruno Haible  <bruno@clisp.org>
1140         * tests/check-subst: Set CHARSETALIASDIR.
1141         Needed so that "make check" works before "make install" on systems
1142         such as NetBSD.
1144 2006-07-29  Bruno Haible  <bruno@clisp.org>
1146         * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
1147         (AUTOCONF_FILES): Add the existing *.m4 files.
1149 2006-07-29  Bruno Haible  <bruno@clisp.org>
1151         * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
1152         * src/iconv.c: Assume <locale.h> exists.
1153         * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
1154         <string.h>.
1156 2006-07-29  Bruno Haible  <bruno@clisp.org>
1158         * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
1159         AC_ISC_POSIX, AC_HEADER_STDC.
1161 2006-07-29  Bruno Haible  <bruno@clisp.org>
1163         * configure.ac: Remove macro invocations that are redundant through
1164         gl_EARLY and gl_INIT.
1166 2006-07-29  Bruno Haible  <bruno@clisp.org>
1168         * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
1169         Avoids a sh syntax error.
1171 2006-07-29  Bruno Haible  <bruno@clisp.org>
1173         * gnulib-local/m4/relocatable.m4: Add comments.
1175 2006-07-29  Bruno Haible  <bruno@clisp.org>
1177         * gnulib-local/modules/libiconv-misc: New file.
1178         * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
1180         * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
1182 2006-07-29  Bruno Haible  <bruno@clisp.org>
1184         Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
1185         AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
1186         because we now assume that the system defines size_t and ptrdiff_t.
1188 2006-07-29  Bruno Haible  <bruno@clisp.org>
1190         Switch to using gnulib.
1191         * configure.ac (AC_PREREQ): Require autoconf-2.60.
1192         Invoke gl_EARLY and gl_INIT.
1193         * Makefile.devel (all): Depend on srclib/Makefile.am.
1194         (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
1195         GNU make.
1196         (GNULIB_MODULES): New variable.
1197         (srclib/Makefile.am): New rule.
1198         * gnulib-local: New directory.
1199         * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
1200         * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
1201         * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
1202         * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
1203         * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
1204         * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
1205         * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
1206         * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
1207         * gnulib-local/lib/error.h.diff: New file.
1208         * gnulib-local/lib/progname.h.diff: New file.
1209         * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
1210         * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
1211         * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
1212         * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
1213         * gnulib-local/lib/strerror.c.diff: New file.
1214         * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
1215         * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
1216         * gnulib-local/lib/width.c: Moved here from srclib/width.c.
1217         * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
1218         * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
1219         * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
1220         * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
1221         * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
1222         * gnulib-local/modules/canonicalize: New file.
1223         * gnulib-local/modules/progreloc: New file.
1224         * gnulib-local/modules/relocatable: New file.
1225         * gnulib-local/modules/relocwrapper: New file.
1226         * gnulib-local/modules/uniwidth: New file.
1227         * gnulib-local/modules/xalloc: New file.
1228         * gnulib-local/modules/xreadlink: New file.
1230         * m4/allocsa.m4: Remove file. Now taken from gnulib.
1231         * m4/codeset.m4: Likewise.
1232         * m4/eealloc.m4: Likewise.
1233         * m4/error.m4: Likewise.
1234         * m4/extensions.m4: Likewise.
1235         * m4/full-header-path.m4: Likewise.
1236         * m4/gettext.m4: Likewise.
1237         * m4/glibc21.m4: Likewise.
1238         * m4/iconv.m4: Likewise.
1239         * m4/intmax.m4: Likewise.
1240         * m4/inttypes-h.m4: Likewise.
1241         * m4/inttypes_h.m4: Likewise.
1242         * m4/isc-posix.m4: Likewise.
1243         * m4/lcmessage.m4: Likewise.
1244         * m4/lib-ld.m4: Likewise.
1245         * m4/lib-link.m4: Likewise.
1246         * m4/lib-prefix.m4: Likewise.
1247         * m4/longdouble.m4: Likewise.
1248         * m4/longlong.m4: Likewise.
1249         * m4/mbstate_t.m4: Likewise.
1250         * m4/nls.m4: Likewise.
1251         * m4/onceonly.m4: Likewise.
1252         * m4/pathmax.m4: Likewise.
1253         * m4/po.m4: Likewise.
1254         * m4/printf-posix.m4: Likewise.
1255         * m4/progtest.m4: Likewise.
1256         * m4/readlink.m4: Likewise.
1257         * m4/setenv.m4: Likewise.
1258         * m4/signed.m4: Likewise.
1259         * m4/size_max.m4: Likewise.
1260         * m4/ssize_t.m4: Likewise.
1261         * m4/stdbool.m4: Likewise.
1262         * m4/stdint.m4: Likewise.
1263         * m4/stdint_h.m4: Likewise.
1264         * m4/strerror.m4: Likewise.
1265         * m4/strerror_r.m4: Likewise.
1266         * m4/unistd_h.m4: Likewise.
1267         * m4/unlocked-io.m4: Likewise.
1268         * m4/visibility.m4: Likewise.
1269         * m4/wchar_t.m4: Likewise.
1270         * m4/wint_t.m4: Likewise.
1272         * srclib/allocsa.h: Remove file. Now taken from gnulib.
1273         * srclib/allocsa.c: Likewise.
1274         * srclib/binary-io.h: Likewise.
1275         * srclib/error.h: Likewise.
1276         * srclib/error.c: Likewise.
1277         * srclib/exit.h: Likewise.
1278         * srclib/gettext.h: Likewise.
1279         * srclib/memmove.c: Likewise.
1280         * srclib/pathmax.h: Likewise.
1281         * srclib/progname.h: Likewise.
1282         * srclib/progname.c: Likewise.
1283         * srclib/progreloc.c: Likewise.
1284         * srclib/readlink.c: Likewise.
1285         * srclib/setenv.h: Likewise.
1286         * srclib/setenv.c: Likewise.
1287         * srclib/stdbool_.h: Likewise.
1288         * srclib/stdint_.h: Likewise.
1289         * srclib/strerror.c: Likewise.
1290         * srclib/unlocked-io.h: Likewise.
1291         * srclib/unsetenv.c: Likewise.
1292         * srclib/Makefile.am: Remove file.
1294 2006-07-27  Bruno Haible  <bruno@clisp.org>
1296         Remove OS/2 build support that doesn't assume GNU make and GNU bash.
1297         * README.os2: Remove file.
1298         * Makefile.os2: Remove file.
1299         * lib/Makefile.os2: Remove file.
1300         * src/Makefile.os2: Remove file.
1301         * man/Makefile.os2: Remove file.
1302         * tests/Makefile.os2: Remove file.
1303         * tests/check-stateful.cmd: Remove file.
1304         * tests/check-stateless.cmd: Remove file.
1305         * tests/check-translit.cmd: Remove file.
1307 2006-07-25  Bruno Haible  <bruno@clisp.org>
1309         Remove MSVC/nmake build support.
1310         * windows: Remove directory.
1311         * Makefile.msvc: Remove file.
1312         * lib/Makefile.msvc: Remove file.
1313         * srclib/Makefile.msvc: Remove file.
1314         * src/Makefile.msvc: Remove file.
1315         * tests/Makefile.msvc: Remove file.
1316         * man/Makefile.msvc: Remove file.
1317         * po/Rules-msvc: Remove file.
1318         * po/Makefile.msvc.sh: Remove file.
1319         * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
1320         (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
1321         rules.
1322         (po/Makefile.msvc): Remove rule.
1323         (all): Update.
1325 2006-07-25  Bruno Haible  <bruno@clisp.org>
1327         Remove VMS support.
1328         * vms: Remove directory.
1329         * Makefile.vms: Remove file.
1330         * lib/Makefile.vms: Remove file.
1331         * srclib/Makefile.vms: Remove file.
1332         * src/Makefile.vms: Remove file.
1333         * tests/Makefile.vms: Remove file.
1334         * man/Makefile.vms: Remove file.
1335         * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
1336         (include/iconv.h_vms): Remove rule.
1337         (all): Update.
1339 2006-07-23  Bruno Haible  <bruno@clisp.org>
1341         * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
1342         * src/Makefile.in (iconv_no_i18n): Likewise.
1343         (install): Likewise.
1344         * tests/Makefile.in (table-from, table-to): Likewise.
1345         Needed because the CFLAGS can e.g. trigger profiling.
1346         Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
1348 2006-07-19  Bruno Haible  <bruno@clisp.org>
1350         * Version 1.11 released.
1352 2006-07-19  Bruno Haible  <bruno@clisp.org>
1354         * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
1355         (LIBADD_SOURCE): Add them here.
1357 2006-07-19  Bruno Haible  <bruno@clisp.org>
1359         * build-aux/config.guess: Update to GNU version 2006-07-02.
1360         * build-aux/config.sub: Likewise.
1362 2006-07-14  Bruno Haible  <bruno@clisp.org>
1364         * lib/Makefile.in (clean): Remove also *.stackdump.
1365         * src/Makefile.in (clean): Likewise.
1366         * tests/Makefile.in (clean): Likewise.
1368 2006-07-14  Bruno Haible  <bruno@clisp.org>
1370         * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
1371         cygwin or mingw.
1372         * tests/Makefile.in (clean): Remove also the programs, without
1373         EXEEXT. Needed for cygwin or mingw.
1374         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
1375         Remove also bin directory. Needed for cygwin and mingw.
1377 2006-07-03  Bruno Haible  <bruno@clisp.org>
1379         * src/iconv.c (check_subst_formatstring): Use ngettext.
1380         (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
1381         after 2006-01-22 change.
1382         * configure.ac: Require a gettext version with ngettext.
1384 2006-06-28  Bruno Haible  <bruno@clisp.org>
1386         * m4/gettext.m4: Update from GNU gettext.
1387         * m4/po.m4: Update from GNU gettext.
1389 2006-06-27  Bruno Haible  <bruno@clisp.org>
1391         * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
1392         * Makefile.in (datarootdir): New variable.
1393         (install, installdirs, uninstall): Also pass datarootdir.
1394         * configure.ac (mandir): Remove customization.
1395         * man/Makefile.in (datarootdir): New variable.
1396         (docdir, htmldir): Use autoconf-substituted value.
1397         * src/Makefile.in (datarootdir): New variable.
1398         (localedir): Use autoconf-substituted value.
1400 2006-06-27  Bruno Haible  <bruno@clisp.org>
1402         * m4/stdint.m4: Update from gnulib.
1403         * srclib/stdint_.h: Update from gnulib.
1404         * srclib/Makefile.am: Update.
1406 2006-06-17  Bruno Haible  <bruno@clisp.org>
1408         * srclib/unsetenv.c: Update from GNU gettext.
1409         * srclib/xreadlink.c: Likewise.
1411 2006-06-16  Bruno Haible  <bruno@clisp.org>
1413         * m4/full-header-path.m4: New file, from gnulib.
1414         * m4/size_max.m4: New file, from gnulib.
1415         * m4/stdint.m4: Update from gnulib.
1416         * srclib/stdint_.h: Update from gnulib.
1417         * srclib/Makefile.am (stdint.h): Likewise.
1418         * Makefile.devel (aclocal.m4): Update dependencies.
1420 2006-06-16  Bruno Haible  <bruno@clisp.org>
1422         * m4/ssize_t.m4: Update from GNU gettext.
1424 2006-06-12  Bruno Haible  <bruno@clisp.org>
1426         * m4/gettext.m4: Update from GNU gettext.
1427         * m4/inttypes-h.m4: New file, from GNU gettext.
1428         * m4/inttypes.m4: Remove file.
1429         * m4/stdint.m4 (gl_STDINT_H): Update.
1430         * Makefile.devel (aclocal.m4): Update dependencies.
1432 2006-06-10  Bruno Haible  <bruno@clisp.org>
1434         * src/iconv.c (error) [NO_I18N]: Define here instead of including
1435         error.h. Fixes link failure introduced on 2006-01-22.
1437 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1439         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
1440         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
1442 2006-05-20  Bruno Haible  <bruno@clisp.org>
1444         * tests/BIG5-HKSCS-1999-snippet: New file.
1445         * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
1446         * tests/BIG5-HKSCS-2001-snippet: New file.
1447         * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
1448         * tests/BIG5-HKSCS-2004-snippet: New file.
1449         * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
1450         * tests/Makefile.in (check): Test also the stateful parts of
1451         BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
1453 2006-05-17  Bruno Haible  <bruno@clisp.org>
1455         Implement newer releases of BIG5-HKSCS.
1456         * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
1457         hkscs2004.h.
1458         (hkscs.h): Remove rule.
1459         (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
1460         * tools/cjk_tab_to_h.c (output_title): Update year.
1461         (main): Recognize hkscs1999, hkscs2001, hkscs2004.
1462         * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
1463         BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
1464         * lib/hkscs.h: Remove file.
1465         * lib/hkscs1999.h: New file.
1466         * lib/hkscs2001.h: New file.
1467         * lib/hkscs2004.h: New file.
1468         * lib/big5hkscs.h: Remove file.
1469         * lib/big5hkscs1999.h: New file.
1470         * lib/big5hkscs2001.h: New file.
1471         * lib/big5hkscs2004.h: New file.
1472         * lib/converters.h: Include the new files.
1473         * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
1474         * tests/BIG5-HKSCS.TXT: Remove file.
1475         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
1476         * tests/BIG5-HKSCS-1999.TXT: New file.
1477         * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
1478         * tests/BIG5-HKSCS-2001.TXT: New file.
1479         * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
1480         * tests/BIG5-HKSCS-2004.TXT: New file.
1481         * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
1482         * tests/check-stateless: Convert colon in the charset name to a dash in
1483         the file name.
1484         * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
1485         BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
1486         * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
1487         * tests/Makefile.os2 (check): Likewise.
1489 2006-05-17  Bruno Haible  <bruno@clisp.org>
1491         * srclib/progreloc.c: Update from GNU gettext.
1493 2006-05-16  Bruno Haible  <bruno@clisp.org>
1495         * src/Makefile.in (clean): Use EXEEXT.
1496         * tests/Makefile.in (check, clean): Likewise.
1498 2006-05-15  Bruno Haible  <bruno@clisp.org>
1500         * configure.ac: Move some checks before AC_RELOCATABLE.
1502 2006-05-15  Bruno Haible  <bruno@clisp.org>
1504         Support for building shared libraries on mingw and Cygwin.
1505         * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
1506         * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
1507         * woe32dll/export.h: New file, from GNU gettext.
1508         * woe32dll/iconv-exports.h: New file.
1509         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1510         include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
1511         * lib/Makefile.in (INCLUDES): Add -I for parent directory.
1512         (LDFLAGS): Add WOE32DLL dependent flags.
1513         (LDFLAGS_yes, LDFLAGS_no): New variables.
1514         (OBJECTS): Add WOE32DLL dependent objects.
1515         (OBJECTS_yes, OBJECTS_no): New variables.
1516         (iconv-exports.lo): New rule.
1518 2006-05-15  Bruno Haible  <bruno@clisp.org>
1520         * srclib/gettext.h: Update from GNU gettext.
1521         * srclib/pathmax.h: Update from GNU gettext.
1522         * srclib/progreloc.c: Update from GNU gettext.
1523         * srclib/unsetenv.c: Update from GNU gettext.
1524         * srclib/Makefile.am: Add snippet for creation of unistd.h.
1525         * m4/extensions.m4: Update from GNU gettext.
1526         * m4/gettext.m4: Update from GNU gettext.
1527         * m4/lib-ld.m4: Update from GNU gettext.
1528         * m4/lib-link.m4: Update from GNU gettext.
1529         * m4/lib-prefix.m4: Update from GNU gettext.
1530         * m4/longdouble.m4: Update from GNU gettext.
1531         * m4/nls.m4: Update from GNU gettext.
1532         * m4/onceonly.m4: Update from GNU gettext.
1533         * m4/po.m4: Update from GNU gettext.
1534         * m4/relocatable.m4: Update from GNU gettext.
1535         * m4/unistd_h.m4: New file, from GNU gettext.
1536         * Makefile.devel (aclocal.m4): Depend on it.
1537         * configure.ac: Invoke gl_HEADER_UNISTD.
1539 2006-05-14  Bruno Haible  <bruno@clisp.org>,
1540             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1542         * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
1543         (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
1544         (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
1545         Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
1547 2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
1549         * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
1550         compiling a shared library object.
1552 2006-05-15  Bruno Haible  <bruno@clisp.org>
1554         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
1556 2006-03-31  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1558         * djgpp/*: Update.
1560 2006-01-23  Bruno Haible  <bruno@clisp.org>
1562         * configure.ac: Invoke gl_ALLOCSA.
1564         * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
1566 2006-01-22  Bruno Haible  <bruno@clisp.org>
1568         * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
1569         gettext().
1571 2006-01-22  Bruno Haible  <bruno@clisp.org>
1573         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
1575 2006-01-22  Bruno Haible  <bruno@clisp.org>
1577         * src/iconv.c: Include error.h, exit.h.
1578         (print_version): Use EXIT_SUCCESS.
1579         (check_subst_formatstring, subst_mb_to_uc_fallback,
1580         subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
1581         subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
1582         error() instead of fprintf to stderr.
1584 2006-01-22  Bruno Haible  <bruno@clisp.org>
1586         New feature: character-dependent substitutions.
1587         * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
1588         iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
1589         iconv_wchar_wc_to_mb_fallback): New types.
1590         (struct iconv_fallbacks): New structure type.
1591         (ICONV_SET_FALLBACKS): New macro.
1592         * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
1593         * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
1594         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1595         include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
1596         * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
1597         * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
1598         (uc_to_mb_write_replacement): New function.
1599         (struct mb_to_uc_fallback_locals): New type.
1600         (mb_to_uc_write_replacement): New function.
1601         (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
1602         (unicode_loop_reset): Call uc_to_mb_fallback.
1603         * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
1604         (wc_to_mb_write_replacement): New function.
1605         (wchar_from_loop_convert): Call wc_to_mb_fallback.
1606         (struct mb_to_wc_fallback_locals): New type.
1607         (mb_to_wc_write_replacement): New function.
1608         (wchar_to_loop_convert): Call mb_to_wc_fallback.
1609         * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
1610         (iconvctl): Handle ICONV_SET_FALLBACKS.
1611         * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
1612         * src/iconv.c: Include limits.h.
1613         (isdigit, c_isprint): New macros.
1614         (usage): Document long options and new options.
1615         (check_subst_formatstring): New function.
1616         (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
1617         variables.
1618         (ilseq_byte_subst_size, ilseq_wchar_subst_size,
1619         ilseq_unicode_subst_size): New variables.
1620         (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
1621         ilseq_unicode_subst_buffer): New variables.
1622         (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
1623         (subst_mb_to_uc_fallback): New function.
1624         (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
1625         (subst_uc_to_mb_fallback): New function.
1626         (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
1627         (subst_mb_to_wc_fallback): New function.
1628         (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
1629         (subst_wc_to_mb_fallback): New function.
1630         (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
1631         (subst_mb_to_mb_fallback): New function.
1632         (convert): Enlarge the outbuf when the conversion failed with E2BIG.
1633         (main): Handle new options --byte-subst, --widechar-subst,
1634         --unicode-subst.
1635         * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
1636         options.
1637         * tests/check-subst: New file.
1638         * tests/Makefile.in (check): Also invoke check-subst.
1639         Suggested by James Taylor <james@oakseed.demon.co.uk>.
1641 2006-01-21  Bruno Haible  <bruno@clisp.org>
1643         * src/iconv.c (print_version): Bump copyright year.
1644         (main): Accept long options --from-code, --to-code, --list, --silent.
1645         Accept abbreviated long options, like getopt() does.
1646         * man/iconv.1: Document long options.
1648 2005-12-29  Bruno Haible  <bruno@clisp.org>
1650         * src/iconv.c (print_version): Update copyright year.
1652 2005-12-29  Bruno Haible  <bruno@clisp.org>
1654         * configure.ac: Renamed from configure.in.
1655         * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
1657 2005-12-29  Bruno Haible  <bruno@clisp.org>
1659         * configure.in: Bump version number.
1660         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1661         * windows/iconv.rc: Likewise.
1662         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
1664 2005-12-29  Bruno Haible  <bruno@clisp.org>
1666         * build-aux/config.guess: Update to GNU version 2005-12-23.
1667         * build-aux/config.sub: Likewise.
1668         * build-aux/config.libpath: Update from GNU gettext.
1669         * build-aux/install-sh: Upgrade to automake-1.9.5.
1670         * build-aux/missing: Upgrade to automake-1.9.5.
1671         * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
1673 2005-12-29  Bruno Haible  <bruno@clisp.org>
1675         * m4/alloca.m4: Update from GNU gettext.
1676         * m4/allocsa.m4: Update from GNU gettext.
1677         * m4/canonicalize.m4: Update from GNU gettext.
1678         * m4/codeset.m4: Update from GNU gettext.
1679         * m4/eealloc.m4: Update from GNU gettext.
1680         * m4/error.m4: Update from GNU gettext.
1681         * m4/extensions.m4: Update from GNU gettext.
1682         * m4/gettext.m4: Update from GNU gettext.
1683         * m4/glibc21.m4: Update from GNU gettext.
1684         * m4/iconv.m4: Update from GNU gettext.
1685         * m4/intmax.m4: Update from GNU gettext.
1686         * m4/inttypes_h.m4: New file, from GNU gettext.
1687         * m4/isc-posix.m4: Update from GNU gettext.
1688         * m4/lcmessage.m4: Update from GNU gettext.
1689         * m4/longdouble.m4: Update from GNU gettext.
1690         * m4/longlong.m4: Update from GNU gettext.
1691         * m4/mbstate_t.m4: Update from GNU gettext.
1692         * m4/nls.m4: Update from GNU gettext.
1693         * m4/onceonly.m4: Update from GNU gettext.
1694         * m4/pathmax.m4: Update from GNU gettext.
1695         * m4/po.m4: Update from GNU gettext.
1696         * m4/printf-posix.m4: Update from GNU gettext.
1697         * m4/progtest.m4: Update from GNU gettext.
1698         * m4/readlink.m4: Update from GNU gettext.
1699         * m4/relocatable.m4: Update from GNU gettext.
1700         * m4/setenv.m4: Update from GNU gettext.
1701         * m4/signed.m4: Update from GNU gettext.
1702         * m4/ssize_t.m4: Update from GNU gettext.
1703         * m4/stdbool.m4: Update from GNU gettext.
1704         * m4/stdint_h.m4: New file, from GNU gettext.
1705         * m4/strerror.m4: Update from GNU gettext.
1706         * m4/strerror_r.m4: Update from GNU gettext.
1707         * m4/unlocked-io.m4: Update from GNU gettext.
1708         * m4/wchar_t.m4: Update from GNU gettext.
1709         * m4/wint_t.m4: Update from GNU gettext.
1710         * m4/xreadlink.m4: Update from GNU gettext.
1711         * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
1712         m4/stdint_h.m4 as well.
1713         * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
1714         Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
1715         Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
1716         Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
1717         Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
1718         SRCLIBOBJS instead of LIBOBJS.
1719         * srclib/alloca_.h: Update from GNU gettext.
1720         * srclib/allocsa.h: Update from GNU gettext.
1721         * srclib/canonicalize.c: Update from GNU gettext.
1722         * srclib/error.h: Update from GNU gettext.
1723         * srclib/error.c: Update from GNU gettext.
1724         * srclib/gettext.h: Update from GNU gettext.
1725         * srclib/memmove.c: Update from GNU gettext.
1726         * srclib/progname.h: Update from GNU gettext.
1727         * srclib/progname.c: Update from GNU gettext.
1728         * srclib/progreloc.c: Update from GNU gettext.
1729         * srclib/readlink.c: Update from GNU gettext.
1730         * srclib/relocatable.c: Update from GNU gettext.
1731         * srclib/relocwrapper.c: Update from GNU gettext.
1732         * srclib/setenv.h: Update from GNU gettext.
1733         * srclib/setenv.c: Update from GNU gettext.
1734         * srclib/stdbool_.h: Update from GNU gettext.
1735         * srclib/stdint_.h: Update from gnulib.
1736         * srclib/strerror.c: Update from GNU gettext.
1737         * srclib/unlocked-io.h: Update from GNU gettext.
1738         * srclib/unsetenv.c: Update from GNU gettext.
1739         * srclib/xalloc.h: Update from GNU gettext.
1740         * srclib/xmalloc.c: Update from GNU gettext.
1741         * srclib/xreadlink.c: Update from GNU gettext.
1742         * srclib/xstrdup.c: Update from GNU gettext.
1743         * srclib/Makefile.am (DEFS): Also define EXEEXT.
1744         (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
1745         (libicrt_a_DEPENDENCIES): New variable.
1746         * src/Makefile.in (EXEEXT): New variable.
1747         * build-aux/install-reloc: Update from GNU gettext.
1748         * build-aux/reloc-ldflags: Update from GNU gettext.
1749         * build-aux/config.rpath: Update from GNU gettext.
1751 2005-12-29  Bruno Haible  <bruno@clisp.org>
1753         * m4/libtool.m4: Update, based on libtool-1.5.22.
1754         * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
1756 2005-12-24  Bruno Haible  <bruno@clisp.org>
1758         Check the whole range of GB18030.
1759         * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
1760         * tests/gengb18030z.c: New file.
1761         * tests/table-from.c (main): For GB18030, don't stop at U+10000.
1762         * tests/table-to.c (main): Likewise.
1763         * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
1764         GB18030-BMP.TXT.
1765         (clean): Remove also gengb18030z and GB18030.TXT.
1766         * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
1767         GB18030-BMP.TXT.
1768         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1769         * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
1770         GB18030.TXT on the fly from GB18030-BMP.TXT.
1771         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1773 2005-12-20  Bruno Haible  <bruno@clisp.org>
1775         * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
1776         up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
1777         to nothing.
1779 2005-12-22  Bruno Haible  <bruno@clisp.org>
1781         Extend GB18030 converter to cover the entire Unicode PUA.
1782         * lib/gb18030.h: Update comments, based on second printing.
1783         (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
1784         (gb18030_pua2charset): New array.
1785         (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
1786         part of range U+E766..U+E864.
1787         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
1788         area.
1789         (gb18030ext_mbtowc): Add mapping for the two-byte part of range
1790         U+E766..U+E864.
1791         * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
1792         gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
1793         intervals.
1794         (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
1795         * tests/GB18030.TXT: Complete mappings to private area.
1797 2005-12-22  Bruno Haible  <bruno@clisp.org>
1799         * lib/gbk.h: Update comments.
1801 2005-12-20  Bruno Haible  <bruno@clisp.org>
1803         Add private area mappings to CP949.
1804         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
1805         many others do it.
1806         * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
1808 2005-12-15  Bruno Haible  <bruno@clisp.org>
1810         Add private area mappings to CP950.
1811         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
1812         most others do it.
1813         * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
1815 2005-12-15  Bruno Haible  <bruno@clisp.org>
1817         Make CP936 follow what Microsoft does.
1818         In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
1819         added a 0x80 - U+20AC mapping to the code chart, but not to the
1820         tooltips and not to the list of mappings.
1821         * lib/cp936.h: New file.
1822         * lib/gbk.h: Update comments.
1823         * lib/ces_gbk.h: Update comments.
1824         * lib/converters.h: Include cp936.h.
1825         * lib/encodings.def (CP936): New encoding.
1826         (GBK): Remove CP936 aliases.
1827         * README, man/iconv_open.3: Add CP936.
1828         * tests/Makefile.in (check): Check CP936.
1829         * tests/Makefile.msvc (check): Likewise.
1830         * tests/Makefile.os2 (check): Likewise.
1831         * tests/CP936.TXT: New file.
1833 2005-12-14  Bruno Haible  <bruno@clisp.org>
1835         * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
1836         U+FFE1 like Microsoft does it.
1837         * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
1838         Reported by Lei Wang <lwang@qilinsoft.com>.
1840 2005-12-14  Bruno Haible  <bruno@clisp.org>
1842         Follow Euro sign addition done in 1999 in
1843         http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
1844         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
1845         * tests/CP950.TXT: Add mapping for 0xA3E1.
1847 2005-11-11  Bruno Haible  <bruno@clisp.org>
1849         * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
1850         and only two bytes are available in the output buffer, return
1851         RET_TOOSMALL instead of overrunning the output buffer.
1852         * lib/isoir165.h (isoir165_wctomb): When only one byte is available
1853         in the output buffer, don't overrun the output buffer.
1854         Reported by William Bardwell <bardwell@curl.com>.
1856 2005-09-18  Bruno Haible  <bruno@clisp.org>
1858         * m4/libtool.m4: Update, based on libtool-1.5.20.
1859         * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
1861 2005-08-12  Bruno Haible  <bruno@clisp.org>
1863         * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
1864         * tests/BIG5-2003.TXT: Likewise.
1865         * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
1866         Reported by Ping Yeh <ping@pingyeh.net>.
1868 2005-07-24  Bruno Haible  <bruno@clisp.org>
1870         Tidy up exported symbols.
1871         * m4/visibility.m4: New file.
1872         * include/export.h: New file.
1873         * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
1874         create also include/iconv.h.inst.
1875         * Makefile.devel (all): Depend on include/iconv.h.build.in.
1876         (aclocal.m4): Depend on m4/visibility.m4.
1877         (include/iconv.h.build.in): New rule.
1878         * Makefile.in (install-lib, install): Install include/iconv.h.inst,
1879         not the include/iconv.h that was used for building.
1880         (distclean, maintainer-clean): Remove also include/iconv.h.inst.
1881         * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
1882         (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
1883         * lib/config.h.in (HAVE_VISIBILITY): New macro.
1884         * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1885         Define to the gcc visibility attribute.
1886         * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1887         Likewise.
1889 2005-07-25  Bruno Haible  <bruno@clisp.org>
1891         2003-08-24  Bruno Haible  <bruno@clisp.org>
1892         * lib/relocatable.h: Make this file includable in C++ mode: add extern
1893         "C".
1895 2005-07-08  Bruno Haible  <bruno@clisp.org>
1897         * Version 1.10 released.
1899 2005-07-08  Bruno Haible  <bruno@clisp.org>
1901         * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
1902         executable after installing it.
1904 2005-07-08  Bruno Haible  <bruno@clisp.org>
1906         * configure.in: Bump version number.
1907         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1908         * windows/iconv.rc: Likewise.
1909         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
1911 2005-07-05  Bruno Haible  <bruno@clisp.org>
1913         * Makefile.devel (ACLOCAL): New variable.
1914         (aclocal.m4): Use it.
1916 2005-07-05  Bruno Haible  <bruno@clisp.org>
1918         * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
1919         SET_RELOCATABLE to a trivial value.
1921 2004-08-08  Bruno Haible  <bruno@clisp.org>
1923         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1924         be used.
1926 2004-04-28  Bruno Haible  <bruno@clisp.org>
1928         * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
1929         Treat Cygwin like Windows, since it now accepts Windows pathnames.
1931 2005-06-09  Bruno Haible  <bruno@clisp.org>
1933         * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
1934         * lib/Makefile.in (mkinstalldirs): Likewise.
1935         * src/Makefile.in (mkinstalldirs): Likewise.
1936         * man/Makefile.in (mkinstalldirs): Likewise.
1938 2005-06-08  Bruno Haible  <bruno@clisp.org>
1940         * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
1941         that don't support symbolic links.
1943 2005-06-08  Bruno Haible  <bruno@clisp.org>
1945         * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
1946         gcc warning on mingw.
1948 2005-05-22  Bruno Haible  <bruno@clisp.org>
1950         Implement and document BIG5-2003.
1951         * lib/big5_2003.h: New file.
1952         * lib/converters.h: Include it.
1953         * lib/encodings_extra.def (BIG5-2003): New encoding.
1954         * README, man/iconv_open.3: Add BIG5-2003.
1955         * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
1956         * tests/BIG5-2003.TXT: New file.
1958 2005-05-21  Bruno Haible  <bruno@clisp.org>
1960         Add EURO SIGN to EUC-TW converter.
1961         * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
1962         (cns11643_1_mbtowc): Update.
1963         * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
1964         (cns11643_inv_uni2indx_page*): Update.
1965         * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
1966         part of row 42.
1967         * tests/EUC-TW.TXT: Add entry for 0x20AC.
1968         * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
1970 2005-05-03  Bruno Haible  <bruno@clisp.org>
1972         * tools/Makefile (ALL): Add pt154.h.
1973         (pt154.h): New rule.
1974         * lib/encodings.def: Add PT154.
1975         * lib/pt154.h: New file.
1976         * lib/converters.h: Include it.
1977         * README, man/iconv_open.3: Add PT154.
1978         * NOTES: Mention PT154.
1979         * tests/PT154.TXT: New file.
1980         * tests/Makefile.in (check): Also test PT154.
1981         * tests/Makefile.msvc (check): Likewise.
1982         * tests/Makefile.os2 (check): Likewise.
1984 2005-03-29  Bruno Haible  <bruno@clisp.org>
1986         Rename libiconv_plug.so to preloadable_libiconv.so.
1987         * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
1988         libiconv_plug.so.
1989         * lib/Makefile.in (preloadable_libiconv.so): Renamed from
1990         libiconv_plug.so.
1991         (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
1992         (preloadable_libiconv_solaris.so): Renamed from
1993         libiconv_plug_solaris.so.
1994         (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
1995         (clean): Update.
1996         * README: Update.
1998 2005-03-29  Bruno Haible  <bruno@clisp.org>
2000         Implement and document ATARIST.
2001         * tools/Makefile (ALL): Add atarist.h.
2002         (atarist.h): New rule.
2003         * lib/atarist.h: New file.
2004         * lib/converters.h: Include it.
2005         * lib/encodings_extra.def (ATARIST): New encoding.
2006         * README, man/iconv_open.3: Add ATARIST.
2007         * tests/Makefile.in (check-extra-yes): Check ATARIST.
2008         * tests/ATARIST.TXT: New file.
2010 2005-03-22  Bruno Haible  <bruno@clisp.org>
2012         * build-aux: New directory, renamed from autoconf.
2013         * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2015 2005-03-16  Bruno Haible  <bruno@clisp.org>
2017         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
2018         HAVE_LONGLONG_64BIT.
2019         * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
2020         HAVE_LONGLONG_64BIT.
2021         * srclib/Makefile.am (stdint.h): Likewise.
2023 2005-03-14  Bruno Haible  <bruno@clisp.org>
2025         * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
2026         extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
2027         printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
2028         wchar_t.m4, wint_t.m4.
2030 2005-03-13  Bruno Haible  <bruno@clisp.org>
2032         Make stdout error checking reliable, also when writing to a NFS file.
2033         * src/iconv.c (main): Check the return value of fclose(stdout).
2034         * lib/genaliases.c (main): Likewise.
2035         * lib/genaliases2.c (main): Likewise.
2036         * lib/genflags.c (main): Likewise.
2037         * lib/gentranslit.c (main): Likewise.
2038         * tests/genutf8.c (main): Likewise.
2039         * tests/table-from.c (main): Likewise.
2040         * tests/table-to.c (main): Likewise.
2042 2005-03-13  Bruno Haible  <bruno@clisp.org>
2044         * src/iconv.c (convert): Before outputting an error message, flush
2045         stdout and output a newline if suitable.
2047 2005-03-13  Bruno Haible  <bruno@clisp.org>
2049         Improved error messages.
2050         * srclib/width.c: New file, from GNU clisp.
2051         * srclib/uniwidth.h: New file, from GNU clisp with modifications.
2052         * srclib/unitypes.h: New file, from GNU clisp with modifications.
2053         * srclib/cjk.h: New file, from GNU clisp.
2054         * srclib/streq.h: New file, from GNU clisp.
2055         * srclib/stdint_.h: New file, from gnulib.
2056         * m4/stdint.m4: New file, from gnulib.
2057         * m4/inttypes.m4: New file, from gnulib.
2058         * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
2059         (BUILT_SOURCES): New variable.
2060         (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
2061         streq.h.
2062         * configure.in: Invoke gl_STDINT_H.
2063         * src/iconv.c: Include cjk.h, uniwidth.h.
2064         (line, column, cjkcode): New variables.
2065         (update_line_column): New function.
2066         (convert): Initialize line and column. In all error message, show also
2067         the line and column number.
2068         (main): Initialize cjkcode. Set up hooks to call update_line_column.
2070 2005-03-13  Bruno Haible  <bruno@clisp.org>
2072         * include/iconv.h.in (iconv_canonicalize): New declaration.
2073         * lib/genaliases.c (emit_encoding): Take two output streams as
2074         arguments. To the second stream, emit a shell command for extracting
2075         offsets into the gperf generated string pool.
2076         (main): Write the shell commands into file descriptors 3 and 4.
2077         * lib/genaliases2.c (emit_encoding): Take two output streams as
2078         arguments. To the second stream, emit an expression for the offset
2079         into the string pool.
2080         (main): Write the offsets into file descriptor 3.
2081         * Makefile.devel (lib/aliases.gperf): Remove target.
2082         (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
2083         lib/canonical.h and lib/canonical_local.h.
2084         (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
2085         (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
2086         (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
2087         (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
2088         * lib/iconv.c (stringpool2): Provide default definition when it doesn't
2089         exist.
2090         (all_canonical): New array.
2091         (iconv_canonicalize): New function.
2093 2005-03-13  Bruno Haible  <bruno@clisp.org>
2095         * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
2096         iconv_hooks): New types.
2097         (ICONV_SET_HOOKS): New macro.
2098         * lib/converters.h (struct conv_struct): Add field 'hooks'.
2099         * lib/iconv.c (iconv_open): Initialize hooks to NULL.
2100         (iconvctl): Handle ICONV_SET_HOOKS.
2101         * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
2102         conversion of a character, call the uc_hook.
2103         * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
2104         the wc_hook.
2105         * lib/genflags.c (iconv_hooks): Provide a dummy definition.
2107 2005-02-05  Bruno Haible  <bruno@clisp.org>
2109         * src/iconv.c (main): In case of unsupported encodings, show a hint
2110         towards "iconv -l".
2112 2005-01-06  Bruno Haible  <bruno@clisp.org>
2114         * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
2115         * lib/Makefile.vms (DEFS): Likewise.
2116         Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2118 2005-01-05  Bruno Haible  <bruno@clisp.org>
2120         * autoconf/config.rpath: Update from GNU gettext.
2122 2005-01-05  Bruno Haible  <bruno@clisp.org>
2124         Assume automake-1.9.
2125         * Makefile.devel (AUTOMAKE): Assume automake-1.9.
2127 2005-01-05  Bruno Haible  <bruno@clisp.org>
2129         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
2130         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2132 2004-11-11  Bruno Haible  <bruno@clisp.org>
2134         * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
2135         in arbitrary order.
2136         Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2138 2004-09-21  Juan Manuel Guerrero  <st001906@hrz1.hrz.tu-darmstadt.de>
2140         * djgpp/config.bat: Update.
2141         * djgpp/config.sed: Update.
2142         * djgpp/config.site: Update.
2143         * djgpp/edtest.bat: Update.
2144         * djgpp/fnchange.in: Update.
2145         * djgpp/Makefile.maint: Update.
2146         * djgpp/makefile.sed: Update.
2147         * djgpp/README.in: Update.
2148         * djgpp/sources.sed: Update.
2149         * djgpp/translit-check.sed: Update.
2151 2004-08-25  Bruno Haible  <bruno@clisp.org>
2153         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
2154         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2156 2004-07-31  Bruno Haible  <bruno@clisp.org>
2158         Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
2159         * tools/Makefile (jisx0213.h): Bump version number.
2160         * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
2161         U+2299 -> U+29BF, and add 10 new characters.
2162         * tools/cjk_tab_to_h.c (output_title): Bump year.
2163         (do_jisx0213): Update comments. Emit a conditional 'inline'.
2164         * lib/jisx0213.h: Regenerated.
2165         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
2166         ESC $ ( Q as a synonym of ESC $ ( O.
2167         (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
2168         * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
2169         U+2299 -> U+29BF, and add 10 new characters.
2170         * tests/SHIFT_JISX0213.TXT: Likewise.
2171         * tests/ISO-2022-JP-3-snippet: Update.
2172         * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2174 2004-07-22  Bruno Haible  <bruno@clisp.org>
2176         * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
2177         * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
2178         * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
2179         * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2181 2004-07-22  Bruno Haible  <bruno@clisp.org>
2183         * tools/Makefile (ALL): Add iso8859_11.h.
2184         (iso8859_11.h): New rule.
2185         * lib/encodings.def: Add ISO-8859-11.
2186         * lib/iso8859_11.h: New file.
2187         * lib/converters.h: Include it.
2188         * tests/ISO-8859-11.TXT: New file.
2189         * tests/Makefile.in (check): Also test ISO-8859-11.
2190         * tests/Makefile.msvc (check): Likewise.
2191         * tests/Makefile.os2 (check): Likewise.
2193 2004-07-17  Bruno Haible  <bruno@clisp.org>
2195         * src/iconv.c (main): Terminate option parsing when option -- is seen.
2196         Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2198 2004-03-05  Bruno Haible  <bruno@clisp.org>
2200         * src/Makefile.in (install): Make DESTDIR work on HP-UX.
2201         Reported by Bob Proulx <box@proulx.com>.
2203 2004-02-19  Bruno Haible  <bruno@clisp.org>
2205         * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
2206         0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
2207         (viet_comp_table0301_len): Increment by 4.
2209         * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
2210         which are not entries in cp1255_comp_table_data.
2211         * lib/cp1258.h (cp1258_comp_bases): New array.
2212         (cp1258_mbtowc): Don't delay the handling of characters which are not
2213         relevant entries in viet_comp_table_data.
2214         * lib/tcvn.h (tcvn_comp_bases): New array.
2215         (tcvn_mbtowc): Don't delay the handling of characters which are not
2216         relevant entries in viet_comp_table_data.
2217         Reported by Alain Bench <veronatif@free.fr>.
2219 2004-02-02  Perry Rapp  <lifelines_3_0_18@hotmail.com>
2220             Bruno Haible  <bruno@clisp.org>
2222         * man/iconvctl.3: New file.
2223         * man/iconv.3: Refer to it in "See also".
2224         * man/iconv_open.3: Likewise.
2226 2004-01-24  Bruno Haible  <bruno@clisp.org>
2228         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2229         be used.
2231 2004-01-20  Bruno Haible  <bruno@clisp.org>
2233         Upgrade from gettext-0.14.
2235         * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
2236         instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
2237         * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
2238         xalloc.h. Remove xmalloc.h.
2239         (libicrt_a_LIBADD): Remove @ALLOCA@.
2240         * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
2241         (allocsa.obj): New rule.
2242         * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
2243         (allocsa.obj): New rule.
2244         * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
2245         (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
2247     lib/:
2249         2003-10-09  Bruno Haible  <bruno@clisp.org>
2250         * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2252         2003-08-01  Bruno Haible  <bruno@clisp.org>
2253         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2254         Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2256         2003-06-22  Bruno Haible  <bruno@clisp.org>
2257         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2258         the case when it is not used.
2259         Reported by Pavel Roskin <proski@gnu.org>.
2261     m4/:
2263         * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
2264         * m4/po.m4: Likewise.
2266         * m4/readlink.m4: New file, from GNU gettext.
2268         2003-11-30  Bruno Haible  <bruno@clisp.org>
2269         * m4/allocsa.m4: New file.
2270         * m4/eealloc.m4: New file.
2271         * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
2272         AC_FUNC_ALLOCA.
2274         2003-10-21  Bruno Haible  <bruno@clisp.org>
2275         * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
2276         readlink().
2278         2003-08-24  Bruno Haible  <bruno@clisp.org>
2279         * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
2280         since the substitution of @host@ may occur before the substitution of
2281         @SET_RELOCATABLE@.
2283         2003-08-23  Bruno Haible  <bruno@clisp.org>
2284         * stdbool.m4: Replace with the version from gnulib, without
2285         AC_HEADER_STDBOOL.
2287         2003-08-08  Paul Eggert  <eggert@twinsun.com>
2288         * m4/extensions.m4: New file.
2289         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
2290         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
2292         2003-07-01  Bruno Haible  <bruno@clisp.org>
2293         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
2294         <sys/types.h> should be sufficient.
2295         Reported by Paul Eggert.
2297         2003-07-01  Bruno Haible  <bruno@clisp.org>
2298         * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
2299         from aclocal-1.4-p4.
2300         Reported by Luke Schierer <lschiere@rackspace.com> and
2301         Michael C. Toren <mct@toren.net>.
2303         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2304         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
2305         xreadlink.c now includes it unconditionally.
2307         2003-06-17  Paul Eggert  <eggert@twinsun.com>
2308         * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
2309         for portability to POSIX 1003.1-2001.  Backported from libtool-1.5.
2311         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2312         * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
2313         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
2315         2002-12-24  Bruno Haible  <bruno@clisp.org>
2316         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
2317         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
2318         when invoked twice.
2319         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
2320         gt_FUNC_SETENV.
2322     srclib/:
2324         2003-11-30  Bruno Haible  <bruno@clisp.org>
2325         * srclib/alloca.c: Remove file.
2327         2003-11-30  Bruno Haible  <bruno@clisp.org>
2328         Safer stack allocation.
2329         * srclib/allocsa.h: New file.
2330         * srclib/allocsa.c: New file.
2331         * canonicalize.c: Include allocsa.h.
2332         (__realpath): Use allocsa instead of alloca. Don't clobber errno right
2333         before returning NULL.
2334         * srclib/relocwrapper.c: Indirectly depends on allocsa.
2335         * srclib/setenv.c: Include allocsa.h.
2336         (alloca): Remove fallback definition.
2337         (freea): Remove macro.
2338         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
2339         instead of freea.
2341         2003-11-17  Bruno Haible  <bruno@clisp.org>
2342         * srclib/canonicalize.c: #undef realpath after <config.h> but before
2343         the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
2344         Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2346         2003-10-21  Bruno Haible  <bruno@clisp.org>
2347         * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
2348         systems without symbolic links.
2350         2003-10-17  Bruno Haible  <bruno@clisp.org>
2351         * srclib/binary-io.h: Avoid warnings on Cygwin.
2353         2003-10-09  Bruno Haible  <bruno@clisp.org>
2354         * srclib/xalloc.h: Renamed from xmalloc.h.
2355         * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
2356         * srclib/relocatable.c: Likewise.
2357         * srclib/xmalloc.c: Likewise.
2358         * srclib/xreadlink.c: Likewise.
2359         * srclib/xstrdup.c: Likewise.
2361         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2362         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2364         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2365         * srclib/setenv.c (clearenv): Define via prototype.
2367         2003-09-10  Bruno Haible  <bruno@clisp.org>
2368         * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
2369         * srclib/unsetenv.c: Likewise.
2371         2003-08-28  Bruno Haible  <bruno@clisp.org>
2372         * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
2373         a warning on QNX, which defines O_BINARY to 000000.
2375         2003-08-24  Bruno Haible  <bruno@clisp.org>
2376         * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
2377         when MSVC7 <stdio.h> is included later.
2379         2003-08-24  Bruno Haible  <bruno@clisp.org>
2380         * srclib/error.h: Use ANSI C "..." declarations when compiling with
2381         MSVC, even though it doesn't define __STDC__ by default.
2382         * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
2383         it doesn't define __STDC__ by default.
2385         2003-08-24  Bruno Haible  <bruno@clisp.org>
2386         Support for building DLLs on Windows.
2387         * srclib/error.h (error_print_progname, error_message_count,
2388         error_one_per_line): Add DLL_VARIABLE attribute.
2389         * srclib/progname.h (program_name): Likewise.
2391         2003-08-24  Bruno Haible  <bruno@clisp.org>
2392         * srclib/progname.h: Make this file includable in C++ mode: add extern
2393         "C".
2394         * srclib/relocatable.h: Likewise.
2395         * srclib/xmalloc.h: Likewise.
2397         2003-08-22  Bruno Haible  <bruno@clisp.org>
2398         * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
2399         declarations.
2400         * srclib/progname.c (error_with_progname): Remove variable.
2401         (maybe_print_progname): Remove function.
2403         2003-08-01  Bruno Haible  <bruno@clisp.org>
2404         * srclib/relocatable.c (find_shared_library_fullname): Disable the code
2405         on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2407         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2408         * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
2409         having it depend on HAVE_SYS_TYPES_H.
2411         2003-06-23  Bruno Haible  <bruno@clisp.org>
2412         Avoid compilation units that are empty after preprocessing.
2413         * srclib/canonicalize.c: Add dummy declaration.
2414         * srclib/strerror.c: Likewise.
2415         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2416         compiled.
2418         2003-06-22  Bruno Haible  <bruno@clisp.org>
2419         * srclib/relocatable.c (compute_curr_prefix): Comment out this function
2420         in the case when it is not used.
2421         Reported by Pavel Roskin <proski@gnu.org>.
2423         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2424         * srclib/pathmax.h: Include <limits.h> without checking for
2425         HAVE_LIMITS_H.
2426         * srclib/xreadlink.c: Likewise.
2428 2004-01-20  Bruno Haible  <bruno@clisp.org>
2430         Assume automake-1.8.
2431         * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
2432         (AUTOMAKE): Assume automake-1.8.
2433         * Makefile.in (am--refresh): New target.
2435 2004-01-23  Bruno Haible  <bruno@clisp.org>
2437         * Version 1.9.2 released.
2439 2004-01-23  Bruno Haible  <bruno@clisp.org>
2441         * tests/table-from.c: Include binary-io.h.
2442         (main): Switch stdout to binary mode.
2443         * tests/table-to.c: Include binary-io.h.
2444         (main): Switch stdout to binary mode.
2445         * tests/genutf8.c: Include binary-io.h.
2446         (main): Switch stdout to binary mode.
2447         * tests/Makefile.in (INCLUDES): Also look in srclib.
2448         (check): Pass INCLUDES when compiling genutf8.c.
2449         * tests/Makefile.os2 (INCLUDES): Also look in srclib.
2450         (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
2451         * tests/Makefile.msvc (INCLUDES): Also look in srclib.
2452         (check): Pass INCLUDES when compiling genutf8.c.
2454 2004-01-21  Bruno Haible  <bruno@clisp.org>
2456         * src/iconv.c (force_binary): Remove variable.
2457         (usage): Don't document --binary any more.
2458         (convert, main): Always switch to binary mode.
2459         * tests/check-stateful.bat: Remove --binary option.
2460         * tests/check-translit.bat: Likewise.
2461         * tests/check-stateful.cmd: Likewise.
2462         * tests/check-translit.cmd: Likewise.
2463         * djgpp/stateful-check.sed: Remove MODE variable.
2464         * djgpp/translit-check.sed: Likewise.
2466 2004-01-21  Bruno Haible  <bruno@clisp.org>
2468         * man/iconv.3: Fix description of return value in case of error.
2469         Reported by Jonathan Wakely <redi@users.sf.net>.
2471 2003-09-12  Paul Eggert  <eggert@twinsun.com>
2473         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2475 2003-08-15  Bruno Haible  <bruno@clisp.org>
2477         * Makefile.devel (lib/translit.h): Add ulimit command so that the
2478         gentranslit program gets the stack it needs. Many Linux distributions
2479         allow only 8 MB of stack by default.
2481 2003-08-01  Bruno Haible  <bruno@clisp.org>
2483         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2484         Linux/libc5.
2485         * srclib/relocatable.c (find_shared_library_fullname): Likewise.
2486         Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2488 2003-07-02  Bruno Haible  <bruno@clisp.org>
2490         * m4/lib-ld.m4: Update from GNU gettext.
2491         * m4/lib-prefix.m4: Update from GNU gettext.
2492         * m4/gettext.m4: Update from GNU gettext.
2493         * m4/intmax.m4: New file, from GNU gettext.
2494         * m4/longdouble.m4: New file, from GNU gettext.
2495         * m4/longlong.m4: New file, from GNU gettext.
2496         * m4/printf-posix.m4: New file, from GNU gettext.
2497         * m4/signed.m4: New file, from GNU gettext.
2498         * m4/wchar_t.m4: New file, from GNU gettext.
2499         * m4/wint_t.m4: New file, from GNU gettext.
2500         * m4/pathmax.m4: Update from GNU gettext and gnulib.
2501         * m4/ssize_t.m4: Update from GNU gettext and gnulib.
2502         * m4/xreadlink.m4: Update from GNU gettext and gnulib.
2503         * m4/readlink.m4: New file, from gnulib.
2504         * autoconf/install-reloc: Update from GNU gettext.
2505         * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
2506         * srclib/readlink.c: New file, from GNU gettext and gnulib.
2507         * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
2508         (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
2509         * configure.in: Invoke gl_FUNC_READLINK.
2511 2003-06-22  Bruno Haible  <bruno@clisp.org>
2513         * src/Makefile.in (install): Link with the already installed library.
2514         This fixes a link error on Solaris.
2515         Reported by Paul Eggert.
2517 2003-06-08  Bruno Haible  <bruno@clisp.org>
2519         * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
2521 2003-05-02  Bruno Haible  <bruno@clisp.org>
2523         Support for libtool-1.5.
2524         * srclib/progname.c (set_program_name): Remove a leading
2525         "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
2527 2003-06-23  Bruno Haible  <bruno@clisp.org>
2529         Avoid compilation units that are empty after preprocessing.
2530         * srclib/canonicalize.c: Add dummy declaration.
2531         * srclib/strerror.c: Likewise.
2532         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2533         compiled.
2535 2003-06-22  Bruno Haible  <bruno@clisp.org>
2537         Portability to mingw32.
2538         * m4/ssize_t.m4: New file, from GNU gettext.
2539         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
2540         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2542 2003-06-22  Bruno Haible  <bruno@clisp.org>
2544         Portability to mingw32.
2545         * lib/relocatable.c [WIN32]: Include <windows.h>.
2546         * srclib/relocatable.c: Likewise.
2547         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2549 2003-06-22  Bruno Haible  <bruno@clisp.org>
2551         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2552         the case when it is not used.
2553         * srclib/relocatable.c (compute_curr_prefix): Likewise.
2554         Reported by Pavel Roskin <proski@gnu.org>.
2556 2003-06-18  Bruno Haible  <bruno@clisp.org>
2558         * config/install-sh: Update from automake-1.7.5.
2560 2003-06-16  Bruno Haible  <bruno@clisp.org>
2562         * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
2563         (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
2564         ISO_8859-16:2000.
2565         (GBK): Add aliases MS936, WINDOWS-936.
2566         Reported by Guido Flohr <guido@imperia.net>.
2568 2003-05-09  Bruno Haible  <bruno@clisp.org>
2570         * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
2571         "extraneous semicolon" warning from Tru64 cc.
2573 2003-06-07  Bruno Haible  <bruno@clisp.org>
2575         * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
2576         * Makefile.vms (config.h): New rule.
2577         (all, install): Depend on it.
2578         (all, install, installdirs, uninstall, check): Fix typo.
2579         (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
2580         config.h.
2581         * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
2582         (OBJECTS): Use libiconv.obj instead of iconv.obj.
2583         (libiconv.obj): Renamed from iconv.obj.
2584         * srclib/Makefile.vms (INCLUDES): Add parent directory.
2585         (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
2586         (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
2587         (alloca.h): New rule.
2588         (canonicalize.obj): Depend on it.
2589         (clean): Remove alloca.h.
2590         * src/Makefile.vms (datadir, localedir): New variables.
2591         (DEFS): Also define LOCALEDIR.
2592         (iconv.obj): Add flags for relocatability,
2593         (iconv.exe): Link with libicrt. Use link_options.
2594         * vms/link_options.opt: New file.
2595         Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
2597 2003-06-07  Bruno Haible  <bruno@clisp.org>
2599         Support for relocatable data files even on Woe32.
2600         * lib/Makefile.msvc (PICFLAGS): Also define PIC.
2602 2003-05-22  Bruno Haible  <bruno@clisp.org>
2604         * Version 1.9.1 released.
2606 2003-05-22  Bruno Haible  <bruno@clisp.org>
2608         * lib/genaliases.c (main): Emit %pic instead of %null-strings.
2609         Change type of 'name' field to 'int'.
2610         * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
2611         invocation of macro S(), including the tag and a counter.
2612         (main): Use the command-line argument as tag.
2613         * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
2614         lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
2615         * lib/iconv.c (stringpool2_t): New type.
2616         (stringpool2_contents): New data table.
2617         (stringpool2): New macro.
2618         (sysdep_aliases): Make position-independent. Move #includes out to
2619         aliases2.h.
2620         (aliases2_lookup): Update.
2621         (nalias): New type.
2622         (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
2623         (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
2624         * lib/aliases2.h: New file, extracted from lib/iconv.c.
2626 2003-05-20  Bruno Haible  <bruno@clisp.org>
2628         * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
2629         Reported by Muraoka Taro <koron@tka.att.ne.jp>.
2631 2003-05-19  Bruno Haible  <bruno@clisp.org>
2633         * windows/iconv.rc: Include <winver.h>.
2634         Reported by Perry Rapp.
2636 2003-05-18  Bruno Haible  <bruno@clisp.org>
2638         * Version 1.9 released.
2640 2003-05-18  Bruno Haible  <bruno@clisp.org>
2642         * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
2644 2003-05-18  Bruno Haible  <bruno@clisp.org>
2646         * lib/Makefile.msvc (DEBUGFLAGS): New variable.
2647         (iconv.lib): Use it.
2648         * src/Makefile.msvc (DEBUGFLAGS): New variable.
2649         * tests/Makefile.msvc (DEBUGFLAGS): New variable.
2651 2003-05-17  Bruno Haible  <bruno@clisp.org>
2653         * src/Makefile.msvc (libdir, datadir, localedir): New variables.
2654         (IIlibdir, IIdatadir, IIlocaledir): New variables.
2655         (CFLAGS): Define LOCALEDIR.
2656         (iconv_no_i18n.exe): New rule.
2657         (all): Depend on it.
2658         * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
2659         * tests/check-translit.bat: Likewise.
2661 2003-05-16  Bruno Haible  <bruno@clisp.org>
2663         * lib/genaliases.c (main): Emit declarations for gperf-3.0.
2664         * Makefile.devel (lib/aliases.h): Remove gperf command line options;
2665         add new option "-m 10" for gperf-3.0.
2667 2003-05-12  Bruno Haible  <bruno@clisp.org>
2669         * m4/error.m4: Update from gettext.
2671 2003-05-12  Bruno Haible  <bruno@clisp.org>
2673         * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
2675 2003-05-12  Bruno Haible  <bruno@clisp.org>
2677         * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
2678         CFLAGS to PICFLAGS.
2680 2003-05-09  Bruno Haible  <bruno@clisp.org>
2682         * srclib/error.c: Update from gnulib with modifications.
2683         * srclib/unlocked-io.h: New file, from gnulib.
2684         * m4/strerror_r.m4: New file, from gnulib.
2685         * m4/unlocked-io.m4: New file, from gnulib.
2686         * Makefile.devel (aclocal.m4): Depend on them.
2688 2003-05-08  Bruno Haible  <bruno@clisp.org>
2690         * Makefile.msvc (IIPREFIX): New variable.
2691         * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
2692         * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
2693         IIincludedir): New variables.
2694         (INCLUDES): Add -I..\windows.
2695         (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
2696         ../srclib/icrt.lib.
2697         Patches by Perry Rapp.
2699 2003-05-07  Bruno Haible  <bruno@clisp.org>
2701         * README.woe32: Fix instructions for step 1.
2702         * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
2703         (strtoul.obj): Remove rule.
2704         Reported by Perry Rapp.
2706 2003-05-07  Bruno Haible  <bruno@clisp.org>
2708         * Makefile.vms: New file.
2709         * lib/Makefile.vms: New file.
2710         * srclib/Makefile.vms: New file.
2711         * src/Makefile.vms: New file.
2712         * man/Makefile.vms: New file.
2713         * tests/Makefile.vms: New file.
2714         * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
2715         New rules.
2716         (all): Depend on them.
2718 2003-05-07  Bruno Haible  <bruno@clisp.org>
2720         * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
2721         (findprog.obj): Remove rule.
2722         * src/Makefile.msvc (includedir): New variable.
2724 2003-05-06  Bruno Haible  <bruno@clisp.org>
2726         * lib/translit.def: Upgrade to Unicode 4.0.
2728 2003-05-06  Bruno Haible  <bruno@clisp.org>
2730         * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
2731         * srclib/Makefile.msvc (CFLAGS): Likewise.
2733         * srclib/Makefile.msvc (INCLUDES): Add -I.. .
2734         Reported by Perry Rapp.
2736         * Makefile.msvc (config.h): New rule.
2737         (all): Depend on it.
2738         (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
2739         Reported by Perry Rapp.
2741 2003-05-06  Bruno Haible  <bruno@clisp.org>
2743         * autoconf/config.guess: Update to GNU version 2003-02-22.
2744         * autoconf/config.sub: Likewise.
2746 2003-05-06  Bruno Haible  <bruno@clisp.org>
2748         * m4/lib-link.m4: Update from GNU gettext.
2749         * autoconf/config.rpath: Update from GNU gettext.
2751         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
2752         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
2754         * m4/gettext.m4: Update from GNU gettext.
2755         * m4/nls.m4: Update from GNU gettext.
2756         * m4/po.m4: Update from GNU gettext.
2757         * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
2759 2003-04-12  Bruno Haible  <bruno@clisp.org>
2761         Support for OpenVMS 7.3.
2762         * lib/iconv.c (USE_OSF1): Define also on VMS.
2764 2003-04-12  Bruno Haible  <bruno@clisp.org>
2766         Better support for FreeBSD.
2767         * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
2768         aliases, for compatibility with earlier FreeBSD iconv implementation
2769         by Konstantin Chuguev.
2770         * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
2771         aliases.
2772         * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
2774 2003-04-12  Bruno Haible  <bruno@clisp.org>
2776         * configure.in (mandir): Change default value.
2777         * Makefile.in (datadir): New variable.
2778         (install, installdirs, uninstall): Pass datadir to po and man
2779         directories.
2780         * Makefile.os2 (datadir): New variable.
2781         (mandir): Use it instead of prefix.
2782         (install, uninstall): Pass datadir to man directory.
2783         * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
2784         * man/Makefile.in (datadir): New variable.
2785         (docdir): Use it instead of prefix.
2786         (install, installdirs): Update.
2787         * man/Makefile.os2 (datadir): New variable.
2788         (mandir): Use it instead of prefix.
2789         * man/Makefile.msvc (datadir): New variable.
2790         (mandir, docdir): Use it instead of prefix.
2791         (install, installdirs): Update.
2793 2003-04-06  Bruno Haible  <bruno@clisp.org>
2795         Make it possible to build with or without libintl support on Woe32.
2796         * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
2797         * Makefile.msvc (NO_NLS): New variable.
2798         * srclib/Makefile.msvc (NO_NLS): New variable.
2799         (CFLAGS, INCLUDES): Use them.
2800         * src/Makefile.msvc (NO_NLS): New variable.
2801         (NLSFLAGS, INCINTL, LIBINTL): New variables.
2802         (CFLAGS, INCLUDES, iconv.exe): Use them.
2804 2003-04-12  Bruno Haible  <bruno@clisp.org>
2806         * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
2807         variants transliteration failed with RET_ILUNI, don't return
2808         RET_TOOSMALL.
2809         Reported by the FreeBSD porters.
2811 2003-04-06  Bruno Haible  <bruno@clisp.org>
2813         * srclib/binary-io.h: New file, from GNU gettext.
2814         * src/iconv.c: Include it.
2815         (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
2817 2003-04-05  Bruno Haible  <bruno@clisp.org>
2819         Support for relocatable installation.
2820         * m4/alloca.m4: New file, from GNU gettext.
2821         * m4/canonicalize.m4: New file, from GNU gettext.
2822         * m4/error.m4: New file, from GNU gettext.
2823         * m4/onceonly.m4: New file, from GNU gettext.
2824         * m4/pathmax.m4: New file, from GNU gettext.
2825         * m4/relocatable.m4: New file, from GNU gettext.
2826         * m4/setenv.m4: New file, from GNU gettext.
2827         * m4/stdbool.m4: New file, from GNU gettext.
2828         * m4/strerror.m4: New file, from GNU gettext.
2829         * m4/xreadlink.m4: New file, from GNU gettext.
2830         * autoconf/config.libpath: New file, from GNU gettext.
2831         * autoconf/install-reloc: New file, from GNU gettext.
2832         * autoconf/reloc-ldflags: New file, from GNU gettext.
2833         * autoconf/missing: New file, from GNU automake 1.7.3.
2834         * lib/relocatable.h: New file, from GNU gettext.
2835         * lib/relocatable.c: New file, from GNU gettext.
2836         * srclib/alloca.c: New file, from GNU gettext.
2837         * srclib/alloca_.h: New file, from GNU gettext.
2838         * srclib/canonicalize.c: New file, from GNU gettext.
2839         * srclib/canonicalize.h: New file, from GNU gettext.
2840         * srclib/error.c: New file, from GNU gettext.
2841         * srclib/error.h: New file, from GNU gettext.
2842         * srclib/exit.h: New file, from GNU gettext.
2843         * srclib/gettext.h: New file, from GNU gettext.
2844         * srclib/memmove.c: New file, from GNU gettext.
2845         * srclib/pathmax.h: New file, from GNU gettext.
2846         * srclib/progname.c: New file, from GNU gettext.
2847         * srclib/progname.h: New file, from GNU gettext.
2848         * srclib/progreloc.c: New file, from GNU gettext.
2849         * srclib/relocatable.c: New file, from GNU gettext.
2850         * srclib/relocatable.h: New file, from GNU gettext.
2851         * srclib/relocwrapper.c: New file, from GNU gettext.
2852         * srclib/setenv.c: New file, from GNU gettext.
2853         * srclib/setenv.h: New file, from GNU gettext.
2854         * srclib/stdbool.h.in: New file, from GNU gettext.
2855         * srclib/strerror.c: New file, from GNU gettext.
2856         * srclib/unsetenv.c: New file, from GNU gettext.
2857         * srclib/xmalloc.c: New file, from GNU gettext.
2858         * srclib/xmalloc.h: New file, from GNU gettext.
2859         * srclib/xreadlink.c: New file, from GNU gettext.
2860         * srclib/xreadlink.h: New file, from GNU gettext.
2861         * srclib/xstrdup.c: New file, from GNU gettext.
2862         * srclib/Makefile.am: New file.
2863         * srclib/Makefile.msvc: New file.
2864         * windows/alloca.h: New file, from GNU gettext.
2865         * windows/stdbool.h: New file, from GNU gettext.
2866         * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
2867         Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
2868         string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
2869         AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
2870         gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
2871         gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
2872         * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
2873         HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
2874         localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
2875         relocatable.c.
2876         * lib/Makefile.in (DEFS): New variable.
2877         (SOURCES): Add localcharset.c and relocatable.c.
2878         (OBJECTS): Add localcharset.lo and relocatable.lo.
2879         (LIBCHARSET_OBJECTS): Remove variable.
2880         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
2881         libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
2882         (iconv.lo): Use $(DEFS).
2883         (localcharset.lo, relocatable.lo): New rules.
2884         * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
2885         ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
2886         set_relocation_prefix, relocate. Remove $(PICFLAGS).
2887         (INCLUDES): Simplify.
2888         (SOURCES): Remove variable.
2889         (OBJECTS): Add localcharset.obj and relocatable.obj.
2890         (LIBCHARSET_OBJECTS): Remove variable.
2891         (iconv.obj): Add $(PICFLAGS).
2892         (localcharset.obj, relocatable.obj): New rules.
2893         (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
2894         * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
2895         * src/gettext.h: Remove file.
2896         * src/iconv.c: Include progname.h and relocatable.h.
2897         (ICONV_CONST): Define to const if the system has no iconv.
2898         (main): Invoke set_program_name. Relocate LOCALEDIR.
2899         * src/Makefile.in (top_srcdir): New variable.
2900         (INCLUDES): Add .. and ../srclib.
2901         (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
2902         (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
2903         (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
2904         RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
2905         variables.
2906         (iconv): Use $(iconv_LDFLAGS).
2907         (install): Use $(INSTALL_PROGRAM_ENV).
2908         (distclean): Drop removing config.h.
2909         * src/Makefile.msvc (INCLUDES): Add .., simplify.
2910         * tests/Makefile.msvc (INCLUDES): Simplify.
2911         * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
2912         (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
2913         (all): Depend on them.
2914         (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
2915         m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
2916         m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
2917         (lib/config.h.msvc): Additional processing.
2918         * Makefile.in (all, install, installdirs, uninstall, check): Recurse
2919         into srclib.
2920         (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
2921         lib/localcharset.h.
2922         (distclean, maintainerclean): Remove also config.h and some stamps.
2923         * Makefile.msvc (all, install, installdirs, uninstall, check,
2924         mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
2925         * INSTALL.generic: Document --enable-relocatable and
2926         --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
2927         LDFLAGS. The lib-link.m4 macros make this unnecessary.
2929 2003-04-05  Bruno Haible  <bruno@clisp.org>
2931         * configure.in: Bump version number to 1.9.
2932         * include/iconv.h.in (_LIBICONV_VERSION): Bump.
2933         * windows/iconv.rc: Bump version number.
2934         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
2936 2003-04-05  Bruno Haible  <bruno@clisp.org>
2938         * Makefile.msvc (PREFIX): New variable.
2939         (prefix): Use it.
2940         (distclean, maintainer-clean): Drop Unix specific removals.
2941         * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
2942         (prefix): Use it.
2943         (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
2944         (clean): Drop Unix specific removal.
2945         * src/Makefile.msvc (PREFIX): New variable.
2946         (prefix): Use it.
2947         (clean): Drop Unix specific removal.
2948         (distclean): Likewise.
2949         * tests/Makefile.msvc (clean): Drop Unix specific removal.
2950         (distclean): Likewise.
2952 2003-04-05  Bruno Haible  <bruno@clisp.org>
2954         * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
2956 2003-04-05  Bruno Haible  <bruno@clisp.org>
2958         * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
2959         CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
2960         macros.
2961         * m4/gettext.m4: Update from GNU gettext.
2962         * m4/iconv.m4: Update from GNU gettext.
2963         * m4/lcmessage.m4: Update from GNU gettext.
2964         * m4/progtest.m4: Update from GNU gettext.
2965         * m4/libtool.m4: Update from GNU gettext.
2966         2003-02-16  Bruno Haible  <bruno@clisp.org>
2967                 Workaround autoconf >= 2.52 breakage.
2968                 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
2969                 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
2970         * autoconf/ltmain.sh: Update from GNU gettext.
2971         2003-02-18  Bruno Haible  <bruno@clisp.org>
2972                 Fix the 2002-09-16 fix.
2973                 * ltmain.sh (install): If "ln -s -f" fails (this is the case
2974                 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
2976 2003-04-05  Bruno Haible  <bruno@clisp.org>
2978         Start using automake.
2979         * configure.in: Add AM_INIT_AUTOMAKE invocation.
2980         (PACKAGE, VERSION): Remove.
2981         Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
2982         Use AC_PROG_LN_S instead of CL_PROG_LN_S.
2983         Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
2984         Reorder so that AC_CANONICAL_HOST comes early but still after
2985         AC_PROG_CC.
2986         * m4/ranlib.m4: Remove file.
2987         * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
2988         * Makefile.devel (CLISP_DIR): Comment out.
2989         (AUTOCONF_FILES): Change to aclocal.m4.
2990         (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
2991         (configure.in): Drop --include option.
2993 2003-03-17  Bruno Haible  <bruno@clisp.org>
2995         Improved MSVC support.
2996         * Makefile.msvc (prefix): Use less Unixy value.
2997         (local_prefix): Remove variable.
2998         (libdir, includedir, mandir): Use backslashes.
2999         (bindir, datadir, localedir, docdir): New variables.
3000         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3001         (all): Recurse into po/ and man/.
3002         (install, installdirs, uninstall): Rewritten.
3003         (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
3004         into po/ and man/.
3005         * lib/Makefile.msvc (prefix): Use less Unixy value.
3006         (local_prefix): Remove variable.
3007         (libdir): Use backslashes.
3008         (bindir): New variable.
3009         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
3010         (RESOURCES): Enable iconv.res.
3011         (install, installdirs, uninstall): New rules.
3012         (clean): Remove config.h.
3013         (distclean): Don't remove config.h here.
3014         * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
3015         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3016         (install, installdirs, uninstall): New rules.
3017         * man/Makefile.msvc: New file.
3018         * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
3019         * Makefile.devel (all): Depend on po/Makefile.msvc.
3020         (po/Makefile.msvc): New rule.
3021         * windows/iconv.rc: Update.
3022         * README.woe32: Mention automatic installation command.
3024         Rename libcharset.h to localcharset.h.
3025         * lib/iconv.c: Include localcharset.h, not libcharset.h.
3026         * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
3027         (all, install): Update dependencies.
3028         (all): Create lib/localcharset.h, not lib/libcharset.h.
3029         (mostlyclean, clean, distclean, maintainer-clean): Remove
3030         lib/localcharset.h, not lib/libcharset.h.
3031         * djgpp/README.in, djgpp/README: Update.
3032         * djgpp/config.bat: Update.
3033         * djgpp/config.sed: Update.
3034         * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
3036 2003-01-31  Bruno Haible  <bruno@clisp.org>
3038         * src/Makefile.in (all): Don't do the chmod if it has already been
3039         done.
3041 2003-01-31  Bruno Haible  <bruno@clisp.org>
3043         * lib/loop_unicode.h (unicode_transliterate): Enable recursive
3044         transliteration. Idea from Perry Rapp.
3045         * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
3046         Change element type of translit_data to 'unsigned int'.
3047         * lib/translit.def: Many new transliterations, mostly taken from glibc.
3048         * lib/translit.h: Regenerated.
3049         * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
3050         * tests/Makefile.in (check): Add Translit1 check.
3051         * tests/Makefile.msvc (check): Likewise.
3052         * tests/Makefile.os2 (check): Likewise.
3053         * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
3054         improved transliteration cannot do.
3056 2003-02-14  Bruno Haible  <bruno@clisp.org>
3058         * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
3059         (configure): Update rule.
3061 2003-01-03  Albert Chin  <libtool@thewrittenword.com>
3063         * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
3064         dependency_libs variable directly down to the linker.
3065         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
3067 2003-01-01  Bruno Haible  <bruno@clisp.org>
3069         * src/Makefile.in (install): Use libiconv.la in ../lib, not in
3070         $(libdir), so that installing with DESTDIR works.
3071         Reported by Michael Adams <michael@michaeladams.org>.
3073 2003-01-01  Bruno Haible  <bruno@clisp.org>
3075         * Makefile.in (mkinstalldirs): New variable.
3076         (install-lib, install, installdirs): Use it instead of mkdir.
3077         * lib/Makefile.in (mkinstalldirs): New variable.
3078         (install-lib, install, installdirs): Use it instead of mkdir.
3079         * man/Makefile.in (mkinstalldirs): New variable.
3080         (install, installdirs): Use it instead of mkdir.
3081         * src/Makefile.in (mkinstalldirs): New variable.
3082         (install, installdirs): Use it instead of mkdir.
3084 2002-09-27  Bruno Haible  <bruno@clisp.org>
3086         * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
3088 2002-11-07  Bruno Haible  <bruno@clisp.org>
3090         * m4/libtool.m4: Upgrade to libtool-1.4.3.
3091         * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
3093 2002-07-14  Bruno Haible  <bruno@clisp.org>
3095         * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
3097 2002-06-12  Bruno Haible  <bruno@clisp.org>
3099         * configure.in: Use new AC_* names of libtool macros. Invoke
3100         AC_LIBTOOL_WIN32_DLL.
3102 2002-12-19  Bruno Haible  <bruno@clisp.org>
3104         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
3105         Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
3107 2002-11-07  Bruno Haible  <bruno@clisp.org>
3109         Make "make install" without prior "make" work.
3110         * Makefile.in (lib/libcharset.h): New rule.
3111         (all, install): Depend on it.
3112         Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
3114 2002-10-28  Bruno Haible  <bruno@clisp.org>
3116         * man/Makefile.in (install): Change directory back to the working
3117         directory, so that install-sh (which may be a relative pathname) is
3118         found in the right place.
3120 2002-09-16  Bruno Haible  <bruno@clisp.org>
3122         * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
3123         "rm -f && ln -s" to make a symlink for a shared library.
3124         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3126 2002-09-02  Bruno Haible  <bruno@clisp.org>
3128         * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
3130 2002-08-16  Bruno Haible  <bruno@clisp.org>
3132         * src/iconv.c (main): Perform fflush before testing ferror(stdout).
3134 2002-05-29  Bruno Haible  <bruno@clisp.org>
3136         * Version 1.8 released.
3138 2002-05-26  Bruno Haible  <bruno@clisp.org>
3140         * lib/c99.h: New file.
3141         * lib/converters.h: Include it.
3142         * lib/encodings.def (C99): New encoding.
3143         * README, man/iconv_open.3: Document C99 encoding.
3145 2002-05-26  Bruno Haible  <bruno@clisp.org>
3147         * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
3148         characters.
3149         (java_wctomb): Produce 12-byte sequences for non-BMP characters.
3151 2002-05-29  Bruno Haible  <bruno@clisp.org>
3153         Fix installation of iconv program when linked with a libintl that was
3154         built against an earlier libiconv.
3155         * src/iconv.c: Conditionally disable NLS.
3156         * src/iconv_no_i18n.c: New file.
3157         * src/Makefile.in (libdir): New variable.
3158         (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
3159         directory writable, so iconv executable can be created during "make
3160         install".
3161         (iconv): Remove rule.
3162         (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
3163         (install): Link iconv now, after the new libiconv.so is installed.
3164         (clean): Also remove iconv_no_i18n.
3165         * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
3166         not iconv.
3167         * tests/check-stateful: Use iconv_no_i18n, not iconv.
3168         * tests/check-translit: LIkewise.
3169         * tests/check-translitfailure: Likewise.
3171 2002-05-29  Bruno Haible  <bruno@clisp.org>
3173         * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
3174         * m4/install.m4: Remove file.
3175         * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
3177 2002-05-24  Bruno Haible  <bruno@clisp.org>
3179         * lib/jisx0213.h: Use 'inline' only conditionally.
3181 2002-05-18  Bruno Haible  <bruno@clisp.org>
3183         * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
3184         README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
3185         Bump version number.
3186         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
3188 2002-02-06  Bruno Haible  <bruno@clisp.org>
3190         * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
3192 2002-02-02  Bruno Haible  <bruno@clisp.org>
3194         * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
3196 2001-11-03  Bruno Haible  <haible@clisp.cons.org>
3198         * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
3199         "make install" succeeds.
3201 2002-05-18  Bruno Haible  <bruno@clisp.org>
3203         * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
3204         from the command line. Needed to ensure that the new libiconv version
3205         is used on FreeBSD.
3207 2002-05-14  Bruno Haible  <bruno@clisp.org>
3209         Implement and document CP853, TDS565, RISCOS-LATIN1.
3210         * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
3211         (cp853.h, tds565.h, riscos1.h): New rules.
3212         * lib/cp853.h: New file.
3213         * lib/tds565.h: New file.
3214         * lib/riscos1.h: New file.
3215         * lib/converters.h: Include them.
3216         * lib/encodings_dos.def (CP853): New encoding.
3217         * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
3218         * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
3219         * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
3220         RISCOS-LATIN1.
3221         * tests/Makefile.msvc (check): Check CP853.
3222         * tests/CP853.TXT: New file.
3223         * tests/TDS565.TXT: New file.
3224         * tests/RISCOS-LATIN1.TXT: New file.
3226         * lib/cp860.h (cp860_wctomb): Optimize.
3228 2002-05-12  Bruno Haible  <bruno@clisp.org>
3230         * tools/Makefile (ksc5601.h): Add two extra characters.
3231         * lib/ksc5601.h: Regenerated.
3232         * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
3233         * tests/CP949.TXT: Likewise.
3234         * tests/JOHAB.TXT: Likewise.
3236 2002-05-12  Bruno Haible  <bruno@clisp.org>
3238         * README: Mention extra encodings.
3239         * man/iconv_open.3: Likewise. Improve formatting in text and html
3240         output formats.
3242 2002-05-12  Bruno Haible  <bruno@clisp.org>
3244         * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
3246 2002-05-12  Bruno Haible  <bruno@clisp.org>
3248         * Makefile.devel (AUTOCONF): New variable.
3249         (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
3250         (configure): Use the AUTOCONF variable.
3251         * autoconf/autoconf: Remove file.
3252         * autoconf/autoconf.m4: Remove file.
3253         * autoconf/autoconf.m4f: Remove file.
3255 2002-05-12  Bruno Haible  <bruno@clisp.org>
3257         * tools/JISX0213.TXT: New file.
3258         * tools/cjk_tab_to_h.c (do_jisx0213): New function.
3259         (main): Accept "jisx0213".
3260         * tools/Makefile (all): Add jisx0213.h.
3261         (jisx0213.h): New rule.
3262         * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
3263         * lib/euc_jisx0213.h: New file.
3264         * lib/shift_jisx0213.h: New file.
3265         * lib/iso2022_jp3.h: New file.
3266         * lib/converters.h: Include them.
3267         * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
3268         ISO-2022-JP-3): New encodings.
3269         * tests/EUC-JISX0213.TXT: New file.
3270         * tests/SHIFT_JISX0213.TXT: New file.
3271         * tests/ISO-2022-JP-3-snippet: New file.
3272         * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
3273         * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
3274         SHIFT_JISX0213, ISO-2022-JP-3.
3275         * tests/check-stateless: Add support for encodings which contain
3276         precomposed Unicode characters, by eliminating precomposed characters
3277         before the comparison.
3278         * tests/table-from.c (main): Fix usage message.
3279         * tests/table-to.c (main): Make it work for encodings for which the
3280         "to" direction is stateful.
3282 2002-05-09  Bruno Haible  <bruno@clisp.org>
3284         New configure option --enable-extra-encodings.
3285         * lib/encodings_extra.def: New file.
3286         * lib/converters.h: Handle USE_EXTRA.
3287         * lib/genaliases2.c (main): Handle USE_EXTRA.
3288         * lib/genflags.c: Define USE_EXTRA.
3289         (main): Include encodings_extra.def.
3290         * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
3291         Handle USE_EXTRA.
3292         * lib/config.h.in (ENABLE_EXTRA): New macro.
3293         * configure.in: Accept option --enable-extra-encodings.
3294         * Makefile.devel (all): Depend on lib/aliases_extra.h.
3295         (lib/aliases_extra.h): New rule.
3296         (lib/flags.h): Depend on lib/encodings_extra.def.
3297         * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
3298         New rules.
3299         (check): Invoke check-extra.
3300         * tests/Makefile.msvc (check): Also check the DOS encodings.
3302         Support for testing the AIX encodings.
3303         * tests/CP856.TXT: New file.
3304         * tests/CP922.TXT: New file.
3305         * tests/CP1046.TXT: New file.
3306         * tests/CP1124.TXT: New file.
3307         * tests/CP1129.TXT: New file.
3308         * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
3309         * tests/CP1162.TXT: New file.
3310         * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
3312         Support for testing the OSF/1 encodings.
3313         * tests/DEC-KANJI.TXT: New file.
3314         * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
3316         Support for testing the DOS encodings.
3317         * tests/CP437.TXT: New file.
3318         * tests/CP737.TXT: New file.
3319         * tests/CP775.TXT: New file.
3320         * tests/CP852.TXT: New file.
3321         * tests/CP855.TXT: New file.
3322         * tests/CP857.TXT: New file.
3323         * tests/CP858.TXT: New file.
3324         * tests/CP860.TXT: New file.
3325         * tests/CP861.TXT: New file.
3326         * tests/CP863.TXT: New file.
3327         * tests/CP864.TXT: New file.
3328         * tests/CP865.TXT: New file.
3329         * tests/CP869.TXT: New file.
3330         * tests/CP1125.TXT: New file.
3332 2002-05-09  Bruno Haible  <bruno@clisp.org>
3334         Implement more ASCII compatible DOS encodings.
3335         * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
3336         (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
3337         * lib/cp737.h: New file.
3338         * lib/cp858.h: New file.
3339         * lib/cp860.h: New file.
3340         * lib/cp863.h: New file.
3341         * lib/converters.h: Include them.
3342         * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
3344 2002-05-09  Bruno Haible  <bruno@clisp.org>
3346         Implement new ASCII compatible encodings from IBM.
3347         * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
3348         (cp1161.h, cp1162.h, cp1163.h): New rules.
3349         * lib/cp1161.h: New file.
3350         * lib/cp1162.h: New file.
3351         * lib/cp1163.h: New file.
3352         * lib/converters.h: Include them.
3353         * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
3355 2002-05-09  Bruno Haible  <bruno@clisp.org>
3357         Implement and document KOI8-T.
3358         * tools/Makefile (ALL): Add koi8_t.h.
3359         (koi8_t.h): New rule.
3360         * lib/koi8_t.h: New file.
3361         * lib/converters.h: Include it.
3362         * lib/encodings.def (KOI8-T): New encoding.
3363         * README, man/iconv_open.3: Add KOI8-T.
3364         * tests/Makefile.in (tests): Check KOI8-T.
3365         * tests/Makefile.os2 (tests): Likewise.
3366         * tests/Makefile.msvc (tests): Likewise.
3367         * tests/KOI8-T.TXT: New file.
3369 2002-05-09  Bruno Haible  <bruno@clisp.org>
3371         * tools/8bit_tab_to_h.c (main): Update copyright year.
3372         * tools/cjk_variants.c (main): Likewise.
3374 2002-05-08  Bruno Haible  <bruno@clisp.org>
3376         * README.woe32: Renamed from README.win32.
3378 2002-05-08  Bruno Haible  <bruno@clisp.org>
3380         * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
3381         because the Woe32 consoles use them.
3383 2002-05-04  Bruno Haible  <bruno@clisp.org>
3385         * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
3386         without writing an output character, restore cd->istate to its value
3387         before the xxx_mbtowc call. Otherwise we lose some characters during
3388         CP1255/CP1258/TCVN to Unicode conversion.
3389         (unicode_loop_reset): Likewise for the xxx_flushwc call.
3390         * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
3391         files large enough to test against the bug.
3392         * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
3393         * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
3395 2002-04-28  Bruno Haible  <bruno@clisp.org>
3397         * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
3398         * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
3399         * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
3400         * lib/armscii_8.h: Regenerated.
3402 2002-04-28  Bruno Haible  <bruno@clisp.org>
3404         * src/iconv.c: Include gettext.h.
3405         (_): New macro.
3406         (usage, print_version, convert, main): Internationalize.
3407         (main): Call setlocale, bindtextdomain, textdomain.
3408         * src/gettext.h: New file, from GNU gettext 0.11.2.
3409         * src/config.h.in: New file, needed for ENABLE_NLS.
3410         * src/Makefile.in (datadir, localedir): New variables.
3411         (iconv): Link with @LTLIBINTL@.
3412         (iconv.@OBJEXT@): Define LOCALEDIR.
3413         (distclean): Remove config.h.
3414         * po: New directory.
3415         * Makefile.in (all, install, installdirs, uninstall, check,
3416         mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
3417         directory.
3418         * autoconf/mkinstalldirs: New file, from automake-1.5.
3419         * ABOUT-NLS: New file, from GNU gettext 0.11.2.
3420         * m4/codeset.m4: New file, from GNU gettext 0.11.2.
3421         * m4/gettext.m4: New file, from GNU gettext 0.11.2.
3422         * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
3423         * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
3424         * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
3425         * m4/progtest.m4: New file, from GNU gettext 0.11.2.
3426         * configure.in: Require autoconf-2.52, needed for multiple config.h.in
3427         files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
3428         (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
3429         * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
3431 2002-04-28  gettextize  <bug-gnu-gettext@gnu.org>
3433         * configure.in (AC_OUTPUT): Add po/Makefile.in.
3435 2002-04-28  Bruno Haible  <bruno@clisp.org>
3437         * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
3438         * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
3439         * m4/general.m4: New file, from GNU clisp.
3440         * m4/proto.m4: New file, from GNU clisp.
3441         * m4/ranlib.m4: New file, from GNU clisp.
3442         * m4/install.m4: New file, from GNU clisp.
3443         * m4/cp.m4: New file, from GNU clisp.
3444         * m4/ln.m4: New file, from GNU clisp.
3445         * m4/endian.m4: New file, from GNU clisp.
3446         * m4/iconv.m4: New file, from GNU gettext 0.11.2.
3447         * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
3448         * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
3449         * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
3450         * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
3451         * m4/libtool.m4: New file, based on libtool-1.4.2.
3452         * Makefile.devel (ACLOCAL): Remove variable.
3453         (ACSELECT): Remove variable.
3454         (OTHERMACROS): Remove variable.
3455         (m4/*.m4): New rules.
3456         (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
3457         * configure.in: Invoke AM_ICONV instead of CL_ICONV.
3459 2002-04-06  Bruno Haible  <bruno@clisp.org>
3461         Upgrade to Unicode 3.2.
3462         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
3463         (compact_large_charset2uni): Add an argument. Determine optimal shift.
3464         Copy modified enc->charset2uni table.
3465         (output_charset2uni): Deal with shift other than 8. Copy encoding, so
3466         as to not disturb subsequent output_uni2charset[_sparse] call.
3467         * lib/hkscs.h: Regenerated.
3468         * tests/BIG5-HKSCS.TXT: Update.
3469         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
3471 2002-04-06  Bruno Haible  <bruno@clisp.org>
3473         Upgrade to Unicode 3.2.
3474         * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
3475         cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3476         cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
3477         CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
3478         * lib/cns11643_3.h: Regenerated.
3479         * lib/cns11643_4a.h: Regenerated.
3480         * lib/cns11643_4b.h: Regenerated.
3481         * lib/cns11643_5.h: Regenerated.
3482         * lib/cns11643_6.h: Regenerated.
3483         * lib/cns11643_7.h: Regenerated.
3484         * lib/cns11643_15.h: Regenerated.
3485         * lib/cns11643_inv.h: Regenerated.
3486         * tests/EUC-TW.TXT: Update.
3488 2002-01-17  Bruno Haible  <bruno@clisp.org>
3490         * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
3491         (tcvn_mbtowc): Small optimization.
3493 2002-01-13  Bruno Haible  <bruno@clisp.org>
3495         New options -l, -c, -s.
3496         * src/iconv.c (discard_unconvertible, silent): New variables.
3497         (usage): Document options -l, -c, -s.
3498         (print_one): New function.
3499         (convert): If silent is true, don't print error messages about the
3500         conversion to stderr. If discard_unconvertible is true, set the
3501         iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
3502         return the same return code as when discard_unconvertible is false.
3503         (main): Accept options -l, -c, -s. Implement option -l.
3504         * man/iconv.1: Document options -l, -c, -s.
3506 2002-01-13  Bruno Haible  <bruno@clisp.org>
3508         Support for "iconv -c".
3509         * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
3510         (ICONV_SET_DISCARD_ILSEQ): Likewise.
3511         * lib/converters.h (struct conv_struct): New field discard_ilseq.
3512         * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
3513         has an "//IGNORE" suffix, and to false otherwise.
3514         (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
3515         * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
3516         true, skip one input character instead of returning EILSEQ.
3517         (unicode_loop_reset): Likewise.
3518         * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
3519         (wchar_to_loop_convert): Likewise.
3521 2002-01-13  Bruno Haible  <bruno@clisp.org>
3523         Support for "iconv -l".
3524         * include/iconv.h.in (iconvlist): New declaration.
3525         * Makefile.devel (lib/aliases.h): Change gperf options.
3526         * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
3527         functions.
3529 2002-01-06  Bruno Haible  <bruno@clisp.org>
3531         * lib/loop_unicode.h (unicode_transliterate): If the transliteration
3532         fails due to limited output encoding, return RET_ILUNI, not
3533         RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3534         * tests/check-translitfailure: New file.
3535         * tests/TranslitFail1.ISO-8859-1: New file.
3536         * tests/Makefile.in (check): Call check-translitfailure.
3538 2001-12-15  Bruno Haible  <bruno@clisp.org>
3540         * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
3541         Shift_JIS characters 0x5C and 0x7E.
3542         * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
3544 2001-12-05  Bruno Haible  <bruno@clisp.org>
3546         * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
3547           endless loop if locale_charset() returns the empty string.
3548         * README, man/iconv_open.3: Add the empty encoding name.
3550 2001-11-10  Bruno Haible  <haible@clisp.cons.org>
3552         * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
3553           non-gcc compiler.
3555 2001-10-23  Bruno Haible  <haible@clisp.cons.org>
3557         * tools/Makefile (cp1125.h): New target.
3558           (ALL): Add it.
3559         * lib/cp1125.h: New file.
3560         * lib/converters.h: Include it.
3561         * lib/encodings_dos.def (CP1125): New encoding.
3563 2001-09-08  Bruno Haible  <haible@clisp.cons.org>
3565         * autoconf/eilseq.m4: New file.
3566         * Makefile.devel (OTHERMACROS): Add it.
3567         * configure.in: Call AC_EILSEQ.
3568         * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
3570 2001-08-25  Bruno Haible  <haible@clisp.cons.org>
3572         Upgrade to autoconf-2.52.
3573         * autoconf/autoconf: Upgrade to autoconf-2.52.
3574         * autoconf/acgeneral.m4: Remove file.
3575         * autoconf/acspecific.m4: Remove file.
3576         * autoconf/autoconf.m4f: New file, from autoconf-2.52.
3577         * autoconf/aclocal.m4: Require autoconf-2.52.
3578         (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
3579         AC_CANONICAL_HOST does it itself. Add $SHELL in front of
3580         $ac_config_guess and $ac_config_sub.
3581         * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
3582         Add autoconf.m4f.
3583         (configure): Use autoconf options -A, -l instead of -m.
3584         * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
3586 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3588         * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
3589         (AC_LANG_EXTERN): Move to aclocal.m4.
3590         * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
3591         (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
3592         (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
3594 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3596         Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
3597         * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
3598         'try' to 'incount'.
3599         * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
3600         between sources and libs.
3601         (libiconv_plug_solaris.so) [GCC]: Likewise.
3602         (libiconv_plug_osf.so) [GCC]: Likewise.
3603         * src/Makefile.in (iconv.@OBJEXT@): New rule.
3604         (iconv): Depend on it.
3605         (clean): Erase *.@OBJEXT@, not *.o.
3606         * tests/Makefile.in (table-from.@OBJEXT@): New rule.
3607         (table-from): Depend on it.
3608         (table-to.@OBJEXT@): New rule.
3609         (table-to): Depend on it.
3610         (clean): Erase *.@OBJEXT@, not *.o.
3612 2001-07-28  Bruno Haible  <haible@clisp.cons.org>
3614         * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
3615         * lib/iso8859_16.h: Regenerated.
3616         * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
3618 2001-07-17  Bruno Haible  <haible@clisp.cons.org>
3620         * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
3622 2001-07-03  Bruno Haible  <haible@clisp.cons.org>
3624         * configure.in: Also check for mbsinit.
3625         * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
3626         Needed for SCO 3.2v5.0.2.
3628 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3630         * Version 1.7 released.
3632 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3634         * INSTALL.generic (Particular Systems): Generalize section about
3635         /usr/local to "most systems".
3637         * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
3638         Solaris cc destroys iconv.o and iconv.lo while building
3639         libiconv_plug_solaris.so.
3640         (clean): Remove so_locations, left there by the OSF/1 linker.
3642         * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
3644         * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
3645         'unsigned short'.
3647         * tests/table-from.c: Include string.h.
3648         * tests/table-to.c: Likewise.
3650 2001-06-26  Bruno Haible  <haible@clisp.cons.org>
3652         * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
3653         (jisx0212.h): Replace U+007E with U+FF5E.
3654         * lib/jisx0208.h: Regenerated.
3655         * lib/jisx0212.h: Regenerated.
3656         * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
3657         * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
3658         * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
3659         * tests/CP932.TXT: Likewise.
3660         * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
3662 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3664         * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
3665         $(CPPFLAGS).
3666         * src/Makefile.msvc (iconv.exe): Likewise.
3667         * src/Makefile.os2 (iconv.exe): Likewise.
3668         * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
3669         (libiconv_plug_solaris.so): Likewise.
3670         (libiconv_plug_osf.so): Likewise.
3671         (iconv.lo): Likewise.
3672         * lib/Makefile.msvc (iconv.obj): Likewise.
3673         * lib/Makefile.os2 (iconv.obj): Likewise.
3674         * tests/Makefile.in (table-from, table-to): Likewise.
3675         * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
3676         * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
3677         (genutf8.exe): Don't use $(INCLUDES).
3679 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3681         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3682           Bump version number.
3683         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
3685 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3687         * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
3689 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3691         * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
3693 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3695         * autoconf/ltmain.sh: Upgrade to libtool-1.4.
3696         * autoconf/ltconfig: Remove file.
3698 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3700         * autoconf/config.guess: Update to GNU version 2001-05-11.
3701         * autoconf/config.sub: Likewise.
3703 2001-06-03  Bruno Haible  <haible@clisp.cons.org>
3705         * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
3706           characters if they cannot be converted.
3707           (unicode_loop_reset): Likewise.
3708         * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
3709            STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
3710            STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
3711           New macros.
3712           (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
3713           direction.
3714           (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
3715           If "ja", prefer conversion to Japanese character sets. If "zh",
3716           prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
3718         * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
3719           (RET_TOOSMALL): Change value from -1 to -2.
3720         * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
3721           return 0 written bytes.
3723 2001-06-06  Bruno Haible  <haible@clisp.cons.org>
3725         * lib/encodings.def: Align with IANA character-set registry.
3726           (US-ASCII): Add alias "ANSI_X3.4-1986".
3727           (ISO-8859-14): Add alias "ISO-CELTIC".
3728           (JIS_X0208): Add alias "JIS_C6226-1983".
3729           (BIG5HKSCS): Add alias "BIG5-HKSCS".
3730         * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
3731         * tests/Makefile.in (check): Likewise.
3732         * tests/Makefile.os2 (check): Likewise.
3733         * tests/Makefile.msvc (check): Likewise.
3734         * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
3735         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
3736           BIG5HKSCS.IRREVERSIBLE.TXT.
3738 2001-06-02  Bruno Haible  <haible@clisp.cons.org>
3740         * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
3741           (is_charset2uni_large, compact_large_charset2uni): New functions.
3742           (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
3743           (output_charset2uni): If mapping to more than the Unicode BMP,
3744           use an extra indirection to keep each value in 16 bits.
3745           (invert): Bump limit from U+10000 to U+30000.
3746           (output_uni2charset_dense): Likewise.
3747           (output_uni2charset_sparse): Likewise. If mapping to more than one
3748           CJK plane, use three bytes per value instead of two bytes.
3749           (byte_row_cns11643): Allow more than 3 CJK planes.
3750           (do_cns11643_only_uni2charset): Increase number of rows, to include
3751           plane 15. Remove plane bits hack.
3752           (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
3753         * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
3754           cns11643_6.h, cns11643_7.h, cns11643_15.h.
3755           (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
3756           derived table.
3757           (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3758            cns11643_7.h, cns11643_15.h): New rules.
3759           (cns11643_inv.h): Change title.
3760         * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
3761         * lib/cns11643_3.h: Likewise.
3762         * lib/cns11643_4a.h: New file.
3763         * lib/cns11643_4b.h: New file.
3764         * lib/cns11643_4.h: New file.
3765         * lib/cns11643_5.h: New file.
3766         * lib/cns11643_6.h: New file.
3767         * lib/cns11643_7.h: New file.
3768         * lib/cns11643_15.h: New file.
3769         * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
3770           (cns11643_inv_wctomb): Return 3 bytes now.
3771         * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
3772           cns11643_7.h, cns11643_15.h.
3773           (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
3774           plane number starting at 1, not 0.
3775         * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
3776           change.
3777         * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
3778           well.
3779           (euc_tw_wctomb): Update for cns11643_wctomb change.
3780         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3781         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
3782           4,5,6,7 as well.
3783           (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
3784           Try CNS11643 planes 4,5,6,7 as well.
3785         * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
3786         * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
3787           Add U+5344.
3789 2001-06-01  Bruno Haible  <haible@clisp.cons.org>
3791         * tests/table-from.c (bmp_only): New variable.
3792           (ucs4_decode): If bmp_only, don't return characters outside Unicode
3793           plane 0.
3794           (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
3795           a conversion line if ucs4_decode returns NULL.
3796         * tests/table-to.c (main): When testing encodings other than UTF-8 and
3797           GB18030, loop upto U+30000 instead of U+10000.
3799 2001-05-24  Bruno Haible  <haible@clisp.cons.org>
3801         * lib/converters.h (mbtowc_funcs): Add flushwc member function.
3802         * lib/flushwc.h: New file.
3803         * lib/cp1255.h: Include flushwc.h.
3804           (cp1255_comp_table_data, cp1255_comp_table): New arrays.
3805           (cp1255_mbtowc): Compose base and combining characters.
3806           (cp1255_flushwc): New macro.
3807         * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
3808         * lib/cp1258.h: Include flushwc.h.
3809           (cp1258_mbtowc): Compose base and combining characters.
3810           (cp1258_flushwc): New macro.
3811         * lib/tcvn.h: Include flushwc.h.
3812           (tcvn_mbtowc): Compose base and combining characters.
3813           (tcvn_flushwc): New macro.
3814         * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
3815           from unicode_loop_convert.
3816           (unicode_loop_convert): Use unicode_transliterate.
3817           (unicode_loop_reset): Call xxx_flushwc and output the resulting
3818           character.
3819         * lib/encodings.def: Add xxx_flushwc member.
3820         * lib/encodings_aix.def: Likewise.
3821         * lib/encodings_dos.def: Likewise.
3822         * lib/encodings_local.def: Likewise.
3823         * lib/encodings_osf1.def: Likewise.
3824         * lib/genaliases.c: Add an argument to the DEFENCODING macro.
3825         * lib/genaliases2.c: Likewise.
3826         * lib/genflags.c: Likewise.
3827         * lib/iconv.c: Likewise.
3828         * tests/table-from.c (try): Reset the iconv descriptor before the main
3829           call, and flush it afterwards.
3830           (ucs4_decode): New function.
3831           (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
3832         * tests/CP1255-snippet: New file.
3833         * tests/CP1255-snippet.UTF-8: New file.
3834         * tests/CP1258-snippet: New file.
3835         * tests/CP1258-snippet.UTF-8: New file.
3836         * tests/TCVN-snippet: New file.
3837         * tests/TCVN-snippet.UTF-8: New file.
3838         * tests/Makefile.in (check): Check combining behaviour of CP1255,
3839           CP1258, TCVN.
3840         * tests/Makefile.msvc (check): Likewise.
3841         * tests/Makefile.os2 (check): Likewise.
3843 2001-05-22  Bruno Haible  <haible@clisp.cons.org>
3845         * lib/converters.h (RET_ILUNI): New macro.
3846           (RET_ILSEQ): Change value to -1.
3847           (RET_TOOFEW): Change value.
3848         * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
3849           of 0. Update handling of xxx_mbtowc return value.
3850         * lib/genflags.c (emit_encoding): Likewise.
3851         * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
3852         * lib/armscii_8.h (armscii_8_wctomb): Likewise.
3853         * lib/big5.h (big5_wctomb): Likewise.
3854         * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
3855         * lib/ces_big5.h (ces_big5_wctomb): Likewise.
3856         * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
3857         * lib/cns11643.h (cns11643_wctomb): Likewise.
3858         * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
3859         * lib/cp437.h (cp437_wctomb): Likewise.
3860         * lib/cp775.h (cp775_wctomb): Likewise.
3861         * lib/cp850.h (cp850_wctomb): Likewise.
3862         * lib/cp852.h (cp852_wctomb): Likewise.
3863         * lib/cp855.h (cp855_wctomb): Likewise.
3864         * lib/cp856.h (cp856_wctomb): Likewise.
3865         * lib/cp857.h (cp857_wctomb): Likewise.
3866         * lib/cp861.h (cp861_wctomb): Likewise.
3867         * lib/cp862.h (cp862_wctomb): Likewise.
3868         * lib/cp864.h (cp864_wctomb): Likewise.
3869         * lib/cp865.h (cp865_wctomb): Likewise.
3870         * lib/cp866.h (cp866_wctomb): Likewise.
3871         * lib/cp869.h (cp869_wctomb): Likewise.
3872         * lib/cp874.h (cp874_wctomb): Likewise.
3873         * lib/cp922.h (cp922_wctomb): Likewise.
3874         * lib/cp932ext.h (cp932ext_wctomb): Likewise.
3875         * lib/cp932.h (cp932_wctomb): Likewise.
3876         * lib/cp936ext.h (cp936ext_wctomb): Likewise.
3877         * lib/cp949.h (cp949_wctomb): Likewise.
3878         * lib/cp950ext.h (cp950ext_wctomb): Likewise.
3879         * lib/cp950.h (cp950_wctomb): Likewise.
3880         * lib/cp1046.h (cp1046_wctomb): Likewise.
3881         * lib/cp1124.h (cp1124_wctomb): Likewise.
3882         * lib/cp1129.h (cp1129_wctomb): Likewise.
3883         * lib/cp1133.h (cp1133_wctomb): Likewise.
3884         * lib/cp1250.h (cp1250_wctomb): Likewise.
3885         * lib/cp1251.h (cp1251_wctomb): Likewise.
3886         * lib/cp1252.h (cp1252_wctomb): Likewise.
3887         * lib/cp1253.h (cp1253_wctomb): Likewise.
3888         * lib/cp1254.h (cp1254_wctomb): Likewise.
3889         * lib/cp1255.h (cp1255_wctomb): Likewise.
3890         * lib/cp1256.h (cp1256_wctomb): Likewise.
3891         * lib/cp1257.h (cp1257_wctomb): Likewise.
3892         * lib/cp1258.h (cp1258_wctomb): Likewise.
3893         * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
3894         * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
3895         * lib/euc_cn.h (euc_cn_wctomb): Likewise.
3896         * lib/euc_jp.h (euc_jp_wctomb): Likewise.
3897         * lib/euc_kr.h (euc_kr_wctomb): Likewise.
3898         * lib/euc_tw.h (euc_tw_wctomb): Likewise.
3899         * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
3900         * lib/gb12345.h (gb12345_wctomb): Likewise.
3901         * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
3902         * lib/gb18030.h (gb18030_wctomb): Likewise.
3903         * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
3904         * lib/gb2312.h (gb2312_wctomb): Likewise.
3905         * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
3906         * lib/gbk.h (gbk_wctomb): Likewise.
3907         * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
3908         * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
3909         * lib/hkscs.h (hkscs_wctomb): Likewise.
3910         * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
3911         * lib/hz.h (hz_wctomb): Likewise.
3912         * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
3913         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3914         * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
3915         * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
3916         * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
3917         * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
3918         * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
3919         * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
3920         * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
3921         * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
3922         * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
3923         * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
3924         * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
3925         * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
3926         * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
3927         * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
3928         * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
3929         * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
3930         * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
3931         * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
3932         * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
3933         * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
3934         * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
3935         * lib/isoir165.h (isoir165_wctomb): Likewise.
3936         * lib/jisx0201.h (jisx0201_wctomb): Likewise.
3937         * lib/jisx0208.h (jisx0208_wctomb): Likewise.
3938         * lib/jisx0212.h (jisx0212_wctomb): Likewise.
3939         * lib/johab.h (johab_wctomb): Likewise.
3940         * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
3941           Likewise.
3942         * lib/koi8_r.h (koi8_r_wctomb): Likewise.
3943         * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
3944         * lib/koi8_u.h (koi8_u_wctomb): Likewise.
3945         * lib/ksc5601.h (ksc5601_wctomb): Likewise.
3946         * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
3947         * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
3948         * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
3949         * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
3950         * lib/mac_greek.h (mac_greek_wctomb): Likewise.
3951         * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
3952         * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
3953         * lib/mac_roman.h (mac_roman_wctomb): Likewise.
3954         * lib/mac_romania.h (mac_romania_wctomb): Likewise.
3955         * lib/mac_thai.h (mac_thai_wctomb): Likewise.
3956         * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
3957         * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
3958         * lib/mulelao.h (mulelao_wctomb): Likewise.
3959         * lib/nextstep.h (nextstep_wctomb): Likewise.
3960         * lib/sjis.h (sjis_wctomb): Likewise.
3961         * lib/tcvn.h (tcvn_wctomb): Likewise.
3962         * lib/tis620.h (tis620_wctomb): Likewise.
3963         * lib/ucs2be.h (ucs2be_wctomb): Likewise.
3964         * lib/ucs2.h (ucs2_wctomb): Likewise.
3965         * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
3966         * lib/ucs2le.h (ucs2le_wctomb): Likewise.
3967         * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
3968         * lib/ucs4.h (ucs4_wctomb): Likewise.
3969         * lib/uhc_1.h (uhc_1_wctomb): Likewise.
3970         * lib/uhc_2.h (uhc_2_wctomb): Likewise.
3971         * lib/utf16be.h (utf16be_wctomb): Likewise.
3972         * lib/utf16.h (utf16_wctomb): Likewise.
3973         * lib/utf16le.h (utf16le_wctomb): Likewise.
3974         * lib/utf32be.h (utf32be_wctomb): Likewise.
3975         * lib/utf32.h (utf32_wctomb): Likewise.
3976         * lib/utf32le.h (utf32le_wctomb): Likewise.
3977         * lib/utf7.h (utf7_wctomb): Likewise.
3978         * lib/utf8.h (utf8_wctomb): Likewise.
3979         * lib/viscii.h (viscii_wctomb): Likewise.
3980         * tools/8bit_tab_to_h.c (main): Likewise.
3981         * tools/cjk_tab_to_h.c (output_uni2charset_dense,
3982            output_uni2charset_sparse, do_gb18030uni): Likewise.
3984 2001-05-19  Bruno Haible  <haible@clisp.cons.org>
3986         * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
3987           (man/%.html): New rule.
3988         * man/Makefile.in (docdir, htmldir): New variables.
3989           (install, installdirs): Install the HTML formatted man pages in
3990           $(htmldir).
3991           (uninstall): Uninstall them.
3993 2001-05-20  Bruno Haible  <haible@clisp.cons.org>
3995         * lib/cp1255.h (cp1255_decomp_table): New array.
3996           (cp1255_comb_table): New array.
3997           (cp1255_wctomb): Decompose Unicode characters.
3998         * tests/CP1255.IRREVERSIBLE.TXT: New file.
4000 2001-05-13  Bruno Haible  <haible@clisp.cons.org>
4002         * lib/vietcomb.h: New file.
4003         * lib/cp1258.h: Include it.
4004           (cp1258_comb_table): New array.
4005           (cp1258_wctomb): Decompose Unicode characters.
4006         * lib/tcvn.h: Include it.
4007           (tcvn_comb_table): New array.
4008           (tcvn_wctomb): Decompose Unicode characters.
4009         * tests/CP1258.IRREVERSIBLE.TXT: New file.
4010         * tests/TCVN.IRREVERSIBLE.TXT: New file.
4012 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4014         * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
4015         (iconv.lib): Likewise.
4017 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4019         * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4020         (CPP): Remove variable.
4021         (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
4022          libiconv_plug_osf.so): Use LDFLAGS.
4023         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4024          libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
4025         * lib/Makefile.msvc (CPP): Remove variable.
4026         * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4027         (CPP): Remove variable.
4028         (iconv): Use CPPFLAGS and LDFLAGS.
4029         * src/Makefile.msvc (CPP): Remove variable.
4030         * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4031         (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
4032         * tests/Makefile.msvc (CPP): Remove variable.
4034 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4036         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
4037           gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
4039 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4041         Implement and document UTF-32, UTF-32BE, UTF-32LE.
4042         * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
4043         * src/converters.h: Include them.
4044         * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
4045         * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
4046         * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
4047         * tests/Makefile.os2 (check): Likewise.
4048         * tests/Makefile.msvc (check): Likewise.
4049         * tests/UTF-32*snippet*: New files.
4051         * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
4052           (ucs4_wctomb): Allow any 31-bit codepoint.
4054 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4056         * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
4057           unassigned code points.
4058         * tests/table-from.c (main); When dumping GB18030, don't print code
4059           points larger than U+FFFF.
4061 2001-03-30  Bruno Haible  <haible@clisp.cons.org>
4063         * tools/Makefile (GB18030uni.TXT): Use a table source which includes
4064           the unassigned Unicode code points.
4065         * lib/gb18030uni.h: Update.
4066           (gb18030uni_ranges): Remove bitmap_offset field.
4067           (gb18030uni_bitmap): Remove array.
4068           (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
4069           (gb18030uni_wctomb): Likewise.
4070         * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
4071           (gb18030_wctomb): Likewise.
4073 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4075         * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
4077 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4079         * src/iconv.c (print_version): Now called GNU libiconv.
4081 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
4083         * README: This package is now called GNU libiconv.
4085         * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
4086           file.
4087         * tools/cjk_tab_to_h.c (output_title): Likewise.
4088         * tools/cjk_variants.c (main): Likewise.
4089         * lib/gentranslit.c (main): Likewise.
4091 2001-03-19  Bruno Haible  <haible@clisp.cons.org>
4093         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
4094           ac_config_guess and ac_config_sub. Then ignore requests for
4095           AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
4097 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4099         * INSTALL.generic: New section "Particular Systems".
4101 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4103         * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
4104           platforms like BeOS.
4106         * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
4107           config.h.
4109 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
4111         * Version 1.6 released.
4112         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4113           Bump version number.
4114         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
4116 2001-03-05  Bruno Haible  <haible@clisp.cons.org>
4118         Provide all encodings used by OSF/1 5.1 locales.
4119         * lib/dec_kanji.h: New file.
4120         * lib/dec_hanyu.h: New file.
4121         * lib/converters.h: Include them if USE_OSF1 is defined.
4122         * lib/encodings_osf1.def: New file.
4123         * lib/genflags.c (main): Include it. Define USE_OSF1.
4124         * lib/genaliases2.c (main): Include it conditionally.
4125         * lib/iconv.c: Define USE_OSF1 on OSF/1.
4126           Include encodings_osf1.def and aliases_osf1.h.
4127         * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
4128           aliases_osf1.h.
4129         * Makefile.devel (lib/aliases_osf1.h): New target.
4130           (all): Depend on lib/aliases_osf1.h.
4131           (lib/flags.h): Depend on lib/encodings_osf1.def.
4133 2001-03-01  Bruno Haible  <haible@clisp.cons.org>
4135         * tools/Makefile (cp775.h): New target.
4136           (ALL): Add it.
4137         * lib/cp775.h: New file.
4138         * lib/converters.h: Include it.
4139         * lib/encodings_dos.def (CP775): New encoding.
4141 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4143         * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
4144           more.
4146 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4148         * src/iconv.c (convert): Use ICONV_CONST.
4149         * tests/table-from.c: Include config.h.
4150           (try): Use ICONV_CONST.
4151         * tests/table-to.c: Include config.h.
4152           (main): Use ICONV_CONST.
4153         * tests/Makefile.in (INCLUDES): Add -I../lib.
4154         * tests/Makefile.os2 (INCLUDES): Likewise.
4155         * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
4157 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4159         Provide all encodings used by DOS locales.
4160         * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
4161            cp864.h, cp865.h, cp869.h): New targets.
4162           (ALL): Add them.
4163         * lib/cp437.h: New file.
4164         * lib/cp852.h: New file.
4165         * lib/cp855.h: New file.
4166         * lib/cp857.h: New file.
4167         * lib/cp861.h: New file.
4168         * lib/cp864.h: New file.
4169         * lib/cp865.h: New file.
4170         * lib/cp869.h: New file.
4171         * lib/converters.h: Include them if USE_DOS is defined.
4172         * lib/encodings_dos.def: New file.
4173         * lib/genflags.c (main): Include it. Define USE_DOS.
4174         * lib/genaliases2.c (main): Include it conditionally.
4175         * lib/iconv.c: Define USE_DOS on DJGPP.
4176           Include encodings_dos.def and aliases_dos.h.
4177         * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
4178           aliases_dos.h.
4179         * Makefile.devel (lib/aliases_dos.h): New target.
4180           (all): Depend on lib/aliases_dos.h.
4181           (lib/flags.h): Depend on lib/encodings_dos.def.
4183 2001-02-23  Bruno Haible  <haible@clisp.cons.org>
4185         * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
4186           (SET_BINARY) [O_BINARY]: New macro.
4187           (usage): Mention --binary if available.
4188           (convert): Use SET_BINARY instead of setmode.
4189           (main): Likewise.
4190           Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
4192 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4194         * autoconf/ltconfig:
4195           sed -e 's/reload object files/produce relocatable object files/'.
4197 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4199         * src/iconv.c (usage, main): Make -f and -t options optional.
4200         * man/iconv.1: Mark them as optional.
4202 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4204         * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
4205           glibc-2.2.2 table.
4206         * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
4207           0xFE5E -> U+2E97. Shift the entire four-byte range.
4208         * tests/GB18030.TXT: Regenerated.
4210 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4212         Better support for DOS/Windows platforms.
4213         * autoconf/ltconfig: Upgrade to libtool-1.3.5.
4214         * autoconf/ltmain.sh: Likewise.
4215         * autoconf/aclocal.m4: Likewise.
4216         * autoconf/install-sh: New file.
4217         * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
4219 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4221         * Makefile.in (libdir, includedir, mandir): Use the autoconf
4222           determined value, in order to respect the configure arguments.
4223         * lib/Makefile.in (libdir): Likewise.
4224         * src/Makefile.in (bindir): Likewise.
4225         * man/Makefile.in (mandir): Likewise.
4227 2001-02-04  Bruno Haible  <haible@clisp.cons.org>
4229         * lib/translit.def: Add all the neutral transliterations from glibc.
4230         * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
4231           UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
4232           Avoid accessing data[-1].
4233         * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
4234           into translit_data.
4236 2001-01-05  Bruno Haible  <haible@clisp.cons.org>
4238         Implement and document CP862.
4239         * tools/Makefile (ALL): Add cp862.h.
4240           (cp862.h): New target.
4241         * lib/cp862.h: New file.
4242         * lib/converters.h: Include it.
4243         * lib/encodings.def (CP862): New encoding.
4244         * README, man/iconv_open.3: Add CP862.
4245         * tests/Makefile.in (check): Check CP862.
4246         * tests/Makefile.msvc (check): Likewise.
4247         * tests/Makefile.os2 (check): Likewise.
4248         * tests/CP862.TXT: New file.
4250 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
4252         * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
4253         * Makefile.devel (OTHERMACROS): Add it.
4254         * configure.in: Call AC_MBSTATE_T.
4255         * lib/config.h.in (mbstate_t): New definition.
4256         * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
4258 2000-12-12  Bruno Haible  <haible@clisp.cons.org>
4260         * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
4261           "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
4262           given. Reported by Toshimitsu Fujiwara.
4264 2000-12-08  Bruno Haible  <haible@clisp.cons.org>
4266         * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
4267         * lib/Makefile.in (exec_prefix): Likewise.
4268         * src/Makefile.in (exec_prefix): Likewise.
4269         * man/Makefile.in (exec_prefix): Likewise.
4271 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4273         * Version 1.5 released.
4274         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4275           Bump version number.
4276         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
4278 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4280         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
4281           Remove files installed in lib by libcharset.
4282         * Makefile.msvc (mostlyclean): Likewise.
4284         * Makefile.in (check): Depend on target 'all'.
4285         * Makefile.os2 (check): Likewise.
4286         * Makefile.msvc (check): Depend on target 'force' as well.
4288         * src/iconv.c (usage): Take an exitcode argument.
4289           (print_version): New function.
4290           (main): Recognize --help and --version command line options.
4292 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4294         * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
4295         * lib/Makefile.msvc: Likewise.
4296         * src/Makefile.msvc: Likewise.
4297         * tests/Makefile.msvc: Likewise.
4299 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4301         * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
4302           (force_binary): New variable.
4303           (convert): If requested, set the input O_BINARY.
4304           (main): Accept --binary option. If requested, set the output O_BINARY.
4305         * tests/check-stateful.bat: Pass --binary to iconv.
4306         * tests/check-stateful.cmd: Likewise.
4307         * tests/check-translit.bat: Likewise.
4308         * tests/check-translit.cmd: Likewise.
4310 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4312         * include/iconv.h.in (_libiconv_version): New declaration.
4313         * lib/iconv.c (_libiconv_version): New variable.
4315 2000-11-30  Bruno Haible  <haible@clisp.cons.org>
4317         * Makefile.msvc (all): File now named lib/libcharset.h.
4318           (clean, distclean, maintainer-clean): Likewise.
4320 2000-11-23  Bruno Haible  <haible@clisp.cons.org>
4322         * lib/*: Move here all files from src/*.
4323         * src/*: Move all files to lib.
4324         * lib/Makefile.in (distclean): No need to remove config.status,
4325           config.log, config.cache.
4326         * configure.in: Require lib/iconv.c, not src/iconv.c. Create
4327           lib/config.h, not src/config.h. Also create lib/Makefile.
4328         * Makefile.in (all): Install libcharset into lib, not src. Recurse
4329           into lib and src.
4330           (install-lib): Recurse into lib, not src.
4331           (install): Recurse into libcharset, lib and src.
4332           (installdirs, uninstall): Likewise.
4333           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4334         * Makefile.msvc (all): Recurse into lib and src.
4335           (install): Recurse into libcharset, lib and src.
4336           (installdirs, uninstall): Likewise.
4337           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4338         * Makefile.os2 (all): Recurse into lib and src.
4339           (install-lib): Recurse into lib, not src.
4340           (install, uninstall): Recurse into lib and src.
4341           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4342         * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
4343           (lib/aliases.h): Renamed from src/aliases.h.
4344           (lib/aliases.gperf): Renamed from src/aliases.gperf.
4345           (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
4346           (lib/flags.h): Renamed from src/flags.h.
4347           (lib/translit.h): Renamed from src/translit.h.
4348         * src/iconv.c: Moved here from tests/iconv.c.
4349         * src/Makefile.in: New file.
4350         * src/Makefile.msvc: New file.
4351         * src/Makefile.os2: New file.
4352         * tests/Makefile.in (iconv): Remove target.
4353           (../lib/libiconv.la): Renamed from ../src/libiconv.la.
4354           (clean): No need to remove iconv.
4355         * tests/Makefile.msvc (iconv.exe): Remove target.
4356         * tests/Makefile.os2 (iconv.exe): Likewise.
4357         * tests/check-stateful: iconv is in ../src.
4358         * tests/check-stateful.bat: Likewise.
4359         * tests/check-stateful.cmd: Likewise.
4360         * tests/check-translit: iconv is in ../src.
4361         * tests/check-translit.bat: Likewise.
4362         * tests/check-translit.cmd: Likewise.
4363         * man/iconv.1: New file.
4364         * man/Makefile.in (install, installdirs, uninstall): Also install *.1
4365           man pages.
4366         * man/Makefile.os2 (MAN3): Renamed from MAN.
4367           (MAN1): New variable.
4368           (install, uninstall): Also install *.1 man pages.
4370 2000-11-21  Bruno Haible  <haible@clisp.cons.org>
4372         * Makefile.msvc (all, check, mostlyclean, clean, distclean,
4373            maintainer-clean): Recurse into libcharset.
4374           (clean, distclean, maintainer-clean): Remove src\libcharset.h.
4375         * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
4376           (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
4378 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4380         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
4381           so that it agrees with Microsoft's definition of CP950.
4382         * tests/CP950.TXT: Likewise.
4383         * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
4385 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4387         Add support for locale dependent "char" and "wchar_t" encodings.
4388         * libcharset: New subdirectory.
4389         * src/loop_unicode.h: New file, extracted from src/iconv.c.
4390         * src/loop_wchar.h: New file.
4391         * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
4392         * src/encodings_local.def: New file.
4393         * src/genaliases.c: Also create aliases for encodings_local.def.
4394         * src/converters.h (conv_struct): Add lfuncs field.
4395         * src/genflags.c: Add dummy definitions of struct loop_funcs.
4396         * src/iconv.c: Include libcharset.h.
4397           (loop_funcs): New structure.
4398           Treat encodings_local.def like encodings.def.
4399           Include loops.h.
4400           (iconv_open): Move the bulk of the code to loop_unicode.h.
4401           (iconv): Likewise.
4402           (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
4403           descriptors.
4404         * src/Makefile.in (PLUG_SOURCES): Remove variable.
4405           (LIBCHARSET_OBJECTS): New variable.
4406           (libiconv.la): Link in the LIBCHARSET_OBJECTS.
4407           (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4408            libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
4409           LIBTOOL_LINK.
4410           (iconv.lo): Depend on encodings_local.def.
4411         * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
4412         * src/Makefile.os2 (iconv.obj): Likewise.
4413         * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
4414           Recurse into libcharset.
4415         * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
4416            HAVE_SETLOCALE): New macros.
4417         * tests/iconv.c: Include config.h and locale.h.
4418           (main): Call setlocale.
4419         * tests/Makefile.in (iconv): Search for config.h in ../src.
4420         * tests/Makefile.os2 (iconv.exe): Likewise.
4421         * tests/Makefile.msvc (iconv.exe): Likewise.
4422         * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
4423         * Makefile.in: After "cd", use "&&" not ";".
4424           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4425           Recurse into libcharset.
4426         * Makefile.devel (all): Recurse into libcharset.
4427           (src/aliases.gperf): Depend on src/encodings_local.def.
4429 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4431         * src/converters.h (ucs4_t): New type.
4432           (wchar_t): Remove locally defined override.
4433           (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
4434         * src/iconv.c (iconv): Likewise.
4435         * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
4436         * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
4437         * tools/cjk_tab_to_h.c: Likewise.
4438         * src/armscii_8.h: Use ucs4_t instead of wchar_t.
4439         * src/ascii.h: Likewise.
4440         * src/big5.h: Likewise.
4441         * src/big5hkscs.h: Likewise.
4442         * src/ces_big5.h: Likewise.
4443         * src/ces_gbk.h: Likewise.
4444         * src/cns11643.h: Likewise.
4445         * src/cns11643_1.h: Likewise.
4446         * src/cns11643_2.h: Likewise.
4447         * src/cns11643_3.h: Likewise.
4448         * src/cns11643_inv.h: Likewise.
4449         * src/cp1046.h: Likewise.
4450         * src/cp1124.h: Likewise.
4451         * src/cp1129.h: Likewise.
4452         * src/cp1133.h: Likewise.
4453         * src/cp1250.h: Likewise.
4454         * src/cp1251.h: Likewise.
4455         * src/cp1252.h: Likewise.
4456         * src/cp1253.h: Likewise.
4457         * src/cp1254.h: Likewise.
4458         * src/cp1255.h: Likewise.
4459         * src/cp1256.h: Likewise.
4460         * src/cp1257.h: Likewise.
4461         * src/cp1258.h: Likewise.
4462         * src/cp850.h: Likewise.
4463         * src/cp856.h: Likewise.
4464         * src/cp866.h: Likewise.
4465         * src/cp874.h: Likewise.
4466         * src/cp922.h: Likewise.
4467         * src/cp932.h: Likewise.
4468         * src/cp932ext.h: Likewise.
4469         * src/cp936ext.h: Likewise.
4470         * src/cp949.h: Likewise.
4471         * src/cp950.h: Likewise.
4472         * src/cp950ext.h: Likewise.
4473         * src/euc_cn.h: Likewise.
4474         * src/euc_jp.h: Likewise.
4475         * src/euc_kr.h: Likewise.
4476         * src/euc_tw.h: Likewise.
4477         * src/gb12345.h: Likewise.
4478         * src/gb12345ext.h: Likewise.
4479         * src/gb18030.h: Likewise.
4480         * src/gb18030ext.h: Likewise.
4481         * src/gb18030uni.h: Likewise.
4482         * src/gb2312.h: Likewise.
4483         * src/gbk.h: Likewise.
4484         * src/gbkext1.h: Likewise.
4485         * src/gbkext2.h: Likewise.
4486         * src/gbkext_inv.h: Likewise.
4487         * src/georgian_academy.h: Likewise.
4488         * src/georgian_ps.h: Likewise.
4489         * src/hkscs.h: Likewise.
4490         * src/hp_roman8.h: Likewise.
4491         * src/hz.h: Likewise.
4492         * src/iso2022_cn.h: Likewise.
4493         * src/iso2022_cnext.h: Likewise.
4494         * src/iso2022_jp.h: Likewise.
4495         * src/iso2022_jp1.h: Likewise.
4496         * src/iso2022_jp2.h: Likewise.
4497         * src/iso2022_kr.h: Likewise.
4498         * src/iso646_cn.h: Likewise.
4499         * src/iso646_jp.h: Likewise.
4500         * src/iso8859_1.h: Likewise.
4501         * src/iso8859_10.h: Likewise.
4502         * src/iso8859_13.h: Likewise.
4503         * src/iso8859_14.h: Likewise.
4504         * src/iso8859_15.h: Likewise.
4505         * src/iso8859_16.h: Likewise.
4506         * src/iso8859_2.h: Likewise.
4507         * src/iso8859_3.h: Likewise.
4508         * src/iso8859_4.h: Likewise.
4509         * src/iso8859_5.h: Likewise.
4510         * src/iso8859_6.h: Likewise.
4511         * src/iso8859_7.h: Likewise.
4512         * src/iso8859_8.h: Likewise.
4513         * src/iso8859_9.h: Likewise.
4514         * src/isoir165.h: Likewise.
4515         * src/isoir165ext.h: Likewise.
4516         * src/java.h: Likewise.
4517         * src/jisx0201.h: Likewise.
4518         * src/jisx0208.h: Likewise.
4519         * src/jisx0212.h: Likewise.
4520         * src/johab.h: Likewise.
4521         * src/johab_hangul.h: Likewise.
4522         * src/koi8_r.h: Likewise.
4523         * src/koi8_ru.h: Likewise.
4524         * src/koi8_u.h: Likewise.
4525         * src/ksc5601.h: Likewise.
4526         * src/mac_arabic.h: Likewise.
4527         * src/mac_centraleurope.h: Likewise.
4528         * src/mac_croatian.h: Likewise.
4529         * src/mac_cyrillic.h: Likewise.
4530         * src/mac_greek.h: Likewise.
4531         * src/mac_hebrew.h: Likewise.
4532         * src/mac_iceland.h: Likewise.
4533         * src/mac_roman.h: Likewise.
4534         * src/mac_romania.h: Likewise.
4535         * src/mac_thai.h: Likewise.
4536         * src/mac_turkish.h: Likewise.
4537         * src/mac_ukraine.h: Likewise.
4538         * src/mulelao.h: Likewise.
4539         * src/nextstep.h: Likewise.
4540         * src/sjis.h: Likewise.
4541         * src/tcvn.h: Likewise.
4542         * src/tis620.h: Likewise.
4543         * src/ucs2.h: Likewise.
4544         * src/ucs2be.h: Likewise.
4545         * src/ucs2internal.h: Likewise.
4546         * src/ucs2le.h: Likewise.
4547         * src/ucs2swapped.h: Likewise.
4548         * src/ucs4.h: Likewise.
4549         * src/ucs4be.h: Likewise.
4550         * src/ucs4internal.h: Likewise.
4551         * src/ucs4le.h: Likewise.
4552         * src/ucs4swapped.h: Likewise.
4553         * src/uhc_1.h: Likewise.
4554         * src/uhc_2.h: Likewise.
4555         * src/utf16.h: Likewise.
4556         * src/utf16be.h: Likewise.
4557         * src/utf16le.h: Likewise.
4558         * src/utf7.h: Likewise.
4559         * src/utf8.h: Likewise.
4560         * src/viscii.h: Likewise.
4562 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4564         Make transliteration optional.
4565         * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
4566           Set transliteration on if and only if tocode ends in //TRANSLIT.
4567         * README, man/iconv_open.3: Document how to enable transliteration.
4568         * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
4569         * tests/check-translit.bat: Likewise.
4570         * tests/check-translit.cmd: Likewise.
4572 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4574         * man/iconv.3: Fix typo.
4576 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
4578         * README, man/iconv_open.3: Document JOHAB again.
4580 2000-11-15  Bruno Haible  <haible@clisp.cons.org>
4582         * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
4583           (STATIC): Change default from 0 to 1.
4584         * src/Makefile.msvc: Likewise.
4585         * tests/Makefile.msvc: Likewise.
4586         * tests/check-stateless.bat: Call 'sort' with no arguments.
4588 2000-11-12  Bruno Haible  <haible@clisp.cons.org>
4590         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
4591           version from GNU CVS.
4593 2000-10-24  Bruno Haible  <haible@clisp.cons.org>
4595         * Version 1.4 released.
4596         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4597           Bump version number.
4598         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
4600 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4602         Implement and document GB18030 and BIG5HKSCS.
4603         * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
4604           functions.
4605           (do_gb18030uni): New function.
4606           (main): Accept gb18030ext, gb18030uni, hkscs.
4607         * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
4608           (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
4609            hkscs.h): New targets.
4610         * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
4611         * src/hkscs.h, src/big5hkscs.h: New files.
4612         * src/converters.h: Include gb18030.h and big5hkscs.h.
4613         * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
4614         * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
4615         * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
4616         * tests/Makefile.msvc (check): Likewise.
4617         * tests/Makefile.os2 (check): Likewise.
4618         * tests/GB18030.TXT: New file.
4619         * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
4621 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4623         * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
4624           UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
4625         * tests/table-to.c (main): Likewise.
4627 2000-10-22  Bruno Haible  <haible@clisp.cons.org>
4629         * src/gentranslit.c (main): Read the input in UTF-8 encoding.
4631 2000-10-09  Bruno Haible  <haible@clisp.cons.org>
4633         CPU recognition on OpenBSD.
4634         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
4635           __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
4637 2000-10-03  Bruno Haible  <haible@clisp.cons.org>
4639         * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
4640           character literals, use the numeric value instead.
4641           Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
4643 2000-09-29  Bruno Haible  <haible@clisp.cons.org>
4645         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
4646           change.
4648 2000-09-25  Bruno Haible  <haible@clisp.cons.org>
4650         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
4651           as equivalent to __i386. For OpenBSD.
4653 2000-09-21  Bruno Haible  <haible@clisp.cons.org>
4655         * src/utf16.h (utf16_wctomb): Reject single surrogates.
4656         * src/utf16be.h (utf16be_wctomb): Likewise.
4657         * src/utf16le.h (utf16le_wctomb): Likewise.
4658         * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
4659         * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
4660         * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
4661         * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
4662           Likewise.
4663         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
4664           Likewise.
4666 2000-09-15  Bruno Haible  <haible@clisp.cons.org>
4668         * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
4669         * src/Makefile.in (install, installdirs, uninstall): Likewise.
4670         * man/Makefile.in (install, installdirs, uninstall): Likewise.
4672 2000-09-11  Bruno Haible  <haible@clisp.cons.org>
4674         * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
4676 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
4678         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
4679           value, not parens.
4681 2000-07-04  Akira Hatakeyama  <akira@sra.co.jp>
4682             Bruno Haible  <haible@clisp.cons.org>
4684         * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
4685           tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
4686           tests/check-stateless.cmd, tests/check-translit.cmd: New files.
4688 2000-06-28  Bruno Haible  <haible@clisp.cons.org>
4690         * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
4691           cast.
4692         * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
4693         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
4694           sizeof(unsigned short).
4695         * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
4696           sizeof(unsigned int).
4697         Reported by François Pinard <pinard@iro.umontreal.ca>.
4699 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
4701         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
4702         Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
4704 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
4706         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
4707           host_vendor, host_os correctly if $host has more than two hyphens.
4709 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4711         * Version 1.3 released.
4712         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4713           Bump version number.
4714         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
4716 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4718         * THANKS: New file.
4719         * INSTALL.generic: New file.
4721         Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4722         * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
4723         * src/converters.h: Include them.
4724         * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
4725         * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
4726         * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
4727           (UCS-2LE): Renamed from UCS-2-LE.
4728           (UCS-4BE): Renamed from UCS-4-BE.
4729           (UCS-4LE): Renamed from UCS-4-LE.
4730         * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
4731         * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4732         * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4733         * tests/Makefile.msvc (check): Likewise.
4734         * tests/UCS-*snippet*: New files.
4736         Allow building as a shared library on Windows.
4737         Allow running the tests on Windows.
4738         * Makefile.devel (include/iconv.h.msvc): Remove rule.
4739           (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
4740           rules.
4741           (all): Update.
4742         * windows/dllexport.h: New file.
4743         * include/iconv.h.msvc: Remove file.
4744         * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
4745           autogenerated files.
4746         * Makefile.msvc (STATIC, DEBUG): Default to 0.
4747           (all): Choose either include\iconv.h.msvc-static or
4748           include\iconv.h.msvc-shared.
4749           (check): Depend on all.
4750           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4751           Recurse into tests directory.
4752         * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
4753           (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
4754           (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
4755           (RESOURCES): New variable.
4756           (iconv.lib): Change rule when building DLL.
4757           (clean, distclean): One filename per line.
4758         * tests/Makefile.msvc: New file.
4759         * tests/check-stateful.bat, tests/check-stateless.bat,
4760           tests/check-translit.bat: New files.
4761         * tests/uniq-u.c: New file, taken from GNU textutils.
4762         * README.win32: Update.
4763         Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
4765 2000-04-14  Bruno Haible  <haible@clisp.cons.org>
4767         Fix an OSF/1 problem.
4768         * configure.in: Define GCC variable for substitution.
4769         * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
4770           gcc.
4772 2000-04-13  Bruno Haible  <haible@clisp.cons.org>
4774         Fix a SunOS 4 problem.
4775         * include/iconv.h.in: If EILSEQ is not defined by the system, define
4776           it to ENOENT, not EINVAL.
4778 2000-04-02  Bruno Haible  <haible@clisp.cons.org>
4780         Allow building on filesystems lacking symlinks and hard links.
4781         * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
4782           CL_PROG_LN_S.
4783         * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
4784         * src/Makefile.in (LN): Use autoconfigured value @LN@.
4785           (LN_S): Use autoconfigured value @LN_S@.
4787 2000-03-15  Bruno Haible  <haible@clisp.cons.org>
4789         * Version 1.2 released.
4790         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4791         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
4793 2000-03-14  Bruno Haible  <haible@clisp.cons.org>
4795         Implement and document UTF-16BE and UTF16LE.
4796         * src/utf16be.h, src/utf16le.h: New files.
4797         * src/converters.h: Include them.
4798         * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
4799         * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
4800         * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
4801         * tests/UTF-16*snippet*: New files.
4803         * src/utf16.h (utf16_wctomb): Output a byte order mark.
4805 2000-03-13  Bruno Haible  <haible@clisp.cons.org>
4807         Provide all encodings used by AIX locales.
4808         * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
4809           cp1129.h.
4810           (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
4811         * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
4812           src/cp1129.h: New files.
4813         * src/converters.h: Include them if USE_AIX is defined.
4814         * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
4815           CP1124, CP1129.
4816         * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
4817         * src/genaliases2.c: New file.
4818         * src/iconv.c: Define USE_AIX on AIX.
4819           Include encodings_aix.def and aliases_aix.h.
4820           (aliases2_lookup): New function.
4821           (iconv_open): Call aliases2_lookup.
4822         * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
4823           aliases_aix.h.
4824         * Makefile.devel (all): Add src/aliases_aix.h.
4825           (src/aliases_aix.h): New rule.
4826           (src/flags.h): Depend on src/encodings_aix.def.
4828 2000-02-24  Bruno Haible  <haible@clisp.cons.org>
4830         * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
4831           Reported by Edmund Grimley Evans <edmundo@rano.org>.
4833 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
4835         * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
4837 2000-02-15  Bruno Haible  <haible@clisp.cons.org>
4839         * src/iconv.c (iconv): Add cast in xxx_reset call.
4841 2000-02-05  Bruno Haible  <haible@clisp.cons.org>
4843         * src/tis620.h: Simplify.
4845 2000-01-27  Bruno Haible  <haible@clisp.cons.org>
4847         * Makefile.devel (CLISP_DIR): Change to "..".
4849 2000-01-24  Bruno Haible  <haible@clisp.cons.org>
4851         * Version 1.1 released.
4852         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4853         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
4855 2000-01-23  Bruno Haible  <haible@clisp.cons.org>
4857         * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
4858           '+' as "+-".
4860 2000-01-22  Bruno Haible  <haible@clisp.cons.org>
4862         * include/iconv.h.in (iconvctl): New declaration.
4863           (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
4864           New macros.
4865         * src/iconv.c (iconvctl): New function.
4867         * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
4869         Solve a build problem.
4870         * include/iconv.h.in: Renamed from include/libiconv.h.in.
4871         * Makefile.devel: libiconv.h -> iconv.h.
4872         * Makefile.in: Likewise.
4873         * configure.in: Likewise. Remove check for <iconv.h>.
4874         * src/iconv.c: Include iconv.h instead of libiconv.h.
4875         * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
4877         * README, man/iconv_open.3: Don't document JOHAB any more.
4879         * man/iconv.3: Clarify return value again.
4881 2000-01-16  Bruno Haible  <haible@clisp.cons.org>
4883         Add aliases.
4884         * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
4885           (ISO-8859-15): Add alias ISO-IR-203.
4886           (EUC-CN): Add alias CN-GB, from RFC 1922.
4887           (BIG5): Add alias CN-BIG5, from RFC 1922.
4888         * Makefile.devel (src/aliases.h): Add 8th character to key set.
4890         Drop X11 aliases.
4891         * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
4892           (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
4893           (KSC_5601): Drop KSC5601.1987-0 alias.
4895         Improve GB/T 12345 (not used yet).
4896         * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
4897         * src/gb12345ext.h: Regenerated.
4899         Improve and document CP949.
4900         * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
4901           (uhc_1.h, uhc_2.h): New rules.
4902         * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
4903           function.
4904           (output_uni2charset_sparse): Take an additional boolean argument.
4905           All callers changed.
4906           (*_uhc_1, *_uhc_2): New functions.
4907           (main): Treat uhc_1 and uhc_2.
4908         * src/uhc_1.h, src/uhc_2.h: New files.
4909         * src/cp949.h: New file, include them.
4910         * src/converters.h: Include it.
4911         * src/encodings.def (KSC_5601): Remove alias CP949.
4912           (CP949): New encoding.
4913         * README, man/iconv_open.3: Add CP949.
4914         * tests/Makefile.in (check): Check CP949.
4915         * tests/CP949.TXT: New file.
4917         Document CP932.
4918         * README, man/iconv_open.3: Add CP932.
4919         * tests/Makefile.in (check): Check CP932.
4920         * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
4922         * Makefile.devel (src/flags.h): Depend on src/converters.h.
4924         * tests/Makefile.in (check): Check JIS_X0201.
4925         * tests/JIS_X0201.TXT: New file.
4927         * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
4928         * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4930         * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
4931           (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
4933         Add ISO-IR-165 (undocumented).
4934         * tools/Makefile (all): Add isoir165ext.h.
4935           (isoir165ext.h): New rule.
4936         * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
4937         * src/isoir165.h, src/isoir165ext.h: New files.
4938         * src/converters.h: Include it.
4939         * src/encodings.def: Add ISO-IR-165.
4940         * tests/Makefile.in (check): Check ISO-IR-165.
4941         * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
4943         Add ISO646-CN (undocumented).
4944         * src/iso646_cn.h: New file.
4945         * src/converters.h: Include it.
4946         * src/encodings.def: Add ISO646-CN.
4947         * tests/Makefile.in (check): Check ISO646-CN.
4948         * tests/ISO646-CN.TXT: New file.
4950         Add ISO646-JP (undocumented).
4951         * src/iso646_jp.h: New file.
4952         * src/converters.h: Include it.
4953         * src/encodings.def: Add ISO646-JP.
4954         * tests/Makefile.in (check): Check ISO646-JP.
4955         * tests/ISO646-JP.TXT: New file.
4957 2000-01-05  Bruno Haible  <haible@clisp.cons.org>
4959         Add ISO-8859-16.
4960         * tools/Makefile (all): Add iso8859_16.h.
4961           (iso8859_16.h): New rule.
4962         * src/iso8859_16.h: New file.
4963         * src/converters.h: Include it.
4964         * src/encodings.def: Add ISO-8859-16.
4965         * README, man/iconv_open.3: Add ISO-8859-16.
4966         * tests/Makefile.in (check): Check ISO-8859-16.
4967         * tests/ISO-8859-16.TXT: New file.
4969         * man/iconv.3: Clarify what happens *inbuf in case 3.
4971         * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
4972         * tests/ISO-8859-8.TXT: Likewise.
4974 2000-01-04  Bruno Haible  <haible@clisp.cons.org>
4976         * Version 1.0 released.
4977         * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
4978         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
4979           (libiconv.la): Use LIBICONV_VERSION_INFO.
4981 2000-01-03  Bruno Haible  <haible@clisp.cons.org>
4983         * tests/Makefile.in: New file.
4984           tests/check-stateless, tests/table-from.c, tests/table-to.c,
4985           tests/*.TXT, tests/genutf8.c: New files, checks for stateless
4986           encodings.
4987           tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
4988           checks for stateful encodings.
4989         * Makefile.in (all, check, mostlyclean, clean, distclean,
4990            maintainer-clean): Descend into tests directory.
4991         * configure.in: Add tests/Makefile to AC_OUTPUT duties.
4993         * src/gentranslit.c: New file.
4994         * Makefile.devel (src/translit.h): New rule.
4995         * src/translit.def, src/translit.h: New files.
4996         * src/iconv.c: Include it.
4997           (iconv): Transliterate using translit.h table.
4999         * src/genflags.c: New file.
5000         * Makefile.devel (src/flags.h): New rule.
5001         * src/flags.h: New file.
5002         * src/iconv.c: Include it.
5003           (encoding): Add field 'oflags'.
5004           (all_encodings): Initialize the field 'oflags'.
5005           (iconv_open): Copy field 'oflags'.
5006           (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
5007         * src/Makefile.in (iconv.lo): Update dependencies.
5009         * src/converters.h: New file, extracted from src/iconv.c.
5010         * src/iconv.c: Include it.
5011         * src/Makefile.in (iconv.lo): Update dependencies.
5013         * tools/cjk_variants.c: New file.
5014         * tools/Makefile (ALL): Add cjk_variants.h.
5015           (cjk_variants.h, cjk_variants): New rules.
5016         * src/cjk_variants.h: New file.
5017         * src/iconv.c: Include it.
5018           (iconv): Use cjk_variants for transliteration.
5020         * man/iconv.3: Fix description of return value.
5021         * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
5022         * iso2022_kr.h (iso2022kr_wctomb): Likewise.
5023         * src/iconv.c (iconv): Do Hangul transliteration here and increment
5024           result once for every transliterated character.
5025         * src/johab_hangul.h (johab_hangul_decompose): Change result array
5026           from 'unsigned char*' to 'wchar_t*'.
5028         * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
5029           0xfffd.
5031         * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
5033         * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
5034           Katakana.
5036         * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
5038         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
5039           0xC6A1..0xC7FE.
5041         * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
5042           not being excluded. Fix that.
5043         * src/ksc5601.h: Regenerated.
5044         * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
5045           valid in KSC5601/KSX1001 but not in JOHAB.
5047         * src/iconv.c (conv_struct): Add fields iindex, oindex.
5048           (iconv_open): Fill in iindex, oindex.
5050         * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
5051           "csUnicode11", from IANA charset list.
5052           (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
5053           from IANA charset list.
5054           (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
5055           from IANA charset list.
5056           (GB_2312-80): New encoding, from IANA charset list.
5058         * README, man/iconv_open.3: Add MacIceland and MacUkraine.
5060         * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
5061           (all): Depend on src/aliases.h.
5062         * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
5063           $(srcdir)/aliases.gperf.
5064           (clean): Clean up.
5066         * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
5068 1999-12-31  Bruno Haible  <haible@clisp.cons.org>
5070         * Version 0.3 released.