Update from libtool-2.4, with modifications.
[libiconv.git] / ChangeLog
bloba79cd37114fdc7f9e2bee46a1ec562251f08a481
1 2010-09-23  Bruno Haible  <bruno@clisp.org>
3         * m4/libtool.m4: Update from libtool-2.4, with modifications:
4         2008-04-06  Bruno Haible  <bruno@clisp.org>
5                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
6                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
7                 to ${CONFIG_SHELL}.
8         * m4/ltversion.m4: Update from libtool-2.4.
9         * build-aux/ltmain.sh: Likewise.
11 2010-09-23  Bruno Haible  <bruno@clisp.org>
13         Simplify use of gnulib-tool now that gnulib-tool --import works better.
14         * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
15         * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
17 2010-07-31  Bruno Haible  <bruno@clisp.org>
19         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
20         * preload/Makefile.devel (AUTOCONF): Likewise.
22 2010-07-03  Bruno Haible  <bruno@clisp.org>
24         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
25         * preload/Makefile.devel (AUTOCONF): Likewise.
27 2010-06-04  Bruno Haible  <bruno@clisp.org>
29         Addendum to 2009-10-18 commit.
30         * m4/fcntl-o.m4: New file, from gnulib.
31         * configure.ac: Invoke gl_FCNTL_O_FLAGS.
32         * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
34 2010-06-04  Bruno Haible  <bruno@clisp.org>
36         * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
37         2008-04-06  Bruno Haible  <bruno@clisp.org>
38                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
39                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
40                 to ${CONFIG_SHELL}.
41         * m4/ltoptions.m4: Update from libtool-2.2.8.
42         * m4/ltversion.m4: Likewise.
43         * m4/lt~obsolete.m4: Likewise.
44         * build-aux/ltmain.sh: Likewise.
46 2010-04-06  Bruno Haible  <bruno@clisp.org>
48         Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
49         * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
50         doesn't contains #include directives.
52 2010-03-30  Bruno Haible  <bruno@clisp.org>
54         * README.woe32: Update for Cygwin 1.7.x.
56 2009-12-26  Bruno Haible  <bruno@clisp.org>
58         * windows/libiconv.rc: Update.
59         * windows/iconv.rc: Update.
61 2009-12-11  Bruno Haible  <bruno@clisp.org>
63         * include/iconv.h.in: Untabify.
64         * gnulib-local/lib/xalloc.h: Untabify.
65         * woe32dll/export.h: Untabify.
66         * tests/uniq-u.c: Untabify.
68 2009-12-11  Bruno Haible  <bruno@clisp.org>
70         * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
72 2009-12-11  Bruno Haible  <bruno@clisp.org>
74         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
75         * preload/Makefile.devel (AUTOCONF): Likewise.
77 2009-11-22  Bruno Haible  <bruno@clisp.org>
79         * tests/check-subst: Add reference to the Solaris printf bug.
80         Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
82 2009-09-01  Bruno Haible  <bruno@clisp.org>
84         * README.woe32: Put the -mno-cygwin option into CC and CXX.
85         Recommended by Paolo Bonzini and Eric Blake.
87 2009-08-15  Bruno Haible  <bruno@clisp.org>
89         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
90         * preload/Makefile.devel (AUTOCONF): Likewise.
92 2009-08-15  Bruno Haible  <bruno@clisp.org>
94         Use .git/info/exclude, not .gitignore, for imported or generated files.
95         * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
96         gnulib-tool.
98 2009-07-07  Bruno Haible  <bruno@clisp.org>
100         Fix an endless loop.
101         * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
102         incomplete input correctly.
103         * tests/test-to-wchar.c: New file.
104         * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
105         (check): Depend on and run tests-to-wchar.
106         (clean): Add tests-to-wchar.
107         Reported by Tristan Gingold <gingold@adacore.com>.
109 2009-06-30  Bruno Haible  <bruno@clisp.org>
111         * Version 1.13.1 released.
113 2009-06-30  Bruno Haible  <bruno@clisp.org>
115         * configure.ac: Bump version number to 1.13.1.
116         * README: Likewise.
118 2009-06-04  Bruno Haible  <bruno@clisp.org>
120         * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
121         (ACLOCAL): Switch to version 1.11.
123 2009-05-19  Bruno Haible  <bruno@clisp.org>
125         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
126         * autogen.sh: Update comments.
128 2009-04-24  Bruno Haible  <bruno@clisp.org>
130         Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
131         * src/iconv_open2.h: Don't initialize nonexistent field if
132         !(HAVE_WCRTOMB || HAVE_MBRTOWC).
133         Patch by Joel Brobecker <brobecker@adacore.com>.
135 2009-04-15  Bruno Haible  <bruno@clisp.org>
137         * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
138         explicitly. Needed on Cygwin.
140 2009-04-11  Bruno Haible  <bruno@clisp.org>
142         * configure.ac: Move the statements for WOE32 and WINDRES.
144 2009-03-26  Bruno Haible  <bruno@clisp.org>
146         * Version 1.13 released.
148 2009-03-26  Bruno Haible  <bruno@clisp.org>
150         * src/iconv.c: Update copyright header to GPLv3+.
151         (print_version): Update license info.
153 2009-03-26  Bruno Haible  <bruno@clisp.org>
155         * src/iconv.c (print_version): Bump year.
157 2009-03-25  Bruno Haible  <bruno@clisp.org>
159         * build-aux/config.guess: Update to GNU version 2009-02-03.
160         * build-aux/config.sub: Likewise.
162 2009-03-25  Bruno Haible  <bruno@clisp.org>
164         * configure.ac: Bump version number to 1.13.
165         * README: Likewise.
166         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
167         * windows/iconv.rc: Update.
168         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
170 2009-03-25  Bruno Haible  <bruno@clisp.org>
172         Fix the handling of Windows resources in shared libraries.
173         * configure.ac: Invoke LT_LANG for 'Windows Resource'.
174         * lib/Makefile.in (RC): New variable.
175         (WINDRES): Remove variable.
176         (OBJECTS_RES_yes): Add .lo suffix.
177         (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
178         (clean): Simplify.
179         Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
181 2009-03-14  Bruno Haible  <bruno@clisp.org>
183         * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
185 2009-01-24  Bruno Haible  <bruno@clisp.org>
187         * tools/Makefile (ALL): Add cp1131.h.
188         (cp1131.h): New rule.
189         * lib/encodings.def: Add CP1131.
190         * lib/cp1131.h: New file.
191         * lib/converters.h: Include it.
192         * README, man/iconv_open.3: Add CP1131.
193         * NOTES: Mention CP1131.
194         * tests/CP1131.TXT: New file.
195         * tests/Makefile.in (check): Also test CP1131.
197 2009-01-17  Bruno Haible  <bruno@clisp.org>
199         Add support for "make install-strip".
200         * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
201         * Makefile.in (install-strip): New rule.
202         * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
203         variables.
204         (install-strip): New rule.
205         * lib/Makefile.in (install-strip): New target.
206         * preload/Makefile.in (install-strip): Likewise.
207         * man/Makefile.in (install-strip): Likewise.
208         Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
210 2009-01-17  Bruno Haible  <bruno@clisp.org>
212         Update after gnulib changed.
213         * src/Makefile.in (RELOCATABLE_STRIP): New variable.
215 2009-01-17  Bruno Haible  <bruno@clisp.org>
217         Make --enable-relocatable work on glibc systems.
218         * src/Makefile.in (host): New variable.
220 2009-01-17  Bruno Haible  <bruno@clisp.org>
222         * lib/genflags.c: Include <string.h>.
224 2009-01-14  Bruno Haible  <bruno@clisp.org>
226         * configure.ac: More consistent m4 quoting.
227         * preload/configure.ac: Likewise.
229 2008-09-28  Bruno Haible  <bruno@clisp.org>
231         * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
232         preprocess the argument vector through prepare_spawn.
234 2008-09-27  Bruno Haible  <bruno@clisp.org>
236         * build-aux/config.guess: Update to GNU version 2008-09-08.
237         * build-aux/config.sub: Likewise.
239 2008-09-26  Bruno Haible  <bruno@clisp.org>
241         * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
243 2008-09-26  Bruno Haible  <bruno@clisp.org>
245         * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
246         * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
247         all programs against libicrt.a. Needed for the stdio function
248         replacements on mingw.
250 2008-09-21  Tadamasa Teranishi  <yw3t-trns@asahi-net.or.jp>
252         * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
253         ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
255 2008-09-20  Bruno Haible  <bruno@clisp.org>
257         * man/iconv_open_into.3: New file.
259 2008-09-16  Bruno Haible  <bruno@clisp.org>
261         New function iconv_open_into.
262         * include/iconv.h.in: Include <wchar.h> and its prerequisites.
263         (iconv_allocation_t): New type.
264         (iconv_open_into): New declaration.
265         * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
266         * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
267         * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
268         Verify size of iconv_allocation_t.
269         (iconv_open_into): New function.
270         * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
271         field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
272         * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
273         Reported by Roman Rybalko <romanr@romanr.info>.
275 2008-09-16  Bruno Haible  <bruno@clisp.org>
277         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
279 2008-09-16  Bruno Haible  <bruno@clisp.org>
281         * include/iconv.h.in: Use Unicode single-quotes in comments.
283 2008-09-14  Bruno Haible  <bruno@clisp.org>
285         * Makefile.devel (GNULIB_MODULES): Add strerror.
287 2008-09-07  Bruno Haible  <bruno@clisp.org>
289         Make behaviour when encountering invalid input after a shift sequence
290         more consistent.
291         * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
292         (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
293         (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
294         (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
295         * lib/loop_unicode.h (unicode_loop_convert): Take into account the
296         shift count contained in the negative return values.
297         * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
298         modified state and return RET_SHIFT_ILSEQ.
299         * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
300         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
301         * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
302         * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
303         * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
304         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
305         * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
306         * lib/ucs2.h (ucs2_mbtowc): Likewise.
307         * lib/ucs4.h (ucs4_mbtowc): Likewise.
308         * lib/utf16.h (utf16_mbtowc): Likewise.
309         * lib/utf32.h (utf32_mbtowc): Likewise.
310         * lib/utf7.h (utf7_mbtowc): Likewise.
311         * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
312         invalid input, return RET_SHIFT_ILSEQ.
313         * lib/utf16le.h (utf16le_mbtowc): Likewise.
314         * tests/test-shiftseq.c: New file.
315         * tests/Makefile.in (check): Run test-shiftseq.
316         (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
317         (clean): Remove test-shiftseq executable.
318         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
319         at <http://savannah.gnu.org/bugs/?24216>.
321 2008-09-07  Bruno Haible  <bruno@clisp.org>
323         * man/iconv.3: Clarify the processing of shift-sequences.
325 2008-09-07  Bruno Haible  <bruno@clisp.org>
327         * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
328         2008-04-06  Bruno Haible  <bruno@clisp.org>
329                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
330                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
331                 to ${CONFIG_SHELL}.
332         * m4/ltoptions.m4: Update from libtool-2.2.6.
333         * m4/ltsugar.m4: Likewise.
334         * m4/ltversion.m4: Likewise.
335         * build-aux/ltmain.sh: Likewise.
337 2008-09-06  Bruno Haible  <bruno@clisp.org>
339         * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
340         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
341         at <http://savannah.gnu.org/bugs/?24214>.
343 2008-06-30  Bruno Haible  <bruno@clisp.org>
345         Fix sed expressions to work with the old sed-3.02 on MSYS.
346         * windows/windres-options (sed_extract_major, sed_extract_minor,
347         sed_extract_subminor): Put a semicolon before the closing brace. Use
348         an i\ command instead of an a\ command.
349         Reported by Sunil Negi <sunil.negi@morningstar.com>
350         in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
351         via Keith Marshall <keithmarshall@users.sourceforge.net>.
353 2008-05-22  Bruno Haible  <bruno@clisp.org>
355         * README.woe32: Update with info from GNU gettext's README.woe32.
357 2008-05-18  Bruno Haible  <bruno@clisp.org>
359         * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
360         2008-04-06  Bruno Haible  <bruno@clisp.org>
361                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
362                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
363                 to ${CONFIG_SHELL}.
364         * m4/ltoptions.m4: Update from libtool-2.2.4.
365         * m4/ltversion.m4: Likewise.
366         * m4/lt~obsolete.m4: Likewise.
367         * build-aux/ltmain.sh: Likewise.
369 2008-04-14  Bruno Haible  <bruno@clisp.org>
371         * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
372         on MacOS X 10.5.
374 2008-04-14  Bruno Haible  <bruno@clisp.org>
376         * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
377         AC_AIX and AC_MINIX.
378         * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
379         * preload/Makefile.devel (AUTOCONF): Likewise.
380         * autogen.sh: Likewise.
382 2008-04-06  Bruno Haible  <bruno@clisp.org>
384         * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
385         2008-04-06  Bruno Haible  <bruno@clisp.org>
386                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
387                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
388                 to ${CONFIG_SHELL}.
389         * m4/ltoptions.m4: New file, from libtool-2.2.2.
390         * m4/ltsugar.m4: New file, from libtool-2.2.2.
391         * m4/ltversion.m4: New file, from libtool-2.2.2.
392         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
393         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
394         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
395         * preload/configure.ac: Likewise.
397 2008-04-06  Bruno Haible  <bruno@clisp.org>
399         More portable way of building the preloadable library.
400         * preload/Makefile.devel: New file.
401         * preload/Makefile.in: New file, based on lib/Makefile.in.
402         * preload/configure.ac: New file, based on configure.ac.
403         * Makefile.devel (all): Recurse into preload directory.
404         * Makefile.in (all, install, installdirs, uninstall, check,
405         mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
406         directory.
407         * configure.ac: Likewise.
408         (OS, GCC, PLUGLIB): Remove definitions.
409         * lib/Makefile.in (all): Don't depend on PLUGLIB.
410         (preloadable_libiconv.so, preloadable_libiconv_linux.so,
411         preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
412         rules.
413         (install, uninstall, clean): Don't handle the preloadable library here.
415 2008-04-06  Bruno Haible  <bruno@clisp.org>
417         Avoid a gcc warning.
418         * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
420 2008-04-06  Bruno Haible  <bruno@clisp.org>
422         * src/iconv.c (print_version): Bump year.
424 2008-04-06  Bruno Haible  <bruno@clisp.org>
426         Support all possible nl_langinfo(CODESET) results on the respective
427         platforms, according to libcharset/lib/config.charset.
428         * lib/encodings.def: Add DEFALIAS statements, conditional on
429         USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
430         USE_SOLARIS_ALIASES.
431         * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
432         USE_AIX_ALIASES.
433         * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
434         USE_OSF1_ALIASES.
435         * lib/genaliases.c (emit_alias): New function, extracted from
436         emit_encoding.
437         (emit_encoding): Use it.
438         (main): Define DEFALIAS.
439         * lib/genaliases2.c (counter): New variable, extracted from
440         emit_encoding.
441         (emit_alias): New function, extracted from emit_encoding.
442         (emit_encoding): Use it.
443         (main): Define DEFALIAS.
444         * lib/genflags.c (main): Define DEFALIAS.
445         * lib/iconv.c (all_encodings): Define DEFALIAS.
446         Include the system dependent variant of aliases.h on the appropriate
447         systems.
448         (all_canonical): Include the system dependent variant of canonical.h,
449         canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
450         systems.
451         * lib/aliases2.h: Include the system dependent variant of
452         aliases_aix.h or aliases_osf1.h on the appropriate systems.
453         * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
454         aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
455         aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
456         aliases_extra.h, translit.h.
457         * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
458         lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
459         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
460         (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
461         lib/aliases_syssolaris.h): New rules.
462         (lib/aliases_aix_sysaix.h): New rule.
463         (lib/aliases_osf1_sysosf1.h): New rule.
464         * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
465         lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
466         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
468 2008-04-06  Bruno Haible  <bruno@clisp.org>
470         * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
471         * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
473 2007-11-11  Bruno Haible  <bruno@clisp.org>
475         * Version 1.12 released.
477 2007-11-11  Bruno Haible  <bruno@clisp.org>
479         * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
480         (AUTOMAKE, ACLOCAL): Require version 1.10.
481         (srclib/Makefile.in): Avoid error from automake.
483 2007-10-26  Bruno Haible  <bruno@clisp.org>
485         * m4/libtool.m4: Update, based on libtool-1.5.24.
486         * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
488 2007-10-23  Bruno Haible  <bruno@clisp.org>
490         * build-aux/config.guess: Update to GNU version 2007-07-22.
491         * build-aux/config.sub: Likewise.
493 2007-10-23  Bruno Haible  <bruno@clisp.org>
495         * configure.ac: Bump version number to 1.12.
496         * README: Likewise.
498 2007-10-23  Bruno Haible  <bruno@clisp.org>
500         Move relocatability infrastructure to gnulib.
501         * gnulib-local/lib/relocatable.h: Remove file.
502         * gnulib-local/lib/relocatable.c: Remove file.
504 2007-10-23  Bruno Haible  <bruno@clisp.org>
506         Update from GNU gettext.
507         2006-11-26  Bruno Haible  <bruno@clisp.org>
508                 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
509                 template variant.
510                 Based on a patch from Paul Eggert in gnulib.
511         2006-11-06  Bruno Haible  <bruno@clisp.org>
512                 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
513                 (xmemdup): New declaration.
514                 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
515         2006-11-03  Bruno Haible  <bruno@clisp.org>
516                 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
517                 XCALLOC): New macros.
518                 (xnboundedmalloc): New inline function.
519                 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
520                 xmalloc.
521         2006-11-02  Bruno Haible  <bruno@clisp.org>
522                 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
523                 xalloc.h.
524                 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
525                 (xnmalloc): New function.
527 2007-10-23  Bruno Haible  <bruno@clisp.org>
529         Moved module xreadlink to gnulib.
530         * gnulib-local/modules/xreadlink: Remove file.
531         * gnulib-local/lib/xreadlink.h: Remove file.
532         * gnulib-local/lib/xreadlink.c: Remove file.
533         * gnulib-local/m4/xreadlink.m4: Remove file.
535 2007-10-07  Bruno Haible  <bruno@clisp.org>
537         Update program license to GPLv3.
538         * COPYING: Replace with GPL 3.
539         * windows/iconv.rc (Comments): Update.
541 2007-10-07  Bruno Haible  <bruno@clisp.org>
543         * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
545 2007-03-30  Bruno Haible  <bruno@clisp.org>
547         * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
548         macro to _GL_.
550 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
552         * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
553         declare.
555 2007-09-29  Bruno Haible  <bruno@clisp.org>
557         * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
558         valid since 2007-09-19.
560 2007-07-07  Bruno Haible  <bruno@clisp.org>
562         * autogen.sh: Add an option --skip-gnulib.
564 2007-07-07  Bruno Haible  <bruno@clisp.org>
566         * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
567         * gnulib-local/lib/width.c: Remove file, moved to gnulib.
568         * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
569         * gnulib-local/modules/uniwidth: Remove file.
570         * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
571         * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
573 2007-06-30  Bruno Haible  <bruno@clisp.org>
575         * src/iconv.c (print_version): Use the standard --version output, see
576         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
578 2007-06-30  Bruno Haible  <bruno@clisp.org>
580         * autogen.sh: New file.
581         * DEPENDENCIES: New file.
582         * HACKING: New file.
584 2007-06-30  Bruno Haible  <bruno@clisp.org>
586         * src/iconv.c: Provide translator comments for many messages.
587         (conversion_error_EILSEQ, conversion_error_EINVAL,
588         conversion_error_other): New functions, extracted from convert.
589         (convert): Use them.
590         Reported by Tim Van Holder <tim.van.holder@telenet.be>.
592 2007-06-09  Bruno Haible  <bruno@clisp.org>
594         * gnulib-local/lib/relocwrapper.c: Remove file.
596 2007-05-27  Bruno Haible  <bruno@clisp.org>
598         * windows/libiconv.rc: New file.
599         * windows/iconv.rc: New file.
600         * windows/windres-options: New file.
601         * configure.ac (WOE32): New variable.
602         (WINDRES) [WOE32]: New variable.
603         * lib/Makefile.in (WINDRES): New variable.
604         (PACKAGE_VERSION): New variable.
605         (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
606         (OBJECTS_EXP_no): Renamed from OBJECTS_no.
607         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
608         (OBJECTS): Add one of them.
609         (libiconv.res): New rule.
610         (clean): Remove also libiconv.res.
611         * src/Makefile.in (WINDRES): New variable.
612         (PACKAGE_VERSION): New variable.
613         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
614         (all, iconv_no_i18n, install): Use them.
615         (iconv.res): New rule.
616         (clean): Remove also iconv.res.
617         Suggested and inspired by work by Perry Rapp.
619 2007-05-27  Bruno Haible  <bruno@clisp.org>
621         Follow broken iconv() prototype in POSIX.
622         * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
623         * lib/config.h.in (ICONV_CONST): Change default value to an empty
624         comment.
625         * src/iconv.c (ICONV_CONST): Change default value to empty.
626         Reported by Andreas Krennmair <ak@synflood.at>.
628 2007-05-25  Bruno Haible  <bruno@clisp.org>
630         * tools/Makefile (ALL): Add rk1048.h.
631         (rk1048.h): New rule.
632         * lib/encodings.def: Add RK1048.
633         * lib/rk1048.h: New file.
634         * lib/converters.h: Include it.
635         * README, man/iconv_open.3: Add RK1048.
636         * NOTES: Mention RK1048.
637         * tests/RK1048.TXT: New file.
638         * tests/Makefile.in (check): Also test RK1048.
639         Suggested by Timur Birsh <team9@host.kz>.
641 2007-04-24  Bruno Haible  <bruno@clisp.org>
643         * man/iconv_open.3: Tweak explanation of TRANSLIT.
644         Reported by Perry Rapp.
646 2007-04-23  Bruno Haible  <bruno@clisp.org>
648         * tests/check-subst: Use the output of 'printf' only if it didn't
649         crash. Needed to work around a buffer overflow in Solaris /bin/printf.
650         Reported by Arto C. Nirkko <anirkko@insel.ch>.
652 2007-04-23  Bruno Haible  <bruno@clisp.org>
654         * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
655         systems like those which define __STDC_ISO_10646__.
656         Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
658 2007-03-31  Bruno Haible  <bruno@clisp.org>
660         * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
661         appropriate.
662         * man/iconv_open.3: Likewise.
663         * man/iconv.3: Likewise.
664         * man/iconv_close.3: Likewise.
665         * man/iconvctl.3: Likewise.
667 2007-03-31  Bruno Haible  <bruno@clisp.org>
669         * man/iconv.1: Mark as POSIX compliant.
670         * man/iconv_open.3: Likewise.
671         * man/iconv.3: Likewise.
672         * man/iconv_close.3: Likewise.
674         * man/*.[13]: Syntactic simplifications.
676 2007-03-19  Bruno Haible  <bruno@clisp.org>
678         Assume that mkinstalldirs also creates the necessary parent directories.
679         * Makefile.in (install, installdirs): Don't explicitly create the
680         parent directories.
681         * lib/Makefile.in (install, installdirs): Likewise.
682         * src/Makefile.in (install, installdirs): Likewise.
683         * man/Makefile.in (install, installdirs): Likewise.
684         Reported by Thomas Klausner <tk@giga.or.at>.
686 2007-03-04  Bruno Haible  <bruno@clisp.org>
688         * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
689         relocatable, relocwrapper.
690         * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
691         * gnulib-local/modules/progreloc: Remove file.
692         * gnulib-local/modules/relocatable: Remove file.
693         * gnulib-local/modules/relocwrapper: Remove file.
694         * gnulib-local/m4/relocatable.m4: Remove file.
695         * gnulib-local/lib/strerror.c.diff: Remove file.
696         * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
697         RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
699 2007-02-19  Bruno Haible  <bruno@clisp.org>
701         * gnulib-local/lib/xmalloc.c: Don't include exit.h.
702         * src/iconv.c: Likewise.
704 2007-02-16  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
706         * djgpp/*: Update.
708 2007-02-03  Bruno Haible  <bruno@clisp.org>
710         * tools/Makefile (ksc5601.h): Add one extra character.
711         * lib/ksc5601.h: Regenerated.
712         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
713         * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
714         * tests/JOHAB.TXT: Likewise.
715         Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
717         * lib/euc_kr.h: Update comments.
718         * lib/johab.h: Likewise.
720 2007-02-03  Bruno Haible  <bruno@clisp.org>
722         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
724 2007-01-26  Bruno Haible  <bruno@clisp.org>
726         Moved streq.h to gnulib.
727         * gnulib-local/lib/streq.h: Remove file.
728         * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
729         (Depends-on): Add streq.
730         (lib_SOURCES): Remove streq.h.
732 2007-01-26  Bruno Haible  <bruno@clisp.org>
734         Moved unitypes.h to gnulib.
735         * gnulib-local/lib/unitypes.h: Remove file.
736         * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
737         (Depends-on): Add unitypes.
738         (lib_SOURCES): Remove unitypes.h.
740 2007-01-26  Bruno Haible  <bruno@clisp.org>
742         Moved canonicalize to gnulib.
743         * gnulib-local/modules/canonicalize: Remove file.
744         * gnulib-local/lib/canonicalize.h: Remove file.
745         * gnulib-local/lib/canonicalize.c: Remove file.
746         * gnulib-local/m4/canonicalize.m4: Remove file.
747         * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
748         with 'canonicalize-lgpl'.
750 2006-12-20  Bruno Haible  <bruno@clisp.org>
752         * lib/Makefile.in (install): On AIX, add the contents of
753         /lib/libiconv.a to libiconv.a.
755 2006-12-20  Bruno Haible  <bruno@clisp.org>
757         * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
758         srclib/Makefile.am.
759         (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
760         always does it.
761         (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
762         option --makefile-name.
763         (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
764         * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
766 2006-10-31  Bruno Haible  <bruno@clisp.org>
768         Update from GNU gettext.
769         2006-10-29  Bruno Haible  <bruno@clisp.org>
770                 Make it compile in C++ mode.
771                 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
772                 with appropriate return type.
773                 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
774         2006-10-26  Bruno Haible  <bruno@clisp.org>
775                 * gnulib-local/modules/canonicalize (Makefile.am): Remove
776                 EXTRA_DIST. Now done by gnulib-tool.
777                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
778                 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
779         2006-10-25  Bruno Haible  <bruno@clisp.org>
780                 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
781                 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
782                 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
783                 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
784                 AC_RELOCATABLE instead of requiring it.
785         2006-10-12  Bruno Haible  <bruno@clisp.org>
786                 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
787                 all files in lib/ through EXTRA_DIST.
788                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
789         2006-09-14  Bruno Haible  <bruno@clisp.org>
790                 * gnulib-local/lib/canonicalize.c: Include <config.h>
791                 unconditionally.
792                 * gnulib-local/lib/relocatable.c: Likewise.
793                 * lib/relocatable.c: Likewise.
794                 * gnulib-local/lib/relocwrapper.c: Likewise.
795                 * gnulib-local/lib/xmalloc.c: Likewise.
796                 * gnulib-local/lib/xreadlink.c: Likewise.
797                 * gnulib-local/lib/xstrdup.c: Likewise.
798         2006-08-02  Bruno Haible  <bruno@clisp.org>
799                 * gnulib-local/modules/canonicalize: Put under LGPL.
800                 * gnulib-local/modules/relocatable: Likewise.
801         2006-07-18  Bruno Haible  <bruno@clisp.org>
802                 * gnulib-local/xalloc.h (xzalloc): New declaration.
803                 * gnulib-local/xmalloc.c (xzalloc): New function.
805 2006-10-24  Bruno Haible  <bruno@clisp.org>
807         * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
808         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
810 2006-10-14  Bruno Haible  <bruno@clisp.org>
812         * COPYING: New file.
813         * README: Clarify copyright of the iconv program.
814         Reported by Charles Wilson <cwilson@fastmail.fm>.
816 2006-08-08  Bruno Haible  <bruno@clisp.org>
818         * INSTALL.generic: Add a recommendation for Tru64.
819         Reported by Gary V. Vaughan <gary@gnu.org>.
821 2006-07-29  Bruno Haible  <bruno@clisp.org>
823         * tests/check-subst: Set CHARSETALIASDIR.
824         Needed so that "make check" works before "make install" on systems
825         such as NetBSD.
827 2006-07-29  Bruno Haible  <bruno@clisp.org>
829         * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
830         (AUTOCONF_FILES): Add the existing *.m4 files.
832 2006-07-29  Bruno Haible  <bruno@clisp.org>
834         * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
835         * src/iconv.c: Assume <locale.h> exists.
836         * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
837         <string.h>.
839 2006-07-29  Bruno Haible  <bruno@clisp.org>
841         * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
842         AC_ISC_POSIX, AC_HEADER_STDC.
844 2006-07-29  Bruno Haible  <bruno@clisp.org>
846         * configure.ac: Remove macro invocations that are redundant through
847         gl_EARLY and gl_INIT.
849 2006-07-29  Bruno Haible  <bruno@clisp.org>
851         * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
852         Avoids a sh syntax error.
854 2006-07-29  Bruno Haible  <bruno@clisp.org>
856         * gnulib-local/m4/relocatable.m4: Add comments.
858 2006-07-29  Bruno Haible  <bruno@clisp.org>
860         * gnulib-local/modules/libiconv-misc: New file.
861         * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
863         * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
865 2006-07-29  Bruno Haible  <bruno@clisp.org>
867         Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
868         AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
869         because we now assume that the system defines size_t and ptrdiff_t.
871 2006-07-29  Bruno Haible  <bruno@clisp.org>
873         Switch to using gnulib.
874         * configure.ac (AC_PREREQ): Require autoconf-2.60.
875         Invoke gl_EARLY and gl_INIT.
876         * Makefile.devel (all): Depend on srclib/Makefile.am.
877         (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
878         GNU make.
879         (GNULIB_MODULES): New variable.
880         (srclib/Makefile.am): New rule.
881         * gnulib-local: New directory.
882         * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
883         * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
884         * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
885         * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
886         * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
887         * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
888         * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
889         * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
890         * gnulib-local/lib/error.h.diff: New file.
891         * gnulib-local/lib/progname.h.diff: New file.
892         * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
893         * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
894         * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
895         * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
896         * gnulib-local/lib/strerror.c.diff: New file.
897         * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
898         * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
899         * gnulib-local/lib/width.c: Moved here from srclib/width.c.
900         * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
901         * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
902         * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
903         * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
904         * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
905         * gnulib-local/modules/canonicalize: New file.
906         * gnulib-local/modules/progreloc: New file.
907         * gnulib-local/modules/relocatable: New file.
908         * gnulib-local/modules/relocwrapper: New file.
909         * gnulib-local/modules/uniwidth: New file.
910         * gnulib-local/modules/xalloc: New file.
911         * gnulib-local/modules/xreadlink: New file.
913         * m4/allocsa.m4: Remove file. Now taken from gnulib.
914         * m4/codeset.m4: Likewise.
915         * m4/eealloc.m4: Likewise.
916         * m4/error.m4: Likewise.
917         * m4/extensions.m4: Likewise.
918         * m4/full-header-path.m4: Likewise.
919         * m4/gettext.m4: Likewise.
920         * m4/glibc21.m4: Likewise.
921         * m4/iconv.m4: Likewise.
922         * m4/intmax.m4: Likewise.
923         * m4/inttypes-h.m4: Likewise.
924         * m4/inttypes_h.m4: Likewise.
925         * m4/isc-posix.m4: Likewise.
926         * m4/lcmessage.m4: Likewise.
927         * m4/lib-ld.m4: Likewise.
928         * m4/lib-link.m4: Likewise.
929         * m4/lib-prefix.m4: Likewise.
930         * m4/longdouble.m4: Likewise.
931         * m4/longlong.m4: Likewise.
932         * m4/mbstate_t.m4: Likewise.
933         * m4/nls.m4: Likewise.
934         * m4/onceonly.m4: Likewise.
935         * m4/pathmax.m4: Likewise.
936         * m4/po.m4: Likewise.
937         * m4/printf-posix.m4: Likewise.
938         * m4/progtest.m4: Likewise.
939         * m4/readlink.m4: Likewise.
940         * m4/setenv.m4: Likewise.
941         * m4/signed.m4: Likewise.
942         * m4/size_max.m4: Likewise.
943         * m4/ssize_t.m4: Likewise.
944         * m4/stdbool.m4: Likewise.
945         * m4/stdint.m4: Likewise.
946         * m4/stdint_h.m4: Likewise.
947         * m4/strerror.m4: Likewise.
948         * m4/strerror_r.m4: Likewise.
949         * m4/unistd_h.m4: Likewise.
950         * m4/unlocked-io.m4: Likewise.
951         * m4/visibility.m4: Likewise.
952         * m4/wchar_t.m4: Likewise.
953         * m4/wint_t.m4: Likewise.
955         * srclib/allocsa.h: Remove file. Now taken from gnulib.
956         * srclib/allocsa.c: Likewise.
957         * srclib/binary-io.h: Likewise.
958         * srclib/error.h: Likewise.
959         * srclib/error.c: Likewise.
960         * srclib/exit.h: Likewise.
961         * srclib/gettext.h: Likewise.
962         * srclib/memmove.c: Likewise.
963         * srclib/pathmax.h: Likewise.
964         * srclib/progname.h: Likewise.
965         * srclib/progname.c: Likewise.
966         * srclib/progreloc.c: Likewise.
967         * srclib/readlink.c: Likewise.
968         * srclib/setenv.h: Likewise.
969         * srclib/setenv.c: Likewise.
970         * srclib/stdbool_.h: Likewise.
971         * srclib/stdint_.h: Likewise.
972         * srclib/strerror.c: Likewise.
973         * srclib/unlocked-io.h: Likewise.
974         * srclib/unsetenv.c: Likewise.
975         * srclib/Makefile.am: Remove file.
977 2006-07-27  Bruno Haible  <bruno@clisp.org>
979         Remove OS/2 build support that doesn't assume GNU make and GNU bash.
980         * README.os2: Remove file.
981         * Makefile.os2: Remove file.
982         * lib/Makefile.os2: Remove file.
983         * src/Makefile.os2: Remove file.
984         * man/Makefile.os2: Remove file.
985         * tests/Makefile.os2: Remove file.
986         * tests/check-stateful.cmd: Remove file.
987         * tests/check-stateless.cmd: Remove file.
988         * tests/check-translit.cmd: Remove file.
990 2006-07-25  Bruno Haible  <bruno@clisp.org>
992         Remove MSVC/nmake build support.
993         * windows: Remove directory.
994         * Makefile.msvc: Remove file.
995         * lib/Makefile.msvc: Remove file.
996         * srclib/Makefile.msvc: Remove file.
997         * src/Makefile.msvc: Remove file.
998         * tests/Makefile.msvc: Remove file.
999         * man/Makefile.msvc: Remove file.
1000         * po/Rules-msvc: Remove file.
1001         * po/Makefile.msvc.sh: Remove file.
1002         * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
1003         (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
1004         rules.
1005         (po/Makefile.msvc): Remove rule.
1006         (all): Update.
1008 2006-07-25  Bruno Haible  <bruno@clisp.org>
1010         Remove VMS support.
1011         * vms: Remove directory.
1012         * Makefile.vms: Remove file.
1013         * lib/Makefile.vms: Remove file.
1014         * srclib/Makefile.vms: Remove file.
1015         * src/Makefile.vms: Remove file.
1016         * tests/Makefile.vms: Remove file.
1017         * man/Makefile.vms: Remove file.
1018         * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
1019         (include/iconv.h_vms): Remove rule.
1020         (all): Update.
1022 2006-07-23  Bruno Haible  <bruno@clisp.org>
1024         * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
1025         * src/Makefile.in (iconv_no_i18n): Likewise.
1026         (install): Likewise.
1027         * tests/Makefile.in (table-from, table-to): Likewise.
1028         Needed because the CFLAGS can e.g. trigger profiling.
1029         Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
1031 2006-07-19  Bruno Haible  <bruno@clisp.org>
1033         * Version 1.11 released.
1035 2006-07-19  Bruno Haible  <bruno@clisp.org>
1037         * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
1038         (LIBADD_SOURCE): Add them here.
1040 2006-07-19  Bruno Haible  <bruno@clisp.org>
1042         * build-aux/config.guess: Update to GNU version 2006-07-02.
1043         * build-aux/config.sub: Likewise.
1045 2006-07-14  Bruno Haible  <bruno@clisp.org>
1047         * lib/Makefile.in (clean): Remove also *.stackdump.
1048         * src/Makefile.in (clean): Likewise.
1049         * tests/Makefile.in (clean): Likewise.
1051 2006-07-14  Bruno Haible  <bruno@clisp.org>
1053         * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
1054         cygwin or mingw.
1055         * tests/Makefile.in (clean): Remove also the programs, without
1056         EXEEXT. Needed for cygwin or mingw.
1057         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
1058         Remove also bin directory. Needed for cygwin and mingw.
1060 2006-07-03  Bruno Haible  <bruno@clisp.org>
1062         * src/iconv.c (check_subst_formatstring): Use ngettext.
1063         (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
1064         after 2006-01-22 change.
1065         * configure.ac: Require a gettext version with ngettext.
1067 2006-06-28  Bruno Haible  <bruno@clisp.org>
1069         * m4/gettext.m4: Update from GNU gettext.
1070         * m4/po.m4: Update from GNU gettext.
1072 2006-06-27  Bruno Haible  <bruno@clisp.org>
1074         * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
1075         * Makefile.in (datarootdir): New variable.
1076         (install, installdirs, uninstall): Also pass datarootdir.
1077         * configure.ac (mandir): Remove customization.
1078         * man/Makefile.in (datarootdir): New variable.
1079         (docdir, htmldir): Use autoconf-substituted value.
1080         * src/Makefile.in (datarootdir): New variable.
1081         (localedir): Use autoconf-substituted value.
1083 2006-06-27  Bruno Haible  <bruno@clisp.org>
1085         * m4/stdint.m4: Update from gnulib.
1086         * srclib/stdint_.h: Update from gnulib.
1087         * srclib/Makefile.am: Update.
1089 2006-06-17  Bruno Haible  <bruno@clisp.org>
1091         * srclib/unsetenv.c: Update from GNU gettext.
1092         * srclib/xreadlink.c: Likewise.
1094 2006-06-16  Bruno Haible  <bruno@clisp.org>
1096         * m4/full-header-path.m4: New file, from gnulib.
1097         * m4/size_max.m4: New file, from gnulib.
1098         * m4/stdint.m4: Update from gnulib.
1099         * srclib/stdint_.h: Update from gnulib.
1100         * srclib/Makefile.am (stdint.h): Likewise.
1101         * Makefile.devel (aclocal.m4): Update dependencies.
1103 2006-06-16  Bruno Haible  <bruno@clisp.org>
1105         * m4/ssize_t.m4: Update from GNU gettext.
1107 2006-06-12  Bruno Haible  <bruno@clisp.org>
1109         * m4/gettext.m4: Update from GNU gettext.
1110         * m4/inttypes-h.m4: New file, from GNU gettext.
1111         * m4/inttypes.m4: Remove file.
1112         * m4/stdint.m4 (gl_STDINT_H): Update.
1113         * Makefile.devel (aclocal.m4): Update dependencies.
1115 2006-06-10  Bruno Haible  <bruno@clisp.org>
1117         * src/iconv.c (error) [NO_I18N]: Define here instead of including
1118         error.h. Fixes link failure introduced on 2006-01-22.
1120 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1122         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
1123         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
1125 2006-05-20  Bruno Haible  <bruno@clisp.org>
1127         * tests/BIG5-HKSCS-1999-snippet: New file.
1128         * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
1129         * tests/BIG5-HKSCS-2001-snippet: New file.
1130         * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
1131         * tests/BIG5-HKSCS-2004-snippet: New file.
1132         * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
1133         * tests/Makefile.in (check): Test also the stateful parts of
1134         BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
1136 2006-05-17  Bruno Haible  <bruno@clisp.org>
1138         Implement newer releases of BIG5-HKSCS.
1139         * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
1140         hkscs2004.h.
1141         (hkscs.h): Remove rule.
1142         (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
1143         * tools/cjk_tab_to_h.c (output_title): Update year.
1144         (main): Recognize hkscs1999, hkscs2001, hkscs2004.
1145         * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
1146         BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
1147         * lib/hkscs.h: Remove file.
1148         * lib/hkscs1999.h: New file.
1149         * lib/hkscs2001.h: New file.
1150         * lib/hkscs2004.h: New file.
1151         * lib/big5hkscs.h: Remove file.
1152         * lib/big5hkscs1999.h: New file.
1153         * lib/big5hkscs2001.h: New file.
1154         * lib/big5hkscs2004.h: New file.
1155         * lib/converters.h: Include the new files.
1156         * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
1157         * tests/BIG5-HKSCS.TXT: Remove file.
1158         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
1159         * tests/BIG5-HKSCS-1999.TXT: New file.
1160         * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
1161         * tests/BIG5-HKSCS-2001.TXT: New file.
1162         * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
1163         * tests/BIG5-HKSCS-2004.TXT: New file.
1164         * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
1165         * tests/check-stateless: Convert colon in the charset name to a dash in
1166         the file name.
1167         * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
1168         BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
1169         * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
1170         * tests/Makefile.os2 (check): Likewise.
1172 2006-05-17  Bruno Haible  <bruno@clisp.org>
1174         * srclib/progreloc.c: Update from GNU gettext.
1176 2006-05-16  Bruno Haible  <bruno@clisp.org>
1178         * src/Makefile.in (clean): Use EXEEXT.
1179         * tests/Makefile.in (check, clean): Likewise.
1181 2006-05-15  Bruno Haible  <bruno@clisp.org>
1183         * configure.ac: Move some checks before AC_RELOCATABLE.
1185 2006-05-15  Bruno Haible  <bruno@clisp.org>
1187         Support for building shared libraries on mingw and Cygwin.
1188         * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
1189         * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
1190         * woe32dll/export.h: New file, from GNU gettext.
1191         * woe32dll/iconv-exports.h: New file.
1192         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1193         include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
1194         * lib/Makefile.in (INCLUDES): Add -I for parent directory.
1195         (LDFLAGS): Add WOE32DLL dependent flags.
1196         (LDFLAGS_yes, LDFLAGS_no): New variables.
1197         (OBJECTS): Add WOE32DLL dependent objects.
1198         (OBJECTS_yes, OBJECTS_no): New variables.
1199         (iconv-exports.lo): New rule.
1201 2006-05-15  Bruno Haible  <bruno@clisp.org>
1203         * srclib/gettext.h: Update from GNU gettext.
1204         * srclib/pathmax.h: Update from GNU gettext.
1205         * srclib/progreloc.c: Update from GNU gettext.
1206         * srclib/unsetenv.c: Update from GNU gettext.
1207         * srclib/Makefile.am: Add snippet for creation of unistd.h.
1208         * m4/extensions.m4: Update from GNU gettext.
1209         * m4/gettext.m4: Update from GNU gettext.
1210         * m4/lib-ld.m4: Update from GNU gettext.
1211         * m4/lib-link.m4: Update from GNU gettext.
1212         * m4/lib-prefix.m4: Update from GNU gettext.
1213         * m4/longdouble.m4: Update from GNU gettext.
1214         * m4/nls.m4: Update from GNU gettext.
1215         * m4/onceonly.m4: Update from GNU gettext.
1216         * m4/po.m4: Update from GNU gettext.
1217         * m4/relocatable.m4: Update from GNU gettext.
1218         * m4/unistd_h.m4: New file, from GNU gettext.
1219         * Makefile.devel (aclocal.m4): Depend on it.
1220         * configure.ac: Invoke gl_HEADER_UNISTD.
1222 2006-05-14  Bruno Haible  <bruno@clisp.org>,
1223             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1225         * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
1226         (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
1227         (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
1228         Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
1230 2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
1232         * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
1233         compiling a shared library object.
1235 2006-05-15  Bruno Haible  <bruno@clisp.org>
1237         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
1239 2006-03-31  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1241         * djgpp/*: Update.
1243 2006-01-23  Bruno Haible  <bruno@clisp.org>
1245         * configure.ac: Invoke gl_ALLOCSA.
1247         * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
1249 2006-01-22  Bruno Haible  <bruno@clisp.org>
1251         * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
1252         gettext().
1254 2006-01-22  Bruno Haible  <bruno@clisp.org>
1256         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
1258 2006-01-22  Bruno Haible  <bruno@clisp.org>
1260         * src/iconv.c: Include error.h, exit.h.
1261         (print_version): Use EXIT_SUCCESS.
1262         (check_subst_formatstring, subst_mb_to_uc_fallback,
1263         subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
1264         subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
1265         error() instead of fprintf to stderr.
1267 2006-01-22  Bruno Haible  <bruno@clisp.org>
1269         New feature: character-dependent substitutions.
1270         * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
1271         iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
1272         iconv_wchar_wc_to_mb_fallback): New types.
1273         (struct iconv_fallbacks): New structure type.
1274         (ICONV_SET_FALLBACKS): New macro.
1275         * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
1276         * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
1277         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
1278         include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
1279         * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
1280         * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
1281         (uc_to_mb_write_replacement): New function.
1282         (struct mb_to_uc_fallback_locals): New type.
1283         (mb_to_uc_write_replacement): New function.
1284         (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
1285         (unicode_loop_reset): Call uc_to_mb_fallback.
1286         * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
1287         (wc_to_mb_write_replacement): New function.
1288         (wchar_from_loop_convert): Call wc_to_mb_fallback.
1289         (struct mb_to_wc_fallback_locals): New type.
1290         (mb_to_wc_write_replacement): New function.
1291         (wchar_to_loop_convert): Call mb_to_wc_fallback.
1292         * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
1293         (iconvctl): Handle ICONV_SET_FALLBACKS.
1294         * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
1295         * src/iconv.c: Include limits.h.
1296         (isdigit, c_isprint): New macros.
1297         (usage): Document long options and new options.
1298         (check_subst_formatstring): New function.
1299         (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
1300         variables.
1301         (ilseq_byte_subst_size, ilseq_wchar_subst_size,
1302         ilseq_unicode_subst_size): New variables.
1303         (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
1304         ilseq_unicode_subst_buffer): New variables.
1305         (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
1306         (subst_mb_to_uc_fallback): New function.
1307         (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
1308         (subst_uc_to_mb_fallback): New function.
1309         (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
1310         (subst_mb_to_wc_fallback): New function.
1311         (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
1312         (subst_wc_to_mb_fallback): New function.
1313         (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
1314         (subst_mb_to_mb_fallback): New function.
1315         (convert): Enlarge the outbuf when the conversion failed with E2BIG.
1316         (main): Handle new options --byte-subst, --widechar-subst,
1317         --unicode-subst.
1318         * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
1319         options.
1320         * tests/check-subst: New file.
1321         * tests/Makefile.in (check): Also invoke check-subst.
1322         Suggested by James Taylor <james@oakseed.demon.co.uk>.
1324 2006-01-21  Bruno Haible  <bruno@clisp.org>
1326         * src/iconv.c (print_version): Bump copyright year.
1327         (main): Accept long options --from-code, --to-code, --list, --silent.
1328         Accept abbreviated long options, like getopt() does.
1329         * man/iconv.1: Document long options.
1331 2005-12-29  Bruno Haible  <bruno@clisp.org>
1333         * src/iconv.c (print_version): Update copyright year.
1335 2005-12-29  Bruno Haible  <bruno@clisp.org>
1337         * configure.ac: Renamed from configure.in.
1338         * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
1340 2005-12-29  Bruno Haible  <bruno@clisp.org>
1342         * configure.in: Bump version number.
1343         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1344         * windows/iconv.rc: Likewise.
1345         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
1347 2005-12-29  Bruno Haible  <bruno@clisp.org>
1349         * build-aux/config.guess: Update to GNU version 2005-12-23.
1350         * build-aux/config.sub: Likewise.
1351         * build-aux/config.libpath: Update from GNU gettext.
1352         * build-aux/install-sh: Upgrade to automake-1.9.5.
1353         * build-aux/missing: Upgrade to automake-1.9.5.
1354         * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
1356 2005-12-29  Bruno Haible  <bruno@clisp.org>
1358         * m4/alloca.m4: Update from GNU gettext.
1359         * m4/allocsa.m4: Update from GNU gettext.
1360         * m4/canonicalize.m4: Update from GNU gettext.
1361         * m4/codeset.m4: Update from GNU gettext.
1362         * m4/eealloc.m4: Update from GNU gettext.
1363         * m4/error.m4: Update from GNU gettext.
1364         * m4/extensions.m4: Update from GNU gettext.
1365         * m4/gettext.m4: Update from GNU gettext.
1366         * m4/glibc21.m4: Update from GNU gettext.
1367         * m4/iconv.m4: Update from GNU gettext.
1368         * m4/intmax.m4: Update from GNU gettext.
1369         * m4/inttypes_h.m4: New file, from GNU gettext.
1370         * m4/isc-posix.m4: Update from GNU gettext.
1371         * m4/lcmessage.m4: Update from GNU gettext.
1372         * m4/longdouble.m4: Update from GNU gettext.
1373         * m4/longlong.m4: Update from GNU gettext.
1374         * m4/mbstate_t.m4: Update from GNU gettext.
1375         * m4/nls.m4: Update from GNU gettext.
1376         * m4/onceonly.m4: Update from GNU gettext.
1377         * m4/pathmax.m4: Update from GNU gettext.
1378         * m4/po.m4: Update from GNU gettext.
1379         * m4/printf-posix.m4: Update from GNU gettext.
1380         * m4/progtest.m4: Update from GNU gettext.
1381         * m4/readlink.m4: Update from GNU gettext.
1382         * m4/relocatable.m4: Update from GNU gettext.
1383         * m4/setenv.m4: Update from GNU gettext.
1384         * m4/signed.m4: Update from GNU gettext.
1385         * m4/ssize_t.m4: Update from GNU gettext.
1386         * m4/stdbool.m4: Update from GNU gettext.
1387         * m4/stdint_h.m4: New file, from GNU gettext.
1388         * m4/strerror.m4: Update from GNU gettext.
1389         * m4/strerror_r.m4: Update from GNU gettext.
1390         * m4/unlocked-io.m4: Update from GNU gettext.
1391         * m4/wchar_t.m4: Update from GNU gettext.
1392         * m4/wint_t.m4: Update from GNU gettext.
1393         * m4/xreadlink.m4: Update from GNU gettext.
1394         * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
1395         m4/stdint_h.m4 as well.
1396         * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
1397         Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
1398         Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
1399         Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
1400         Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
1401         SRCLIBOBJS instead of LIBOBJS.
1402         * srclib/alloca_.h: Update from GNU gettext.
1403         * srclib/allocsa.h: Update from GNU gettext.
1404         * srclib/canonicalize.c: Update from GNU gettext.
1405         * srclib/error.h: Update from GNU gettext.
1406         * srclib/error.c: Update from GNU gettext.
1407         * srclib/gettext.h: Update from GNU gettext.
1408         * srclib/memmove.c: Update from GNU gettext.
1409         * srclib/progname.h: Update from GNU gettext.
1410         * srclib/progname.c: Update from GNU gettext.
1411         * srclib/progreloc.c: Update from GNU gettext.
1412         * srclib/readlink.c: Update from GNU gettext.
1413         * srclib/relocatable.c: Update from GNU gettext.
1414         * srclib/relocwrapper.c: Update from GNU gettext.
1415         * srclib/setenv.h: Update from GNU gettext.
1416         * srclib/setenv.c: Update from GNU gettext.
1417         * srclib/stdbool_.h: Update from GNU gettext.
1418         * srclib/stdint_.h: Update from gnulib.
1419         * srclib/strerror.c: Update from GNU gettext.
1420         * srclib/unlocked-io.h: Update from GNU gettext.
1421         * srclib/unsetenv.c: Update from GNU gettext.
1422         * srclib/xalloc.h: Update from GNU gettext.
1423         * srclib/xmalloc.c: Update from GNU gettext.
1424         * srclib/xreadlink.c: Update from GNU gettext.
1425         * srclib/xstrdup.c: Update from GNU gettext.
1426         * srclib/Makefile.am (DEFS): Also define EXEEXT.
1427         (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
1428         (libicrt_a_DEPENDENCIES): New variable.
1429         * src/Makefile.in (EXEEXT): New variable.
1430         * build-aux/install-reloc: Update from GNU gettext.
1431         * build-aux/reloc-ldflags: Update from GNU gettext.
1432         * build-aux/config.rpath: Update from GNU gettext.
1434 2005-12-29  Bruno Haible  <bruno@clisp.org>
1436         * m4/libtool.m4: Update, based on libtool-1.5.22.
1437         * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
1439 2005-12-24  Bruno Haible  <bruno@clisp.org>
1441         Check the whole range of GB18030.
1442         * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
1443         * tests/gengb18030z.c: New file.
1444         * tests/table-from.c (main): For GB18030, don't stop at U+10000.
1445         * tests/table-to.c (main): Likewise.
1446         * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
1447         GB18030-BMP.TXT.
1448         (clean): Remove also gengb18030z and GB18030.TXT.
1449         * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
1450         GB18030-BMP.TXT.
1451         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1452         * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
1453         GB18030.TXT on the fly from GB18030-BMP.TXT.
1454         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
1456 2005-12-20  Bruno Haible  <bruno@clisp.org>
1458         * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
1459         up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
1460         to nothing.
1462 2005-12-22  Bruno Haible  <bruno@clisp.org>
1464         Extend GB18030 converter to cover the entire Unicode PUA.
1465         * lib/gb18030.h: Update comments, based on second printing.
1466         (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
1467         (gb18030_pua2charset): New array.
1468         (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
1469         part of range U+E766..U+E864.
1470         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
1471         area.
1472         (gb18030ext_mbtowc): Add mapping for the two-byte part of range
1473         U+E766..U+E864.
1474         * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
1475         gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
1476         intervals.
1477         (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
1478         * tests/GB18030.TXT: Complete mappings to private area.
1480 2005-12-22  Bruno Haible  <bruno@clisp.org>
1482         * lib/gbk.h: Update comments.
1484 2005-12-20  Bruno Haible  <bruno@clisp.org>
1486         Add private area mappings to CP949.
1487         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
1488         many others do it.
1489         * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
1491 2005-12-15  Bruno Haible  <bruno@clisp.org>
1493         Add private area mappings to CP950.
1494         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
1495         most others do it.
1496         * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
1498 2005-12-15  Bruno Haible  <bruno@clisp.org>
1500         Make CP936 follow what Microsoft does.
1501         In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
1502         added a 0x80 - U+20AC mapping to the code chart, but not to the
1503         tooltips and not to the list of mappings.
1504         * lib/cp936.h: New file.
1505         * lib/gbk.h: Update comments.
1506         * lib/ces_gbk.h: Update comments.
1507         * lib/converters.h: Include cp936.h.
1508         * lib/encodings.def (CP936): New encoding.
1509         (GBK): Remove CP936 aliases.
1510         * README, man/iconv_open.3: Add CP936.
1511         * tests/Makefile.in (check): Check CP936.
1512         * tests/Makefile.msvc (check): Likewise.
1513         * tests/Makefile.os2 (check): Likewise.
1514         * tests/CP936.TXT: New file.
1516 2005-12-14  Bruno Haible  <bruno@clisp.org>
1518         * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
1519         U+FFE1 like Microsoft does it.
1520         * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
1521         Reported by Lei Wang <lwang@qilinsoft.com>.
1523 2005-12-14  Bruno Haible  <bruno@clisp.org>
1525         Follow Euro sign addition done in 1999 in
1526         http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
1527         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
1528         * tests/CP950.TXT: Add mapping for 0xA3E1.
1530 2005-11-11  Bruno Haible  <bruno@clisp.org>
1532         * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
1533         and only two bytes are available in the output buffer, return
1534         RET_TOOSMALL instead of overrunning the output buffer.
1535         * lib/isoir165.h (isoir165_wctomb): When only one byte is available
1536         in the output buffer, don't overrun the output buffer.
1537         Reported by William Bardwell <bardwell@curl.com>.
1539 2005-09-18  Bruno Haible  <bruno@clisp.org>
1541         * m4/libtool.m4: Update, based on libtool-1.5.20.
1542         * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
1544 2005-08-12  Bruno Haible  <bruno@clisp.org>
1546         * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
1547         * tests/BIG5-2003.TXT: Likewise.
1548         * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
1549         Reported by Ping Yeh <ping@pingyeh.net>.
1551 2005-07-24  Bruno Haible  <bruno@clisp.org>
1553         Tidy up exported symbols.
1554         * m4/visibility.m4: New file.
1555         * include/export.h: New file.
1556         * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
1557         create also include/iconv.h.inst.
1558         * Makefile.devel (all): Depend on include/iconv.h.build.in.
1559         (aclocal.m4): Depend on m4/visibility.m4.
1560         (include/iconv.h.build.in): New rule.
1561         * Makefile.in (install-lib, install): Install include/iconv.h.inst,
1562         not the include/iconv.h that was used for building.
1563         (distclean, maintainer-clean): Remove also include/iconv.h.inst.
1564         * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
1565         (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
1566         * lib/config.h.in (HAVE_VISIBILITY): New macro.
1567         * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1568         Define to the gcc visibility attribute.
1569         * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1570         Likewise.
1572 2005-07-25  Bruno Haible  <bruno@clisp.org>
1574         2003-08-24  Bruno Haible  <bruno@clisp.org>
1575         * lib/relocatable.h: Make this file includable in C++ mode: add extern
1576         "C".
1578 2005-07-08  Bruno Haible  <bruno@clisp.org>
1580         * Version 1.10 released.
1582 2005-07-08  Bruno Haible  <bruno@clisp.org>
1584         * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
1585         executable after installing it.
1587 2005-07-08  Bruno Haible  <bruno@clisp.org>
1589         * configure.in: Bump version number.
1590         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1591         * windows/iconv.rc: Likewise.
1592         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
1594 2005-07-05  Bruno Haible  <bruno@clisp.org>
1596         * Makefile.devel (ACLOCAL): New variable.
1597         (aclocal.m4): Use it.
1599 2005-07-05  Bruno Haible  <bruno@clisp.org>
1601         * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
1602         SET_RELOCATABLE to a trivial value.
1604 2004-08-08  Bruno Haible  <bruno@clisp.org>
1606         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1607         be used.
1609 2004-04-28  Bruno Haible  <bruno@clisp.org>
1611         * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
1612         Treat Cygwin like Windows, since it now accepts Windows pathnames.
1614 2005-06-09  Bruno Haible  <bruno@clisp.org>
1616         * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
1617         * lib/Makefile.in (mkinstalldirs): Likewise.
1618         * src/Makefile.in (mkinstalldirs): Likewise.
1619         * man/Makefile.in (mkinstalldirs): Likewise.
1621 2005-06-08  Bruno Haible  <bruno@clisp.org>
1623         * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
1624         that don't support symbolic links.
1626 2005-06-08  Bruno Haible  <bruno@clisp.org>
1628         * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
1629         gcc warning on mingw.
1631 2005-05-22  Bruno Haible  <bruno@clisp.org>
1633         Implement and document BIG5-2003.
1634         * lib/big5_2003.h: New file.
1635         * lib/converters.h: Include it.
1636         * lib/encodings_extra.def (BIG5-2003): New encoding.
1637         * README, man/iconv_open.3: Add BIG5-2003.
1638         * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
1639         * tests/BIG5-2003.TXT: New file.
1641 2005-05-21  Bruno Haible  <bruno@clisp.org>
1643         Add EURO SIGN to EUC-TW converter.
1644         * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
1645         (cns11643_1_mbtowc): Update.
1646         * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
1647         (cns11643_inv_uni2indx_page*): Update.
1648         * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
1649         part of row 42.
1650         * tests/EUC-TW.TXT: Add entry for 0x20AC.
1651         * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
1653 2005-05-03  Bruno Haible  <bruno@clisp.org>
1655         * tools/Makefile (ALL): Add pt154.h.
1656         (pt154.h): New rule.
1657         * lib/encodings.def: Add PT154.
1658         * lib/pt154.h: New file.
1659         * lib/converters.h: Include it.
1660         * README, man/iconv_open.3: Add PT154.
1661         * NOTES: Mention PT154.
1662         * tests/PT154.TXT: New file.
1663         * tests/Makefile.in (check): Also test PT154.
1664         * tests/Makefile.msvc (check): Likewise.
1665         * tests/Makefile.os2 (check): Likewise.
1667 2005-03-29  Bruno Haible  <bruno@clisp.org>
1669         Rename libiconv_plug.so to preloadable_libiconv.so.
1670         * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
1671         libiconv_plug.so.
1672         * lib/Makefile.in (preloadable_libiconv.so): Renamed from
1673         libiconv_plug.so.
1674         (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
1675         (preloadable_libiconv_solaris.so): Renamed from
1676         libiconv_plug_solaris.so.
1677         (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
1678         (clean): Update.
1679         * README: Update.
1681 2005-03-29  Bruno Haible  <bruno@clisp.org>
1683         Implement and document ATARIST.
1684         * tools/Makefile (ALL): Add atarist.h.
1685         (atarist.h): New rule.
1686         * lib/atarist.h: New file.
1687         * lib/converters.h: Include it.
1688         * lib/encodings_extra.def (ATARIST): New encoding.
1689         * README, man/iconv_open.3: Add ATARIST.
1690         * tests/Makefile.in (check-extra-yes): Check ATARIST.
1691         * tests/ATARIST.TXT: New file.
1693 2005-03-22  Bruno Haible  <bruno@clisp.org>
1695         * build-aux: New directory, renamed from autoconf.
1696         * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
1698 2005-03-16  Bruno Haible  <bruno@clisp.org>
1700         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
1701         HAVE_LONGLONG_64BIT.
1702         * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
1703         HAVE_LONGLONG_64BIT.
1704         * srclib/Makefile.am (stdint.h): Likewise.
1706 2005-03-14  Bruno Haible  <bruno@clisp.org>
1708         * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
1709         extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
1710         printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
1711         wchar_t.m4, wint_t.m4.
1713 2005-03-13  Bruno Haible  <bruno@clisp.org>
1715         Make stdout error checking reliable, also when writing to a NFS file.
1716         * src/iconv.c (main): Check the return value of fclose(stdout).
1717         * lib/genaliases.c (main): Likewise.
1718         * lib/genaliases2.c (main): Likewise.
1719         * lib/genflags.c (main): Likewise.
1720         * lib/gentranslit.c (main): Likewise.
1721         * tests/genutf8.c (main): Likewise.
1722         * tests/table-from.c (main): Likewise.
1723         * tests/table-to.c (main): Likewise.
1725 2005-03-13  Bruno Haible  <bruno@clisp.org>
1727         * src/iconv.c (convert): Before outputting an error message, flush
1728         stdout and output a newline if suitable.
1730 2005-03-13  Bruno Haible  <bruno@clisp.org>
1732         Improved error messages.
1733         * srclib/width.c: New file, from GNU clisp.
1734         * srclib/uniwidth.h: New file, from GNU clisp with modifications.
1735         * srclib/unitypes.h: New file, from GNU clisp with modifications.
1736         * srclib/cjk.h: New file, from GNU clisp.
1737         * srclib/streq.h: New file, from GNU clisp.
1738         * srclib/stdint_.h: New file, from gnulib.
1739         * m4/stdint.m4: New file, from gnulib.
1740         * m4/inttypes.m4: New file, from gnulib.
1741         * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
1742         (BUILT_SOURCES): New variable.
1743         (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
1744         streq.h.
1745         * configure.in: Invoke gl_STDINT_H.
1746         * src/iconv.c: Include cjk.h, uniwidth.h.
1747         (line, column, cjkcode): New variables.
1748         (update_line_column): New function.
1749         (convert): Initialize line and column. In all error message, show also
1750         the line and column number.
1751         (main): Initialize cjkcode. Set up hooks to call update_line_column.
1753 2005-03-13  Bruno Haible  <bruno@clisp.org>
1755         * include/iconv.h.in (iconv_canonicalize): New declaration.
1756         * lib/genaliases.c (emit_encoding): Take two output streams as
1757         arguments. To the second stream, emit a shell command for extracting
1758         offsets into the gperf generated string pool.
1759         (main): Write the shell commands into file descriptors 3 and 4.
1760         * lib/genaliases2.c (emit_encoding): Take two output streams as
1761         arguments. To the second stream, emit an expression for the offset
1762         into the string pool.
1763         (main): Write the offsets into file descriptor 3.
1764         * Makefile.devel (lib/aliases.gperf): Remove target.
1765         (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
1766         lib/canonical.h and lib/canonical_local.h.
1767         (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
1768         (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
1769         (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
1770         (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
1771         * lib/iconv.c (stringpool2): Provide default definition when it doesn't
1772         exist.
1773         (all_canonical): New array.
1774         (iconv_canonicalize): New function.
1776 2005-03-13  Bruno Haible  <bruno@clisp.org>
1778         * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
1779         iconv_hooks): New types.
1780         (ICONV_SET_HOOKS): New macro.
1781         * lib/converters.h (struct conv_struct): Add field 'hooks'.
1782         * lib/iconv.c (iconv_open): Initialize hooks to NULL.
1783         (iconvctl): Handle ICONV_SET_HOOKS.
1784         * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
1785         conversion of a character, call the uc_hook.
1786         * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
1787         the wc_hook.
1788         * lib/genflags.c (iconv_hooks): Provide a dummy definition.
1790 2005-02-05  Bruno Haible  <bruno@clisp.org>
1792         * src/iconv.c (main): In case of unsupported encodings, show a hint
1793         towards "iconv -l".
1795 2005-01-06  Bruno Haible  <bruno@clisp.org>
1797         * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
1798         * lib/Makefile.vms (DEFS): Likewise.
1799         Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
1801 2005-01-05  Bruno Haible  <bruno@clisp.org>
1803         * autoconf/config.rpath: Update from GNU gettext.
1805 2005-01-05  Bruno Haible  <bruno@clisp.org>
1807         Assume automake-1.9.
1808         * Makefile.devel (AUTOMAKE): Assume automake-1.9.
1810 2005-01-05  Bruno Haible  <bruno@clisp.org>
1812         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
1813         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
1815 2004-11-11  Bruno Haible  <bruno@clisp.org>
1817         * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
1818         in arbitrary order.
1819         Reported by Lukas Gebauer <gebauerl@mlp.cz>.
1821 2004-09-21  Juan Manuel Guerrero  <st001906@hrz1.hrz.tu-darmstadt.de>
1823         * djgpp/config.bat: Update.
1824         * djgpp/config.sed: Update.
1825         * djgpp/config.site: Update.
1826         * djgpp/edtest.bat: Update.
1827         * djgpp/fnchange.in: Update.
1828         * djgpp/Makefile.maint: Update.
1829         * djgpp/makefile.sed: Update.
1830         * djgpp/README.in: Update.
1831         * djgpp/sources.sed: Update.
1832         * djgpp/translit-check.sed: Update.
1834 2004-08-25  Bruno Haible  <bruno@clisp.org>
1836         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
1837         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
1839 2004-07-31  Bruno Haible  <bruno@clisp.org>
1841         Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
1842         * tools/Makefile (jisx0213.h): Bump version number.
1843         * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
1844         U+2299 -> U+29BF, and add 10 new characters.
1845         * tools/cjk_tab_to_h.c (output_title): Bump year.
1846         (do_jisx0213): Update comments. Emit a conditional 'inline'.
1847         * lib/jisx0213.h: Regenerated.
1848         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
1849         ESC $ ( Q as a synonym of ESC $ ( O.
1850         (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
1851         * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
1852         U+2299 -> U+29BF, and add 10 new characters.
1853         * tests/SHIFT_JISX0213.TXT: Likewise.
1854         * tests/ISO-2022-JP-3-snippet: Update.
1855         * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
1857 2004-07-22  Bruno Haible  <bruno@clisp.org>
1859         * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
1860         * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
1861         * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
1862         * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
1864 2004-07-22  Bruno Haible  <bruno@clisp.org>
1866         * tools/Makefile (ALL): Add iso8859_11.h.
1867         (iso8859_11.h): New rule.
1868         * lib/encodings.def: Add ISO-8859-11.
1869         * lib/iso8859_11.h: New file.
1870         * lib/converters.h: Include it.
1871         * tests/ISO-8859-11.TXT: New file.
1872         * tests/Makefile.in (check): Also test ISO-8859-11.
1873         * tests/Makefile.msvc (check): Likewise.
1874         * tests/Makefile.os2 (check): Likewise.
1876 2004-07-17  Bruno Haible  <bruno@clisp.org>
1878         * src/iconv.c (main): Terminate option parsing when option -- is seen.
1879         Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
1881 2004-03-05  Bruno Haible  <bruno@clisp.org>
1883         * src/Makefile.in (install): Make DESTDIR work on HP-UX.
1884         Reported by Bob Proulx <box@proulx.com>.
1886 2004-02-19  Bruno Haible  <bruno@clisp.org>
1888         * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
1889         0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
1890         (viet_comp_table0301_len): Increment by 4.
1892         * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
1893         which are not entries in cp1255_comp_table_data.
1894         * lib/cp1258.h (cp1258_comp_bases): New array.
1895         (cp1258_mbtowc): Don't delay the handling of characters which are not
1896         relevant entries in viet_comp_table_data.
1897         * lib/tcvn.h (tcvn_comp_bases): New array.
1898         (tcvn_mbtowc): Don't delay the handling of characters which are not
1899         relevant entries in viet_comp_table_data.
1900         Reported by Alain Bench <veronatif@free.fr>.
1902 2004-02-02  Perry Rapp  <lifelines_3_0_18@hotmail.com>
1903             Bruno Haible  <bruno@clisp.org>
1905         * man/iconvctl.3: New file.
1906         * man/iconv.3: Refer to it in "See also".
1907         * man/iconv_open.3: Likewise.
1909 2004-01-24  Bruno Haible  <bruno@clisp.org>
1911         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1912         be used.
1914 2004-01-20  Bruno Haible  <bruno@clisp.org>
1916         Upgrade from gettext-0.14.
1918         * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
1919         instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
1920         * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
1921         xalloc.h. Remove xmalloc.h.
1922         (libicrt_a_LIBADD): Remove @ALLOCA@.
1923         * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
1924         (allocsa.obj): New rule.
1925         * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
1926         (allocsa.obj): New rule.
1927         * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
1928         (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
1930     lib/:
1932         2003-10-09  Bruno Haible  <bruno@clisp.org>
1933         * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
1935         2003-08-01  Bruno Haible  <bruno@clisp.org>
1936         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
1937         Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
1939         2003-06-22  Bruno Haible  <bruno@clisp.org>
1940         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
1941         the case when it is not used.
1942         Reported by Pavel Roskin <proski@gnu.org>.
1944     m4/:
1946         * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
1947         * m4/po.m4: Likewise.
1949         * m4/readlink.m4: New file, from GNU gettext.
1951         2003-11-30  Bruno Haible  <bruno@clisp.org>
1952         * m4/allocsa.m4: New file.
1953         * m4/eealloc.m4: New file.
1954         * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
1955         AC_FUNC_ALLOCA.
1957         2003-10-21  Bruno Haible  <bruno@clisp.org>
1958         * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
1959         readlink().
1961         2003-08-24  Bruno Haible  <bruno@clisp.org>
1962         * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
1963         since the substitution of @host@ may occur before the substitution of
1964         @SET_RELOCATABLE@.
1966         2003-08-23  Bruno Haible  <bruno@clisp.org>
1967         * stdbool.m4: Replace with the version from gnulib, without
1968         AC_HEADER_STDBOOL.
1970         2003-08-08  Paul Eggert  <eggert@twinsun.com>
1971         * m4/extensions.m4: New file.
1972         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
1973         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
1975         2003-07-01  Bruno Haible  <bruno@clisp.org>
1976         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
1977         <sys/types.h> should be sufficient.
1978         Reported by Paul Eggert.
1980         2003-07-01  Bruno Haible  <bruno@clisp.org>
1981         * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
1982         from aclocal-1.4-p4.
1983         Reported by Luke Schierer <lschiere@rackspace.com> and
1984         Michael C. Toren <mct@toren.net>.
1986         2003-07-01  Paul Eggert  <eggert@twinsun.com>
1987         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
1988         xreadlink.c now includes it unconditionally.
1990         2003-06-17  Paul Eggert  <eggert@twinsun.com>
1991         * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
1992         for portability to POSIX 1003.1-2001.  Backported from libtool-1.5.
1994         2003-05-28  Paul Eggert  <eggert@twinsun.com>
1995         * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
1996         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
1998         2002-12-24  Bruno Haible  <bruno@clisp.org>
1999         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
2000         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
2001         when invoked twice.
2002         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
2003         gt_FUNC_SETENV.
2005     srclib/:
2007         2003-11-30  Bruno Haible  <bruno@clisp.org>
2008         * srclib/alloca.c: Remove file.
2010         2003-11-30  Bruno Haible  <bruno@clisp.org>
2011         Safer stack allocation.
2012         * srclib/allocsa.h: New file.
2013         * srclib/allocsa.c: New file.
2014         * canonicalize.c: Include allocsa.h.
2015         (__realpath): Use allocsa instead of alloca. Don't clobber errno right
2016         before returning NULL.
2017         * srclib/relocwrapper.c: Indirectly depends on allocsa.
2018         * srclib/setenv.c: Include allocsa.h.
2019         (alloca): Remove fallback definition.
2020         (freea): Remove macro.
2021         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
2022         instead of freea.
2024         2003-11-17  Bruno Haible  <bruno@clisp.org>
2025         * srclib/canonicalize.c: #undef realpath after <config.h> but before
2026         the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
2027         Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2029         2003-10-21  Bruno Haible  <bruno@clisp.org>
2030         * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
2031         systems without symbolic links.
2033         2003-10-17  Bruno Haible  <bruno@clisp.org>
2034         * srclib/binary-io.h: Avoid warnings on Cygwin.
2036         2003-10-09  Bruno Haible  <bruno@clisp.org>
2037         * srclib/xalloc.h: Renamed from xmalloc.h.
2038         * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
2039         * srclib/relocatable.c: Likewise.
2040         * srclib/xmalloc.c: Likewise.
2041         * srclib/xreadlink.c: Likewise.
2042         * srclib/xstrdup.c: Likewise.
2044         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2045         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2047         2003-09-12  Paul Eggert  <eggert@twinsun.com>
2048         * srclib/setenv.c (clearenv): Define via prototype.
2050         2003-09-10  Bruno Haible  <bruno@clisp.org>
2051         * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
2052         * srclib/unsetenv.c: Likewise.
2054         2003-08-28  Bruno Haible  <bruno@clisp.org>
2055         * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
2056         a warning on QNX, which defines O_BINARY to 000000.
2058         2003-08-24  Bruno Haible  <bruno@clisp.org>
2059         * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
2060         when MSVC7 <stdio.h> is included later.
2062         2003-08-24  Bruno Haible  <bruno@clisp.org>
2063         * srclib/error.h: Use ANSI C "..." declarations when compiling with
2064         MSVC, even though it doesn't define __STDC__ by default.
2065         * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
2066         it doesn't define __STDC__ by default.
2068         2003-08-24  Bruno Haible  <bruno@clisp.org>
2069         Support for building DLLs on Windows.
2070         * srclib/error.h (error_print_progname, error_message_count,
2071         error_one_per_line): Add DLL_VARIABLE attribute.
2072         * srclib/progname.h (program_name): Likewise.
2074         2003-08-24  Bruno Haible  <bruno@clisp.org>
2075         * srclib/progname.h: Make this file includable in C++ mode: add extern
2076         "C".
2077         * srclib/relocatable.h: Likewise.
2078         * srclib/xmalloc.h: Likewise.
2080         2003-08-22  Bruno Haible  <bruno@clisp.org>
2081         * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
2082         declarations.
2083         * srclib/progname.c (error_with_progname): Remove variable.
2084         (maybe_print_progname): Remove function.
2086         2003-08-01  Bruno Haible  <bruno@clisp.org>
2087         * srclib/relocatable.c (find_shared_library_fullname): Disable the code
2088         on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2090         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2091         * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
2092         having it depend on HAVE_SYS_TYPES_H.
2094         2003-06-23  Bruno Haible  <bruno@clisp.org>
2095         Avoid compilation units that are empty after preprocessing.
2096         * srclib/canonicalize.c: Add dummy declaration.
2097         * srclib/strerror.c: Likewise.
2098         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2099         compiled.
2101         2003-06-22  Bruno Haible  <bruno@clisp.org>
2102         * srclib/relocatable.c (compute_curr_prefix): Comment out this function
2103         in the case when it is not used.
2104         Reported by Pavel Roskin <proski@gnu.org>.
2106         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2107         * srclib/pathmax.h: Include <limits.h> without checking for
2108         HAVE_LIMITS_H.
2109         * srclib/xreadlink.c: Likewise.
2111 2004-01-20  Bruno Haible  <bruno@clisp.org>
2113         Assume automake-1.8.
2114         * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
2115         (AUTOMAKE): Assume automake-1.8.
2116         * Makefile.in (am--refresh): New target.
2118 2004-01-23  Bruno Haible  <bruno@clisp.org>
2120         * Version 1.9.2 released.
2122 2004-01-23  Bruno Haible  <bruno@clisp.org>
2124         * tests/table-from.c: Include binary-io.h.
2125         (main): Switch stdout to binary mode.
2126         * tests/table-to.c: Include binary-io.h.
2127         (main): Switch stdout to binary mode.
2128         * tests/genutf8.c: Include binary-io.h.
2129         (main): Switch stdout to binary mode.
2130         * tests/Makefile.in (INCLUDES): Also look in srclib.
2131         (check): Pass INCLUDES when compiling genutf8.c.
2132         * tests/Makefile.os2 (INCLUDES): Also look in srclib.
2133         (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
2134         * tests/Makefile.msvc (INCLUDES): Also look in srclib.
2135         (check): Pass INCLUDES when compiling genutf8.c.
2137 2004-01-21  Bruno Haible  <bruno@clisp.org>
2139         * src/iconv.c (force_binary): Remove variable.
2140         (usage): Don't document --binary any more.
2141         (convert, main): Always switch to binary mode.
2142         * tests/check-stateful.bat: Remove --binary option.
2143         * tests/check-translit.bat: Likewise.
2144         * tests/check-stateful.cmd: Likewise.
2145         * tests/check-translit.cmd: Likewise.
2146         * djgpp/stateful-check.sed: Remove MODE variable.
2147         * djgpp/translit-check.sed: Likewise.
2149 2004-01-21  Bruno Haible  <bruno@clisp.org>
2151         * man/iconv.3: Fix description of return value in case of error.
2152         Reported by Jonathan Wakely <redi@users.sf.net>.
2154 2003-09-12  Paul Eggert  <eggert@twinsun.com>
2156         * srclib/progreloc.c (get_full_program_name): Define via prototype.
2158 2003-08-15  Bruno Haible  <bruno@clisp.org>
2160         * Makefile.devel (lib/translit.h): Add ulimit command so that the
2161         gentranslit program gets the stack it needs. Many Linux distributions
2162         allow only 8 MB of stack by default.
2164 2003-08-01  Bruno Haible  <bruno@clisp.org>
2166         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2167         Linux/libc5.
2168         * srclib/relocatable.c (find_shared_library_fullname): Likewise.
2169         Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2171 2003-07-02  Bruno Haible  <bruno@clisp.org>
2173         * m4/lib-ld.m4: Update from GNU gettext.
2174         * m4/lib-prefix.m4: Update from GNU gettext.
2175         * m4/gettext.m4: Update from GNU gettext.
2176         * m4/intmax.m4: New file, from GNU gettext.
2177         * m4/longdouble.m4: New file, from GNU gettext.
2178         * m4/longlong.m4: New file, from GNU gettext.
2179         * m4/printf-posix.m4: New file, from GNU gettext.
2180         * m4/signed.m4: New file, from GNU gettext.
2181         * m4/wchar_t.m4: New file, from GNU gettext.
2182         * m4/wint_t.m4: New file, from GNU gettext.
2183         * m4/pathmax.m4: Update from GNU gettext and gnulib.
2184         * m4/ssize_t.m4: Update from GNU gettext and gnulib.
2185         * m4/xreadlink.m4: Update from GNU gettext and gnulib.
2186         * m4/readlink.m4: New file, from gnulib.
2187         * autoconf/install-reloc: Update from GNU gettext.
2188         * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
2189         * srclib/readlink.c: New file, from GNU gettext and gnulib.
2190         * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
2191         (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
2192         * configure.in: Invoke gl_FUNC_READLINK.
2194 2003-06-22  Bruno Haible  <bruno@clisp.org>
2196         * src/Makefile.in (install): Link with the already installed library.
2197         This fixes a link error on Solaris.
2198         Reported by Paul Eggert.
2200 2003-06-08  Bruno Haible  <bruno@clisp.org>
2202         * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
2204 2003-05-02  Bruno Haible  <bruno@clisp.org>
2206         Support for libtool-1.5.
2207         * srclib/progname.c (set_program_name): Remove a leading
2208         "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
2210 2003-06-23  Bruno Haible  <bruno@clisp.org>
2212         Avoid compilation units that are empty after preprocessing.
2213         * srclib/canonicalize.c: Add dummy declaration.
2214         * srclib/strerror.c: Likewise.
2215         * srclib/error.c: Include <stdio.h> even if there's nothing to be
2216         compiled.
2218 2003-06-22  Bruno Haible  <bruno@clisp.org>
2220         Portability to mingw32.
2221         * m4/ssize_t.m4: New file, from GNU gettext.
2222         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
2223         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2225 2003-06-22  Bruno Haible  <bruno@clisp.org>
2227         Portability to mingw32.
2228         * lib/relocatable.c [WIN32]: Include <windows.h>.
2229         * srclib/relocatable.c: Likewise.
2230         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2232 2003-06-22  Bruno Haible  <bruno@clisp.org>
2234         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2235         the case when it is not used.
2236         * srclib/relocatable.c (compute_curr_prefix): Likewise.
2237         Reported by Pavel Roskin <proski@gnu.org>.
2239 2003-06-18  Bruno Haible  <bruno@clisp.org>
2241         * config/install-sh: Update from automake-1.7.5.
2243 2003-06-16  Bruno Haible  <bruno@clisp.org>
2245         * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
2246         (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
2247         ISO_8859-16:2000.
2248         (GBK): Add aliases MS936, WINDOWS-936.
2249         Reported by Guido Flohr <guido@imperia.net>.
2251 2003-05-09  Bruno Haible  <bruno@clisp.org>
2253         * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
2254         "extraneous semicolon" warning from Tru64 cc.
2256 2003-06-07  Bruno Haible  <bruno@clisp.org>
2258         * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
2259         * Makefile.vms (config.h): New rule.
2260         (all, install): Depend on it.
2261         (all, install, installdirs, uninstall, check): Fix typo.
2262         (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
2263         config.h.
2264         * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
2265         (OBJECTS): Use libiconv.obj instead of iconv.obj.
2266         (libiconv.obj): Renamed from iconv.obj.
2267         * srclib/Makefile.vms (INCLUDES): Add parent directory.
2268         (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
2269         (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
2270         (alloca.h): New rule.
2271         (canonicalize.obj): Depend on it.
2272         (clean): Remove alloca.h.
2273         * src/Makefile.vms (datadir, localedir): New variables.
2274         (DEFS): Also define LOCALEDIR.
2275         (iconv.obj): Add flags for relocatability,
2276         (iconv.exe): Link with libicrt. Use link_options.
2277         * vms/link_options.opt: New file.
2278         Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
2280 2003-06-07  Bruno Haible  <bruno@clisp.org>
2282         Support for relocatable data files even on Woe32.
2283         * lib/Makefile.msvc (PICFLAGS): Also define PIC.
2285 2003-05-22  Bruno Haible  <bruno@clisp.org>
2287         * Version 1.9.1 released.
2289 2003-05-22  Bruno Haible  <bruno@clisp.org>
2291         * lib/genaliases.c (main): Emit %pic instead of %null-strings.
2292         Change type of 'name' field to 'int'.
2293         * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
2294         invocation of macro S(), including the tag and a counter.
2295         (main): Use the command-line argument as tag.
2296         * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
2297         lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
2298         * lib/iconv.c (stringpool2_t): New type.
2299         (stringpool2_contents): New data table.
2300         (stringpool2): New macro.
2301         (sysdep_aliases): Make position-independent. Move #includes out to
2302         aliases2.h.
2303         (aliases2_lookup): Update.
2304         (nalias): New type.
2305         (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
2306         (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
2307         * lib/aliases2.h: New file, extracted from lib/iconv.c.
2309 2003-05-20  Bruno Haible  <bruno@clisp.org>
2311         * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
2312         Reported by Muraoka Taro <koron@tka.att.ne.jp>.
2314 2003-05-19  Bruno Haible  <bruno@clisp.org>
2316         * windows/iconv.rc: Include <winver.h>.
2317         Reported by Perry Rapp.
2319 2003-05-18  Bruno Haible  <bruno@clisp.org>
2321         * Version 1.9 released.
2323 2003-05-18  Bruno Haible  <bruno@clisp.org>
2325         * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
2327 2003-05-18  Bruno Haible  <bruno@clisp.org>
2329         * lib/Makefile.msvc (DEBUGFLAGS): New variable.
2330         (iconv.lib): Use it.
2331         * src/Makefile.msvc (DEBUGFLAGS): New variable.
2332         * tests/Makefile.msvc (DEBUGFLAGS): New variable.
2334 2003-05-17  Bruno Haible  <bruno@clisp.org>
2336         * src/Makefile.msvc (libdir, datadir, localedir): New variables.
2337         (IIlibdir, IIdatadir, IIlocaledir): New variables.
2338         (CFLAGS): Define LOCALEDIR.
2339         (iconv_no_i18n.exe): New rule.
2340         (all): Depend on it.
2341         * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
2342         * tests/check-translit.bat: Likewise.
2344 2003-05-16  Bruno Haible  <bruno@clisp.org>
2346         * lib/genaliases.c (main): Emit declarations for gperf-3.0.
2347         * Makefile.devel (lib/aliases.h): Remove gperf command line options;
2348         add new option "-m 10" for gperf-3.0.
2350 2003-05-12  Bruno Haible  <bruno@clisp.org>
2352         * m4/error.m4: Update from gettext.
2354 2003-05-12  Bruno Haible  <bruno@clisp.org>
2356         * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
2358 2003-05-12  Bruno Haible  <bruno@clisp.org>
2360         * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
2361         CFLAGS to PICFLAGS.
2363 2003-05-09  Bruno Haible  <bruno@clisp.org>
2365         * srclib/error.c: Update from gnulib with modifications.
2366         * srclib/unlocked-io.h: New file, from gnulib.
2367         * m4/strerror_r.m4: New file, from gnulib.
2368         * m4/unlocked-io.m4: New file, from gnulib.
2369         * Makefile.devel (aclocal.m4): Depend on them.
2371 2003-05-08  Bruno Haible  <bruno@clisp.org>
2373         * Makefile.msvc (IIPREFIX): New variable.
2374         * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
2375         * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
2376         IIincludedir): New variables.
2377         (INCLUDES): Add -I..\windows.
2378         (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
2379         ../srclib/icrt.lib.
2380         Patches by Perry Rapp.
2382 2003-05-07  Bruno Haible  <bruno@clisp.org>
2384         * README.woe32: Fix instructions for step 1.
2385         * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
2386         (strtoul.obj): Remove rule.
2387         Reported by Perry Rapp.
2389 2003-05-07  Bruno Haible  <bruno@clisp.org>
2391         * Makefile.vms: New file.
2392         * lib/Makefile.vms: New file.
2393         * srclib/Makefile.vms: New file.
2394         * src/Makefile.vms: New file.
2395         * man/Makefile.vms: New file.
2396         * tests/Makefile.vms: New file.
2397         * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
2398         New rules.
2399         (all): Depend on them.
2401 2003-05-07  Bruno Haible  <bruno@clisp.org>
2403         * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
2404         (findprog.obj): Remove rule.
2405         * src/Makefile.msvc (includedir): New variable.
2407 2003-05-06  Bruno Haible  <bruno@clisp.org>
2409         * lib/translit.def: Upgrade to Unicode 4.0.
2411 2003-05-06  Bruno Haible  <bruno@clisp.org>
2413         * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
2414         * srclib/Makefile.msvc (CFLAGS): Likewise.
2416         * srclib/Makefile.msvc (INCLUDES): Add -I.. .
2417         Reported by Perry Rapp.
2419         * Makefile.msvc (config.h): New rule.
2420         (all): Depend on it.
2421         (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
2422         Reported by Perry Rapp.
2424 2003-05-06  Bruno Haible  <bruno@clisp.org>
2426         * autoconf/config.guess: Update to GNU version 2003-02-22.
2427         * autoconf/config.sub: Likewise.
2429 2003-05-06  Bruno Haible  <bruno@clisp.org>
2431         * m4/lib-link.m4: Update from GNU gettext.
2432         * autoconf/config.rpath: Update from GNU gettext.
2434         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
2435         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
2437         * m4/gettext.m4: Update from GNU gettext.
2438         * m4/nls.m4: Update from GNU gettext.
2439         * m4/po.m4: Update from GNU gettext.
2440         * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
2442 2003-04-12  Bruno Haible  <bruno@clisp.org>
2444         Support for OpenVMS 7.3.
2445         * lib/iconv.c (USE_OSF1): Define also on VMS.
2447 2003-04-12  Bruno Haible  <bruno@clisp.org>
2449         Better support for FreeBSD.
2450         * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
2451         aliases, for compatibility with earlier FreeBSD iconv implementation
2452         by Konstantin Chuguev.
2453         * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
2454         aliases.
2455         * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
2457 2003-04-12  Bruno Haible  <bruno@clisp.org>
2459         * configure.in (mandir): Change default value.
2460         * Makefile.in (datadir): New variable.
2461         (install, installdirs, uninstall): Pass datadir to po and man
2462         directories.
2463         * Makefile.os2 (datadir): New variable.
2464         (mandir): Use it instead of prefix.
2465         (install, uninstall): Pass datadir to man directory.
2466         * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
2467         * man/Makefile.in (datadir): New variable.
2468         (docdir): Use it instead of prefix.
2469         (install, installdirs): Update.
2470         * man/Makefile.os2 (datadir): New variable.
2471         (mandir): Use it instead of prefix.
2472         * man/Makefile.msvc (datadir): New variable.
2473         (mandir, docdir): Use it instead of prefix.
2474         (install, installdirs): Update.
2476 2003-04-06  Bruno Haible  <bruno@clisp.org>
2478         Make it possible to build with or without libintl support on Woe32.
2479         * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
2480         * Makefile.msvc (NO_NLS): New variable.
2481         * srclib/Makefile.msvc (NO_NLS): New variable.
2482         (CFLAGS, INCLUDES): Use them.
2483         * src/Makefile.msvc (NO_NLS): New variable.
2484         (NLSFLAGS, INCINTL, LIBINTL): New variables.
2485         (CFLAGS, INCLUDES, iconv.exe): Use them.
2487 2003-04-12  Bruno Haible  <bruno@clisp.org>
2489         * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
2490         variants transliteration failed with RET_ILUNI, don't return
2491         RET_TOOSMALL.
2492         Reported by the FreeBSD porters.
2494 2003-04-06  Bruno Haible  <bruno@clisp.org>
2496         * srclib/binary-io.h: New file, from GNU gettext.
2497         * src/iconv.c: Include it.
2498         (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
2500 2003-04-05  Bruno Haible  <bruno@clisp.org>
2502         Support for relocatable installation.
2503         * m4/alloca.m4: New file, from GNU gettext.
2504         * m4/canonicalize.m4: New file, from GNU gettext.
2505         * m4/error.m4: New file, from GNU gettext.
2506         * m4/onceonly.m4: New file, from GNU gettext.
2507         * m4/pathmax.m4: New file, from GNU gettext.
2508         * m4/relocatable.m4: New file, from GNU gettext.
2509         * m4/setenv.m4: New file, from GNU gettext.
2510         * m4/stdbool.m4: New file, from GNU gettext.
2511         * m4/strerror.m4: New file, from GNU gettext.
2512         * m4/xreadlink.m4: New file, from GNU gettext.
2513         * autoconf/config.libpath: New file, from GNU gettext.
2514         * autoconf/install-reloc: New file, from GNU gettext.
2515         * autoconf/reloc-ldflags: New file, from GNU gettext.
2516         * autoconf/missing: New file, from GNU automake 1.7.3.
2517         * lib/relocatable.h: New file, from GNU gettext.
2518         * lib/relocatable.c: New file, from GNU gettext.
2519         * srclib/alloca.c: New file, from GNU gettext.
2520         * srclib/alloca_.h: New file, from GNU gettext.
2521         * srclib/canonicalize.c: New file, from GNU gettext.
2522         * srclib/canonicalize.h: New file, from GNU gettext.
2523         * srclib/error.c: New file, from GNU gettext.
2524         * srclib/error.h: New file, from GNU gettext.
2525         * srclib/exit.h: New file, from GNU gettext.
2526         * srclib/gettext.h: New file, from GNU gettext.
2527         * srclib/memmove.c: New file, from GNU gettext.
2528         * srclib/pathmax.h: New file, from GNU gettext.
2529         * srclib/progname.c: New file, from GNU gettext.
2530         * srclib/progname.h: New file, from GNU gettext.
2531         * srclib/progreloc.c: New file, from GNU gettext.
2532         * srclib/relocatable.c: New file, from GNU gettext.
2533         * srclib/relocatable.h: New file, from GNU gettext.
2534         * srclib/relocwrapper.c: New file, from GNU gettext.
2535         * srclib/setenv.c: New file, from GNU gettext.
2536         * srclib/setenv.h: New file, from GNU gettext.
2537         * srclib/stdbool.h.in: New file, from GNU gettext.
2538         * srclib/strerror.c: New file, from GNU gettext.
2539         * srclib/unsetenv.c: New file, from GNU gettext.
2540         * srclib/xmalloc.c: New file, from GNU gettext.
2541         * srclib/xmalloc.h: New file, from GNU gettext.
2542         * srclib/xreadlink.c: New file, from GNU gettext.
2543         * srclib/xreadlink.h: New file, from GNU gettext.
2544         * srclib/xstrdup.c: New file, from GNU gettext.
2545         * srclib/Makefile.am: New file.
2546         * srclib/Makefile.msvc: New file.
2547         * windows/alloca.h: New file, from GNU gettext.
2548         * windows/stdbool.h: New file, from GNU gettext.
2549         * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
2550         Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
2551         string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
2552         AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
2553         gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
2554         gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
2555         * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
2556         HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
2557         localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
2558         relocatable.c.
2559         * lib/Makefile.in (DEFS): New variable.
2560         (SOURCES): Add localcharset.c and relocatable.c.
2561         (OBJECTS): Add localcharset.lo and relocatable.lo.
2562         (LIBCHARSET_OBJECTS): Remove variable.
2563         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
2564         libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
2565         (iconv.lo): Use $(DEFS).
2566         (localcharset.lo, relocatable.lo): New rules.
2567         * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
2568         ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
2569         set_relocation_prefix, relocate. Remove $(PICFLAGS).
2570         (INCLUDES): Simplify.
2571         (SOURCES): Remove variable.
2572         (OBJECTS): Add localcharset.obj and relocatable.obj.
2573         (LIBCHARSET_OBJECTS): Remove variable.
2574         (iconv.obj): Add $(PICFLAGS).
2575         (localcharset.obj, relocatable.obj): New rules.
2576         (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
2577         * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
2578         * src/gettext.h: Remove file.
2579         * src/iconv.c: Include progname.h and relocatable.h.
2580         (ICONV_CONST): Define to const if the system has no iconv.
2581         (main): Invoke set_program_name. Relocate LOCALEDIR.
2582         * src/Makefile.in (top_srcdir): New variable.
2583         (INCLUDES): Add .. and ../srclib.
2584         (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
2585         (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
2586         (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
2587         RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
2588         variables.
2589         (iconv): Use $(iconv_LDFLAGS).
2590         (install): Use $(INSTALL_PROGRAM_ENV).
2591         (distclean): Drop removing config.h.
2592         * src/Makefile.msvc (INCLUDES): Add .., simplify.
2593         * tests/Makefile.msvc (INCLUDES): Simplify.
2594         * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
2595         (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
2596         (all): Depend on them.
2597         (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
2598         m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
2599         m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
2600         (lib/config.h.msvc): Additional processing.
2601         * Makefile.in (all, install, installdirs, uninstall, check): Recurse
2602         into srclib.
2603         (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
2604         lib/localcharset.h.
2605         (distclean, maintainerclean): Remove also config.h and some stamps.
2606         * Makefile.msvc (all, install, installdirs, uninstall, check,
2607         mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
2608         * INSTALL.generic: Document --enable-relocatable and
2609         --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
2610         LDFLAGS. The lib-link.m4 macros make this unnecessary.
2612 2003-04-05  Bruno Haible  <bruno@clisp.org>
2614         * configure.in: Bump version number to 1.9.
2615         * include/iconv.h.in (_LIBICONV_VERSION): Bump.
2616         * windows/iconv.rc: Bump version number.
2617         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
2619 2003-04-05  Bruno Haible  <bruno@clisp.org>
2621         * Makefile.msvc (PREFIX): New variable.
2622         (prefix): Use it.
2623         (distclean, maintainer-clean): Drop Unix specific removals.
2624         * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
2625         (prefix): Use it.
2626         (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
2627         (clean): Drop Unix specific removal.
2628         * src/Makefile.msvc (PREFIX): New variable.
2629         (prefix): Use it.
2630         (clean): Drop Unix specific removal.
2631         (distclean): Likewise.
2632         * tests/Makefile.msvc (clean): Drop Unix specific removal.
2633         (distclean): Likewise.
2635 2003-04-05  Bruno Haible  <bruno@clisp.org>
2637         * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
2639 2003-04-05  Bruno Haible  <bruno@clisp.org>
2641         * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
2642         CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
2643         macros.
2644         * m4/gettext.m4: Update from GNU gettext.
2645         * m4/iconv.m4: Update from GNU gettext.
2646         * m4/lcmessage.m4: Update from GNU gettext.
2647         * m4/progtest.m4: Update from GNU gettext.
2648         * m4/libtool.m4: Update from GNU gettext.
2649         2003-02-16  Bruno Haible  <bruno@clisp.org>
2650                 Workaround autoconf >= 2.52 breakage.
2651                 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
2652                 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
2653         * autoconf/ltmain.sh: Update from GNU gettext.
2654         2003-02-18  Bruno Haible  <bruno@clisp.org>
2655                 Fix the 2002-09-16 fix.
2656                 * ltmain.sh (install): If "ln -s -f" fails (this is the case
2657                 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
2659 2003-04-05  Bruno Haible  <bruno@clisp.org>
2661         Start using automake.
2662         * configure.in: Add AM_INIT_AUTOMAKE invocation.
2663         (PACKAGE, VERSION): Remove.
2664         Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
2665         Use AC_PROG_LN_S instead of CL_PROG_LN_S.
2666         Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
2667         Reorder so that AC_CANONICAL_HOST comes early but still after
2668         AC_PROG_CC.
2669         * m4/ranlib.m4: Remove file.
2670         * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
2671         * Makefile.devel (CLISP_DIR): Comment out.
2672         (AUTOCONF_FILES): Change to aclocal.m4.
2673         (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
2674         (configure.in): Drop --include option.
2676 2003-03-17  Bruno Haible  <bruno@clisp.org>
2678         Improved MSVC support.
2679         * Makefile.msvc (prefix): Use less Unixy value.
2680         (local_prefix): Remove variable.
2681         (libdir, includedir, mandir): Use backslashes.
2682         (bindir, datadir, localedir, docdir): New variables.
2683         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
2684         (all): Recurse into po/ and man/.
2685         (install, installdirs, uninstall): Rewritten.
2686         (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
2687         into po/ and man/.
2688         * lib/Makefile.msvc (prefix): Use less Unixy value.
2689         (local_prefix): Remove variable.
2690         (libdir): Use backslashes.
2691         (bindir): New variable.
2692         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
2693         (RESOURCES): Enable iconv.res.
2694         (install, installdirs, uninstall): New rules.
2695         (clean): Remove config.h.
2696         (distclean): Don't remove config.h here.
2697         * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
2698         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
2699         (install, installdirs, uninstall): New rules.
2700         * man/Makefile.msvc: New file.
2701         * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
2702         * Makefile.devel (all): Depend on po/Makefile.msvc.
2703         (po/Makefile.msvc): New rule.
2704         * windows/iconv.rc: Update.
2705         * README.woe32: Mention automatic installation command.
2707         Rename libcharset.h to localcharset.h.
2708         * lib/iconv.c: Include localcharset.h, not libcharset.h.
2709         * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
2710         (all, install): Update dependencies.
2711         (all): Create lib/localcharset.h, not lib/libcharset.h.
2712         (mostlyclean, clean, distclean, maintainer-clean): Remove
2713         lib/localcharset.h, not lib/libcharset.h.
2714         * djgpp/README.in, djgpp/README: Update.
2715         * djgpp/config.bat: Update.
2716         * djgpp/config.sed: Update.
2717         * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
2719 2003-01-31  Bruno Haible  <bruno@clisp.org>
2721         * src/Makefile.in (all): Don't do the chmod if it has already been
2722         done.
2724 2003-01-31  Bruno Haible  <bruno@clisp.org>
2726         * lib/loop_unicode.h (unicode_transliterate): Enable recursive
2727         transliteration. Idea from Perry Rapp.
2728         * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
2729         Change element type of translit_data to 'unsigned int'.
2730         * lib/translit.def: Many new transliterations, mostly taken from glibc.
2731         * lib/translit.h: Regenerated.
2732         * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
2733         * tests/Makefile.in (check): Add Translit1 check.
2734         * tests/Makefile.msvc (check): Likewise.
2735         * tests/Makefile.os2 (check): Likewise.
2736         * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
2737         improved transliteration cannot do.
2739 2003-02-14  Bruno Haible  <bruno@clisp.org>
2741         * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
2742         (configure): Update rule.
2744 2003-01-03  Albert Chin  <libtool@thewrittenword.com>
2746         * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
2747         dependency_libs variable directly down to the linker.
2748         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
2750 2003-01-01  Bruno Haible  <bruno@clisp.org>
2752         * src/Makefile.in (install): Use libiconv.la in ../lib, not in
2753         $(libdir), so that installing with DESTDIR works.
2754         Reported by Michael Adams <michael@michaeladams.org>.
2756 2003-01-01  Bruno Haible  <bruno@clisp.org>
2758         * Makefile.in (mkinstalldirs): New variable.
2759         (install-lib, install, installdirs): Use it instead of mkdir.
2760         * lib/Makefile.in (mkinstalldirs): New variable.
2761         (install-lib, install, installdirs): Use it instead of mkdir.
2762         * man/Makefile.in (mkinstalldirs): New variable.
2763         (install, installdirs): Use it instead of mkdir.
2764         * src/Makefile.in (mkinstalldirs): New variable.
2765         (install, installdirs): Use it instead of mkdir.
2767 2002-09-27  Bruno Haible  <bruno@clisp.org>
2769         * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
2771 2002-11-07  Bruno Haible  <bruno@clisp.org>
2773         * m4/libtool.m4: Upgrade to libtool-1.4.3.
2774         * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
2776 2002-07-14  Bruno Haible  <bruno@clisp.org>
2778         * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
2780 2002-06-12  Bruno Haible  <bruno@clisp.org>
2782         * configure.in: Use new AC_* names of libtool macros. Invoke
2783         AC_LIBTOOL_WIN32_DLL.
2785 2002-12-19  Bruno Haible  <bruno@clisp.org>
2787         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
2788         Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
2790 2002-11-07  Bruno Haible  <bruno@clisp.org>
2792         Make "make install" without prior "make" work.
2793         * Makefile.in (lib/libcharset.h): New rule.
2794         (all, install): Depend on it.
2795         Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
2797 2002-10-28  Bruno Haible  <bruno@clisp.org>
2799         * man/Makefile.in (install): Change directory back to the working
2800         directory, so that install-sh (which may be a relative pathname) is
2801         found in the right place.
2803 2002-09-16  Bruno Haible  <bruno@clisp.org>
2805         * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
2806         "rm -f && ln -s" to make a symlink for a shared library.
2807         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2809 2002-09-02  Bruno Haible  <bruno@clisp.org>
2811         * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
2813 2002-08-16  Bruno Haible  <bruno@clisp.org>
2815         * src/iconv.c (main): Perform fflush before testing ferror(stdout).
2817 2002-05-29  Bruno Haible  <bruno@clisp.org>
2819         * Version 1.8 released.
2821 2002-05-26  Bruno Haible  <bruno@clisp.org>
2823         * lib/c99.h: New file.
2824         * lib/converters.h: Include it.
2825         * lib/encodings.def (C99): New encoding.
2826         * README, man/iconv_open.3: Document C99 encoding.
2828 2002-05-26  Bruno Haible  <bruno@clisp.org>
2830         * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
2831         characters.
2832         (java_wctomb): Produce 12-byte sequences for non-BMP characters.
2834 2002-05-29  Bruno Haible  <bruno@clisp.org>
2836         Fix installation of iconv program when linked with a libintl that was
2837         built against an earlier libiconv.
2838         * src/iconv.c: Conditionally disable NLS.
2839         * src/iconv_no_i18n.c: New file.
2840         * src/Makefile.in (libdir): New variable.
2841         (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
2842         directory writable, so iconv executable can be created during "make
2843         install".
2844         (iconv): Remove rule.
2845         (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
2846         (install): Link iconv now, after the new libiconv.so is installed.
2847         (clean): Also remove iconv_no_i18n.
2848         * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
2849         not iconv.
2850         * tests/check-stateful: Use iconv_no_i18n, not iconv.
2851         * tests/check-translit: LIkewise.
2852         * tests/check-translitfailure: Likewise.
2854 2002-05-29  Bruno Haible  <bruno@clisp.org>
2856         * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
2857         * m4/install.m4: Remove file.
2858         * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
2860 2002-05-24  Bruno Haible  <bruno@clisp.org>
2862         * lib/jisx0213.h: Use 'inline' only conditionally.
2864 2002-05-18  Bruno Haible  <bruno@clisp.org>
2866         * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
2867         README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
2868         Bump version number.
2869         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
2871 2002-02-06  Bruno Haible  <bruno@clisp.org>
2873         * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
2875 2002-02-02  Bruno Haible  <bruno@clisp.org>
2877         * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
2879 2001-11-03  Bruno Haible  <haible@clisp.cons.org>
2881         * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
2882         "make install" succeeds.
2884 2002-05-18  Bruno Haible  <bruno@clisp.org>
2886         * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
2887         from the command line. Needed to ensure that the new libiconv version
2888         is used on FreeBSD.
2890 2002-05-14  Bruno Haible  <bruno@clisp.org>
2892         Implement and document CP853, TDS565, RISCOS-LATIN1.
2893         * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
2894         (cp853.h, tds565.h, riscos1.h): New rules.
2895         * lib/cp853.h: New file.
2896         * lib/tds565.h: New file.
2897         * lib/riscos1.h: New file.
2898         * lib/converters.h: Include them.
2899         * lib/encodings_dos.def (CP853): New encoding.
2900         * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
2901         * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
2902         * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
2903         RISCOS-LATIN1.
2904         * tests/Makefile.msvc (check): Check CP853.
2905         * tests/CP853.TXT: New file.
2906         * tests/TDS565.TXT: New file.
2907         * tests/RISCOS-LATIN1.TXT: New file.
2909         * lib/cp860.h (cp860_wctomb): Optimize.
2911 2002-05-12  Bruno Haible  <bruno@clisp.org>
2913         * tools/Makefile (ksc5601.h): Add two extra characters.
2914         * lib/ksc5601.h: Regenerated.
2915         * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
2916         * tests/CP949.TXT: Likewise.
2917         * tests/JOHAB.TXT: Likewise.
2919 2002-05-12  Bruno Haible  <bruno@clisp.org>
2921         * README: Mention extra encodings.
2922         * man/iconv_open.3: Likewise. Improve formatting in text and html
2923         output formats.
2925 2002-05-12  Bruno Haible  <bruno@clisp.org>
2927         * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
2929 2002-05-12  Bruno Haible  <bruno@clisp.org>
2931         * Makefile.devel (AUTOCONF): New variable.
2932         (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
2933         (configure): Use the AUTOCONF variable.
2934         * autoconf/autoconf: Remove file.
2935         * autoconf/autoconf.m4: Remove file.
2936         * autoconf/autoconf.m4f: Remove file.
2938 2002-05-12  Bruno Haible  <bruno@clisp.org>
2940         * tools/JISX0213.TXT: New file.
2941         * tools/cjk_tab_to_h.c (do_jisx0213): New function.
2942         (main): Accept "jisx0213".
2943         * tools/Makefile (all): Add jisx0213.h.
2944         (jisx0213.h): New rule.
2945         * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
2946         * lib/euc_jisx0213.h: New file.
2947         * lib/shift_jisx0213.h: New file.
2948         * lib/iso2022_jp3.h: New file.
2949         * lib/converters.h: Include them.
2950         * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
2951         ISO-2022-JP-3): New encodings.
2952         * tests/EUC-JISX0213.TXT: New file.
2953         * tests/SHIFT_JISX0213.TXT: New file.
2954         * tests/ISO-2022-JP-3-snippet: New file.
2955         * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
2956         * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
2957         SHIFT_JISX0213, ISO-2022-JP-3.
2958         * tests/check-stateless: Add support for encodings which contain
2959         precomposed Unicode characters, by eliminating precomposed characters
2960         before the comparison.
2961         * tests/table-from.c (main): Fix usage message.
2962         * tests/table-to.c (main): Make it work for encodings for which the
2963         "to" direction is stateful.
2965 2002-05-09  Bruno Haible  <bruno@clisp.org>
2967         New configure option --enable-extra-encodings.
2968         * lib/encodings_extra.def: New file.
2969         * lib/converters.h: Handle USE_EXTRA.
2970         * lib/genaliases2.c (main): Handle USE_EXTRA.
2971         * lib/genflags.c: Define USE_EXTRA.
2972         (main): Include encodings_extra.def.
2973         * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
2974         Handle USE_EXTRA.
2975         * lib/config.h.in (ENABLE_EXTRA): New macro.
2976         * configure.in: Accept option --enable-extra-encodings.
2977         * Makefile.devel (all): Depend on lib/aliases_extra.h.
2978         (lib/aliases_extra.h): New rule.
2979         (lib/flags.h): Depend on lib/encodings_extra.def.
2980         * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
2981         New rules.
2982         (check): Invoke check-extra.
2983         * tests/Makefile.msvc (check): Also check the DOS encodings.
2985         Support for testing the AIX encodings.
2986         * tests/CP856.TXT: New file.
2987         * tests/CP922.TXT: New file.
2988         * tests/CP1046.TXT: New file.
2989         * tests/CP1124.TXT: New file.
2990         * tests/CP1129.TXT: New file.
2991         * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
2992         * tests/CP1162.TXT: New file.
2993         * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
2995         Support for testing the OSF/1 encodings.
2996         * tests/DEC-KANJI.TXT: New file.
2997         * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
2999         Support for testing the DOS encodings.
3000         * tests/CP437.TXT: New file.
3001         * tests/CP737.TXT: New file.
3002         * tests/CP775.TXT: New file.
3003         * tests/CP852.TXT: New file.
3004         * tests/CP855.TXT: New file.
3005         * tests/CP857.TXT: New file.
3006         * tests/CP858.TXT: New file.
3007         * tests/CP860.TXT: New file.
3008         * tests/CP861.TXT: New file.
3009         * tests/CP863.TXT: New file.
3010         * tests/CP864.TXT: New file.
3011         * tests/CP865.TXT: New file.
3012         * tests/CP869.TXT: New file.
3013         * tests/CP1125.TXT: New file.
3015 2002-05-09  Bruno Haible  <bruno@clisp.org>
3017         Implement more ASCII compatible DOS encodings.
3018         * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
3019         (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
3020         * lib/cp737.h: New file.
3021         * lib/cp858.h: New file.
3022         * lib/cp860.h: New file.
3023         * lib/cp863.h: New file.
3024         * lib/converters.h: Include them.
3025         * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
3027 2002-05-09  Bruno Haible  <bruno@clisp.org>
3029         Implement new ASCII compatible encodings from IBM.
3030         * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
3031         (cp1161.h, cp1162.h, cp1163.h): New rules.
3032         * lib/cp1161.h: New file.
3033         * lib/cp1162.h: New file.
3034         * lib/cp1163.h: New file.
3035         * lib/converters.h: Include them.
3036         * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
3038 2002-05-09  Bruno Haible  <bruno@clisp.org>
3040         Implement and document KOI8-T.
3041         * tools/Makefile (ALL): Add koi8_t.h.
3042         (koi8_t.h): New rule.
3043         * lib/koi8_t.h: New file.
3044         * lib/converters.h: Include it.
3045         * lib/encodings.def (KOI8-T): New encoding.
3046         * README, man/iconv_open.3: Add KOI8-T.
3047         * tests/Makefile.in (tests): Check KOI8-T.
3048         * tests/Makefile.os2 (tests): Likewise.
3049         * tests/Makefile.msvc (tests): Likewise.
3050         * tests/KOI8-T.TXT: New file.
3052 2002-05-09  Bruno Haible  <bruno@clisp.org>
3054         * tools/8bit_tab_to_h.c (main): Update copyright year.
3055         * tools/cjk_variants.c (main): Likewise.
3057 2002-05-08  Bruno Haible  <bruno@clisp.org>
3059         * README.woe32: Renamed from README.win32.
3061 2002-05-08  Bruno Haible  <bruno@clisp.org>
3063         * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
3064         because the Woe32 consoles use them.
3066 2002-05-04  Bruno Haible  <bruno@clisp.org>
3068         * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
3069         without writing an output character, restore cd->istate to its value
3070         before the xxx_mbtowc call. Otherwise we lose some characters during
3071         CP1255/CP1258/TCVN to Unicode conversion.
3072         (unicode_loop_reset): Likewise for the xxx_flushwc call.
3073         * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
3074         files large enough to test against the bug.
3075         * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
3076         * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
3078 2002-04-28  Bruno Haible  <bruno@clisp.org>
3080         * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
3081         * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
3082         * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
3083         * lib/armscii_8.h: Regenerated.
3085 2002-04-28  Bruno Haible  <bruno@clisp.org>
3087         * src/iconv.c: Include gettext.h.
3088         (_): New macro.
3089         (usage, print_version, convert, main): Internationalize.
3090         (main): Call setlocale, bindtextdomain, textdomain.
3091         * src/gettext.h: New file, from GNU gettext 0.11.2.
3092         * src/config.h.in: New file, needed for ENABLE_NLS.
3093         * src/Makefile.in (datadir, localedir): New variables.
3094         (iconv): Link with @LTLIBINTL@.
3095         (iconv.@OBJEXT@): Define LOCALEDIR.
3096         (distclean): Remove config.h.
3097         * po: New directory.
3098         * Makefile.in (all, install, installdirs, uninstall, check,
3099         mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
3100         directory.
3101         * autoconf/mkinstalldirs: New file, from automake-1.5.
3102         * ABOUT-NLS: New file, from GNU gettext 0.11.2.
3103         * m4/codeset.m4: New file, from GNU gettext 0.11.2.
3104         * m4/gettext.m4: New file, from GNU gettext 0.11.2.
3105         * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
3106         * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
3107         * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
3108         * m4/progtest.m4: New file, from GNU gettext 0.11.2.
3109         * configure.in: Require autoconf-2.52, needed for multiple config.h.in
3110         files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
3111         (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
3112         * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
3114 2002-04-28  gettextize  <bug-gnu-gettext@gnu.org>
3116         * configure.in (AC_OUTPUT): Add po/Makefile.in.
3118 2002-04-28  Bruno Haible  <bruno@clisp.org>
3120         * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
3121         * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
3122         * m4/general.m4: New file, from GNU clisp.
3123         * m4/proto.m4: New file, from GNU clisp.
3124         * m4/ranlib.m4: New file, from GNU clisp.
3125         * m4/install.m4: New file, from GNU clisp.
3126         * m4/cp.m4: New file, from GNU clisp.
3127         * m4/ln.m4: New file, from GNU clisp.
3128         * m4/endian.m4: New file, from GNU clisp.
3129         * m4/iconv.m4: New file, from GNU gettext 0.11.2.
3130         * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
3131         * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
3132         * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
3133         * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
3134         * m4/libtool.m4: New file, based on libtool-1.4.2.
3135         * Makefile.devel (ACLOCAL): Remove variable.
3136         (ACSELECT): Remove variable.
3137         (OTHERMACROS): Remove variable.
3138         (m4/*.m4): New rules.
3139         (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
3140         * configure.in: Invoke AM_ICONV instead of CL_ICONV.
3142 2002-04-06  Bruno Haible  <bruno@clisp.org>
3144         Upgrade to Unicode 3.2.
3145         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
3146         (compact_large_charset2uni): Add an argument. Determine optimal shift.
3147         Copy modified enc->charset2uni table.
3148         (output_charset2uni): Deal with shift other than 8. Copy encoding, so
3149         as to not disturb subsequent output_uni2charset[_sparse] call.
3150         * lib/hkscs.h: Regenerated.
3151         * tests/BIG5-HKSCS.TXT: Update.
3152         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
3154 2002-04-06  Bruno Haible  <bruno@clisp.org>
3156         Upgrade to Unicode 3.2.
3157         * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
3158         cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3159         cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
3160         CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
3161         * lib/cns11643_3.h: Regenerated.
3162         * lib/cns11643_4a.h: Regenerated.
3163         * lib/cns11643_4b.h: Regenerated.
3164         * lib/cns11643_5.h: Regenerated.
3165         * lib/cns11643_6.h: Regenerated.
3166         * lib/cns11643_7.h: Regenerated.
3167         * lib/cns11643_15.h: Regenerated.
3168         * lib/cns11643_inv.h: Regenerated.
3169         * tests/EUC-TW.TXT: Update.
3171 2002-01-17  Bruno Haible  <bruno@clisp.org>
3173         * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
3174         (tcvn_mbtowc): Small optimization.
3176 2002-01-13  Bruno Haible  <bruno@clisp.org>
3178         New options -l, -c, -s.
3179         * src/iconv.c (discard_unconvertible, silent): New variables.
3180         (usage): Document options -l, -c, -s.
3181         (print_one): New function.
3182         (convert): If silent is true, don't print error messages about the
3183         conversion to stderr. If discard_unconvertible is true, set the
3184         iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
3185         return the same return code as when discard_unconvertible is false.
3186         (main): Accept options -l, -c, -s. Implement option -l.
3187         * man/iconv.1: Document options -l, -c, -s.
3189 2002-01-13  Bruno Haible  <bruno@clisp.org>
3191         Support for "iconv -c".
3192         * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
3193         (ICONV_SET_DISCARD_ILSEQ): Likewise.
3194         * lib/converters.h (struct conv_struct): New field discard_ilseq.
3195         * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
3196         has an "//IGNORE" suffix, and to false otherwise.
3197         (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
3198         * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
3199         true, skip one input character instead of returning EILSEQ.
3200         (unicode_loop_reset): Likewise.
3201         * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
3202         (wchar_to_loop_convert): Likewise.
3204 2002-01-13  Bruno Haible  <bruno@clisp.org>
3206         Support for "iconv -l".
3207         * include/iconv.h.in (iconvlist): New declaration.
3208         * Makefile.devel (lib/aliases.h): Change gperf options.
3209         * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
3210         functions.
3212 2002-01-06  Bruno Haible  <bruno@clisp.org>
3214         * lib/loop_unicode.h (unicode_transliterate): If the transliteration
3215         fails due to limited output encoding, return RET_ILUNI, not
3216         RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3217         * tests/check-translitfailure: New file.
3218         * tests/TranslitFail1.ISO-8859-1: New file.
3219         * tests/Makefile.in (check): Call check-translitfailure.
3221 2001-12-15  Bruno Haible  <bruno@clisp.org>
3223         * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
3224         Shift_JIS characters 0x5C and 0x7E.
3225         * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
3227 2001-12-05  Bruno Haible  <bruno@clisp.org>
3229         * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
3230           endless loop if locale_charset() returns the empty string.
3231         * README, man/iconv_open.3: Add the empty encoding name.
3233 2001-11-10  Bruno Haible  <haible@clisp.cons.org>
3235         * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
3236           non-gcc compiler.
3238 2001-10-23  Bruno Haible  <haible@clisp.cons.org>
3240         * tools/Makefile (cp1125.h): New target.
3241           (ALL): Add it.
3242         * lib/cp1125.h: New file.
3243         * lib/converters.h: Include it.
3244         * lib/encodings_dos.def (CP1125): New encoding.
3246 2001-09-08  Bruno Haible  <haible@clisp.cons.org>
3248         * autoconf/eilseq.m4: New file.
3249         * Makefile.devel (OTHERMACROS): Add it.
3250         * configure.in: Call AC_EILSEQ.
3251         * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
3253 2001-08-25  Bruno Haible  <haible@clisp.cons.org>
3255         Upgrade to autoconf-2.52.
3256         * autoconf/autoconf: Upgrade to autoconf-2.52.
3257         * autoconf/acgeneral.m4: Remove file.
3258         * autoconf/acspecific.m4: Remove file.
3259         * autoconf/autoconf.m4f: New file, from autoconf-2.52.
3260         * autoconf/aclocal.m4: Require autoconf-2.52.
3261         (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
3262         AC_CANONICAL_HOST does it itself. Add $SHELL in front of
3263         $ac_config_guess and $ac_config_sub.
3264         * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
3265         Add autoconf.m4f.
3266         (configure): Use autoconf options -A, -l instead of -m.
3267         * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
3269 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3271         * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
3272         (AC_LANG_EXTERN): Move to aclocal.m4.
3273         * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
3274         (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
3275         (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
3277 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
3279         Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
3280         * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
3281         'try' to 'incount'.
3282         * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
3283         between sources and libs.
3284         (libiconv_plug_solaris.so) [GCC]: Likewise.
3285         (libiconv_plug_osf.so) [GCC]: Likewise.
3286         * src/Makefile.in (iconv.@OBJEXT@): New rule.
3287         (iconv): Depend on it.
3288         (clean): Erase *.@OBJEXT@, not *.o.
3289         * tests/Makefile.in (table-from.@OBJEXT@): New rule.
3290         (table-from): Depend on it.
3291         (table-to.@OBJEXT@): New rule.
3292         (table-to): Depend on it.
3293         (clean): Erase *.@OBJEXT@, not *.o.
3295 2001-07-28  Bruno Haible  <haible@clisp.cons.org>
3297         * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
3298         * lib/iso8859_16.h: Regenerated.
3299         * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
3301 2001-07-17  Bruno Haible  <haible@clisp.cons.org>
3303         * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
3305 2001-07-03  Bruno Haible  <haible@clisp.cons.org>
3307         * configure.in: Also check for mbsinit.
3308         * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
3309         Needed for SCO 3.2v5.0.2.
3311 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3313         * Version 1.7 released.
3315 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
3317         * INSTALL.generic (Particular Systems): Generalize section about
3318         /usr/local to "most systems".
3320         * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
3321         Solaris cc destroys iconv.o and iconv.lo while building
3322         libiconv_plug_solaris.so.
3323         (clean): Remove so_locations, left there by the OSF/1 linker.
3325         * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
3327         * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
3328         'unsigned short'.
3330         * tests/table-from.c: Include string.h.
3331         * tests/table-to.c: Likewise.
3333 2001-06-26  Bruno Haible  <haible@clisp.cons.org>
3335         * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
3336         (jisx0212.h): Replace U+007E with U+FF5E.
3337         * lib/jisx0208.h: Regenerated.
3338         * lib/jisx0212.h: Regenerated.
3339         * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
3340         * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
3341         * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
3342         * tests/CP932.TXT: Likewise.
3343         * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
3345 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3347         * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
3348         $(CPPFLAGS).
3349         * src/Makefile.msvc (iconv.exe): Likewise.
3350         * src/Makefile.os2 (iconv.exe): Likewise.
3351         * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
3352         (libiconv_plug_solaris.so): Likewise.
3353         (libiconv_plug_osf.so): Likewise.
3354         (iconv.lo): Likewise.
3355         * lib/Makefile.msvc (iconv.obj): Likewise.
3356         * lib/Makefile.os2 (iconv.obj): Likewise.
3357         * tests/Makefile.in (table-from, table-to): Likewise.
3358         * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
3359         * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
3360         (genutf8.exe): Don't use $(INCLUDES).
3362 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3364         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3365           Bump version number.
3366         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
3368 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3370         * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
3372 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
3374         * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
3376 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3378         * autoconf/ltmain.sh: Upgrade to libtool-1.4.
3379         * autoconf/ltconfig: Remove file.
3381 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
3383         * autoconf/config.guess: Update to GNU version 2001-05-11.
3384         * autoconf/config.sub: Likewise.
3386 2001-06-03  Bruno Haible  <haible@clisp.cons.org>
3388         * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
3389           characters if they cannot be converted.
3390           (unicode_loop_reset): Likewise.
3391         * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
3392            STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
3393            STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
3394           New macros.
3395           (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
3396           direction.
3397           (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
3398           If "ja", prefer conversion to Japanese character sets. If "zh",
3399           prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
3401         * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
3402           (RET_TOOSMALL): Change value from -1 to -2.
3403         * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
3404           return 0 written bytes.
3406 2001-06-06  Bruno Haible  <haible@clisp.cons.org>
3408         * lib/encodings.def: Align with IANA character-set registry.
3409           (US-ASCII): Add alias "ANSI_X3.4-1986".
3410           (ISO-8859-14): Add alias "ISO-CELTIC".
3411           (JIS_X0208): Add alias "JIS_C6226-1983".
3412           (BIG5HKSCS): Add alias "BIG5-HKSCS".
3413         * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
3414         * tests/Makefile.in (check): Likewise.
3415         * tests/Makefile.os2 (check): Likewise.
3416         * tests/Makefile.msvc (check): Likewise.
3417         * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
3418         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
3419           BIG5HKSCS.IRREVERSIBLE.TXT.
3421 2001-06-02  Bruno Haible  <haible@clisp.cons.org>
3423         * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
3424           (is_charset2uni_large, compact_large_charset2uni): New functions.
3425           (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
3426           (output_charset2uni): If mapping to more than the Unicode BMP,
3427           use an extra indirection to keep each value in 16 bits.
3428           (invert): Bump limit from U+10000 to U+30000.
3429           (output_uni2charset_dense): Likewise.
3430           (output_uni2charset_sparse): Likewise. If mapping to more than one
3431           CJK plane, use three bytes per value instead of two bytes.
3432           (byte_row_cns11643): Allow more than 3 CJK planes.
3433           (do_cns11643_only_uni2charset): Increase number of rows, to include
3434           plane 15. Remove plane bits hack.
3435           (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
3436         * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
3437           cns11643_6.h, cns11643_7.h, cns11643_15.h.
3438           (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
3439           derived table.
3440           (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3441            cns11643_7.h, cns11643_15.h): New rules.
3442           (cns11643_inv.h): Change title.
3443         * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
3444         * lib/cns11643_3.h: Likewise.
3445         * lib/cns11643_4a.h: New file.
3446         * lib/cns11643_4b.h: New file.
3447         * lib/cns11643_4.h: New file.
3448         * lib/cns11643_5.h: New file.
3449         * lib/cns11643_6.h: New file.
3450         * lib/cns11643_7.h: New file.
3451         * lib/cns11643_15.h: New file.
3452         * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
3453           (cns11643_inv_wctomb): Return 3 bytes now.
3454         * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
3455           cns11643_7.h, cns11643_15.h.
3456           (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
3457           plane number starting at 1, not 0.
3458         * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
3459           change.
3460         * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
3461           well.
3462           (euc_tw_wctomb): Update for cns11643_wctomb change.
3463         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3464         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
3465           4,5,6,7 as well.
3466           (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
3467           Try CNS11643 planes 4,5,6,7 as well.
3468         * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
3469         * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
3470           Add U+5344.
3472 2001-06-01  Bruno Haible  <haible@clisp.cons.org>
3474         * tests/table-from.c (bmp_only): New variable.
3475           (ucs4_decode): If bmp_only, don't return characters outside Unicode
3476           plane 0.
3477           (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
3478           a conversion line if ucs4_decode returns NULL.
3479         * tests/table-to.c (main): When testing encodings other than UTF-8 and
3480           GB18030, loop upto U+30000 instead of U+10000.
3482 2001-05-24  Bruno Haible  <haible@clisp.cons.org>
3484         * lib/converters.h (mbtowc_funcs): Add flushwc member function.
3485         * lib/flushwc.h: New file.
3486         * lib/cp1255.h: Include flushwc.h.
3487           (cp1255_comp_table_data, cp1255_comp_table): New arrays.
3488           (cp1255_mbtowc): Compose base and combining characters.
3489           (cp1255_flushwc): New macro.
3490         * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
3491         * lib/cp1258.h: Include flushwc.h.
3492           (cp1258_mbtowc): Compose base and combining characters.
3493           (cp1258_flushwc): New macro.
3494         * lib/tcvn.h: Include flushwc.h.
3495           (tcvn_mbtowc): Compose base and combining characters.
3496           (tcvn_flushwc): New macro.
3497         * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
3498           from unicode_loop_convert.
3499           (unicode_loop_convert): Use unicode_transliterate.
3500           (unicode_loop_reset): Call xxx_flushwc and output the resulting
3501           character.
3502         * lib/encodings.def: Add xxx_flushwc member.
3503         * lib/encodings_aix.def: Likewise.
3504         * lib/encodings_dos.def: Likewise.
3505         * lib/encodings_local.def: Likewise.
3506         * lib/encodings_osf1.def: Likewise.
3507         * lib/genaliases.c: Add an argument to the DEFENCODING macro.
3508         * lib/genaliases2.c: Likewise.
3509         * lib/genflags.c: Likewise.
3510         * lib/iconv.c: Likewise.
3511         * tests/table-from.c (try): Reset the iconv descriptor before the main
3512           call, and flush it afterwards.
3513           (ucs4_decode): New function.
3514           (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
3515         * tests/CP1255-snippet: New file.
3516         * tests/CP1255-snippet.UTF-8: New file.
3517         * tests/CP1258-snippet: New file.
3518         * tests/CP1258-snippet.UTF-8: New file.
3519         * tests/TCVN-snippet: New file.
3520         * tests/TCVN-snippet.UTF-8: New file.
3521         * tests/Makefile.in (check): Check combining behaviour of CP1255,
3522           CP1258, TCVN.
3523         * tests/Makefile.msvc (check): Likewise.
3524         * tests/Makefile.os2 (check): Likewise.
3526 2001-05-22  Bruno Haible  <haible@clisp.cons.org>
3528         * lib/converters.h (RET_ILUNI): New macro.
3529           (RET_ILSEQ): Change value to -1.
3530           (RET_TOOFEW): Change value.
3531         * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
3532           of 0. Update handling of xxx_mbtowc return value.
3533         * lib/genflags.c (emit_encoding): Likewise.
3534         * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
3535         * lib/armscii_8.h (armscii_8_wctomb): Likewise.
3536         * lib/big5.h (big5_wctomb): Likewise.
3537         * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
3538         * lib/ces_big5.h (ces_big5_wctomb): Likewise.
3539         * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
3540         * lib/cns11643.h (cns11643_wctomb): Likewise.
3541         * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
3542         * lib/cp437.h (cp437_wctomb): Likewise.
3543         * lib/cp775.h (cp775_wctomb): Likewise.
3544         * lib/cp850.h (cp850_wctomb): Likewise.
3545         * lib/cp852.h (cp852_wctomb): Likewise.
3546         * lib/cp855.h (cp855_wctomb): Likewise.
3547         * lib/cp856.h (cp856_wctomb): Likewise.
3548         * lib/cp857.h (cp857_wctomb): Likewise.
3549         * lib/cp861.h (cp861_wctomb): Likewise.
3550         * lib/cp862.h (cp862_wctomb): Likewise.
3551         * lib/cp864.h (cp864_wctomb): Likewise.
3552         * lib/cp865.h (cp865_wctomb): Likewise.
3553         * lib/cp866.h (cp866_wctomb): Likewise.
3554         * lib/cp869.h (cp869_wctomb): Likewise.
3555         * lib/cp874.h (cp874_wctomb): Likewise.
3556         * lib/cp922.h (cp922_wctomb): Likewise.
3557         * lib/cp932ext.h (cp932ext_wctomb): Likewise.
3558         * lib/cp932.h (cp932_wctomb): Likewise.
3559         * lib/cp936ext.h (cp936ext_wctomb): Likewise.
3560         * lib/cp949.h (cp949_wctomb): Likewise.
3561         * lib/cp950ext.h (cp950ext_wctomb): Likewise.
3562         * lib/cp950.h (cp950_wctomb): Likewise.
3563         * lib/cp1046.h (cp1046_wctomb): Likewise.
3564         * lib/cp1124.h (cp1124_wctomb): Likewise.
3565         * lib/cp1129.h (cp1129_wctomb): Likewise.
3566         * lib/cp1133.h (cp1133_wctomb): Likewise.
3567         * lib/cp1250.h (cp1250_wctomb): Likewise.
3568         * lib/cp1251.h (cp1251_wctomb): Likewise.
3569         * lib/cp1252.h (cp1252_wctomb): Likewise.
3570         * lib/cp1253.h (cp1253_wctomb): Likewise.
3571         * lib/cp1254.h (cp1254_wctomb): Likewise.
3572         * lib/cp1255.h (cp1255_wctomb): Likewise.
3573         * lib/cp1256.h (cp1256_wctomb): Likewise.
3574         * lib/cp1257.h (cp1257_wctomb): Likewise.
3575         * lib/cp1258.h (cp1258_wctomb): Likewise.
3576         * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
3577         * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
3578         * lib/euc_cn.h (euc_cn_wctomb): Likewise.
3579         * lib/euc_jp.h (euc_jp_wctomb): Likewise.
3580         * lib/euc_kr.h (euc_kr_wctomb): Likewise.
3581         * lib/euc_tw.h (euc_tw_wctomb): Likewise.
3582         * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
3583         * lib/gb12345.h (gb12345_wctomb): Likewise.
3584         * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
3585         * lib/gb18030.h (gb18030_wctomb): Likewise.
3586         * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
3587         * lib/gb2312.h (gb2312_wctomb): Likewise.
3588         * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
3589         * lib/gbk.h (gbk_wctomb): Likewise.
3590         * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
3591         * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
3592         * lib/hkscs.h (hkscs_wctomb): Likewise.
3593         * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
3594         * lib/hz.h (hz_wctomb): Likewise.
3595         * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
3596         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3597         * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
3598         * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
3599         * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
3600         * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
3601         * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
3602         * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
3603         * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
3604         * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
3605         * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
3606         * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
3607         * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
3608         * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
3609         * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
3610         * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
3611         * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
3612         * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
3613         * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
3614         * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
3615         * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
3616         * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
3617         * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
3618         * lib/isoir165.h (isoir165_wctomb): Likewise.
3619         * lib/jisx0201.h (jisx0201_wctomb): Likewise.
3620         * lib/jisx0208.h (jisx0208_wctomb): Likewise.
3621         * lib/jisx0212.h (jisx0212_wctomb): Likewise.
3622         * lib/johab.h (johab_wctomb): Likewise.
3623         * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
3624           Likewise.
3625         * lib/koi8_r.h (koi8_r_wctomb): Likewise.
3626         * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
3627         * lib/koi8_u.h (koi8_u_wctomb): Likewise.
3628         * lib/ksc5601.h (ksc5601_wctomb): Likewise.
3629         * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
3630         * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
3631         * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
3632         * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
3633         * lib/mac_greek.h (mac_greek_wctomb): Likewise.
3634         * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
3635         * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
3636         * lib/mac_roman.h (mac_roman_wctomb): Likewise.
3637         * lib/mac_romania.h (mac_romania_wctomb): Likewise.
3638         * lib/mac_thai.h (mac_thai_wctomb): Likewise.
3639         * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
3640         * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
3641         * lib/mulelao.h (mulelao_wctomb): Likewise.
3642         * lib/nextstep.h (nextstep_wctomb): Likewise.
3643         * lib/sjis.h (sjis_wctomb): Likewise.
3644         * lib/tcvn.h (tcvn_wctomb): Likewise.
3645         * lib/tis620.h (tis620_wctomb): Likewise.
3646         * lib/ucs2be.h (ucs2be_wctomb): Likewise.
3647         * lib/ucs2.h (ucs2_wctomb): Likewise.
3648         * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
3649         * lib/ucs2le.h (ucs2le_wctomb): Likewise.
3650         * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
3651         * lib/ucs4.h (ucs4_wctomb): Likewise.
3652         * lib/uhc_1.h (uhc_1_wctomb): Likewise.
3653         * lib/uhc_2.h (uhc_2_wctomb): Likewise.
3654         * lib/utf16be.h (utf16be_wctomb): Likewise.
3655         * lib/utf16.h (utf16_wctomb): Likewise.
3656         * lib/utf16le.h (utf16le_wctomb): Likewise.
3657         * lib/utf32be.h (utf32be_wctomb): Likewise.
3658         * lib/utf32.h (utf32_wctomb): Likewise.
3659         * lib/utf32le.h (utf32le_wctomb): Likewise.
3660         * lib/utf7.h (utf7_wctomb): Likewise.
3661         * lib/utf8.h (utf8_wctomb): Likewise.
3662         * lib/viscii.h (viscii_wctomb): Likewise.
3663         * tools/8bit_tab_to_h.c (main): Likewise.
3664         * tools/cjk_tab_to_h.c (output_uni2charset_dense,
3665            output_uni2charset_sparse, do_gb18030uni): Likewise.
3667 2001-05-19  Bruno Haible  <haible@clisp.cons.org>
3669         * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
3670           (man/%.html): New rule.
3671         * man/Makefile.in (docdir, htmldir): New variables.
3672           (install, installdirs): Install the HTML formatted man pages in
3673           $(htmldir).
3674           (uninstall): Uninstall them.
3676 2001-05-20  Bruno Haible  <haible@clisp.cons.org>
3678         * lib/cp1255.h (cp1255_decomp_table): New array.
3679           (cp1255_comb_table): New array.
3680           (cp1255_wctomb): Decompose Unicode characters.
3681         * tests/CP1255.IRREVERSIBLE.TXT: New file.
3683 2001-05-13  Bruno Haible  <haible@clisp.cons.org>
3685         * lib/vietcomb.h: New file.
3686         * lib/cp1258.h: Include it.
3687           (cp1258_comb_table): New array.
3688           (cp1258_wctomb): Decompose Unicode characters.
3689         * lib/tcvn.h: Include it.
3690           (tcvn_comb_table): New array.
3691           (tcvn_wctomb): Decompose Unicode characters.
3692         * tests/CP1258.IRREVERSIBLE.TXT: New file.
3693         * tests/TCVN.IRREVERSIBLE.TXT: New file.
3695 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
3697         * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
3698         (iconv.lib): Likewise.
3700 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
3702         * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3703         (CPP): Remove variable.
3704         (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
3705          libiconv_plug_osf.so): Use LDFLAGS.
3706         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3707          libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
3708         * lib/Makefile.msvc (CPP): Remove variable.
3709         * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3710         (CPP): Remove variable.
3711         (iconv): Use CPPFLAGS and LDFLAGS.
3712         * src/Makefile.msvc (CPP): Remove variable.
3713         * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3714         (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
3715         * tests/Makefile.msvc (CPP): Remove variable.
3717 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
3719         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
3720           gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
3722 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
3724         Implement and document UTF-32, UTF-32BE, UTF-32LE.
3725         * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
3726         * src/converters.h: Include them.
3727         * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
3728         * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
3729         * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
3730         * tests/Makefile.os2 (check): Likewise.
3731         * tests/Makefile.msvc (check): Likewise.
3732         * tests/UTF-32*snippet*: New files.
3734         * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
3735           (ucs4_wctomb): Allow any 31-bit codepoint.
3737 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
3739         * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
3740           unassigned code points.
3741         * tests/table-from.c (main); When dumping GB18030, don't print code
3742           points larger than U+FFFF.
3744 2001-03-30  Bruno Haible  <haible@clisp.cons.org>
3746         * tools/Makefile (GB18030uni.TXT): Use a table source which includes
3747           the unassigned Unicode code points.
3748         * lib/gb18030uni.h: Update.
3749           (gb18030uni_ranges): Remove bitmap_offset field.
3750           (gb18030uni_bitmap): Remove array.
3751           (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
3752           (gb18030uni_wctomb): Likewise.
3753         * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
3754           (gb18030_wctomb): Likewise.
3756 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
3758         * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
3760 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
3762         * src/iconv.c (print_version): Now called GNU libiconv.
3764 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
3766         * README: This package is now called GNU libiconv.
3768         * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
3769           file.
3770         * tools/cjk_tab_to_h.c (output_title): Likewise.
3771         * tools/cjk_variants.c (main): Likewise.
3772         * lib/gentranslit.c (main): Likewise.
3774 2001-03-19  Bruno Haible  <haible@clisp.cons.org>
3776         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
3777           ac_config_guess and ac_config_sub. Then ignore requests for
3778           AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
3780 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
3782         * INSTALL.generic: New section "Particular Systems".
3784 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
3786         * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
3787           platforms like BeOS.
3789         * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
3790           config.h.
3792 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
3794         * Version 1.6 released.
3795         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3796           Bump version number.
3797         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
3799 2001-03-05  Bruno Haible  <haible@clisp.cons.org>
3801         Provide all encodings used by OSF/1 5.1 locales.
3802         * lib/dec_kanji.h: New file.
3803         * lib/dec_hanyu.h: New file.
3804         * lib/converters.h: Include them if USE_OSF1 is defined.
3805         * lib/encodings_osf1.def: New file.
3806         * lib/genflags.c (main): Include it. Define USE_OSF1.
3807         * lib/genaliases2.c (main): Include it conditionally.
3808         * lib/iconv.c: Define USE_OSF1 on OSF/1.
3809           Include encodings_osf1.def and aliases_osf1.h.
3810         * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
3811           aliases_osf1.h.
3812         * Makefile.devel (lib/aliases_osf1.h): New target.
3813           (all): Depend on lib/aliases_osf1.h.
3814           (lib/flags.h): Depend on lib/encodings_osf1.def.
3816 2001-03-01  Bruno Haible  <haible@clisp.cons.org>
3818         * tools/Makefile (cp775.h): New target.
3819           (ALL): Add it.
3820         * lib/cp775.h: New file.
3821         * lib/converters.h: Include it.
3822         * lib/encodings_dos.def (CP775): New encoding.
3824 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
3826         * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
3827           more.
3829 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
3831         * src/iconv.c (convert): Use ICONV_CONST.
3832         * tests/table-from.c: Include config.h.
3833           (try): Use ICONV_CONST.
3834         * tests/table-to.c: Include config.h.
3835           (main): Use ICONV_CONST.
3836         * tests/Makefile.in (INCLUDES): Add -I../lib.
3837         * tests/Makefile.os2 (INCLUDES): Likewise.
3838         * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
3840 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
3842         Provide all encodings used by DOS locales.
3843         * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
3844            cp864.h, cp865.h, cp869.h): New targets.
3845           (ALL): Add them.
3846         * lib/cp437.h: New file.
3847         * lib/cp852.h: New file.
3848         * lib/cp855.h: New file.
3849         * lib/cp857.h: New file.
3850         * lib/cp861.h: New file.
3851         * lib/cp864.h: New file.
3852         * lib/cp865.h: New file.
3853         * lib/cp869.h: New file.
3854         * lib/converters.h: Include them if USE_DOS is defined.
3855         * lib/encodings_dos.def: New file.
3856         * lib/genflags.c (main): Include it. Define USE_DOS.
3857         * lib/genaliases2.c (main): Include it conditionally.
3858         * lib/iconv.c: Define USE_DOS on DJGPP.
3859           Include encodings_dos.def and aliases_dos.h.
3860         * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
3861           aliases_dos.h.
3862         * Makefile.devel (lib/aliases_dos.h): New target.
3863           (all): Depend on lib/aliases_dos.h.
3864           (lib/flags.h): Depend on lib/encodings_dos.def.
3866 2001-02-23  Bruno Haible  <haible@clisp.cons.org>
3868         * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
3869           (SET_BINARY) [O_BINARY]: New macro.
3870           (usage): Mention --binary if available.
3871           (convert): Use SET_BINARY instead of setmode.
3872           (main): Likewise.
3873           Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
3875 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
3877         * autoconf/ltconfig:
3878           sed -e 's/reload object files/produce relocatable object files/'.
3880 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
3882         * src/iconv.c (usage, main): Make -f and -t options optional.
3883         * man/iconv.1: Mark them as optional.
3885 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
3887         * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
3888           glibc-2.2.2 table.
3889         * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
3890           0xFE5E -> U+2E97. Shift the entire four-byte range.
3891         * tests/GB18030.TXT: Regenerated.
3893 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
3895         Better support for DOS/Windows platforms.
3896         * autoconf/ltconfig: Upgrade to libtool-1.3.5.
3897         * autoconf/ltmain.sh: Likewise.
3898         * autoconf/aclocal.m4: Likewise.
3899         * autoconf/install-sh: New file.
3900         * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
3902 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
3904         * Makefile.in (libdir, includedir, mandir): Use the autoconf
3905           determined value, in order to respect the configure arguments.
3906         * lib/Makefile.in (libdir): Likewise.
3907         * src/Makefile.in (bindir): Likewise.
3908         * man/Makefile.in (mandir): Likewise.
3910 2001-02-04  Bruno Haible  <haible@clisp.cons.org>
3912         * lib/translit.def: Add all the neutral transliterations from glibc.
3913         * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
3914           UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
3915           Avoid accessing data[-1].
3916         * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
3917           into translit_data.
3919 2001-01-05  Bruno Haible  <haible@clisp.cons.org>
3921         Implement and document CP862.
3922         * tools/Makefile (ALL): Add cp862.h.
3923           (cp862.h): New target.
3924         * lib/cp862.h: New file.
3925         * lib/converters.h: Include it.
3926         * lib/encodings.def (CP862): New encoding.
3927         * README, man/iconv_open.3: Add CP862.
3928         * tests/Makefile.in (check): Check CP862.
3929         * tests/Makefile.msvc (check): Likewise.
3930         * tests/Makefile.os2 (check): Likewise.
3931         * tests/CP862.TXT: New file.
3933 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
3935         * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
3936         * Makefile.devel (OTHERMACROS): Add it.
3937         * configure.in: Call AC_MBSTATE_T.
3938         * lib/config.h.in (mbstate_t): New definition.
3939         * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
3941 2000-12-12  Bruno Haible  <haible@clisp.cons.org>
3943         * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
3944           "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
3945           given. Reported by Toshimitsu Fujiwara.
3947 2000-12-08  Bruno Haible  <haible@clisp.cons.org>
3949         * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
3950         * lib/Makefile.in (exec_prefix): Likewise.
3951         * src/Makefile.in (exec_prefix): Likewise.
3952         * man/Makefile.in (exec_prefix): Likewise.
3954 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
3956         * Version 1.5 released.
3957         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3958           Bump version number.
3959         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
3961 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
3963         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
3964           Remove files installed in lib by libcharset.
3965         * Makefile.msvc (mostlyclean): Likewise.
3967         * Makefile.in (check): Depend on target 'all'.
3968         * Makefile.os2 (check): Likewise.
3969         * Makefile.msvc (check): Depend on target 'force' as well.
3971         * src/iconv.c (usage): Take an exitcode argument.
3972           (print_version): New function.
3973           (main): Recognize --help and --version command line options.
3975 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
3977         * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
3978         * lib/Makefile.msvc: Likewise.
3979         * src/Makefile.msvc: Likewise.
3980         * tests/Makefile.msvc: Likewise.
3982 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
3984         * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
3985           (force_binary): New variable.
3986           (convert): If requested, set the input O_BINARY.
3987           (main): Accept --binary option. If requested, set the output O_BINARY.
3988         * tests/check-stateful.bat: Pass --binary to iconv.
3989         * tests/check-stateful.cmd: Likewise.
3990         * tests/check-translit.bat: Likewise.
3991         * tests/check-translit.cmd: Likewise.
3993 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
3995         * include/iconv.h.in (_libiconv_version): New declaration.
3996         * lib/iconv.c (_libiconv_version): New variable.
3998 2000-11-30  Bruno Haible  <haible@clisp.cons.org>
4000         * Makefile.msvc (all): File now named lib/libcharset.h.
4001           (clean, distclean, maintainer-clean): Likewise.
4003 2000-11-23  Bruno Haible  <haible@clisp.cons.org>
4005         * lib/*: Move here all files from src/*.
4006         * src/*: Move all files to lib.
4007         * lib/Makefile.in (distclean): No need to remove config.status,
4008           config.log, config.cache.
4009         * configure.in: Require lib/iconv.c, not src/iconv.c. Create
4010           lib/config.h, not src/config.h. Also create lib/Makefile.
4011         * Makefile.in (all): Install libcharset into lib, not src. Recurse
4012           into lib and src.
4013           (install-lib): Recurse into lib, not src.
4014           (install): Recurse into libcharset, lib and src.
4015           (installdirs, uninstall): Likewise.
4016           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4017         * Makefile.msvc (all): Recurse into lib and src.
4018           (install): Recurse into libcharset, lib and src.
4019           (installdirs, uninstall): Likewise.
4020           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4021         * Makefile.os2 (all): Recurse into lib and src.
4022           (install-lib): Recurse into lib, not src.
4023           (install, uninstall): Recurse into lib and src.
4024           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4025         * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
4026           (lib/aliases.h): Renamed from src/aliases.h.
4027           (lib/aliases.gperf): Renamed from src/aliases.gperf.
4028           (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
4029           (lib/flags.h): Renamed from src/flags.h.
4030           (lib/translit.h): Renamed from src/translit.h.
4031         * src/iconv.c: Moved here from tests/iconv.c.
4032         * src/Makefile.in: New file.
4033         * src/Makefile.msvc: New file.
4034         * src/Makefile.os2: New file.
4035         * tests/Makefile.in (iconv): Remove target.
4036           (../lib/libiconv.la): Renamed from ../src/libiconv.la.
4037           (clean): No need to remove iconv.
4038         * tests/Makefile.msvc (iconv.exe): Remove target.
4039         * tests/Makefile.os2 (iconv.exe): Likewise.
4040         * tests/check-stateful: iconv is in ../src.
4041         * tests/check-stateful.bat: Likewise.
4042         * tests/check-stateful.cmd: Likewise.
4043         * tests/check-translit: iconv is in ../src.
4044         * tests/check-translit.bat: Likewise.
4045         * tests/check-translit.cmd: Likewise.
4046         * man/iconv.1: New file.
4047         * man/Makefile.in (install, installdirs, uninstall): Also install *.1
4048           man pages.
4049         * man/Makefile.os2 (MAN3): Renamed from MAN.
4050           (MAN1): New variable.
4051           (install, uninstall): Also install *.1 man pages.
4053 2000-11-21  Bruno Haible  <haible@clisp.cons.org>
4055         * Makefile.msvc (all, check, mostlyclean, clean, distclean,
4056            maintainer-clean): Recurse into libcharset.
4057           (clean, distclean, maintainer-clean): Remove src\libcharset.h.
4058         * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
4059           (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
4061 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4063         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
4064           so that it agrees with Microsoft's definition of CP950.
4065         * tests/CP950.TXT: Likewise.
4066         * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
4068 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4070         Add support for locale dependent "char" and "wchar_t" encodings.
4071         * libcharset: New subdirectory.
4072         * src/loop_unicode.h: New file, extracted from src/iconv.c.
4073         * src/loop_wchar.h: New file.
4074         * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
4075         * src/encodings_local.def: New file.
4076         * src/genaliases.c: Also create aliases for encodings_local.def.
4077         * src/converters.h (conv_struct): Add lfuncs field.
4078         * src/genflags.c: Add dummy definitions of struct loop_funcs.
4079         * src/iconv.c: Include libcharset.h.
4080           (loop_funcs): New structure.
4081           Treat encodings_local.def like encodings.def.
4082           Include loops.h.
4083           (iconv_open): Move the bulk of the code to loop_unicode.h.
4084           (iconv): Likewise.
4085           (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
4086           descriptors.
4087         * src/Makefile.in (PLUG_SOURCES): Remove variable.
4088           (LIBCHARSET_OBJECTS): New variable.
4089           (libiconv.la): Link in the LIBCHARSET_OBJECTS.
4090           (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4091            libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
4092           LIBTOOL_LINK.
4093           (iconv.lo): Depend on encodings_local.def.
4094         * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
4095         * src/Makefile.os2 (iconv.obj): Likewise.
4096         * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
4097           Recurse into libcharset.
4098         * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
4099            HAVE_SETLOCALE): New macros.
4100         * tests/iconv.c: Include config.h and locale.h.
4101           (main): Call setlocale.
4102         * tests/Makefile.in (iconv): Search for config.h in ../src.
4103         * tests/Makefile.os2 (iconv.exe): Likewise.
4104         * tests/Makefile.msvc (iconv.exe): Likewise.
4105         * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
4106         * Makefile.in: After "cd", use "&&" not ";".
4107           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4108           Recurse into libcharset.
4109         * Makefile.devel (all): Recurse into libcharset.
4110           (src/aliases.gperf): Depend on src/encodings_local.def.
4112 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4114         * src/converters.h (ucs4_t): New type.
4115           (wchar_t): Remove locally defined override.
4116           (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
4117         * src/iconv.c (iconv): Likewise.
4118         * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
4119         * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
4120         * tools/cjk_tab_to_h.c: Likewise.
4121         * src/armscii_8.h: Use ucs4_t instead of wchar_t.
4122         * src/ascii.h: Likewise.
4123         * src/big5.h: Likewise.
4124         * src/big5hkscs.h: Likewise.
4125         * src/ces_big5.h: Likewise.
4126         * src/ces_gbk.h: Likewise.
4127         * src/cns11643.h: Likewise.
4128         * src/cns11643_1.h: Likewise.
4129         * src/cns11643_2.h: Likewise.
4130         * src/cns11643_3.h: Likewise.
4131         * src/cns11643_inv.h: Likewise.
4132         * src/cp1046.h: Likewise.
4133         * src/cp1124.h: Likewise.
4134         * src/cp1129.h: Likewise.
4135         * src/cp1133.h: Likewise.
4136         * src/cp1250.h: Likewise.
4137         * src/cp1251.h: Likewise.
4138         * src/cp1252.h: Likewise.
4139         * src/cp1253.h: Likewise.
4140         * src/cp1254.h: Likewise.
4141         * src/cp1255.h: Likewise.
4142         * src/cp1256.h: Likewise.
4143         * src/cp1257.h: Likewise.
4144         * src/cp1258.h: Likewise.
4145         * src/cp850.h: Likewise.
4146         * src/cp856.h: Likewise.
4147         * src/cp866.h: Likewise.
4148         * src/cp874.h: Likewise.
4149         * src/cp922.h: Likewise.
4150         * src/cp932.h: Likewise.
4151         * src/cp932ext.h: Likewise.
4152         * src/cp936ext.h: Likewise.
4153         * src/cp949.h: Likewise.
4154         * src/cp950.h: Likewise.
4155         * src/cp950ext.h: Likewise.
4156         * src/euc_cn.h: Likewise.
4157         * src/euc_jp.h: Likewise.
4158         * src/euc_kr.h: Likewise.
4159         * src/euc_tw.h: Likewise.
4160         * src/gb12345.h: Likewise.
4161         * src/gb12345ext.h: Likewise.
4162         * src/gb18030.h: Likewise.
4163         * src/gb18030ext.h: Likewise.
4164         * src/gb18030uni.h: Likewise.
4165         * src/gb2312.h: Likewise.
4166         * src/gbk.h: Likewise.
4167         * src/gbkext1.h: Likewise.
4168         * src/gbkext2.h: Likewise.
4169         * src/gbkext_inv.h: Likewise.
4170         * src/georgian_academy.h: Likewise.
4171         * src/georgian_ps.h: Likewise.
4172         * src/hkscs.h: Likewise.
4173         * src/hp_roman8.h: Likewise.
4174         * src/hz.h: Likewise.
4175         * src/iso2022_cn.h: Likewise.
4176         * src/iso2022_cnext.h: Likewise.
4177         * src/iso2022_jp.h: Likewise.
4178         * src/iso2022_jp1.h: Likewise.
4179         * src/iso2022_jp2.h: Likewise.
4180         * src/iso2022_kr.h: Likewise.
4181         * src/iso646_cn.h: Likewise.
4182         * src/iso646_jp.h: Likewise.
4183         * src/iso8859_1.h: Likewise.
4184         * src/iso8859_10.h: Likewise.
4185         * src/iso8859_13.h: Likewise.
4186         * src/iso8859_14.h: Likewise.
4187         * src/iso8859_15.h: Likewise.
4188         * src/iso8859_16.h: Likewise.
4189         * src/iso8859_2.h: Likewise.
4190         * src/iso8859_3.h: Likewise.
4191         * src/iso8859_4.h: Likewise.
4192         * src/iso8859_5.h: Likewise.
4193         * src/iso8859_6.h: Likewise.
4194         * src/iso8859_7.h: Likewise.
4195         * src/iso8859_8.h: Likewise.
4196         * src/iso8859_9.h: Likewise.
4197         * src/isoir165.h: Likewise.
4198         * src/isoir165ext.h: Likewise.
4199         * src/java.h: Likewise.
4200         * src/jisx0201.h: Likewise.
4201         * src/jisx0208.h: Likewise.
4202         * src/jisx0212.h: Likewise.
4203         * src/johab.h: Likewise.
4204         * src/johab_hangul.h: Likewise.
4205         * src/koi8_r.h: Likewise.
4206         * src/koi8_ru.h: Likewise.
4207         * src/koi8_u.h: Likewise.
4208         * src/ksc5601.h: Likewise.
4209         * src/mac_arabic.h: Likewise.
4210         * src/mac_centraleurope.h: Likewise.
4211         * src/mac_croatian.h: Likewise.
4212         * src/mac_cyrillic.h: Likewise.
4213         * src/mac_greek.h: Likewise.
4214         * src/mac_hebrew.h: Likewise.
4215         * src/mac_iceland.h: Likewise.
4216         * src/mac_roman.h: Likewise.
4217         * src/mac_romania.h: Likewise.
4218         * src/mac_thai.h: Likewise.
4219         * src/mac_turkish.h: Likewise.
4220         * src/mac_ukraine.h: Likewise.
4221         * src/mulelao.h: Likewise.
4222         * src/nextstep.h: Likewise.
4223         * src/sjis.h: Likewise.
4224         * src/tcvn.h: Likewise.
4225         * src/tis620.h: Likewise.
4226         * src/ucs2.h: Likewise.
4227         * src/ucs2be.h: Likewise.
4228         * src/ucs2internal.h: Likewise.
4229         * src/ucs2le.h: Likewise.
4230         * src/ucs2swapped.h: Likewise.
4231         * src/ucs4.h: Likewise.
4232         * src/ucs4be.h: Likewise.
4233         * src/ucs4internal.h: Likewise.
4234         * src/ucs4le.h: Likewise.
4235         * src/ucs4swapped.h: Likewise.
4236         * src/uhc_1.h: Likewise.
4237         * src/uhc_2.h: Likewise.
4238         * src/utf16.h: Likewise.
4239         * src/utf16be.h: Likewise.
4240         * src/utf16le.h: Likewise.
4241         * src/utf7.h: Likewise.
4242         * src/utf8.h: Likewise.
4243         * src/viscii.h: Likewise.
4245 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4247         Make transliteration optional.
4248         * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
4249           Set transliteration on if and only if tocode ends in //TRANSLIT.
4250         * README, man/iconv_open.3: Document how to enable transliteration.
4251         * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
4252         * tests/check-translit.bat: Likewise.
4253         * tests/check-translit.cmd: Likewise.
4255 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
4257         * man/iconv.3: Fix typo.
4259 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
4261         * README, man/iconv_open.3: Document JOHAB again.
4263 2000-11-15  Bruno Haible  <haible@clisp.cons.org>
4265         * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
4266           (STATIC): Change default from 0 to 1.
4267         * src/Makefile.msvc: Likewise.
4268         * tests/Makefile.msvc: Likewise.
4269         * tests/check-stateless.bat: Call 'sort' with no arguments.
4271 2000-11-12  Bruno Haible  <haible@clisp.cons.org>
4273         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
4274           version from GNU CVS.
4276 2000-10-24  Bruno Haible  <haible@clisp.cons.org>
4278         * Version 1.4 released.
4279         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4280           Bump version number.
4281         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
4283 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4285         Implement and document GB18030 and BIG5HKSCS.
4286         * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
4287           functions.
4288           (do_gb18030uni): New function.
4289           (main): Accept gb18030ext, gb18030uni, hkscs.
4290         * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
4291           (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
4292            hkscs.h): New targets.
4293         * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
4294         * src/hkscs.h, src/big5hkscs.h: New files.
4295         * src/converters.h: Include gb18030.h and big5hkscs.h.
4296         * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
4297         * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
4298         * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
4299         * tests/Makefile.msvc (check): Likewise.
4300         * tests/Makefile.os2 (check): Likewise.
4301         * tests/GB18030.TXT: New file.
4302         * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
4304 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
4306         * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
4307           UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
4308         * tests/table-to.c (main): Likewise.
4310 2000-10-22  Bruno Haible  <haible@clisp.cons.org>
4312         * src/gentranslit.c (main): Read the input in UTF-8 encoding.
4314 2000-10-09  Bruno Haible  <haible@clisp.cons.org>
4316         CPU recognition on OpenBSD.
4317         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
4318           __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
4320 2000-10-03  Bruno Haible  <haible@clisp.cons.org>
4322         * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
4323           character literals, use the numeric value instead.
4324           Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
4326 2000-09-29  Bruno Haible  <haible@clisp.cons.org>
4328         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
4329           change.
4331 2000-09-25  Bruno Haible  <haible@clisp.cons.org>
4333         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
4334           as equivalent to __i386. For OpenBSD.
4336 2000-09-21  Bruno Haible  <haible@clisp.cons.org>
4338         * src/utf16.h (utf16_wctomb): Reject single surrogates.
4339         * src/utf16be.h (utf16be_wctomb): Likewise.
4340         * src/utf16le.h (utf16le_wctomb): Likewise.
4341         * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
4342         * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
4343         * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
4344         * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
4345           Likewise.
4346         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
4347           Likewise.
4349 2000-09-15  Bruno Haible  <haible@clisp.cons.org>
4351         * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
4352         * src/Makefile.in (install, installdirs, uninstall): Likewise.
4353         * man/Makefile.in (install, installdirs, uninstall): Likewise.
4355 2000-09-11  Bruno Haible  <haible@clisp.cons.org>
4357         * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
4359 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
4361         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
4362           value, not parens.
4364 2000-07-04  Akira Hatakeyama  <akira@sra.co.jp>
4365             Bruno Haible  <haible@clisp.cons.org>
4367         * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
4368           tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
4369           tests/check-stateless.cmd, tests/check-translit.cmd: New files.
4371 2000-06-28  Bruno Haible  <haible@clisp.cons.org>
4373         * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
4374           cast.
4375         * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
4376         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
4377           sizeof(unsigned short).
4378         * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
4379           sizeof(unsigned int).
4380         Reported by François Pinard <pinard@iro.umontreal.ca>.
4382 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
4384         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
4385         Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
4387 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
4389         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
4390           host_vendor, host_os correctly if $host has more than two hyphens.
4392 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4394         * Version 1.3 released.
4395         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4396           Bump version number.
4397         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
4399 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
4401         * THANKS: New file.
4402         * INSTALL.generic: New file.
4404         Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4405         * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
4406         * src/converters.h: Include them.
4407         * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
4408         * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
4409         * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
4410           (UCS-2LE): Renamed from UCS-2-LE.
4411           (UCS-4BE): Renamed from UCS-4-BE.
4412           (UCS-4LE): Renamed from UCS-4-LE.
4413         * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
4414         * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4415         * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
4416         * tests/Makefile.msvc (check): Likewise.
4417         * tests/UCS-*snippet*: New files.
4419         Allow building as a shared library on Windows.
4420         Allow running the tests on Windows.
4421         * Makefile.devel (include/iconv.h.msvc): Remove rule.
4422           (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
4423           rules.
4424           (all): Update.
4425         * windows/dllexport.h: New file.
4426         * include/iconv.h.msvc: Remove file.
4427         * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
4428           autogenerated files.
4429         * Makefile.msvc (STATIC, DEBUG): Default to 0.
4430           (all): Choose either include\iconv.h.msvc-static or
4431           include\iconv.h.msvc-shared.
4432           (check): Depend on all.
4433           (all, check, mostlyclean, clean, distclean, maintainer-clean):
4434           Recurse into tests directory.
4435         * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
4436           (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
4437           (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
4438           (RESOURCES): New variable.
4439           (iconv.lib): Change rule when building DLL.
4440           (clean, distclean): One filename per line.
4441         * tests/Makefile.msvc: New file.
4442         * tests/check-stateful.bat, tests/check-stateless.bat,
4443           tests/check-translit.bat: New files.
4444         * tests/uniq-u.c: New file, taken from GNU textutils.
4445         * README.win32: Update.
4446         Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
4448 2000-04-14  Bruno Haible  <haible@clisp.cons.org>
4450         Fix an OSF/1 problem.
4451         * configure.in: Define GCC variable for substitution.
4452         * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
4453           gcc.
4455 2000-04-13  Bruno Haible  <haible@clisp.cons.org>
4457         Fix a SunOS 4 problem.
4458         * include/iconv.h.in: If EILSEQ is not defined by the system, define
4459           it to ENOENT, not EINVAL.
4461 2000-04-02  Bruno Haible  <haible@clisp.cons.org>
4463         Allow building on filesystems lacking symlinks and hard links.
4464         * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
4465           CL_PROG_LN_S.
4466         * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
4467         * src/Makefile.in (LN): Use autoconfigured value @LN@.
4468           (LN_S): Use autoconfigured value @LN_S@.
4470 2000-03-15  Bruno Haible  <haible@clisp.cons.org>
4472         * Version 1.2 released.
4473         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4474         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
4476 2000-03-14  Bruno Haible  <haible@clisp.cons.org>
4478         Implement and document UTF-16BE and UTF16LE.
4479         * src/utf16be.h, src/utf16le.h: New files.
4480         * src/converters.h: Include them.
4481         * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
4482         * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
4483         * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
4484         * tests/UTF-16*snippet*: New files.
4486         * src/utf16.h (utf16_wctomb): Output a byte order mark.
4488 2000-03-13  Bruno Haible  <haible@clisp.cons.org>
4490         Provide all encodings used by AIX locales.
4491         * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
4492           cp1129.h.
4493           (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
4494         * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
4495           src/cp1129.h: New files.
4496         * src/converters.h: Include them if USE_AIX is defined.
4497         * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
4498           CP1124, CP1129.
4499         * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
4500         * src/genaliases2.c: New file.
4501         * src/iconv.c: Define USE_AIX on AIX.
4502           Include encodings_aix.def and aliases_aix.h.
4503           (aliases2_lookup): New function.
4504           (iconv_open): Call aliases2_lookup.
4505         * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
4506           aliases_aix.h.
4507         * Makefile.devel (all): Add src/aliases_aix.h.
4508           (src/aliases_aix.h): New rule.
4509           (src/flags.h): Depend on src/encodings_aix.def.
4511 2000-02-24  Bruno Haible  <haible@clisp.cons.org>
4513         * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
4514           Reported by Edmund Grimley Evans <edmundo@rano.org>.
4516 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
4518         * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
4520 2000-02-15  Bruno Haible  <haible@clisp.cons.org>
4522         * src/iconv.c (iconv): Add cast in xxx_reset call.
4524 2000-02-05  Bruno Haible  <haible@clisp.cons.org>
4526         * src/tis620.h: Simplify.
4528 2000-01-27  Bruno Haible  <haible@clisp.cons.org>
4530         * Makefile.devel (CLISP_DIR): Change to "..".
4532 2000-01-24  Bruno Haible  <haible@clisp.cons.org>
4534         * Version 1.1 released.
4535         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4536         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
4538 2000-01-23  Bruno Haible  <haible@clisp.cons.org>
4540         * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
4541           '+' as "+-".
4543 2000-01-22  Bruno Haible  <haible@clisp.cons.org>
4545         * include/iconv.h.in (iconvctl): New declaration.
4546           (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
4547           New macros.
4548         * src/iconv.c (iconvctl): New function.
4550         * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
4552         Solve a build problem.
4553         * include/iconv.h.in: Renamed from include/libiconv.h.in.
4554         * Makefile.devel: libiconv.h -> iconv.h.
4555         * Makefile.in: Likewise.
4556         * configure.in: Likewise. Remove check for <iconv.h>.
4557         * src/iconv.c: Include iconv.h instead of libiconv.h.
4558         * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
4560         * README, man/iconv_open.3: Don't document JOHAB any more.
4562         * man/iconv.3: Clarify return value again.
4564 2000-01-16  Bruno Haible  <haible@clisp.cons.org>
4566         Add aliases.
4567         * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
4568           (ISO-8859-15): Add alias ISO-IR-203.
4569           (EUC-CN): Add alias CN-GB, from RFC 1922.
4570           (BIG5): Add alias CN-BIG5, from RFC 1922.
4571         * Makefile.devel (src/aliases.h): Add 8th character to key set.
4573         Drop X11 aliases.
4574         * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
4575           (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
4576           (KSC_5601): Drop KSC5601.1987-0 alias.
4578         Improve GB/T 12345 (not used yet).
4579         * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
4580         * src/gb12345ext.h: Regenerated.
4582         Improve and document CP949.
4583         * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
4584           (uhc_1.h, uhc_2.h): New rules.
4585         * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
4586           function.
4587           (output_uni2charset_sparse): Take an additional boolean argument.
4588           All callers changed.
4589           (*_uhc_1, *_uhc_2): New functions.
4590           (main): Treat uhc_1 and uhc_2.
4591         * src/uhc_1.h, src/uhc_2.h: New files.
4592         * src/cp949.h: New file, include them.
4593         * src/converters.h: Include it.
4594         * src/encodings.def (KSC_5601): Remove alias CP949.
4595           (CP949): New encoding.
4596         * README, man/iconv_open.3: Add CP949.
4597         * tests/Makefile.in (check): Check CP949.
4598         * tests/CP949.TXT: New file.
4600         Document CP932.
4601         * README, man/iconv_open.3: Add CP932.
4602         * tests/Makefile.in (check): Check CP932.
4603         * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
4605         * Makefile.devel (src/flags.h): Depend on src/converters.h.
4607         * tests/Makefile.in (check): Check JIS_X0201.
4608         * tests/JIS_X0201.TXT: New file.
4610         * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
4611         * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4613         * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
4614           (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
4616         Add ISO-IR-165 (undocumented).
4617         * tools/Makefile (all): Add isoir165ext.h.
4618           (isoir165ext.h): New rule.
4619         * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
4620         * src/isoir165.h, src/isoir165ext.h: New files.
4621         * src/converters.h: Include it.
4622         * src/encodings.def: Add ISO-IR-165.
4623         * tests/Makefile.in (check): Check ISO-IR-165.
4624         * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
4626         Add ISO646-CN (undocumented).
4627         * src/iso646_cn.h: New file.
4628         * src/converters.h: Include it.
4629         * src/encodings.def: Add ISO646-CN.
4630         * tests/Makefile.in (check): Check ISO646-CN.
4631         * tests/ISO646-CN.TXT: New file.
4633         Add ISO646-JP (undocumented).
4634         * src/iso646_jp.h: New file.
4635         * src/converters.h: Include it.
4636         * src/encodings.def: Add ISO646-JP.
4637         * tests/Makefile.in (check): Check ISO646-JP.
4638         * tests/ISO646-JP.TXT: New file.
4640 2000-01-05  Bruno Haible  <haible@clisp.cons.org>
4642         Add ISO-8859-16.
4643         * tools/Makefile (all): Add iso8859_16.h.
4644           (iso8859_16.h): New rule.
4645         * src/iso8859_16.h: New file.
4646         * src/converters.h: Include it.
4647         * src/encodings.def: Add ISO-8859-16.
4648         * README, man/iconv_open.3: Add ISO-8859-16.
4649         * tests/Makefile.in (check): Check ISO-8859-16.
4650         * tests/ISO-8859-16.TXT: New file.
4652         * man/iconv.3: Clarify what happens *inbuf in case 3.
4654         * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
4655         * tests/ISO-8859-8.TXT: Likewise.
4657 2000-01-04  Bruno Haible  <haible@clisp.cons.org>
4659         * Version 1.0 released.
4660         * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
4661         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
4662           (libiconv.la): Use LIBICONV_VERSION_INFO.
4664 2000-01-03  Bruno Haible  <haible@clisp.cons.org>
4666         * tests/Makefile.in: New file.
4667           tests/check-stateless, tests/table-from.c, tests/table-to.c,
4668           tests/*.TXT, tests/genutf8.c: New files, checks for stateless
4669           encodings.
4670           tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
4671           checks for stateful encodings.
4672         * Makefile.in (all, check, mostlyclean, clean, distclean,
4673            maintainer-clean): Descend into tests directory.
4674         * configure.in: Add tests/Makefile to AC_OUTPUT duties.
4676         * src/gentranslit.c: New file.
4677         * Makefile.devel (src/translit.h): New rule.
4678         * src/translit.def, src/translit.h: New files.
4679         * src/iconv.c: Include it.
4680           (iconv): Transliterate using translit.h table.
4682         * src/genflags.c: New file.
4683         * Makefile.devel (src/flags.h): New rule.
4684         * src/flags.h: New file.
4685         * src/iconv.c: Include it.
4686           (encoding): Add field 'oflags'.
4687           (all_encodings): Initialize the field 'oflags'.
4688           (iconv_open): Copy field 'oflags'.
4689           (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
4690         * src/Makefile.in (iconv.lo): Update dependencies.
4692         * src/converters.h: New file, extracted from src/iconv.c.
4693         * src/iconv.c: Include it.
4694         * src/Makefile.in (iconv.lo): Update dependencies.
4696         * tools/cjk_variants.c: New file.
4697         * tools/Makefile (ALL): Add cjk_variants.h.
4698           (cjk_variants.h, cjk_variants): New rules.
4699         * src/cjk_variants.h: New file.
4700         * src/iconv.c: Include it.
4701           (iconv): Use cjk_variants for transliteration.
4703         * man/iconv.3: Fix description of return value.
4704         * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
4705         * iso2022_kr.h (iso2022kr_wctomb): Likewise.
4706         * src/iconv.c (iconv): Do Hangul transliteration here and increment
4707           result once for every transliterated character.
4708         * src/johab_hangul.h (johab_hangul_decompose): Change result array
4709           from 'unsigned char*' to 'wchar_t*'.
4711         * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
4712           0xfffd.
4714         * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
4716         * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
4717           Katakana.
4719         * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
4721         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
4722           0xC6A1..0xC7FE.
4724         * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
4725           not being excluded. Fix that.
4726         * src/ksc5601.h: Regenerated.
4727         * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
4728           valid in KSC5601/KSX1001 but not in JOHAB.
4730         * src/iconv.c (conv_struct): Add fields iindex, oindex.
4731           (iconv_open): Fill in iindex, oindex.
4733         * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
4734           "csUnicode11", from IANA charset list.
4735           (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
4736           from IANA charset list.
4737           (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
4738           from IANA charset list.
4739           (GB_2312-80): New encoding, from IANA charset list.
4741         * README, man/iconv_open.3: Add MacIceland and MacUkraine.
4743         * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
4744           (all): Depend on src/aliases.h.
4745         * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
4746           $(srcdir)/aliases.gperf.
4747           (clean): Clean up.
4749         * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
4751 1999-12-31  Bruno Haible  <haible@clisp.cons.org>
4753         * Version 0.3 released.