Update DEPENDENCIES.
[libiconv.git] / ChangeLog
blob6f5f82ea1e87c4ae3b7d2e207714e9e2707130e2
1 2021-02-28  Bruno Haible  <bruno@clisp.org>
3         Update DEPENDENCIES.
4         * DEPENDENCIES: List the normal dependencies of a package with an
5         Autoconf-generated configure file.
7 2021-02-07  Bruno Haible  <bruno@clisp.org>
9         Support creating shared libraries on MidnightBSD.
10         Patch from <https://savannah.gnu.org/patch/?10007>.
11         * m4/libtool.m4: Treat MidnightBSD like FreeBSD.
12         * build-aux/ltmain.sh: Likewise.
14 2021-01-31  Bruno Haible  <bruno@clisp.org>
16         Update after gnulib changed on 2020-08-26.
17         * configure.ac: Test $iconv_arg1, not $am_cv_proto_iconv_arg1.
19 2021-01-31  Bruno Haible  <bruno@clisp.org>
21         Switch to autoconf 2.71.
22         * autogen.sh: Update comment.
23         * configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING. Invoke
24         AC_C_BIGENDIAN instead of CL_WORDS_LITTLEENDIAN.
25         * m4/eilseq.m4: Require Autoconf >= 2.61.
26         (AC_EILSEQ): Improve quoting. Use AC_COMPUTE_INT instead of
27         _AC_COMPUTE_INT.
28         * m4/endian.m4: Remove file.
29         * Makefile.in (SOURCE_FILES): Remove it.
31 2020-12-08  Bruno Haible  <bruno@clisp.org>
33         Switch to autoconf 2.70.
34         * Makefile.devel (AUTOCONF, AUTOHEADER): Remove '-2.69' suffix.
35         * HACKING: Remove sentence about symbolic links.
36         * autogen.sh: Update comment.
38 2020-08-31  Bruno Haible  <bruno@clisp.org>
40         Fix some -Wcast-qual warning, reported by clang.
41         * lib/iconv.c (compare_by_name): Add more 'const'.
42         (iconv_canonicalize): Cast value to 'unsigned char', not pointer to 'unsigned char *'.
43         * lib/iconv_open1.h: Likewise.
45 2020-08-30  Bruno Haible  <bruno@clisp.org>
47         Make sure that build-aux/compile is in the tarball.
48         * autogen.sh: Fetch also 'build-aux/compile' through gnulib-tool.
49         * Makefile.devel (srclib/Makefile.in): Don't fetch nor delete
50         'build-aux/compile'.
51         * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/compile.
52         (IMPORTED_FILES): Add build-aux/compile.
54 2020-08-29  Bruno Haible  <bruno@clisp.org>
56         Update after gnulib changed.
57         * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.64.
59 2020-08-06  Bruno Haible  <bruno@clisp.org>
61         Avoid a GCC warning with GCC >= 7.
62         Reported by Reini Urban <rurban@cpan.org>
63         in <https://savannah.gnu.org/bugs/?58903>.
64         * lib/gentranslit.c (main): Reset i to 0 each time p gets a new value.
65         Add assertion about i's possible values.
67 2020-04-05  Bruno Haible  <bruno@clisp.org>
69         Fix an autogen.sh failure (regression from 2016-12-04).
70         Reported by Petr Ovtchenkov <ptr@void-ptr.info> in
71         <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2020-04/msg00003.html>.
72         * autogen.sh: Invoke also the Makefile target srclib/Makefile.in, so as
73         to get build-aux/install-sh. Finish the "copy files" phase before recursing
74         through the subpackages tree through Makefile.devel.
75         * Makefile.devel: Reorder targets.
77 2020-04-04  Bruno Haible  <bruno@clisp.org>
79         Don't use LGPLv3.
80         * gnulib-local/modules/mbstate (License): Set to LGPLv2+.
82 2020-04-04  Bruno Haible  <bruno@clisp.org>
84         Change the license of the library from LGPL 2.0 to LGPL 2.1.
85         * COPYING.LIB: Upgrade to LGPL 2.1.
87 2019-12-23  Bruno Haible  <bruno@clisp.org>
89         Do export the symbol 'locale_charset' (needed by GNU bash).
90         * lib/Makefile.in (DEFS): Define also BUILDING_LIBCHARSET.
92 2019-09-01  Bruno Haible  <bruno@clisp.org>
94         build: Add support for shallow-cloning of subdirectories.
95         * gitsub.sh (func_usage): Document allowed git options with 'git pull'.
96         (func_pull): Accept GIT_OPTIONS argument.
97         (pull): Parse git options before complaining about too many arguments.
98         Pass the git options to func_pull.
100 2019-07-05  Bruno Haible  <bruno@clisp.org>
102         Don't export the symbol 'aliases_lookup' on non-ELF platforms.
103         * Makefile.devel (lib/aliases.h, lib/aliases_sysaix.h,
104         lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h):
105         Add a 'static' keyword in front of the declaration of aliases_lookup.
107 2019-07-02  Bruno Haible  <bruno@clisp.org>
109         Update to current gnulib.
110         * Makefile.devel (GNULIB_MODULES): Add lib-symbol-visibility.
111         (srclib/Makefile.gnulib): Copy codeset.m4.
112         * srclib/Makefile.am (AM_CFLAGS): Initialize.
114 2019-07-02  Bruno Haible  <bruno@clisp.org>
116         Drop unused macro gl_GLIBC21.
117         * autogen.sh: Don't copy glibc21.m4.
119 2019-05-22  Bruno Haible  <bruno@clisp.org>
121         Fix comment.
122         Reported by Paul Hardy <unifoundry@gmail.com>.
123         * lib/jisx0213.h: Fix comment about the underlying standard version.
125 2019-05-11  Bruno Haible  <bruno@clisp.org>
127         Update bug reporting instructions.
128         * README: Tell users to report bugs in the bug tracker or by email.
129         * src/iconv.c (usage): Likewise.
130         (print_version): Move URL out of translatable string.
132 2019-04-26  Bruno Haible  <bruno@clisp.org>
134         Update translations.
135         $ rsync -Lrtvz translationproject.org::tp/latest/libiconv/ po/new
136         $ cd po/new
137         $ for f in *.po; do \
138             msgmerge --update --lang=${f%.po} --previous $f ../libiconv.pot; \
139           done
140         $ mv *.po ../
141         $ cd ..; rm -rf new
143 2019-04-26  Bruno Haible  <bruno@clisp.org>
145         Update POT file.
146         $ cd po; make update-po
148 2019-04-26  Bruno Haible  <bruno@clisp.org>
150         Prepare for version 1.16.
151         * configure.ac: Bump version number to 1.15.
152         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
153         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:1:6.
154         * src/iconv.c (print_version): Update copyright year.
155         * windows/iconv.rc: Likewise.
156         * windows/libiconv.rc: Likewise.
157         * README: Update download link.
159 2019-04-26  Bruno Haible  <bruno@clisp.org>
161         Tweak exported symbols when --enable-relocatable is used.
162         * lib/Makefile.in (DEFS): Map 'relocate2' to a different symbol.
164 2019-04-01  Bruno Haible  <bruno@clisp.org>
166         build: Separate git operations from build operations.
167         * gitsub.sh: New file, from gnulib.
168         * .gitmodules: New file.
169         * autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
170         environment variable. Ignore the GNULIB_TOOL environment variable.
171         * HACKING: Explain when to use gitsub.sh.
173 2019-03-07  Bruno Haible  <bruno@clisp.org>
175         Avoid signed integer overflow during shifts.
176         Reported by Jeffrey Walton <noloader@gmail.com>.
177         * lib/tcvn.h (tcvn_wctomb): Use unsigned integer type for bit mask
178         operation.
179         * lib/viscii.h (viscii_wctomb): Likewise.
181 2019-03-04  Bruno Haible  <bruno@clisp.org>
183         Add support for --enable-relocatable to libcharset.
184         * autogen.sh: Copy some more files to libcharset/build-aux/ and
185         libcharset/m4/.
187 2019-03-04  Bruno Haible  <bruno@clisp.org>
189         Update --enable-relocatable support after gnulib changed.
190         * configure.ac: Move the LT_INIT invocation before the gl_RELOCATABLE
191         invocation. Remove unused argument to gl_RELOCATABLE.
193 2019-01-27  Bruno Haible  <bruno@clisp.org>
195         Accommodate a shell that is not in /bin/sh.
196         * Makefile.in (SHELL): Use the value found by configure.
197         * lib/Makefile.in (SHELL): Likewise.
198         * man/Makefile.in (SHELL): Likewise.
199         * src/Makefile.in (SHELL): Likewise.
200         * tests/Makefile.in (SHELL): Likewise.
201         (check, check-extra-yes): Use SHELL to run the check-* scripts.
203 2019-01-27  Bruno Haible  <bruno@clisp.org>
205         Update after gnulib changed.
206         * Makefile.in (GNULIB_IMPORTED_FILES): Remove build-aux/snippet/*.
208 2019-01-27  Bruno Haible  <bruno@clisp.org>
210         Update support for building with MSVC. Automake does not install ar-lib.
211         * autogen.sh: Fetch build-aux/ar-lib here.
212         * Makefile.devel (srclib/Makefile.in): Don't fetch build-aux/ar-lib
213         here.
214         * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/ar-lib.
215         (IMPORTED_FILES): Add build-aux/ar-lib.
217 2019-01-06  Bruno Haible  <bruno@clisp.org>
219         Revisit handling of file descriptors closed by the parent process.
220         * src/iconv.c (main): Add comment.
222 2018-10-23  Bruno Haible  <bruno@clisp.org>
224         Remove outdated DJGPP build infrastructure.
225         Approved by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
226         * djgpp: Remove directory.
227         * INSTALL.djgpp: Remove file.
228         * Makefile.in (SOURCE_FILES): Remove them.
230 2018-10-23  Bruno Haible  <bruno@clisp.org>
232         Update after gnulib changed.
233         * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.63.
235 2018-09-22  Bruno Haible  <bruno@clisp.org>
237         Avoid some warnings in MSVC build.
238         * include/export.h: Handle MSVC compiler as well.
240 2018-09-22  Bruno Haible  <bruno@clisp.org>
242         Update from gnulib. Move mapping tables into the code.
243         * autogen.sh: Don't create libcharset/m4/relocatable-lib.m4.
244         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean): Don't
245         remove lib/charset.alias.
246         * tests/check-subst: Don't set CHARSETALIASDIR.
248 2018-05-04  Bruno Haible  <bruno@clisp.org>
250         Drop special instructions for OSF/1.
251         * INSTALL.generic: Remove the recommendation for OSF/1.
253 2018-05-04  Bruno Haible  <bruno@clisp.org>
255         Simplify: Remove the ability to install a preloadable library.
256         * preload/*: Remove directory.
257         * Makefile.devel: Don't recurse into 'preload'.
258         * Makefile.in: Likewise.
259         * configure.ac: Don't declare 'preload' as a subdirectory.
260         * README, NEWS: Update.
262 2018-05-04  Bruno Haible  <bruno@clisp.org>
264         Simplify code. Drop support for Borland C++ on Windows.
265         * lib/iconv.c: Simplify 'defined _WIN32 || defined __WIN32__' to just
266         'defined _WIN32'.
267         * lib/iconv_open1.h: Likewise.
269 2018-05-04  Bruno Haible  <bruno@clisp.org>
271         * lib/relocatable.c: Update from gnulib.
273 2018-05-04  Bruno Haible  <bruno@clisp.org>
275         Switch to automake 1.16.
276         * autogen.sh: Update comment.
277         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.16.
278         * libcharset/Makefile.devel (ACLOCAL): Likewise.
279         * preload/Makefile.devel (ACLOCAL): Likewise.
281 2018-03-27  Bruno Haible  <bruno@clisp.org>
283         Doc tweaks.
284         * README: Don't recommend to use --prefix=/usr/local, as it produces
285         problems with GCC (since GCC's treatment of /usr/local/include and
286         /usr/local/lib is inconsistent by default). Don't recommend to use
287         the iconv.m4 installed by GNU gettext, because it won't work when
288         GNU automake and GNU gettext are installed with different --prefix
289         options; instead recommend the 'iconv' module from gnulib.
291 2018-01-27  Bruno Haible  <bruno@clisp.org>
293         Rename some files.
294         * INSTALL.windows: Renamed from README.windows.
295         * INSTALL.djgpp: Renamed from README.djgpp.
296         * Makefile.in (SOURCE_FILES): Update.
298 2018-01-03  Bruno Haible  <bruno@clisp.org>
300         Fix installation in 64-bit mode on AIX.
301         * lib/Makefile.in (AR): New variable.
302         (install): Use it instead of hardcoding 'ar'.
304 2017-11-26  Bruno Haible  <bruno@clisp.org>
306         Avoid end-of-lines problem in generated shell scripts on Cygwin.
307         Patch by Feiyun Wang <feiyunw@yahoo.com>.
308         * lib/genaliases.c (main): Create canonical.sh and canonical_local.sh
309         with Unix end-of-line characters, regardless of Cygwin choice of
310         text mode vs. binary mode.
312 2017-07-15  Bruno Haible  <bruno@clisp.org>
314         Allow building statically linked binaries, through LDFLAGS="-static".
315         Apply patch from
316         <https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
317         * build-aux/ltmain.sh (func_mode_help, func_mode_link): In the link
318         mode, accept option '-static-uninstalled-libs' in place of '-static',
319         and make '-static' an equivalent of '-all-static'.
321 2017-07-15  Bruno Haible  <bruno@clisp.org>
323         Don't attempt to build preloadable_libiconv.so when linking statically.
324         * preload/configure.ac (enable_shared, enable_static): Don't force
325         shared libraries when LDFLAGS indicates static linking.
326         (PLUGLIB): Set to empty when is not configured for building shared
327         libraries.
329 2017-07-15  Bruno Haible  <bruno@clisp.org>
331         Get rid of autom4te.cache directories, as far as possible.
332         * Makefile.devel (srclib/Makefile.in, aclocal.m4, configure,
333         config.h.in): Remove autom4te.cache after invoking aclocal, autoconf,
334         autoheader, automake.
335         * preload/Makefile.devel (aclocal, configure): Likewise.
337 2017-05-18  Bruno Haible  <bruno@clisp.org>
339         * lib/relocatable.h: Update from gnulib.
340         * lib/relocatable.c: Update from gnulib.
342 2017-01-30  Bruno Haible  <bruno@clisp.org>
344         Prepare for version 1.15.
345         * src/iconv.c (print_version): Update copyright year.
346         * windows/iconv.rc: Likewise.
347         * windows/libiconv.rc: Likewise.
349 2016-12-29  Bruno Haible  <bruno@clisp.org>
351         Make Makefile.devel consistent with .gitignore.
352         * Makefile.devel (srclib/Makefile.in): Depend on aclocal.m4.
353         (totally-clean): Remove also aclocal.m4.
355 2016-12-25  Bruno Haible  <bruno@clisp.org>
357         Tweak autogen.sh.
358         * autogen.sh: Emit a "done" diagnostic when autogen.sh completed
359         successfully.
361 2016-12-25  Bruno Haible  <bruno@clisp.org>
363         Reorder Makefile.devel.
364         * Makefile.devel: Reorder: put gnulib targets before autotools targets.
366 2016-12-14  Bruno Haible  <bruno@clisp.org>
368         Cleanup useless removals.
369         * lib/Makefile.in (distclean): No need to remove 'libtool'.
371 2016-12-04  Bruno Haible  <bruno@clisp.org>
373         Update comments.
374         * Makefile.devel: Update comments about release process.
376 2016-12-04  Bruno Haible  <bruno@clisp.org>
378         Create tarballs through an Automake-like "make dist" command.
379         * Makefile.in (SOURCE_FILES, LIBTOOL_IMPORTED_FILES,
380         AUTOMAKE_OLD_IMPORTED_FILES, AUTOMAKE_IMPORTED_FILES, IMPORTED_FILES,
381         GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
382         (distdir): New target.
383         (PACKAGE, VERSION, TAR, GZIP): New macros.
384         (dist): New target.
385         * lib/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
386         DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
387         (distdir): New target.
388         * man/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
389         DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
390         (distdir): New target.
391         * preload/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
392         DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
393         (distdir): New target.
394         * src/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
395         DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
396         (distdir): New target.
397         * tests/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
398         DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
399         (distdir): New target.
401 2016-12-04  Bruno Haible  <bruno@clisp.org>
403         Remove duplicates of imported files from version control.
404         * autogen.sh: Copy imported files to libcharset.
406 2016-12-04  Bruno Haible  <bruno@clisp.org>
408         Always use the newest released copies of files brought in from Automake.
409         * Makefile.devel (srclib/Makefile.in): Make sure to get new versions of
410         files brought in by automake.
411         * build-aux/install-sh: Remove from version control.
412         * build-aux/missing: Likewise.
414 2016-12-04  Bruno Haible  <bruno@clisp.org>
416         Always use the newest copies of config.guess, config.sub.
417         * Makefile.devel (gnulib-imported-files): New target.
418         * autogen.sh: Invoke it.
419         * build-aux/config.guess: Remove from version control.
420         * build-aux/config.sub: Likewise.
422 2016-12-04  Bruno Haible  <bruno@clisp.org>
424         Always use the newest copy of fcntl-o.m4.
425         * m4/fcntl-o.m4: Remove file. Rely on srcm4/fcntl-o.m4 instead.
427 2016-12-04  Bruno Haible  <bruno@clisp.org>
429         Remove obsolete documentation.
430         * PORTS: Remove file.
432 2016-12-03  Bruno Haible  <bruno@clisp.org>
434         Make Makefile.devel more useful for the users of the released tarball.
435         * Makefile.devel (srclib/Makefile.gnulib): Don't force this target.
436         (gnulib-clean): New target.
437         (totally-clean): New target. Do the removals from autogen.sh. Also,
438         remove lib/aliases*.gperf, lib/canonical*.h, man/iconvctl.3.html,
439         man/iconv_open_into.3.html.
440         * autogen.sh: Invoke target gnulib-clean before srclib/Makefile.gnulib.
441         Invoke target totally-clean before all.
442         * preload/Makefile.devel (totally-clean): New target.
444 2016-12-03  Bruno Haible  <bruno@clisp.org>
446         Modernize configure.ac.
447         * configure.ac: Use 2-argument AC_INIT. Avoid an AM_INIT_AUTOMAKE
448         warning.
449         * preload/configure.ac: Use 2-argument AC_INIT. Use AC_CONFIG_SRCDIR.
451 2016-12-03  Bruno Haible  <bruno@clisp.org>
453         Towards reproducible builds.
454         * Makefile.devel (man/%.html): Remove the CreationDate comment line
455         from the output.
457 2016-12-04  Bruno Haible  <bruno@clisp.org>
459         Update to gettext-0.19.8.1.
460         * ABOUT-NLS: Update through 'gettextize'.
462 2016-12-03  Bruno Haible  <bruno@clisp.org>
464         Update documentation.
465         * HACKING: Refer to the Git repository.
467 2016-12-03  Bruno Haible  <bruno@clisp.org>
469         Avoid compilation warnings in 'genflags' program.
470         * lib/genflags.c: Avoid warnings from GCC's -Wunused-function option.
472 2016-12-02  Bruno Haible  <bruno@clisp.org>
474         * relocatable.c: Update from gnulib.
476 2016-11-25  Bruno Haible  <bruno@clisp.org>
478         Prepare for version 1.15.
479         * configure.ac: Bump version number to 1.15.
480         * README: Likewise.
481         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
482         * windows/iconv.rc: Update.
483         * windows/libiconv.rc: Update.
484         * Makefile.devel: Update comments.
485         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:0:6.
486         * src/iconv.c (print_version): Update copyright year.
488 2016-11-23  Bruno Haible  <bruno@clisp.org>
490         Update installation instructions for Windows.
491         * README.windows: Assume a 64-bit Windows. Explain both 32-bit and
492         64-bit builds. Add instructions for the MS Visual C/C++ tool chain.
493         Revamp instructions for Cygwin.
495 2016-11-23  Bruno Haible  <bruno@clisp.org>
497         Drop the nickname "woe32".
498         * README.windows: Renamed from README.woe32.
500 2016-11-22  Bruno Haible  <bruno@clisp.org>
502         Update support for building with MSVC.
503         * Makefile.devel (srclib/Makefile.in): Import 'ar-lib' and 'compile'
504         from gnulib.
505         * lib/Makefile.in (install-lib, install): Install the .la file with
506         $(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets
507         installed without execution permissions, and programs linked to it fail:
508         in a Cygwin shell with exit code 127, or from a cmd.exe window with a
509         dialog "The application was unable to start correctly (0xc0000022)."
511 2016-11-19  Bruno Haible  <bruno@clisp.org>
513         Fix link error when compiling with gcc -O0.
514         * lib/iconv.c (aliases2_lookup): Make static.
515         Reported by Chung-Lin Tang <chunglin.tang@gmail.com>
516         at https://savannah.gnu.org/bugs/?47953 .
518 2016-11-17  Bruno Haible  <bruno@clisp.org>
520         UTF-8: Reject surrogates and out-of-range code points.
521         * lib/utf8.h (utf8_mbtowc, utf8_wctomb): Reject code points in the
522         range 0xD800..0xDFFF and >= 0x110000.
523         * tests/genutf8.c (main): Don't emit mappings for 0xD800..0xDFFF.
525 2016-10-22  Bruno Haible  <bruno@clisp.org>
527         Switch to libtool 2.4.6.
528         * m4/libtool.m4: Update from libtool-2.4.6, with modifications:
529         2008-04-06  Bruno Haible  <bruno@clisp.org>
530                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
531                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
532                 to ${CONFIG_SHELL}..
533         * m4/ltoptions.m4: Likewise.
534         * m4/ltversion.m4: Likewise.
535         * build-aux/ltmain.sh: Likewise.
537 2016-10-14  Bruno Haible  <bruno@clisp.org>
539         Use 'size_t', not 'int', for the length of a string.
540         * lib/iconv.c: Include <limits.h>.
541         * lib/genflags.c: Likewise.
542         * lib/converters.h (struct mbtowc_funcs, struct wctomb_funcs): Change
543         'int n' parameter to 'size_t n'.
544         (RET_COUNT_MAX): New macro.
545         * lib/*.h: Use 'size_t n' instead of 'int n'.
546         * lib/ucs2.h (ucs2_mbtowc): Make sure 'count' does not cause an 'int'
547         overflow.
548         * lib/ucs4.h (ucs4_mbtowc): Likewise.
549         * lib/utf16.h (utf16_mbtowc): Likewise.
550         * lib/utf32.h (utf32_mbtowc): Likewise.
551         * tools/8bit_tab_to_h.c: Generate function signatures with 'size_t n'.
552         * tools/cjk_tab_to_h.c: Likewise.
553         * NEWS: Mention the change.
555 2016-10-04  Bruno Haible  <bruno@clisp.org>
557         Extend CP1255 mapping.
558         * lib/cp1255.h (cp1255_2uni, cp1255_page05): Map 0xCA to U+05BA.
559         * tests/CP1255.TXT: Likewise.
560         This matches https://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1255.txt
561         and what the native Windows converter does since at least Windows XP.
563 2016-10-01  Ben Noordhuis  <info@bnoordhuis.nl>  (tiny change)
564             Bruno Haible  <bruno@clisp.org>
566         Remove large stack requirement from gentranslit.
567         * lib/gentranslit.c (main): Heap-allocate large arrays.
568         * Makefile.devel (lib/translit.h): Remove 'ulimit -s unlimited' command.
570 2015-12-10  Ben Noordhuis  <info@bnoordhuis.nl>  (tiny change)
572         Remove unused array from gentranslit.
573         * lib/gentranslit.c (main): Remove unused array.
574         * Makefile.devel (CC): Add -Wall option.
575         Reported in https://savannah.gnu.org/bugs/?46663 .
577 2016-10-01  Bruno Haible  <bruno@clisp.org>
579         Fix bug #41187.
580         * src/iconv.c (main): Increment i after parsing the --silent option.
581         Reported in https://savannah.gnu.org/bugs/?41187 .
583 2016-10-01  Bruno Haible  <bruno@clisp.org>
585         Update to current gnulib.
586         * Makefile.devel (GNULIB_MODULES): Remove memmove.
587         * tests/Makefile.in (INCLUDES): Make sure to include the top-level
588         "config.h". Needed for the 'binary-io' module.
590 2016-10-01  Bruno Haible  <bruno@clisp.org>
592         Switch to automake 1.15.
593         * autogen.sh: Update comment.
594         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
595         (srclib/Makefile.in): Don't remove auxiliary files brought in by
596         automake.
597         * preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
598         * srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
599         * build-aux/missing: Update from automake-1.15.
601 2016-10-01  Bruno Haible  <bruno@clisp.org>
603         Remove autogenerated doc files from version control.
604         * man/iconvctl.3.html: Remove file.
605         * man/iconv_open_into.3.html: Remove file.
607 2012-12-06  Bruno Haible  <bruno@clisp.org>
609         Change copyright holder of man pages.
610         * man/*.[13]: Replace myself with FSF.
612 2012-06-30  Bruno Haible  <bruno@clisp.org>
614         Make it possible to run 'genaliases2' on native Windows.
615         * lib/genaliases2.c (main): Expect 3 arguments. Open the output files
616         explicitly. Complain if they don't exist.
617         * Makefile.devel (lib/aliases_*.h): Pass the output filenames as
618         arguments to genaliases.
619         Reported at <https://savannah.gnu.org/bugs/?36748>.
621         Make it possible to run 'genaliases' on native Windows.
622         * lib/genaliases.c (main): Expect 3 arguments. Open the output files
623         explicitly. Complain if they don't exist. Improve error checking.
624         * Makefile.devel (lib/aliases*.h): Pass the output filenames as
625         arguments to genaliases.
626         Reported at <https://savannah.gnu.org/bugs/?36748>.
628 2012-05-13  Bruno Haible  <bruno@clisp.org>
630         Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
631         * lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
632         from U+E7C7 to 0xA8BC.
633         * lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
634         case.
635         (gb18030uni_wctomb): Treat U+E7C7 as a special case.
636         * tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
637         * tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
638         0x8135F437 and U+E7C7.
640 2012-04-28  Bruno Haible  <bruno@clisp.org>
642         Switch to autoconf 2.69 and automake 1.12.
643         * autogen.sh: Update comment.
644         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
645         (AUTOMAKE, ACLOCAL): Switch to version 1.12.
646         * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
647         (ACLOCAL): Switch to version 1.12.
649 2012-03-24  Bruno Haible  <bruno@clisp.org>
651         Avoid a GCC warning.
652         * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
654 2012-01-26  Bruno Haible  <bruno@clisp.org>
656         Modernize quoting.
657         * README: Quote 'like this', not `like this', as per the recent change
658         to the GNU coding standards.
659         * NOTES: Likewise.
660         * gnulib-local/lib/xmalloc.c: Likewise.
661         * lib/config.h.in: Likewise.
662         * src/iconv.c (usage): Likewise.
663         * tests/uniq-u.c: Likewise.
664         * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
665         Likewise.
666         * lib/big5.h: Update accordingly.
667         * lib/cns11643_inv.h: Likewise.
668         * lib/cp932ext.h: Likewise.
669         * lib/cp950ext.h: Likewise.
670         * lib/gb12345ext.h: Likewise.
671         * lib/gb2312.h: Likewise.
672         * lib/gbkext_inv.h: Likewise.
673         * lib/hkscs1999.h: Likewise.
674         * lib/hkscs2001.h: Likewise.
675         * lib/hkscs2004.h: Likewise.
676         * lib/hkscs2008.h: Likewise.
677         * lib/isoir165ext.h: Likewise.
678         * lib/jisx0208.h: Likewise.
679         * lib/jisx0212.h: Likewise.
680         * lib/jisx0213.h: Likewise.
681         * lib/ksc5601.h: Likewise.
682         * lib/uhc_1.h: Likewise.
683         * lib/uhc_2.h: Likewise.
685 2012-01-15  Bruno Haible  <bruno@clisp.org>
687         Support for MSVC 9.
688         * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
689         config.h.in.
690         * tests/genutf8.c: Include config.h.
691         * tests/gengb18030z.c: Likewise.
692         * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
694 2011-01-28  Bruno Haible  <bruno@clisp.org>
696         Add a comment.
697         * woe32dll/export.h: Add a reference to the woe32dll writeup.
699 2012-01-06  Bruno Haible  <bruno@clisp.org>
701         Update after gnulib changed.
702         * gnulib-local/lib/error.h.diff: Update.
704 2012-01-06  Bruno Haible  <bruno@clisp.org>
706         Talk about "native Windows API", not "Woe32".
707         * lib/relocatable.c: Update comments to mention native Windows.
709 2012-01-04  Bruno Haible  <bruno@clisp.org>
711         Talk about "native Windows API", not "Win32".
712         * lib/relocatable.c: Update comments to mention native Windows.
713         (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
715 2011-10-27  Bruno Haible  <bruno@clisp.org>
717         Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
718         * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
719         * lib/ucs4.h (ucs4_mbtowc): Likewise.
720         * lib/utf32.h (utf32_mbtowc): Likewise.
721         Reported at <https://savannah.gnu.org/bugs/?34916>.
723 2012-06-30  Bruno Haible  <bruno@clisp.org>
725         Improve ISO-2022-CP-MS versus CP932.
726         * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
727         the rows 0x79..0x7C as rows from CP932.
728         * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
729         tests/ISO-2022-JP-MS-snippet.
730         * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
731         to ESC $ B 0x79..0x7C.
732         * tests/ISO-2022-JP-MS-snippet: Likewise.
733         * tests/check-stateful: Also test the *-snippet.alt file if it exists.
734         * tests/check-stateful.bat: Likewise.
736 2012-06-30  Bruno Haible  <bruno@clisp.org>
738         Improve ISO-2022-CP-MS versus CP932.
739         * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
740         U+301E.
741         * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
742         0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
743         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
745 2011-10-23  Bruno Haible  <bruno@clisp.org>
747         New encoding ISO-2022-CP-MS.
748         * NOTES: Mention ISO-2022-JP-MS.
749         * tools/CP50221-0208-EXT.TXT: New file.
750         * tools/CP50221-0212-EXT.TXT: New file.
751         * tools/8bit_tab_to_h.c: Add comments about how to generate
752         cp50221_0208_ext.h, cp50221_0212_ext.h.
753         * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
754         cp50221_0212_ext.h.
755         * lib/cp50221_0208_ext.h: New file, mostly generated.
756         * lib/cp50221_0212_ext.h: New file, mostly generated.
757         * lib/iso2022_jpms.h: New file.
758         * lib/converters.h: Include it.
759         * lib/encodings.def: Add ISO-2022-JP-MS.
760         * README, man/iconv_open.3: Add ISO-2022-JP-MS.
761         * tests/ISO-2022-JP-MS-snippet: New file.
762         * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
763         * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
764         Reported by Jeff Diehl <diehl.jeff@gmail.com>.
766 2011-10-23  Bruno Haible  <bruno@clisp.org>
768         * lib/encodings.def: Add comments about Windows names of encodings.
770 2011-10-18  Bruno Haible  <bruno@clisp.org>
772         * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
773         2008-04-06  Bruno Haible  <bruno@clisp.org>
774                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
775                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
776                 to ${CONFIG_SHELL}..
777         * m4/ltoptions.m4: Likewise.
778         * m4/ltversion.m4: Likewise.
779         * build-aux/ltmain.sh: Likewise.
781 2011-10-03  Bruno Haible  <bruno@clisp.org>
783         * lib/relocatable.c: Update from gnulib.
785 2011-09-02  Bruno Haible  <bruno@clisp.org>
787         Fix "make check" failure when $(srcdir) != $(builddir).
788         * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
789         GB18030.IRREVERSIBLE.TXT into the build directory.
790         Reported by Christian Weisgerber <naddy@mips.inka.de>.
792 2011-08-07  Bruno Haible  <bruno@clisp.org>
794         Ensure all HTML-formatted man pages are up-to-date.
795         * Makefile.devel (all): Depend on man/iconvctl.3.html and
796         man/iconv_open_into.3.html.
798 2011-08-07  Bruno Haible  <bruno@clisp.org>
800         * Version 1.14 released.
802 2011-08-07  Bruno Haible  <bruno@clisp.org>
804         * configure.ac: Bump version number to 1.14.
805         * README: Likewise.
806         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
807         * windows/iconv.rc: Update.
808         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
809         * src/iconv.c (print_version): Update copyright year.
811 2011-08-07  Bruno Haible  <bruno@clisp.org>
813         Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
814         * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
815         is not supported.
817 2011-08-07  Bruno Haible  <bruno@clisp.org>
819         * tests/check-subst: Add comments about OSF/1.
821 2011-08-07  Bruno Haible  <bruno@clisp.org>
823         * lib/relocatable.c: Update from gnulib.
825 2011-08-06  Bruno Haible  <bruno@clisp.org>
827         Upgrade the GB18030 converter to the version from 2005.
828         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
829         'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
830         0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
831         (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
832         for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
833         (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
834         (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
835         U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
836         * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
837         0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
838         0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
839         to now-assigned Unicode codepoints.
840         * tests/GB18030.IRREVERSIBLE.TXT: New file.
842 2011-08-06  Bruno Haible  <bruno@clisp.org>
844         Fix conversion bug in CP1258 converter.
845         * lib/vietcomb.h (viet_comp_table_data): Remove entry for
846         U+00A5 U+0301. Fix entry for U+00A8 U+0301.
847         (viet_decomp_table): Fix entry for U+0385.
848         * tests/CP1258.IRREVERSIBLE.TXT: Update.
849         Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
851 2011-07-03  Bruno Haible  <bruno@clisp.org>
853         Improve interactive behaviour of iconv program.
854         * src/iconv.c (convert): Flush the output before starting a possibly
855         blocking safe_read call.
857 2011-07-03  Bruno Haible  <bruno@clisp.org>
859         Fix interactive behaviour of iconv program.
860         * Makefile.devel (GNULIB_MODULES): Add safe-read.
861         * src/iconv.c: Include safe-read.h.
862         (convert): Take the infile as a file descriptor, not as a FILE stream.
863         Use safe_read() instead of fread().
864         (main): Update.
865         Reported by Xavier Pucel <xpucel@hotmail.com>.
867 2011-05-02  Bruno Haible  <bruno@clisp.org>
869         Update after gnulib changed.
870         * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
872 2011-06-02  Bruno Haible  <bruno@clisp.org>
874         Update after gnulib changed.
875         * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
877 2011-06-04  Bruno Haible  <bruno@clisp.org>
879         Work around <wchar.h> bug on OSF/1 5.1.
880         * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
881         some other includes.
883 2011-03-27  KO Myung-Hun  <komh@chollian.net>
885         Fix installation on OS/2.
886         * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
887         iconv_no_i18n. This is the recommended way to use libtool, see
888         <https://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
890 2011-03-31  Bruno Haible  <bruno@clisp.org>
892         gentranslit: Fix buffer overrun.
893         * lib/gentranslit.c (main): Allocate more room for the suffix strings
894         of the translit pages.
895         Reported by Ben Noordhuis <info@bnoordhuis.nl>.
897 2011-02-28  Bruno Haible  <bruno@clisp.org>
899         * lib/relocatable.h: Update from gnulib.
900         * lib/relocatable.c: Likewise.
902 2011-01-29  Corinna Vinschen  <corinna-cygwin@cygwin.com>
903             Bruno Haible  <bruno@clisp.org>
905         Simplify "wchar_t" handling on Cygwin 1.7.x.
906         * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
907         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
908         * lib/iconv_open1.h: Likewise.
909         Rationale: <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
911 2011-01-29  Bruno Haible  <bruno@clisp.org>
913         Adjust the meaning of "wchar_t" on native Windows systems.
914         * lib/iconv.c (iconv_canonicalize): On native Windows, map
915         ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
916         * lib/iconv_open1.h: Likewise.
917         Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
918         in <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
920 2010-11-23  Bruno Haible  <bruno@clisp.org>
922         Implement newer release of BIG5-HKSCS.
923         * tools/Makefile (ALL): Add hkscs2008.h.
924         (hkscs2008.h): New rule.
925         * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
926         * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
927         equivalent to BIG5-HKSCS:2008.
928         * lib/hkscs2008.h: New file, autogenerated.
929         * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
930         * lib/converters.h: Include the new file.
931         * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
932         * tests/BIG5-HKSCS-2008.TXT: New file, based on
933         tests/BIG5-HKSCS-2004.TXT.
934         * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
935         tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
936         * tests/BIG5-HKSCS-2008-snippet: New file, based on
937         tests/BIG5-HKSCS-2004-snippet.
938         * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
939         tests/BIG5-HKSCS-2004-snippet.UTF-8.
940         * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
941         Reported by oCameLo <camel322@gmail.com>.
943 2010-11-23  Bruno Haible  <bruno@clisp.org>
945         Make cjk_tab_to_h 64-bit clean.
946         * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
947         (output_title): Update copyright year.
949 2010-09-23  Bruno Haible  <bruno@clisp.org>
951         Switch to autoconf 2.68.
952         * autogen.sh: Update comment.
953         * configure.ac: Fix AC_COMPILE_IFELSE invocation.
954         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
955         * preload/Makefile.devel (AUTOCONF): Likewise.
957 2010-09-23  Bruno Haible  <bruno@clisp.org>
959         * m4/libtool.m4: Update from libtool-2.4, with modifications:
960         2008-04-06  Bruno Haible  <bruno@clisp.org>
961                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
962                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
963                 to ${CONFIG_SHELL}.
964         * m4/ltversion.m4: Update from libtool-2.4.
965         * build-aux/ltmain.sh: Likewise.
967 2010-09-23  Bruno Haible  <bruno@clisp.org>
969         Simplify use of gnulib-tool now that gnulib-tool --import works better.
970         * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
971         * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
973 2010-07-31  Bruno Haible  <bruno@clisp.org>
975         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
976         * preload/Makefile.devel (AUTOCONF): Likewise.
978 2010-07-03  Bruno Haible  <bruno@clisp.org>
980         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
981         * preload/Makefile.devel (AUTOCONF): Likewise.
983 2010-06-04  Bruno Haible  <bruno@clisp.org>
985         Addendum to 2009-10-18 commit.
986         * m4/fcntl-o.m4: New file, from gnulib.
987         * configure.ac: Invoke gl_FCNTL_O_FLAGS.
988         * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
990 2010-06-04  Bruno Haible  <bruno@clisp.org>
992         * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
993         2008-04-06  Bruno Haible  <bruno@clisp.org>
994                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
995                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
996                 to ${CONFIG_SHELL}.
997         * m4/ltoptions.m4: Update from libtool-2.2.8.
998         * m4/ltversion.m4: Likewise.
999         * m4/lt~obsolete.m4: Likewise.
1000         * build-aux/ltmain.sh: Likewise.
1002 2010-04-06  Bruno Haible  <bruno@clisp.org>
1004         Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
1005         * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
1006         doesn't contains #include directives.
1008 2010-03-30  Bruno Haible  <bruno@clisp.org>
1010         * README.woe32: Update for Cygwin 1.7.x.
1012 2009-12-26  Bruno Haible  <bruno@clisp.org>
1014         * windows/libiconv.rc: Update.
1015         * windows/iconv.rc: Update.
1017 2009-12-11  Bruno Haible  <bruno@clisp.org>
1019         * include/iconv.h.in: Untabify.
1020         * gnulib-local/lib/xalloc.h: Untabify.
1021         * woe32dll/export.h: Untabify.
1022         * tests/uniq-u.c: Untabify.
1024 2009-12-11  Bruno Haible  <bruno@clisp.org>
1026         * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
1028 2009-12-11  Bruno Haible  <bruno@clisp.org>
1030         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
1031         * preload/Makefile.devel (AUTOCONF): Likewise.
1033 2009-11-22  Bruno Haible  <bruno@clisp.org>
1035         * tests/check-subst: Add reference to the Solaris printf bug.
1036         Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
1038 2009-09-01  Bruno Haible  <bruno@clisp.org>
1040         * README.woe32: Put the -mno-cygwin option into CC and CXX.
1041         Recommended by Paolo Bonzini and Eric Blake.
1043 2009-08-15  Bruno Haible  <bruno@clisp.org>
1045         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
1046         * preload/Makefile.devel (AUTOCONF): Likewise.
1048 2009-08-15  Bruno Haible  <bruno@clisp.org>
1050         Use .git/info/exclude, not .gitignore, for imported or generated files.
1051         * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
1052         gnulib-tool.
1054 2009-07-07  Bruno Haible  <bruno@clisp.org>
1056         Fix an endless loop.
1057         * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
1058         incomplete input correctly.
1059         * tests/test-to-wchar.c: New file.
1060         * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
1061         (check): Depend on and run tests-to-wchar.
1062         (clean): Add tests-to-wchar.
1063         Reported by Tristan Gingold <gingold@adacore.com>.
1065 2009-06-30  Bruno Haible  <bruno@clisp.org>
1067         * Version 1.13.1 released.
1069 2009-06-30  Bruno Haible  <bruno@clisp.org>
1071         * configure.ac: Bump version number to 1.13.1.
1072         * README: Likewise.
1074 2009-06-04  Bruno Haible  <bruno@clisp.org>
1076         * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
1077         (ACLOCAL): Switch to version 1.11.
1079 2009-05-19  Bruno Haible  <bruno@clisp.org>
1081         * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
1082         * autogen.sh: Update comments.
1084 2009-04-24  Bruno Haible  <bruno@clisp.org>
1086         Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
1087         * src/iconv_open2.h: Don't initialize nonexistent field if
1088         !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1089         Patch by Joel Brobecker <brobecker@adacore.com>.
1091 2009-04-15  Bruno Haible  <bruno@clisp.org>
1093         * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
1094         explicitly. Needed on Cygwin.
1096 2009-04-11  Bruno Haible  <bruno@clisp.org>
1098         * configure.ac: Move the statements for WOE32 and WINDRES.
1100 2009-03-26  Bruno Haible  <bruno@clisp.org>
1102         * Version 1.13 released.
1104 2009-03-26  Bruno Haible  <bruno@clisp.org>
1106         * src/iconv.c: Update copyright header to GPLv3+.
1107         (print_version): Update license info.
1109 2009-03-26  Bruno Haible  <bruno@clisp.org>
1111         * src/iconv.c (print_version): Bump year.
1113 2009-03-25  Bruno Haible  <bruno@clisp.org>
1115         * build-aux/config.guess: Update to GNU version 2009-02-03.
1116         * build-aux/config.sub: Likewise.
1118 2009-03-25  Bruno Haible  <bruno@clisp.org>
1120         * configure.ac: Bump version number to 1.13.
1121         * README: Likewise.
1122         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1123         * windows/iconv.rc: Update.
1124         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
1126 2009-03-25  Bruno Haible  <bruno@clisp.org>
1128         Fix the handling of Windows resources in shared libraries.
1129         * configure.ac: Invoke LT_LANG for 'Windows Resource'.
1130         * lib/Makefile.in (RC): New variable.
1131         (WINDRES): Remove variable.
1132         (OBJECTS_RES_yes): Add .lo suffix.
1133         (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
1134         (clean): Simplify.
1135         Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
1137 2009-03-14  Bruno Haible  <bruno@clisp.org>
1139         * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
1141 2009-01-24  Bruno Haible  <bruno@clisp.org>
1143         * tools/Makefile (ALL): Add cp1131.h.
1144         (cp1131.h): New rule.
1145         * lib/encodings.def: Add CP1131.
1146         * lib/cp1131.h: New file.
1147         * lib/converters.h: Include it.
1148         * README, man/iconv_open.3: Add CP1131.
1149         * NOTES: Mention CP1131.
1150         * tests/CP1131.TXT: New file.
1151         * tests/Makefile.in (check): Also test CP1131.
1153 2009-01-17  Bruno Haible  <bruno@clisp.org>
1155         Add support for "make install-strip".
1156         * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
1157         * Makefile.in (install-strip): New rule.
1158         * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
1159         variables.
1160         (install-strip): New rule.
1161         * lib/Makefile.in (install-strip): New target.
1162         * preload/Makefile.in (install-strip): Likewise.
1163         * man/Makefile.in (install-strip): Likewise.
1164         Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
1166 2009-01-17  Bruno Haible  <bruno@clisp.org>
1168         Update after gnulib changed.
1169         * src/Makefile.in (RELOCATABLE_STRIP): New variable.
1171 2009-01-17  Bruno Haible  <bruno@clisp.org>
1173         Make --enable-relocatable work on glibc systems.
1174         * src/Makefile.in (host): New variable.
1176 2009-01-17  Bruno Haible  <bruno@clisp.org>
1178         * lib/genflags.c: Include <string.h>.
1180 2009-01-14  Bruno Haible  <bruno@clisp.org>
1182         * configure.ac: More consistent m4 quoting.
1183         * preload/configure.ac: Likewise.
1185 2008-09-28  Bruno Haible  <bruno@clisp.org>
1187         * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
1188         preprocess the argument vector through prepare_spawn.
1190 2008-09-27  Bruno Haible  <bruno@clisp.org>
1192         * build-aux/config.guess: Update to GNU version 2008-09-08.
1193         * build-aux/config.sub: Likewise.
1195 2008-09-26  Bruno Haible  <bruno@clisp.org>
1197         * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
1199 2008-09-26  Bruno Haible  <bruno@clisp.org>
1201         * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
1202         * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
1203         all programs against libicrt.a. Needed for the stdio function
1204         replacements on mingw.
1206 2008-09-21  Tadamasa Teranishi  <yw3t-trns@asahi-net.or.jp>
1208         * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
1209         ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
1211 2008-09-20  Bruno Haible  <bruno@clisp.org>
1213         * man/iconv_open_into.3: New file.
1215 2008-09-16  Bruno Haible  <bruno@clisp.org>
1217         New function iconv_open_into.
1218         * include/iconv.h.in: Include <wchar.h> and its prerequisites.
1219         (iconv_allocation_t): New type.
1220         (iconv_open_into): New declaration.
1221         * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
1222         * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
1223         * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
1224         Verify size of iconv_allocation_t.
1225         (iconv_open_into): New function.
1226         * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
1227         field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1228         * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
1229         Reported by Roman Rybalko <romanr@romanr.info>.
1231 2008-09-16  Bruno Haible  <bruno@clisp.org>
1233         * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
1235 2008-09-16  Bruno Haible  <bruno@clisp.org>
1237         * include/iconv.h.in: Use Unicode single-quotes in comments.
1239 2008-09-14  Bruno Haible  <bruno@clisp.org>
1241         * Makefile.devel (GNULIB_MODULES): Add strerror.
1243 2008-09-07  Bruno Haible  <bruno@clisp.org>
1245         Make behaviour when encountering invalid input after a shift sequence
1246         more consistent.
1247         * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
1248         (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
1249         (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
1250         (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
1251         * lib/loop_unicode.h (unicode_loop_convert): Take into account the
1252         shift count contained in the negative return values.
1253         * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
1254         modified state and return RET_SHIFT_ILSEQ.
1255         * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
1256         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
1257         * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
1258         * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
1259         * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
1260         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
1261         * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
1262         * lib/ucs2.h (ucs2_mbtowc): Likewise.
1263         * lib/ucs4.h (ucs4_mbtowc): Likewise.
1264         * lib/utf16.h (utf16_mbtowc): Likewise.
1265         * lib/utf32.h (utf32_mbtowc): Likewise.
1266         * lib/utf7.h (utf7_mbtowc): Likewise.
1267         * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
1268         invalid input, return RET_SHIFT_ILSEQ.
1269         * lib/utf16le.h (utf16le_mbtowc): Likewise.
1270         * tests/test-shiftseq.c: New file.
1271         * tests/Makefile.in (check): Run test-shiftseq.
1272         (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
1273         (clean): Remove test-shiftseq executable.
1274         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1275         at <https://savannah.gnu.org/bugs/?24216>.
1277 2008-09-07  Bruno Haible  <bruno@clisp.org>
1279         * man/iconv.3: Clarify the processing of shift-sequences.
1281 2008-09-07  Bruno Haible  <bruno@clisp.org>
1283         * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
1284         2008-04-06  Bruno Haible  <bruno@clisp.org>
1285                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1286                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1287                 to ${CONFIG_SHELL}.
1288         * m4/ltoptions.m4: Update from libtool-2.2.6.
1289         * m4/ltsugar.m4: Likewise.
1290         * m4/ltversion.m4: Likewise.
1291         * build-aux/ltmain.sh: Likewise.
1293 2008-09-06  Bruno Haible  <bruno@clisp.org>
1295         * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
1296         Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1297         at <https://savannah.gnu.org/bugs/?24214>.
1299 2008-06-30  Bruno Haible  <bruno@clisp.org>
1301         Fix sed expressions to work with the old sed-3.02 on MSYS.
1302         * windows/windres-options (sed_extract_major, sed_extract_minor,
1303         sed_extract_subminor): Put a semicolon before the closing brace. Use
1304         an i\ command instead of an a\ command.
1305         Reported by Sunil Negi <sunil.negi@morningstar.com>
1306         in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
1307         via Keith Marshall <keithmarshall@users.sourceforge.net>.
1309 2008-05-22  Bruno Haible  <bruno@clisp.org>
1311         * README.woe32: Update with info from GNU gettext's README.woe32.
1313 2008-05-18  Bruno Haible  <bruno@clisp.org>
1315         * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
1316         2008-04-06  Bruno Haible  <bruno@clisp.org>
1317                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1318                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1319                 to ${CONFIG_SHELL}.
1320         * m4/ltoptions.m4: Update from libtool-2.2.4.
1321         * m4/ltversion.m4: Likewise.
1322         * m4/lt~obsolete.m4: Likewise.
1323         * build-aux/ltmain.sh: Likewise.
1325 2008-04-14  Bruno Haible  <bruno@clisp.org>
1327         * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
1328         on MacOS X 10.5.
1330 2008-04-14  Bruno Haible  <bruno@clisp.org>
1332         * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
1333         AC_AIX and AC_MINIX.
1334         * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
1335         * preload/Makefile.devel (AUTOCONF): Likewise.
1336         * autogen.sh: Likewise.
1338 2008-04-06  Bruno Haible  <bruno@clisp.org>
1340         * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
1341         2008-04-06  Bruno Haible  <bruno@clisp.org>
1342                 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1343                 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1344                 to ${CONFIG_SHELL}.
1345         * m4/ltoptions.m4: New file, from libtool-2.2.2.
1346         * m4/ltsugar.m4: New file, from libtool-2.2.2.
1347         * m4/ltversion.m4: New file, from libtool-2.2.2.
1348         * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
1349         * build-aux/ltmain.sh: New file, from libtool-2.2.2.
1350         * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
1351         * preload/configure.ac: Likewise.
1353 2008-04-06  Bruno Haible  <bruno@clisp.org>
1355         More portable way of building the preloadable library.
1356         * preload/Makefile.devel: New file.
1357         * preload/Makefile.in: New file, based on lib/Makefile.in.
1358         * preload/configure.ac: New file, based on configure.ac.
1359         * Makefile.devel (all): Recurse into preload directory.
1360         * Makefile.in (all, install, installdirs, uninstall, check,
1361         mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
1362         directory.
1363         * configure.ac: Likewise.
1364         (OS, GCC, PLUGLIB): Remove definitions.
1365         * lib/Makefile.in (all): Don't depend on PLUGLIB.
1366         (preloadable_libiconv.so, preloadable_libiconv_linux.so,
1367         preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
1368         rules.
1369         (install, uninstall, clean): Don't handle the preloadable library here.
1371 2008-04-06  Bruno Haible  <bruno@clisp.org>
1373         Avoid a gcc warning.
1374         * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
1376 2008-04-06  Bruno Haible  <bruno@clisp.org>
1378         * src/iconv.c (print_version): Bump year.
1380 2008-04-06  Bruno Haible  <bruno@clisp.org>
1382         Support all possible nl_langinfo(CODESET) results on the respective
1383         platforms, according to libcharset/lib/config.charset.
1384         * lib/encodings.def: Add DEFALIAS statements, conditional on
1385         USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
1386         USE_SOLARIS_ALIASES.
1387         * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
1388         USE_AIX_ALIASES.
1389         * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
1390         USE_OSF1_ALIASES.
1391         * lib/genaliases.c (emit_alias): New function, extracted from
1392         emit_encoding.
1393         (emit_encoding): Use it.
1394         (main): Define DEFALIAS.
1395         * lib/genaliases2.c (counter): New variable, extracted from
1396         emit_encoding.
1397         (emit_alias): New function, extracted from emit_encoding.
1398         (emit_encoding): Use it.
1399         (main): Define DEFALIAS.
1400         * lib/genflags.c (main): Define DEFALIAS.
1401         * lib/iconv.c (all_encodings): Define DEFALIAS.
1402         Include the system dependent variant of aliases.h on the appropriate
1403         systems.
1404         (all_canonical): Include the system dependent variant of canonical.h,
1405         canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
1406         systems.
1407         * lib/aliases2.h: Include the system dependent variant of
1408         aliases_aix.h or aliases_osf1.h on the appropriate systems.
1409         * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
1410         aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
1411         aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
1412         aliases_extra.h, translit.h.
1413         * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
1414         lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1415         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1416         (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
1417         lib/aliases_syssolaris.h): New rules.
1418         (lib/aliases_aix_sysaix.h): New rule.
1419         (lib/aliases_osf1_sysosf1.h): New rule.
1420         * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
1421         lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1422         lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1424 2008-04-06  Bruno Haible  <bruno@clisp.org>
1426         * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
1427         * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
1429 2007-11-11  Bruno Haible  <bruno@clisp.org>
1431         * Version 1.12 released.
1433 2007-11-11  Bruno Haible  <bruno@clisp.org>
1435         * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
1436         (AUTOMAKE, ACLOCAL): Require version 1.10.
1437         (srclib/Makefile.in): Avoid error from automake.
1439 2007-10-26  Bruno Haible  <bruno@clisp.org>
1441         * m4/libtool.m4: Update, based on libtool-1.5.24.
1442         * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
1444 2007-10-23  Bruno Haible  <bruno@clisp.org>
1446         * build-aux/config.guess: Update to GNU version 2007-07-22.
1447         * build-aux/config.sub: Likewise.
1449 2007-10-23  Bruno Haible  <bruno@clisp.org>
1451         * configure.ac: Bump version number to 1.12.
1452         * README: Likewise.
1454 2007-10-23  Bruno Haible  <bruno@clisp.org>
1456         Move relocatability infrastructure to gnulib.
1457         * gnulib-local/lib/relocatable.h: Remove file.
1458         * gnulib-local/lib/relocatable.c: Remove file.
1460 2007-10-23  Bruno Haible  <bruno@clisp.org>
1462         Update from GNU gettext.
1463         2006-11-26  Bruno Haible  <bruno@clisp.org>
1464                 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
1465                 template variant.
1466                 Based on a patch from Paul Eggert in gnulib.
1467         2006-11-06  Bruno Haible  <bruno@clisp.org>
1468                 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
1469                 (xmemdup): New declaration.
1470                 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
1471         2006-11-03  Bruno Haible  <bruno@clisp.org>
1472                 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
1473                 XCALLOC): New macros.
1474                 (xnboundedmalloc): New inline function.
1475                 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
1476                 xmalloc.
1477         2006-11-02  Bruno Haible  <bruno@clisp.org>
1478                 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
1479                 xalloc.h.
1480                 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
1481                 (xnmalloc): New function.
1483 2007-10-23  Bruno Haible  <bruno@clisp.org>
1485         Moved module xreadlink to gnulib.
1486         * gnulib-local/modules/xreadlink: Remove file.
1487         * gnulib-local/lib/xreadlink.h: Remove file.
1488         * gnulib-local/lib/xreadlink.c: Remove file.
1489         * gnulib-local/m4/xreadlink.m4: Remove file.
1491 2007-10-07  Bruno Haible  <bruno@clisp.org>
1493         Update program license to GPLv3.
1494         * COPYING: Replace with GPL 3.
1495         * windows/iconv.rc (Comments): Update.
1497 2007-10-07  Bruno Haible  <bruno@clisp.org>
1499         * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
1501 2007-03-30  Bruno Haible  <bruno@clisp.org>
1503         * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
1504         macro to _GL_.
1506 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1508         * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
1509         declare.
1511 2007-09-29  Bruno Haible  <bruno@clisp.org>
1513         * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
1514         valid since 2007-09-19.
1516 2007-07-07  Bruno Haible  <bruno@clisp.org>
1518         * autogen.sh: Add an option --skip-gnulib.
1520 2007-07-07  Bruno Haible  <bruno@clisp.org>
1522         * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
1523         * gnulib-local/lib/width.c: Remove file, moved to gnulib.
1524         * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
1525         * gnulib-local/modules/uniwidth: Remove file.
1526         * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
1527         * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
1529 2007-06-30  Bruno Haible  <bruno@clisp.org>
1531         * src/iconv.c (print_version): Use the standard --version output, see
1532         <https://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
1534 2007-06-30  Bruno Haible  <bruno@clisp.org>
1536         * autogen.sh: New file.
1537         * DEPENDENCIES: New file.
1538         * HACKING: New file.
1540 2007-06-30  Bruno Haible  <bruno@clisp.org>
1542         * src/iconv.c: Provide translator comments for many messages.
1543         (conversion_error_EILSEQ, conversion_error_EINVAL,
1544         conversion_error_other): New functions, extracted from convert.
1545         (convert): Use them.
1546         Reported by Tim Van Holder <tim.van.holder@telenet.be>.
1548 2007-06-09  Bruno Haible  <bruno@clisp.org>
1550         * gnulib-local/lib/relocwrapper.c: Remove file.
1552 2007-05-27  Bruno Haible  <bruno@clisp.org>
1554         * windows/libiconv.rc: New file.
1555         * windows/iconv.rc: New file.
1556         * windows/windres-options: New file.
1557         * configure.ac (WOE32): New variable.
1558         (WINDRES) [WOE32]: New variable.
1559         * lib/Makefile.in (WINDRES): New variable.
1560         (PACKAGE_VERSION): New variable.
1561         (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
1562         (OBJECTS_EXP_no): Renamed from OBJECTS_no.
1563         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1564         (OBJECTS): Add one of them.
1565         (libiconv.res): New rule.
1566         (clean): Remove also libiconv.res.
1567         * src/Makefile.in (WINDRES): New variable.
1568         (PACKAGE_VERSION): New variable.
1569         (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1570         (all, iconv_no_i18n, install): Use them.
1571         (iconv.res): New rule.
1572         (clean): Remove also iconv.res.
1573         Suggested and inspired by work by Perry Rapp.
1575 2007-05-27  Bruno Haible  <bruno@clisp.org>
1577         Follow broken iconv() prototype in POSIX.
1578         * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
1579         * lib/config.h.in (ICONV_CONST): Change default value to an empty
1580         comment.
1581         * src/iconv.c (ICONV_CONST): Change default value to empty.
1582         Reported by Andreas Krennmair <ak@synflood.at>.
1584 2007-05-25  Bruno Haible  <bruno@clisp.org>
1586         * tools/Makefile (ALL): Add rk1048.h.
1587         (rk1048.h): New rule.
1588         * lib/encodings.def: Add RK1048.
1589         * lib/rk1048.h: New file.
1590         * lib/converters.h: Include it.
1591         * README, man/iconv_open.3: Add RK1048.
1592         * NOTES: Mention RK1048.
1593         * tests/RK1048.TXT: New file.
1594         * tests/Makefile.in (check): Also test RK1048.
1595         Suggested by Timur Birsh <team9@host.kz>.
1597 2007-04-24  Bruno Haible  <bruno@clisp.org>
1599         * man/iconv_open.3: Tweak explanation of TRANSLIT.
1600         Reported by Perry Rapp.
1602 2007-04-23  Bruno Haible  <bruno@clisp.org>
1604         * tests/check-subst: Use the output of 'printf' only if it didn't
1605         crash. Needed to work around a buffer overflow in Solaris /bin/printf.
1606         Reported by Arto C. Nirkko <anirkko@insel.ch>.
1608 2007-04-23  Bruno Haible  <bruno@clisp.org>
1610         * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
1611         systems like those which define __STDC_ISO_10646__.
1612         Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
1614 2007-03-31  Bruno Haible  <bruno@clisp.org>
1616         * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
1617         appropriate.
1618         * man/iconv_open.3: Likewise.
1619         * man/iconv.3: Likewise.
1620         * man/iconv_close.3: Likewise.
1621         * man/iconvctl.3: Likewise.
1623 2007-03-31  Bruno Haible  <bruno@clisp.org>
1625         * man/iconv.1: Mark as POSIX compliant.
1626         * man/iconv_open.3: Likewise.
1627         * man/iconv.3: Likewise.
1628         * man/iconv_close.3: Likewise.
1630         * man/*.[13]: Syntactic simplifications.
1632 2007-03-19  Bruno Haible  <bruno@clisp.org>
1634         Assume that mkinstalldirs also creates the necessary parent directories.
1635         * Makefile.in (install, installdirs): Don't explicitly create the
1636         parent directories.
1637         * lib/Makefile.in (install, installdirs): Likewise.
1638         * src/Makefile.in (install, installdirs): Likewise.
1639         * man/Makefile.in (install, installdirs): Likewise.
1640         Reported by Thomas Klausner <tk@giga.or.at>.
1642 2007-03-04  Bruno Haible  <bruno@clisp.org>
1644         * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
1645         relocatable, relocwrapper.
1646         * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
1647         * gnulib-local/modules/progreloc: Remove file.
1648         * gnulib-local/modules/relocatable: Remove file.
1649         * gnulib-local/modules/relocwrapper: Remove file.
1650         * gnulib-local/m4/relocatable.m4: Remove file.
1651         * gnulib-local/lib/strerror.c.diff: Remove file.
1652         * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
1653         RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
1655 2007-02-19  Bruno Haible  <bruno@clisp.org>
1657         * gnulib-local/lib/xmalloc.c: Don't include exit.h.
1658         * src/iconv.c: Likewise.
1660 2007-02-16  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
1662         * djgpp/*: Update.
1664 2007-02-03  Bruno Haible  <bruno@clisp.org>
1666         * tools/Makefile (ksc5601.h): Add one extra character.
1667         * lib/ksc5601.h: Regenerated.
1668         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
1669         * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
1670         * tests/JOHAB.TXT: Likewise.
1671         Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
1673         * lib/euc_kr.h: Update comments.
1674         * lib/johab.h: Likewise.
1676 2007-02-03  Bruno Haible  <bruno@clisp.org>
1678         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
1680 2007-01-26  Bruno Haible  <bruno@clisp.org>
1682         Moved streq.h to gnulib.
1683         * gnulib-local/lib/streq.h: Remove file.
1684         * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
1685         (Depends-on): Add streq.
1686         (lib_SOURCES): Remove streq.h.
1688 2007-01-26  Bruno Haible  <bruno@clisp.org>
1690         Moved unitypes.h to gnulib.
1691         * gnulib-local/lib/unitypes.h: Remove file.
1692         * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
1693         (Depends-on): Add unitypes.
1694         (lib_SOURCES): Remove unitypes.h.
1696 2007-01-26  Bruno Haible  <bruno@clisp.org>
1698         Moved canonicalize to gnulib.
1699         * gnulib-local/modules/canonicalize: Remove file.
1700         * gnulib-local/lib/canonicalize.h: Remove file.
1701         * gnulib-local/lib/canonicalize.c: Remove file.
1702         * gnulib-local/m4/canonicalize.m4: Remove file.
1703         * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
1704         with 'canonicalize-lgpl'.
1706 2006-12-20  Bruno Haible  <bruno@clisp.org>
1708         * lib/Makefile.in (install): On AIX, add the contents of
1709         /lib/libiconv.a to libiconv.a.
1711 2006-12-20  Bruno Haible  <bruno@clisp.org>
1713         * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
1714         srclib/Makefile.am.
1715         (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
1716         always does it.
1717         (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
1718         option --makefile-name.
1719         (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
1720         * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
1722 2006-10-31  Bruno Haible  <bruno@clisp.org>
1724         Update from GNU gettext.
1725         2006-10-29  Bruno Haible  <bruno@clisp.org>
1726                 Make it compile in C++ mode.
1727                 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
1728                 with appropriate return type.
1729                 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
1730         2006-10-26  Bruno Haible  <bruno@clisp.org>
1731                 * gnulib-local/modules/canonicalize (Makefile.am): Remove
1732                 EXTRA_DIST. Now done by gnulib-tool.
1733                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1734                 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
1735         2006-10-25  Bruno Haible  <bruno@clisp.org>
1736                 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
1737                 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
1738                 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
1739                 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
1740                 AC_RELOCATABLE instead of requiring it.
1741         2006-10-12  Bruno Haible  <bruno@clisp.org>
1742                 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
1743                 all files in lib/ through EXTRA_DIST.
1744                 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1745         2006-09-14  Bruno Haible  <bruno@clisp.org>
1746                 * gnulib-local/lib/canonicalize.c: Include <config.h>
1747                 unconditionally.
1748                 * gnulib-local/lib/relocatable.c: Likewise.
1749                 * lib/relocatable.c: Likewise.
1750                 * gnulib-local/lib/relocwrapper.c: Likewise.
1751                 * gnulib-local/lib/xmalloc.c: Likewise.
1752                 * gnulib-local/lib/xreadlink.c: Likewise.
1753                 * gnulib-local/lib/xstrdup.c: Likewise.
1754         2006-08-02  Bruno Haible  <bruno@clisp.org>
1755                 * gnulib-local/modules/canonicalize: Put under LGPL.
1756                 * gnulib-local/modules/relocatable: Likewise.
1757         2006-07-18  Bruno Haible  <bruno@clisp.org>
1758                 * gnulib-local/xalloc.h (xzalloc): New declaration.
1759                 * gnulib-local/xmalloc.c (xzalloc): New function.
1761 2006-10-24  Bruno Haible  <bruno@clisp.org>
1763         * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
1764         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1766 2006-10-14  Bruno Haible  <bruno@clisp.org>
1768         * COPYING: New file.
1769         * README: Clarify copyright of the iconv program.
1770         Reported by Charles Wilson <cwilson@fastmail.fm>.
1772 2006-08-08  Bruno Haible  <bruno@clisp.org>
1774         * INSTALL.generic: Add a recommendation for Tru64.
1775         Reported by Gary V. Vaughan <gary@gnu.org>.
1777 2006-07-29  Bruno Haible  <bruno@clisp.org>
1779         * tests/check-subst: Set CHARSETALIASDIR.
1780         Needed so that "make check" works before "make install" on systems
1781         such as NetBSD.
1783 2006-07-29  Bruno Haible  <bruno@clisp.org>
1785         * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
1786         (AUTOCONF_FILES): Add the existing *.m4 files.
1788 2006-07-29  Bruno Haible  <bruno@clisp.org>
1790         * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
1791         * src/iconv.c: Assume <locale.h> exists.
1792         * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
1793         <string.h>.
1795 2006-07-29  Bruno Haible  <bruno@clisp.org>
1797         * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
1798         AC_ISC_POSIX, AC_HEADER_STDC.
1800 2006-07-29  Bruno Haible  <bruno@clisp.org>
1802         * configure.ac: Remove macro invocations that are redundant through
1803         gl_EARLY and gl_INIT.
1805 2006-07-29  Bruno Haible  <bruno@clisp.org>
1807         * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
1808         Avoids a sh syntax error.
1810 2006-07-29  Bruno Haible  <bruno@clisp.org>
1812         * gnulib-local/m4/relocatable.m4: Add comments.
1814 2006-07-29  Bruno Haible  <bruno@clisp.org>
1816         * gnulib-local/modules/libiconv-misc: New file.
1817         * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
1819         * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
1821 2006-07-29  Bruno Haible  <bruno@clisp.org>
1823         Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
1824         AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
1825         because we now assume that the system defines size_t and ptrdiff_t.
1827 2006-07-29  Bruno Haible  <bruno@clisp.org>
1829         Switch to using gnulib.
1830         * configure.ac (AC_PREREQ): Require autoconf-2.60.
1831         Invoke gl_EARLY and gl_INIT.
1832         * Makefile.devel (all): Depend on srclib/Makefile.am.
1833         (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
1834         GNU make.
1835         (GNULIB_MODULES): New variable.
1836         (srclib/Makefile.am): New rule.
1837         * gnulib-local: New directory.
1838         * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
1839         * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
1840         * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
1841         * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
1842         * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
1843         * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
1844         * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
1845         * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
1846         * gnulib-local/lib/error.h.diff: New file.
1847         * gnulib-local/lib/progname.h.diff: New file.
1848         * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
1849         * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
1850         * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
1851         * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
1852         * gnulib-local/lib/strerror.c.diff: New file.
1853         * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
1854         * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
1855         * gnulib-local/lib/width.c: Moved here from srclib/width.c.
1856         * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
1857         * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
1858         * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
1859         * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
1860         * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
1861         * gnulib-local/modules/canonicalize: New file.
1862         * gnulib-local/modules/progreloc: New file.
1863         * gnulib-local/modules/relocatable: New file.
1864         * gnulib-local/modules/relocwrapper: New file.
1865         * gnulib-local/modules/uniwidth: New file.
1866         * gnulib-local/modules/xalloc: New file.
1867         * gnulib-local/modules/xreadlink: New file.
1869         * m4/allocsa.m4: Remove file. Now taken from gnulib.
1870         * m4/codeset.m4: Likewise.
1871         * m4/eealloc.m4: Likewise.
1872         * m4/error.m4: Likewise.
1873         * m4/extensions.m4: Likewise.
1874         * m4/full-header-path.m4: Likewise.
1875         * m4/gettext.m4: Likewise.
1876         * m4/glibc21.m4: Likewise.
1877         * m4/iconv.m4: Likewise.
1878         * m4/intmax.m4: Likewise.
1879         * m4/inttypes-h.m4: Likewise.
1880         * m4/inttypes_h.m4: Likewise.
1881         * m4/isc-posix.m4: Likewise.
1882         * m4/lcmessage.m4: Likewise.
1883         * m4/lib-ld.m4: Likewise.
1884         * m4/lib-link.m4: Likewise.
1885         * m4/lib-prefix.m4: Likewise.
1886         * m4/longdouble.m4: Likewise.
1887         * m4/longlong.m4: Likewise.
1888         * m4/mbstate_t.m4: Likewise.
1889         * m4/nls.m4: Likewise.
1890         * m4/onceonly.m4: Likewise.
1891         * m4/pathmax.m4: Likewise.
1892         * m4/po.m4: Likewise.
1893         * m4/printf-posix.m4: Likewise.
1894         * m4/progtest.m4: Likewise.
1895         * m4/readlink.m4: Likewise.
1896         * m4/setenv.m4: Likewise.
1897         * m4/signed.m4: Likewise.
1898         * m4/size_max.m4: Likewise.
1899         * m4/ssize_t.m4: Likewise.
1900         * m4/stdbool.m4: Likewise.
1901         * m4/stdint.m4: Likewise.
1902         * m4/stdint_h.m4: Likewise.
1903         * m4/strerror.m4: Likewise.
1904         * m4/strerror_r.m4: Likewise.
1905         * m4/unistd_h.m4: Likewise.
1906         * m4/unlocked-io.m4: Likewise.
1907         * m4/visibility.m4: Likewise.
1908         * m4/wchar_t.m4: Likewise.
1909         * m4/wint_t.m4: Likewise.
1911         * srclib/allocsa.h: Remove file. Now taken from gnulib.
1912         * srclib/allocsa.c: Likewise.
1913         * srclib/binary-io.h: Likewise.
1914         * srclib/error.h: Likewise.
1915         * srclib/error.c: Likewise.
1916         * srclib/exit.h: Likewise.
1917         * srclib/gettext.h: Likewise.
1918         * srclib/memmove.c: Likewise.
1919         * srclib/pathmax.h: Likewise.
1920         * srclib/progname.h: Likewise.
1921         * srclib/progname.c: Likewise.
1922         * srclib/progreloc.c: Likewise.
1923         * srclib/readlink.c: Likewise.
1924         * srclib/setenv.h: Likewise.
1925         * srclib/setenv.c: Likewise.
1926         * srclib/stdbool_.h: Likewise.
1927         * srclib/stdint_.h: Likewise.
1928         * srclib/strerror.c: Likewise.
1929         * srclib/unlocked-io.h: Likewise.
1930         * srclib/unsetenv.c: Likewise.
1931         * srclib/Makefile.am: Remove file.
1933 2006-07-27  Bruno Haible  <bruno@clisp.org>
1935         Remove OS/2 build support that doesn't assume GNU make and GNU bash.
1936         * README.os2: Remove file.
1937         * Makefile.os2: Remove file.
1938         * lib/Makefile.os2: Remove file.
1939         * src/Makefile.os2: Remove file.
1940         * man/Makefile.os2: Remove file.
1941         * tests/Makefile.os2: Remove file.
1942         * tests/check-stateful.cmd: Remove file.
1943         * tests/check-stateless.cmd: Remove file.
1944         * tests/check-translit.cmd: Remove file.
1946 2006-07-25  Bruno Haible  <bruno@clisp.org>
1948         Remove MSVC/nmake build support.
1949         * windows: Remove directory.
1950         * Makefile.msvc: Remove file.
1951         * lib/Makefile.msvc: Remove file.
1952         * srclib/Makefile.msvc: Remove file.
1953         * src/Makefile.msvc: Remove file.
1954         * tests/Makefile.msvc: Remove file.
1955         * man/Makefile.msvc: Remove file.
1956         * po/Rules-msvc: Remove file.
1957         * po/Makefile.msvc.sh: Remove file.
1958         * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
1959         (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
1960         rules.
1961         (po/Makefile.msvc): Remove rule.
1962         (all): Update.
1964 2006-07-25  Bruno Haible  <bruno@clisp.org>
1966         Remove VMS support.
1967         * vms: Remove directory.
1968         * Makefile.vms: Remove file.
1969         * lib/Makefile.vms: Remove file.
1970         * srclib/Makefile.vms: Remove file.
1971         * src/Makefile.vms: Remove file.
1972         * tests/Makefile.vms: Remove file.
1973         * man/Makefile.vms: Remove file.
1974         * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
1975         (include/iconv.h_vms): Remove rule.
1976         (all): Update.
1978 2006-07-23  Bruno Haible  <bruno@clisp.org>
1980         * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
1981         * src/Makefile.in (iconv_no_i18n): Likewise.
1982         (install): Likewise.
1983         * tests/Makefile.in (table-from, table-to): Likewise.
1984         Needed because the CFLAGS can e.g. trigger profiling.
1985         Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
1987 2006-07-19  Bruno Haible  <bruno@clisp.org>
1989         * Version 1.11 released.
1991 2006-07-19  Bruno Haible  <bruno@clisp.org>
1993         * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
1994         (LIBADD_SOURCE): Add them here.
1996 2006-07-19  Bruno Haible  <bruno@clisp.org>
1998         * build-aux/config.guess: Update to GNU version 2006-07-02.
1999         * build-aux/config.sub: Likewise.
2001 2006-07-14  Bruno Haible  <bruno@clisp.org>
2003         * lib/Makefile.in (clean): Remove also *.stackdump.
2004         * src/Makefile.in (clean): Likewise.
2005         * tests/Makefile.in (clean): Likewise.
2007 2006-07-14  Bruno Haible  <bruno@clisp.org>
2009         * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
2010         cygwin or mingw.
2011         * tests/Makefile.in (clean): Remove also the programs, without
2012         EXEEXT. Needed for cygwin or mingw.
2013         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
2014         Remove also bin directory. Needed for cygwin and mingw.
2016 2006-07-03  Bruno Haible  <bruno@clisp.org>
2018         * src/iconv.c (check_subst_formatstring): Use ngettext.
2019         (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
2020         after 2006-01-22 change.
2021         * configure.ac: Require a gettext version with ngettext.
2023 2006-06-28  Bruno Haible  <bruno@clisp.org>
2025         * m4/gettext.m4: Update from GNU gettext.
2026         * m4/po.m4: Update from GNU gettext.
2028 2006-06-27  Bruno Haible  <bruno@clisp.org>
2030         * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
2031         * Makefile.in (datarootdir): New variable.
2032         (install, installdirs, uninstall): Also pass datarootdir.
2033         * configure.ac (mandir): Remove customization.
2034         * man/Makefile.in (datarootdir): New variable.
2035         (docdir, htmldir): Use autoconf-substituted value.
2036         * src/Makefile.in (datarootdir): New variable.
2037         (localedir): Use autoconf-substituted value.
2039 2006-06-27  Bruno Haible  <bruno@clisp.org>
2041         * m4/stdint.m4: Update from gnulib.
2042         * srclib/stdint_.h: Update from gnulib.
2043         * srclib/Makefile.am: Update.
2045 2006-06-17  Bruno Haible  <bruno@clisp.org>
2047         * srclib/unsetenv.c: Update from GNU gettext.
2048         * srclib/xreadlink.c: Likewise.
2050 2006-06-16  Bruno Haible  <bruno@clisp.org>
2052         * m4/full-header-path.m4: New file, from gnulib.
2053         * m4/size_max.m4: New file, from gnulib.
2054         * m4/stdint.m4: Update from gnulib.
2055         * srclib/stdint_.h: Update from gnulib.
2056         * srclib/Makefile.am (stdint.h): Likewise.
2057         * Makefile.devel (aclocal.m4): Update dependencies.
2059 2006-06-16  Bruno Haible  <bruno@clisp.org>
2061         * m4/ssize_t.m4: Update from GNU gettext.
2063 2006-06-12  Bruno Haible  <bruno@clisp.org>
2065         * m4/gettext.m4: Update from GNU gettext.
2066         * m4/inttypes-h.m4: New file, from GNU gettext.
2067         * m4/inttypes.m4: Remove file.
2068         * m4/stdint.m4 (gl_STDINT_H): Update.
2069         * Makefile.devel (aclocal.m4): Update dependencies.
2071 2006-06-10  Bruno Haible  <bruno@clisp.org>
2073         * src/iconv.c (error) [NO_I18N]: Define here instead of including
2074         error.h. Fixes link failure introduced on 2006-01-22.
2076 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2078         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
2079         "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
2081 2006-05-20  Bruno Haible  <bruno@clisp.org>
2083         * tests/BIG5-HKSCS-1999-snippet: New file.
2084         * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
2085         * tests/BIG5-HKSCS-2001-snippet: New file.
2086         * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
2087         * tests/BIG5-HKSCS-2004-snippet: New file.
2088         * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
2089         * tests/Makefile.in (check): Test also the stateful parts of
2090         BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
2092 2006-05-17  Bruno Haible  <bruno@clisp.org>
2094         Implement newer releases of BIG5-HKSCS.
2095         * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
2096         hkscs2004.h.
2097         (hkscs.h): Remove rule.
2098         (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
2099         * tools/cjk_tab_to_h.c (output_title): Update year.
2100         (main): Recognize hkscs1999, hkscs2001, hkscs2004.
2101         * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
2102         BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
2103         * lib/hkscs.h: Remove file.
2104         * lib/hkscs1999.h: New file.
2105         * lib/hkscs2001.h: New file.
2106         * lib/hkscs2004.h: New file.
2107         * lib/big5hkscs.h: Remove file.
2108         * lib/big5hkscs1999.h: New file.
2109         * lib/big5hkscs2001.h: New file.
2110         * lib/big5hkscs2004.h: New file.
2111         * lib/converters.h: Include the new files.
2112         * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
2113         * tests/BIG5-HKSCS.TXT: Remove file.
2114         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
2115         * tests/BIG5-HKSCS-1999.TXT: New file.
2116         * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
2117         * tests/BIG5-HKSCS-2001.TXT: New file.
2118         * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
2119         * tests/BIG5-HKSCS-2004.TXT: New file.
2120         * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
2121         * tests/check-stateless: Convert colon in the charset name to a dash in
2122         the file name.
2123         * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
2124         BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
2125         * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
2126         * tests/Makefile.os2 (check): Likewise.
2128 2006-05-17  Bruno Haible  <bruno@clisp.org>
2130         * srclib/progreloc.c: Update from GNU gettext.
2132 2006-05-16  Bruno Haible  <bruno@clisp.org>
2134         * src/Makefile.in (clean): Use EXEEXT.
2135         * tests/Makefile.in (check, clean): Likewise.
2137 2006-05-15  Bruno Haible  <bruno@clisp.org>
2139         * configure.ac: Move some checks before AC_RELOCATABLE.
2141 2006-05-15  Bruno Haible  <bruno@clisp.org>
2143         Support for building shared libraries on mingw and Cygwin.
2144         * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
2145         * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
2146         * woe32dll/export.h: New file, from GNU gettext.
2147         * woe32dll/iconv-exports.h: New file.
2148         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2149         include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
2150         * lib/Makefile.in (INCLUDES): Add -I for parent directory.
2151         (LDFLAGS): Add WOE32DLL dependent flags.
2152         (LDFLAGS_yes, LDFLAGS_no): New variables.
2153         (OBJECTS): Add WOE32DLL dependent objects.
2154         (OBJECTS_yes, OBJECTS_no): New variables.
2155         (iconv-exports.lo): New rule.
2157 2006-05-15  Bruno Haible  <bruno@clisp.org>
2159         * srclib/gettext.h: Update from GNU gettext.
2160         * srclib/pathmax.h: Update from GNU gettext.
2161         * srclib/progreloc.c: Update from GNU gettext.
2162         * srclib/unsetenv.c: Update from GNU gettext.
2163         * srclib/Makefile.am: Add snippet for creation of unistd.h.
2164         * m4/extensions.m4: Update from GNU gettext.
2165         * m4/gettext.m4: Update from GNU gettext.
2166         * m4/lib-ld.m4: Update from GNU gettext.
2167         * m4/lib-link.m4: Update from GNU gettext.
2168         * m4/lib-prefix.m4: Update from GNU gettext.
2169         * m4/longdouble.m4: Update from GNU gettext.
2170         * m4/nls.m4: Update from GNU gettext.
2171         * m4/onceonly.m4: Update from GNU gettext.
2172         * m4/po.m4: Update from GNU gettext.
2173         * m4/relocatable.m4: Update from GNU gettext.
2174         * m4/unistd_h.m4: New file, from GNU gettext.
2175         * Makefile.devel (aclocal.m4): Depend on it.
2176         * configure.ac: Invoke gl_HEADER_UNISTD.
2178 2006-05-14  Bruno Haible  <bruno@clisp.org>,
2179             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2181         * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
2182         (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
2183         (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
2184         Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
2186 2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
2188         * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
2189         compiling a shared library object.
2191 2006-05-15  Bruno Haible  <bruno@clisp.org>
2193         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
2195 2006-03-31  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
2197         * djgpp/*: Update.
2199 2006-01-23  Bruno Haible  <bruno@clisp.org>
2201         * configure.ac: Invoke gl_ALLOCSA.
2203         * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
2205 2006-01-22  Bruno Haible  <bruno@clisp.org>
2207         * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
2208         gettext().
2210 2006-01-22  Bruno Haible  <bruno@clisp.org>
2212         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
2214 2006-01-22  Bruno Haible  <bruno@clisp.org>
2216         * src/iconv.c: Include error.h, exit.h.
2217         (print_version): Use EXIT_SUCCESS.
2218         (check_subst_formatstring, subst_mb_to_uc_fallback,
2219         subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
2220         subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
2221         error() instead of fprintf to stderr.
2223 2006-01-22  Bruno Haible  <bruno@clisp.org>
2225         New feature: character-dependent substitutions.
2226         * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
2227         iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
2228         iconv_wchar_wc_to_mb_fallback): New types.
2229         (struct iconv_fallbacks): New structure type.
2230         (ICONV_SET_FALLBACKS): New macro.
2231         * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
2232         * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
2233         * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2234         include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
2235         * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
2236         * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
2237         (uc_to_mb_write_replacement): New function.
2238         (struct mb_to_uc_fallback_locals): New type.
2239         (mb_to_uc_write_replacement): New function.
2240         (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
2241         (unicode_loop_reset): Call uc_to_mb_fallback.
2242         * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
2243         (wc_to_mb_write_replacement): New function.
2244         (wchar_from_loop_convert): Call wc_to_mb_fallback.
2245         (struct mb_to_wc_fallback_locals): New type.
2246         (mb_to_wc_write_replacement): New function.
2247         (wchar_to_loop_convert): Call mb_to_wc_fallback.
2248         * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
2249         (iconvctl): Handle ICONV_SET_FALLBACKS.
2250         * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
2251         * src/iconv.c: Include limits.h.
2252         (isdigit, c_isprint): New macros.
2253         (usage): Document long options and new options.
2254         (check_subst_formatstring): New function.
2255         (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
2256         variables.
2257         (ilseq_byte_subst_size, ilseq_wchar_subst_size,
2258         ilseq_unicode_subst_size): New variables.
2259         (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
2260         ilseq_unicode_subst_buffer): New variables.
2261         (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
2262         (subst_mb_to_uc_fallback): New function.
2263         (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
2264         (subst_uc_to_mb_fallback): New function.
2265         (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
2266         (subst_mb_to_wc_fallback): New function.
2267         (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
2268         (subst_wc_to_mb_fallback): New function.
2269         (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
2270         (subst_mb_to_mb_fallback): New function.
2271         (convert): Enlarge the outbuf when the conversion failed with E2BIG.
2272         (main): Handle new options --byte-subst, --widechar-subst,
2273         --unicode-subst.
2274         * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
2275         options.
2276         * tests/check-subst: New file.
2277         * tests/Makefile.in (check): Also invoke check-subst.
2278         Suggested by James Taylor <james@oakseed.demon.co.uk>.
2280 2006-01-21  Bruno Haible  <bruno@clisp.org>
2282         * src/iconv.c (print_version): Bump copyright year.
2283         (main): Accept long options --from-code, --to-code, --list, --silent.
2284         Accept abbreviated long options, like getopt() does.
2285         * man/iconv.1: Document long options.
2287 2005-12-29  Bruno Haible  <bruno@clisp.org>
2289         * src/iconv.c (print_version): Update copyright year.
2291 2005-12-29  Bruno Haible  <bruno@clisp.org>
2293         * configure.ac: Renamed from configure.in.
2294         * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
2296 2005-12-29  Bruno Haible  <bruno@clisp.org>
2298         * configure.in: Bump version number.
2299         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2300         * windows/iconv.rc: Likewise.
2301         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
2303 2005-12-29  Bruno Haible  <bruno@clisp.org>
2305         * build-aux/config.guess: Update to GNU version 2005-12-23.
2306         * build-aux/config.sub: Likewise.
2307         * build-aux/config.libpath: Update from GNU gettext.
2308         * build-aux/install-sh: Upgrade to automake-1.9.5.
2309         * build-aux/missing: Upgrade to automake-1.9.5.
2310         * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
2312 2005-12-29  Bruno Haible  <bruno@clisp.org>
2314         * m4/alloca.m4: Update from GNU gettext.
2315         * m4/allocsa.m4: Update from GNU gettext.
2316         * m4/canonicalize.m4: Update from GNU gettext.
2317         * m4/codeset.m4: Update from GNU gettext.
2318         * m4/eealloc.m4: Update from GNU gettext.
2319         * m4/error.m4: Update from GNU gettext.
2320         * m4/extensions.m4: Update from GNU gettext.
2321         * m4/gettext.m4: Update from GNU gettext.
2322         * m4/glibc21.m4: Update from GNU gettext.
2323         * m4/iconv.m4: Update from GNU gettext.
2324         * m4/intmax.m4: Update from GNU gettext.
2325         * m4/inttypes_h.m4: New file, from GNU gettext.
2326         * m4/isc-posix.m4: Update from GNU gettext.
2327         * m4/lcmessage.m4: Update from GNU gettext.
2328         * m4/longdouble.m4: Update from GNU gettext.
2329         * m4/longlong.m4: Update from GNU gettext.
2330         * m4/mbstate_t.m4: Update from GNU gettext.
2331         * m4/nls.m4: Update from GNU gettext.
2332         * m4/onceonly.m4: Update from GNU gettext.
2333         * m4/pathmax.m4: Update from GNU gettext.
2334         * m4/po.m4: Update from GNU gettext.
2335         * m4/printf-posix.m4: Update from GNU gettext.
2336         * m4/progtest.m4: Update from GNU gettext.
2337         * m4/readlink.m4: Update from GNU gettext.
2338         * m4/relocatable.m4: Update from GNU gettext.
2339         * m4/setenv.m4: Update from GNU gettext.
2340         * m4/signed.m4: Update from GNU gettext.
2341         * m4/ssize_t.m4: Update from GNU gettext.
2342         * m4/stdbool.m4: Update from GNU gettext.
2343         * m4/stdint_h.m4: New file, from GNU gettext.
2344         * m4/strerror.m4: Update from GNU gettext.
2345         * m4/strerror_r.m4: Update from GNU gettext.
2346         * m4/unlocked-io.m4: Update from GNU gettext.
2347         * m4/wchar_t.m4: Update from GNU gettext.
2348         * m4/wint_t.m4: Update from GNU gettext.
2349         * m4/xreadlink.m4: Update from GNU gettext.
2350         * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
2351         m4/stdint_h.m4 as well.
2352         * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
2353         Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
2354         Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
2355         Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
2356         Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
2357         SRCLIBOBJS instead of LIBOBJS.
2358         * srclib/alloca_.h: Update from GNU gettext.
2359         * srclib/allocsa.h: Update from GNU gettext.
2360         * srclib/canonicalize.c: Update from GNU gettext.
2361         * srclib/error.h: Update from GNU gettext.
2362         * srclib/error.c: Update from GNU gettext.
2363         * srclib/gettext.h: Update from GNU gettext.
2364         * srclib/memmove.c: Update from GNU gettext.
2365         * srclib/progname.h: Update from GNU gettext.
2366         * srclib/progname.c: Update from GNU gettext.
2367         * srclib/progreloc.c: Update from GNU gettext.
2368         * srclib/readlink.c: Update from GNU gettext.
2369         * srclib/relocatable.c: Update from GNU gettext.
2370         * srclib/relocwrapper.c: Update from GNU gettext.
2371         * srclib/setenv.h: Update from GNU gettext.
2372         * srclib/setenv.c: Update from GNU gettext.
2373         * srclib/stdbool_.h: Update from GNU gettext.
2374         * srclib/stdint_.h: Update from gnulib.
2375         * srclib/strerror.c: Update from GNU gettext.
2376         * srclib/unlocked-io.h: Update from GNU gettext.
2377         * srclib/unsetenv.c: Update from GNU gettext.
2378         * srclib/xalloc.h: Update from GNU gettext.
2379         * srclib/xmalloc.c: Update from GNU gettext.
2380         * srclib/xreadlink.c: Update from GNU gettext.
2381         * srclib/xstrdup.c: Update from GNU gettext.
2382         * srclib/Makefile.am (DEFS): Also define EXEEXT.
2383         (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
2384         (libicrt_a_DEPENDENCIES): New variable.
2385         * src/Makefile.in (EXEEXT): New variable.
2386         * build-aux/install-reloc: Update from GNU gettext.
2387         * build-aux/reloc-ldflags: Update from GNU gettext.
2388         * build-aux/config.rpath: Update from GNU gettext.
2390 2005-12-29  Bruno Haible  <bruno@clisp.org>
2392         * m4/libtool.m4: Update, based on libtool-1.5.22.
2393         * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
2395 2005-12-24  Bruno Haible  <bruno@clisp.org>
2397         Check the whole range of GB18030.
2398         * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
2399         * tests/gengb18030z.c: New file.
2400         * tests/table-from.c (main): For GB18030, don't stop at U+10000.
2401         * tests/table-to.c (main): Likewise.
2402         * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
2403         GB18030-BMP.TXT.
2404         (clean): Remove also gengb18030z and GB18030.TXT.
2405         * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
2406         GB18030-BMP.TXT.
2407         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2408         * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
2409         GB18030.TXT on the fly from GB18030-BMP.TXT.
2410         (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2412 2005-12-20  Bruno Haible  <bruno@clisp.org>
2414         * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
2415         up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
2416         to nothing.
2418 2005-12-22  Bruno Haible  <bruno@clisp.org>
2420         Extend GB18030 converter to cover the entire Unicode PUA.
2421         * lib/gb18030.h: Update comments, based on second printing.
2422         (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
2423         (gb18030_pua2charset): New array.
2424         (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
2425         part of range U+E766..U+E864.
2426         * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
2427         area.
2428         (gb18030ext_mbtowc): Add mapping for the two-byte part of range
2429         U+E766..U+E864.
2430         * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
2431         gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
2432         intervals.
2433         (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
2434         * tests/GB18030.TXT: Complete mappings to private area.
2436 2005-12-22  Bruno Haible  <bruno@clisp.org>
2438         * lib/gbk.h: Update comments.
2440 2005-12-20  Bruno Haible  <bruno@clisp.org>
2442         Add private area mappings to CP949.
2443         * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
2444         many others do it.
2445         * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
2447 2005-12-15  Bruno Haible  <bruno@clisp.org>
2449         Add private area mappings to CP950.
2450         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
2451         most others do it.
2452         * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
2454 2005-12-15  Bruno Haible  <bruno@clisp.org>
2456         Make CP936 follow what Microsoft does.
2457         In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
2458         added a 0x80 - U+20AC mapping to the code chart, but not to the
2459         tooltips and not to the list of mappings.
2460         * lib/cp936.h: New file.
2461         * lib/gbk.h: Update comments.
2462         * lib/ces_gbk.h: Update comments.
2463         * lib/converters.h: Include cp936.h.
2464         * lib/encodings.def (CP936): New encoding.
2465         (GBK): Remove CP936 aliases.
2466         * README, man/iconv_open.3: Add CP936.
2467         * tests/Makefile.in (check): Check CP936.
2468         * tests/Makefile.msvc (check): Likewise.
2469         * tests/Makefile.os2 (check): Likewise.
2470         * tests/CP936.TXT: New file.
2472 2005-12-14  Bruno Haible  <bruno@clisp.org>
2474         * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
2475         U+FFE1 like Microsoft does it.
2476         * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
2477         Reported by Lei Wang <lwang@qilinsoft.com>.
2479 2005-12-14  Bruno Haible  <bruno@clisp.org>
2481         Follow Euro sign addition done in 1999 in
2482         http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
2483         * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
2484         * tests/CP950.TXT: Add mapping for 0xA3E1.
2486 2005-11-11  Bruno Haible  <bruno@clisp.org>
2488         * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
2489         and only two bytes are available in the output buffer, return
2490         RET_TOOSMALL instead of overrunning the output buffer.
2491         * lib/isoir165.h (isoir165_wctomb): When only one byte is available
2492         in the output buffer, don't overrun the output buffer.
2493         Reported by William Bardwell <bardwell@curl.com>.
2495 2005-09-18  Bruno Haible  <bruno@clisp.org>
2497         * m4/libtool.m4: Update, based on libtool-1.5.20.
2498         * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
2500 2005-08-12  Bruno Haible  <bruno@clisp.org>
2502         * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
2503         * tests/BIG5-2003.TXT: Likewise.
2504         * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
2505         Reported by Ping Yeh <ping@pingyeh.net>.
2507 2005-07-24  Bruno Haible  <bruno@clisp.org>
2509         Tidy up exported symbols.
2510         * m4/visibility.m4: New file.
2511         * include/export.h: New file.
2512         * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
2513         create also include/iconv.h.inst.
2514         * Makefile.devel (all): Depend on include/iconv.h.build.in.
2515         (aclocal.m4): Depend on m4/visibility.m4.
2516         (include/iconv.h.build.in): New rule.
2517         * Makefile.in (install-lib, install): Install include/iconv.h.inst,
2518         not the include/iconv.h that was used for building.
2519         (distclean, maintainer-clean): Remove also include/iconv.h.inst.
2520         * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
2521         (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
2522         * lib/config.h.in (HAVE_VISIBILITY): New macro.
2523         * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2524         Define to the gcc visibility attribute.
2525         * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2526         Likewise.
2528 2005-07-25  Bruno Haible  <bruno@clisp.org>
2530         2003-08-24  Bruno Haible  <bruno@clisp.org>
2531         * lib/relocatable.h: Make this file includable in C++ mode: add extern
2532         "C".
2534 2005-07-08  Bruno Haible  <bruno@clisp.org>
2536         * Version 1.10 released.
2538 2005-07-08  Bruno Haible  <bruno@clisp.org>
2540         * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
2541         executable after installing it.
2543 2005-07-08  Bruno Haible  <bruno@clisp.org>
2545         * configure.in: Bump version number.
2546         * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2547         * windows/iconv.rc: Likewise.
2548         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
2550 2005-07-05  Bruno Haible  <bruno@clisp.org>
2552         * Makefile.devel (ACLOCAL): New variable.
2553         (aclocal.m4): Use it.
2555 2005-07-05  Bruno Haible  <bruno@clisp.org>
2557         * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
2558         SET_RELOCATABLE to a trivial value.
2560 2004-08-08  Bruno Haible  <bruno@clisp.org>
2562         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2563         be used.
2565 2004-04-28  Bruno Haible  <bruno@clisp.org>
2567         * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
2568         Treat Cygwin like Windows, since it now accepts Windows pathnames.
2570 2005-06-09  Bruno Haible  <bruno@clisp.org>
2572         * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
2573         * lib/Makefile.in (mkinstalldirs): Likewise.
2574         * src/Makefile.in (mkinstalldirs): Likewise.
2575         * man/Makefile.in (mkinstalldirs): Likewise.
2577 2005-06-08  Bruno Haible  <bruno@clisp.org>
2579         * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
2580         that don't support symbolic links.
2582 2005-06-08  Bruno Haible  <bruno@clisp.org>
2584         * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
2585         gcc warning on mingw.
2587 2005-05-22  Bruno Haible  <bruno@clisp.org>
2589         Implement and document BIG5-2003.
2590         * lib/big5_2003.h: New file.
2591         * lib/converters.h: Include it.
2592         * lib/encodings_extra.def (BIG5-2003): New encoding.
2593         * README, man/iconv_open.3: Add BIG5-2003.
2594         * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
2595         * tests/BIG5-2003.TXT: New file.
2597 2005-05-21  Bruno Haible  <bruno@clisp.org>
2599         Add EURO SIGN to EUC-TW converter.
2600         * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
2601         (cns11643_1_mbtowc): Update.
2602         * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
2603         (cns11643_inv_uni2indx_page*): Update.
2604         * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
2605         part of row 42.
2606         * tests/EUC-TW.TXT: Add entry for 0x20AC.
2607         * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
2609 2005-05-03  Bruno Haible  <bruno@clisp.org>
2611         * tools/Makefile (ALL): Add pt154.h.
2612         (pt154.h): New rule.
2613         * lib/encodings.def: Add PT154.
2614         * lib/pt154.h: New file.
2615         * lib/converters.h: Include it.
2616         * README, man/iconv_open.3: Add PT154.
2617         * NOTES: Mention PT154.
2618         * tests/PT154.TXT: New file.
2619         * tests/Makefile.in (check): Also test PT154.
2620         * tests/Makefile.msvc (check): Likewise.
2621         * tests/Makefile.os2 (check): Likewise.
2623 2005-03-29  Bruno Haible  <bruno@clisp.org>
2625         Rename libiconv_plug.so to preloadable_libiconv.so.
2626         * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
2627         libiconv_plug.so.
2628         * lib/Makefile.in (preloadable_libiconv.so): Renamed from
2629         libiconv_plug.so.
2630         (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
2631         (preloadable_libiconv_solaris.so): Renamed from
2632         libiconv_plug_solaris.so.
2633         (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
2634         (clean): Update.
2635         * README: Update.
2637 2005-03-29  Bruno Haible  <bruno@clisp.org>
2639         Implement and document ATARIST.
2640         * tools/Makefile (ALL): Add atarist.h.
2641         (atarist.h): New rule.
2642         * lib/atarist.h: New file.
2643         * lib/converters.h: Include it.
2644         * lib/encodings_extra.def (ATARIST): New encoding.
2645         * README, man/iconv_open.3: Add ATARIST.
2646         * tests/Makefile.in (check-extra-yes): Check ATARIST.
2647         * tests/ATARIST.TXT: New file.
2649 2005-03-22  Bruno Haible  <bruno@clisp.org>
2651         * build-aux: New directory, renamed from autoconf.
2652         * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2654 2005-03-16  Bruno Haible  <bruno@clisp.org>
2656         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
2657         HAVE_LONGLONG_64BIT.
2658         * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
2659         HAVE_LONGLONG_64BIT.
2660         * srclib/Makefile.am (stdint.h): Likewise.
2662 2005-03-14  Bruno Haible  <bruno@clisp.org>
2664         * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
2665         extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
2666         printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
2667         wchar_t.m4, wint_t.m4.
2669 2005-03-13  Bruno Haible  <bruno@clisp.org>
2671         Make stdout error checking reliable, also when writing to a NFS file.
2672         * src/iconv.c (main): Check the return value of fclose(stdout).
2673         * lib/genaliases.c (main): Likewise.
2674         * lib/genaliases2.c (main): Likewise.
2675         * lib/genflags.c (main): Likewise.
2676         * lib/gentranslit.c (main): Likewise.
2677         * tests/genutf8.c (main): Likewise.
2678         * tests/table-from.c (main): Likewise.
2679         * tests/table-to.c (main): Likewise.
2681 2005-03-13  Bruno Haible  <bruno@clisp.org>
2683         * src/iconv.c (convert): Before outputting an error message, flush
2684         stdout and output a newline if suitable.
2686 2005-03-13  Bruno Haible  <bruno@clisp.org>
2688         Improved error messages.
2689         * srclib/width.c: New file, from GNU clisp.
2690         * srclib/uniwidth.h: New file, from GNU clisp with modifications.
2691         * srclib/unitypes.h: New file, from GNU clisp with modifications.
2692         * srclib/cjk.h: New file, from GNU clisp.
2693         * srclib/streq.h: New file, from GNU clisp.
2694         * srclib/stdint_.h: New file, from gnulib.
2695         * m4/stdint.m4: New file, from gnulib.
2696         * m4/inttypes.m4: New file, from gnulib.
2697         * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
2698         (BUILT_SOURCES): New variable.
2699         (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
2700         streq.h.
2701         * configure.in: Invoke gl_STDINT_H.
2702         * src/iconv.c: Include cjk.h, uniwidth.h.
2703         (line, column, cjkcode): New variables.
2704         (update_line_column): New function.
2705         (convert): Initialize line and column. In all error message, show also
2706         the line and column number.
2707         (main): Initialize cjkcode. Set up hooks to call update_line_column.
2709 2005-03-13  Bruno Haible  <bruno@clisp.org>
2711         * include/iconv.h.in (iconv_canonicalize): New declaration.
2712         * lib/genaliases.c (emit_encoding): Take two output streams as
2713         arguments. To the second stream, emit a shell command for extracting
2714         offsets into the gperf generated string pool.
2715         (main): Write the shell commands into file descriptors 3 and 4.
2716         * lib/genaliases2.c (emit_encoding): Take two output streams as
2717         arguments. To the second stream, emit an expression for the offset
2718         into the string pool.
2719         (main): Write the offsets into file descriptor 3.
2720         * Makefile.devel (lib/aliases.gperf): Remove target.
2721         (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
2722         lib/canonical.h and lib/canonical_local.h.
2723         (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
2724         (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
2725         (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
2726         (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
2727         * lib/iconv.c (stringpool2): Provide default definition when it doesn't
2728         exist.
2729         (all_canonical): New array.
2730         (iconv_canonicalize): New function.
2732 2005-03-13  Bruno Haible  <bruno@clisp.org>
2734         * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
2735         iconv_hooks): New types.
2736         (ICONV_SET_HOOKS): New macro.
2737         * lib/converters.h (struct conv_struct): Add field 'hooks'.
2738         * lib/iconv.c (iconv_open): Initialize hooks to NULL.
2739         (iconvctl): Handle ICONV_SET_HOOKS.
2740         * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
2741         conversion of a character, call the uc_hook.
2742         * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
2743         the wc_hook.
2744         * lib/genflags.c (iconv_hooks): Provide a dummy definition.
2746 2005-02-05  Bruno Haible  <bruno@clisp.org>
2748         * src/iconv.c (main): In case of unsupported encodings, show a hint
2749         towards "iconv -l".
2751 2005-01-06  Bruno Haible  <bruno@clisp.org>
2753         * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
2754         * lib/Makefile.vms (DEFS): Likewise.
2755         Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2757 2005-01-05  Bruno Haible  <bruno@clisp.org>
2759         * autoconf/config.rpath: Update from GNU gettext.
2761 2005-01-05  Bruno Haible  <bruno@clisp.org>
2763         Assume automake-1.9.
2764         * Makefile.devel (AUTOMAKE): Assume automake-1.9.
2766 2005-01-05  Bruno Haible  <bruno@clisp.org>
2768         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
2769         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2771 2004-11-11  Bruno Haible  <bruno@clisp.org>
2773         * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
2774         in arbitrary order.
2775         Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2777 2004-09-21  Juan Manuel Guerrero  <st001906@hrz1.hrz.tu-darmstadt.de>
2779         * djgpp/config.bat: Update.
2780         * djgpp/config.sed: Update.
2781         * djgpp/config.site: Update.
2782         * djgpp/edtest.bat: Update.
2783         * djgpp/fnchange.in: Update.
2784         * djgpp/Makefile.maint: Update.
2785         * djgpp/makefile.sed: Update.
2786         * djgpp/README.in: Update.
2787         * djgpp/sources.sed: Update.
2788         * djgpp/translit-check.sed: Update.
2790 2004-08-25  Bruno Haible  <bruno@clisp.org>
2792         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
2793         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2795 2004-07-31  Bruno Haible  <bruno@clisp.org>
2797         Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
2798         * tools/Makefile (jisx0213.h): Bump version number.
2799         * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
2800         U+2299 -> U+29BF, and add 10 new characters.
2801         * tools/cjk_tab_to_h.c (output_title): Bump year.
2802         (do_jisx0213): Update comments. Emit a conditional 'inline'.
2803         * lib/jisx0213.h: Regenerated.
2804         * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
2805         ESC $ ( Q as a synonym of ESC $ ( O.
2806         (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
2807         * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
2808         U+2299 -> U+29BF, and add 10 new characters.
2809         * tests/SHIFT_JISX0213.TXT: Likewise.
2810         * tests/ISO-2022-JP-3-snippet: Update.
2811         * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2813 2004-07-22  Bruno Haible  <bruno@clisp.org>
2815         * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
2816         * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
2817         * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
2818         * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2820 2004-07-22  Bruno Haible  <bruno@clisp.org>
2822         * tools/Makefile (ALL): Add iso8859_11.h.
2823         (iso8859_11.h): New rule.
2824         * lib/encodings.def: Add ISO-8859-11.
2825         * lib/iso8859_11.h: New file.
2826         * lib/converters.h: Include it.
2827         * tests/ISO-8859-11.TXT: New file.
2828         * tests/Makefile.in (check): Also test ISO-8859-11.
2829         * tests/Makefile.msvc (check): Likewise.
2830         * tests/Makefile.os2 (check): Likewise.
2832 2004-07-17  Bruno Haible  <bruno@clisp.org>
2834         * src/iconv.c (main): Terminate option parsing when option -- is seen.
2835         Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2837 2004-03-05  Bruno Haible  <bruno@clisp.org>
2839         * src/Makefile.in (install): Make DESTDIR work on HP-UX.
2840         Reported by Bob Proulx <box@proulx.com>.
2842 2004-02-19  Bruno Haible  <bruno@clisp.org>
2844         * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
2845         0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
2846         (viet_comp_table0301_len): Increment by 4.
2848         * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
2849         which are not entries in cp1255_comp_table_data.
2850         * lib/cp1258.h (cp1258_comp_bases): New array.
2851         (cp1258_mbtowc): Don't delay the handling of characters which are not
2852         relevant entries in viet_comp_table_data.
2853         * lib/tcvn.h (tcvn_comp_bases): New array.
2854         (tcvn_mbtowc): Don't delay the handling of characters which are not
2855         relevant entries in viet_comp_table_data.
2856         Reported by Alain Bench <veronatif@free.fr>.
2858 2004-02-02  Perry Rapp  <lifelines_3_0_18@hotmail.com>
2859             Bruno Haible  <bruno@clisp.org>
2861         * man/iconvctl.3: New file.
2862         * man/iconv.3: Refer to it in "See also".
2863         * man/iconv_open.3: Likewise.
2865 2004-01-24  Bruno Haible  <bruno@clisp.org>
2867         * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2868         be used.
2870 2004-01-20  Bruno Haible  <bruno@clisp.org>
2872         Upgrade from gettext-0.14.
2874         * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
2875         instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
2876         * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
2877         xalloc.h. Remove xmalloc.h.
2878         (libicrt_a_LIBADD): Remove @ALLOCA@.
2879         * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
2880         (allocsa.obj): New rule.
2881         * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
2882         (allocsa.obj): New rule.
2883         * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
2884         (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
2886     lib/:
2888         2003-10-09  Bruno Haible  <bruno@clisp.org>
2889         * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2891         2003-08-01  Bruno Haible  <bruno@clisp.org>
2892         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2893         Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2895         2003-06-22  Bruno Haible  <bruno@clisp.org>
2896         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2897         the case when it is not used.
2898         Reported by Pavel Roskin <proski@gnu.org>.
2900     m4/:
2902         * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
2903         * m4/po.m4: Likewise.
2905         * m4/readlink.m4: New file, from GNU gettext.
2907         2003-11-30  Bruno Haible  <bruno@clisp.org>
2908         * m4/allocsa.m4: New file.
2909         * m4/eealloc.m4: New file.
2910         * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
2911         AC_FUNC_ALLOCA.
2913         2003-10-21  Bruno Haible  <bruno@clisp.org>
2914         * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
2915         readlink().
2917         2003-08-24  Bruno Haible  <bruno@clisp.org>
2918         * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
2919         since the substitution of @host@ may occur before the substitution of
2920         @SET_RELOCATABLE@.
2922         2003-08-23  Bruno Haible  <bruno@clisp.org>
2923         * stdbool.m4: Replace with the version from gnulib, without
2924         AC_HEADER_STDBOOL.
2926         2003-08-08  Paul Eggert  <eggert@twinsun.com>
2927         * m4/extensions.m4: New file.
2928         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
2929         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
2931         2003-07-01  Bruno Haible  <bruno@clisp.org>
2932         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
2933         <sys/types.h> should be sufficient.
2934         Reported by Paul Eggert.
2936         2003-07-01  Bruno Haible  <bruno@clisp.org>
2937         * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
2938         from aclocal-1.4-p4.
2939         Reported by Luke Schierer <lschiere@rackspace.com> and
2940         Michael C. Toren <mct@toren.net>.
2942         2003-07-01  Paul Eggert  <eggert@twinsun.com>
2943         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
2944         xreadlink.c now includes it unconditionally.
2946         2003-06-17  Paul Eggert  <eggert@twinsun.com>
2947         * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
2948         for portability to POSIX 1003.1-2001.  Backported from libtool-1.5.
2950         2003-05-28  Paul Eggert  <eggert@twinsun.com>
2951         * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
2952         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
2954         2002-12-24  Bruno Haible  <bruno@clisp.org>
2955         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
2956         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
2957         when invoked twice.
2958         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
2959         gt_FUNC_SETENV.
2961     srclib/:
2963         2003-11-30  Bruno Haible  <bruno@clisp.org>
2964         * srclib/alloca.c: Remove file.
2966         2003-11-30  Bruno Haible  <bruno@clisp.org>
2967         Safer stack allocation.
2968         * srclib/allocsa.h: New file.
2969         * srclib/allocsa.c: New file.
2970         * canonicalize.c: Include allocsa.h.
2971         (__realpath): Use allocsa instead of alloca. Don't clobber errno right
2972         before returning NULL.
2973         * srclib/relocwrapper.c: Indirectly depends on allocsa.
2974         * srclib/setenv.c: Include allocsa.h.
2975         (alloca): Remove fallback definition.
2976         (freea): Remove macro.
2977         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
2978         instead of freea.
2980         2003-11-17  Bruno Haible  <bruno@clisp.org>
2981         * srclib/canonicalize.c: #undef realpath after <config.h> but before
2982         the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
2983         Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2985         2003-10-21  Bruno Haible  <bruno@clisp.org>
2986         * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
2987         systems without symbolic links.
2989         2003-10-17  Bruno Haible  <bruno@clisp.org>
2990         * srclib/binary-io.h: Avoid warnings on Cygwin.
2992         2003-10-09  Bruno Haible  <bruno@clisp.org>
2993         * srclib/xalloc.h: Renamed from xmalloc.h.
2994         * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
2995         * srclib/relocatable.c: Likewise.
2996         * srclib/xmalloc.c: Likewise.
2997         * srclib/xreadlink.c: Likewise.
2998         * srclib/xstrdup.c: Likewise.
3000         2003-09-12  Paul Eggert  <eggert@twinsun.com>
3001         * srclib/progreloc.c (get_full_program_name): Define via prototype.
3003         2003-09-12  Paul Eggert  <eggert@twinsun.com>
3004         * srclib/setenv.c (clearenv): Define via prototype.
3006         2003-09-10  Bruno Haible  <bruno@clisp.org>
3007         * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
3008         * srclib/unsetenv.c: Likewise.
3010         2003-08-28  Bruno Haible  <bruno@clisp.org>
3011         * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
3012         a warning on QNX, which defines O_BINARY to 000000.
3014         2003-08-24  Bruno Haible  <bruno@clisp.org>
3015         * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
3016         when MSVC7 <stdio.h> is included later.
3018         2003-08-24  Bruno Haible  <bruno@clisp.org>
3019         * srclib/error.h: Use ANSI C "..." declarations when compiling with
3020         MSVC, even though it doesn't define __STDC__ by default.
3021         * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
3022         it doesn't define __STDC__ by default.
3024         2003-08-24  Bruno Haible  <bruno@clisp.org>
3025         Support for building DLLs on Windows.
3026         * srclib/error.h (error_print_progname, error_message_count,
3027         error_one_per_line): Add DLL_VARIABLE attribute.
3028         * srclib/progname.h (program_name): Likewise.
3030         2003-08-24  Bruno Haible  <bruno@clisp.org>
3031         * srclib/progname.h: Make this file includable in C++ mode: add extern
3032         "C".
3033         * srclib/relocatable.h: Likewise.
3034         * srclib/xmalloc.h: Likewise.
3036         2003-08-22  Bruno Haible  <bruno@clisp.org>
3037         * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
3038         declarations.
3039         * srclib/progname.c (error_with_progname): Remove variable.
3040         (maybe_print_progname): Remove function.
3042         2003-08-01  Bruno Haible  <bruno@clisp.org>
3043         * srclib/relocatable.c (find_shared_library_fullname): Disable the code
3044         on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3046         2003-07-01  Paul Eggert  <eggert@twinsun.com>
3047         * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
3048         having it depend on HAVE_SYS_TYPES_H.
3050         2003-06-23  Bruno Haible  <bruno@clisp.org>
3051         Avoid compilation units that are empty after preprocessing.
3052         * srclib/canonicalize.c: Add dummy declaration.
3053         * srclib/strerror.c: Likewise.
3054         * srclib/error.c: Include <stdio.h> even if there's nothing to be
3055         compiled.
3057         2003-06-22  Bruno Haible  <bruno@clisp.org>
3058         * srclib/relocatable.c (compute_curr_prefix): Comment out this function
3059         in the case when it is not used.
3060         Reported by Pavel Roskin <proski@gnu.org>.
3062         2003-05-28  Paul Eggert  <eggert@twinsun.com>
3063         * srclib/pathmax.h: Include <limits.h> without checking for
3064         HAVE_LIMITS_H.
3065         * srclib/xreadlink.c: Likewise.
3067 2004-01-20  Bruno Haible  <bruno@clisp.org>
3069         Assume automake-1.8.
3070         * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
3071         (AUTOMAKE): Assume automake-1.8.
3072         * Makefile.in (am--refresh): New target.
3074 2004-01-23  Bruno Haible  <bruno@clisp.org>
3076         * Version 1.9.2 released.
3078 2004-01-23  Bruno Haible  <bruno@clisp.org>
3080         * tests/table-from.c: Include binary-io.h.
3081         (main): Switch stdout to binary mode.
3082         * tests/table-to.c: Include binary-io.h.
3083         (main): Switch stdout to binary mode.
3084         * tests/genutf8.c: Include binary-io.h.
3085         (main): Switch stdout to binary mode.
3086         * tests/Makefile.in (INCLUDES): Also look in srclib.
3087         (check): Pass INCLUDES when compiling genutf8.c.
3088         * tests/Makefile.os2 (INCLUDES): Also look in srclib.
3089         (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
3090         * tests/Makefile.msvc (INCLUDES): Also look in srclib.
3091         (check): Pass INCLUDES when compiling genutf8.c.
3093 2004-01-21  Bruno Haible  <bruno@clisp.org>
3095         * src/iconv.c (force_binary): Remove variable.
3096         (usage): Don't document --binary any more.
3097         (convert, main): Always switch to binary mode.
3098         * tests/check-stateful.bat: Remove --binary option.
3099         * tests/check-translit.bat: Likewise.
3100         * tests/check-stateful.cmd: Likewise.
3101         * tests/check-translit.cmd: Likewise.
3102         * djgpp/stateful-check.sed: Remove MODE variable.
3103         * djgpp/translit-check.sed: Likewise.
3105 2004-01-21  Bruno Haible  <bruno@clisp.org>
3107         * man/iconv.3: Fix description of return value in case of error.
3108         Reported by Jonathan Wakely <redi@users.sf.net>.
3110 2003-09-12  Paul Eggert  <eggert@twinsun.com>
3112         * srclib/progreloc.c (get_full_program_name): Define via prototype.
3114 2003-08-15  Bruno Haible  <bruno@clisp.org>
3116         * Makefile.devel (lib/translit.h): Add ulimit command so that the
3117         gentranslit program gets the stack it needs. Many Linux distributions
3118         allow only 8 MB of stack by default.
3120 2003-08-01  Bruno Haible  <bruno@clisp.org>
3122         * lib/relocatable.c (find_shared_library_fullname): Disable the code on
3123         Linux/libc5.
3124         * srclib/relocatable.c (find_shared_library_fullname): Likewise.
3125         Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3127 2003-07-02  Bruno Haible  <bruno@clisp.org>
3129         * m4/lib-ld.m4: Update from GNU gettext.
3130         * m4/lib-prefix.m4: Update from GNU gettext.
3131         * m4/gettext.m4: Update from GNU gettext.
3132         * m4/intmax.m4: New file, from GNU gettext.
3133         * m4/longdouble.m4: New file, from GNU gettext.
3134         * m4/longlong.m4: New file, from GNU gettext.
3135         * m4/printf-posix.m4: New file, from GNU gettext.
3136         * m4/signed.m4: New file, from GNU gettext.
3137         * m4/wchar_t.m4: New file, from GNU gettext.
3138         * m4/wint_t.m4: New file, from GNU gettext.
3139         * m4/pathmax.m4: Update from GNU gettext and gnulib.
3140         * m4/ssize_t.m4: Update from GNU gettext and gnulib.
3141         * m4/xreadlink.m4: Update from GNU gettext and gnulib.
3142         * m4/readlink.m4: New file, from gnulib.
3143         * autoconf/install-reloc: Update from GNU gettext.
3144         * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
3145         * srclib/readlink.c: New file, from GNU gettext and gnulib.
3146         * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
3147         (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
3148         * configure.in: Invoke gl_FUNC_READLINK.
3150 2003-06-22  Bruno Haible  <bruno@clisp.org>
3152         * src/Makefile.in (install): Link with the already installed library.
3153         This fixes a link error on Solaris.
3154         Reported by Paul Eggert.
3156 2003-06-08  Bruno Haible  <bruno@clisp.org>
3158         * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
3160 2003-05-02  Bruno Haible  <bruno@clisp.org>
3162         Support for libtool-1.5.
3163         * srclib/progname.c (set_program_name): Remove a leading
3164         "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
3166 2003-06-23  Bruno Haible  <bruno@clisp.org>
3168         Avoid compilation units that are empty after preprocessing.
3169         * srclib/canonicalize.c: Add dummy declaration.
3170         * srclib/strerror.c: Likewise.
3171         * srclib/error.c: Include <stdio.h> even if there's nothing to be
3172         compiled.
3174 2003-06-22  Bruno Haible  <bruno@clisp.org>
3176         Portability to mingw32.
3177         * m4/ssize_t.m4: New file, from GNU gettext.
3178         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
3179         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3181 2003-06-22  Bruno Haible  <bruno@clisp.org>
3183         Portability to mingw32.
3184         * lib/relocatable.c [WIN32]: Include <windows.h>.
3185         * srclib/relocatable.c: Likewise.
3186         Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3188 2003-06-22  Bruno Haible  <bruno@clisp.org>
3190         * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3191         the case when it is not used.
3192         * srclib/relocatable.c (compute_curr_prefix): Likewise.
3193         Reported by Pavel Roskin <proski@gnu.org>.
3195 2003-06-18  Bruno Haible  <bruno@clisp.org>
3197         * config/install-sh: Update from automake-1.7.5.
3199 2003-06-16  Bruno Haible  <bruno@clisp.org>
3201         * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
3202         (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
3203         ISO_8859-16:2000.
3204         (GBK): Add aliases MS936, WINDOWS-936.
3205         Reported by Guido Flohr <guido@imperia.net>.
3207 2003-05-09  Bruno Haible  <bruno@clisp.org>
3209         * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
3210         "extraneous semicolon" warning from Tru64 cc.
3212 2003-06-07  Bruno Haible  <bruno@clisp.org>
3214         * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
3215         * Makefile.vms (config.h): New rule.
3216         (all, install): Depend on it.
3217         (all, install, installdirs, uninstall, check): Fix typo.
3218         (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
3219         config.h.
3220         * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
3221         (OBJECTS): Use libiconv.obj instead of iconv.obj.
3222         (libiconv.obj): Renamed from iconv.obj.
3223         * srclib/Makefile.vms (INCLUDES): Add parent directory.
3224         (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
3225         (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
3226         (alloca.h): New rule.
3227         (canonicalize.obj): Depend on it.
3228         (clean): Remove alloca.h.
3229         * src/Makefile.vms (datadir, localedir): New variables.
3230         (DEFS): Also define LOCALEDIR.
3231         (iconv.obj): Add flags for relocatability,
3232         (iconv.exe): Link with libicrt. Use link_options.
3233         * vms/link_options.opt: New file.
3234         Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
3236 2003-06-07  Bruno Haible  <bruno@clisp.org>
3238         Support for relocatable data files even on Woe32.
3239         * lib/Makefile.msvc (PICFLAGS): Also define PIC.
3241 2003-05-22  Bruno Haible  <bruno@clisp.org>
3243         * Version 1.9.1 released.
3245 2003-05-22  Bruno Haible  <bruno@clisp.org>
3247         * lib/genaliases.c (main): Emit %pic instead of %null-strings.
3248         Change type of 'name' field to 'int'.
3249         * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
3250         invocation of macro S(), including the tag and a counter.
3251         (main): Use the command-line argument as tag.
3252         * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
3253         lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
3254         * lib/iconv.c (stringpool2_t): New type.
3255         (stringpool2_contents): New data table.
3256         (stringpool2): New macro.
3257         (sysdep_aliases): Make position-independent. Move #includes out to
3258         aliases2.h.
3259         (aliases2_lookup): Update.
3260         (nalias): New type.
3261         (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
3262         (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
3263         * lib/aliases2.h: New file, extracted from lib/iconv.c.
3265 2003-05-20  Bruno Haible  <bruno@clisp.org>
3267         * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
3268         Reported by Muraoka Taro <koron@tka.att.ne.jp>.
3270 2003-05-19  Bruno Haible  <bruno@clisp.org>
3272         * windows/iconv.rc: Include <winver.h>.
3273         Reported by Perry Rapp.
3275 2003-05-18  Bruno Haible  <bruno@clisp.org>
3277         * Version 1.9 released.
3279 2003-05-18  Bruno Haible  <bruno@clisp.org>
3281         * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
3283 2003-05-18  Bruno Haible  <bruno@clisp.org>
3285         * lib/Makefile.msvc (DEBUGFLAGS): New variable.
3286         (iconv.lib): Use it.
3287         * src/Makefile.msvc (DEBUGFLAGS): New variable.
3288         * tests/Makefile.msvc (DEBUGFLAGS): New variable.
3290 2003-05-17  Bruno Haible  <bruno@clisp.org>
3292         * src/Makefile.msvc (libdir, datadir, localedir): New variables.
3293         (IIlibdir, IIdatadir, IIlocaledir): New variables.
3294         (CFLAGS): Define LOCALEDIR.
3295         (iconv_no_i18n.exe): New rule.
3296         (all): Depend on it.
3297         * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
3298         * tests/check-translit.bat: Likewise.
3300 2003-05-16  Bruno Haible  <bruno@clisp.org>
3302         * lib/genaliases.c (main): Emit declarations for gperf-3.0.
3303         * Makefile.devel (lib/aliases.h): Remove gperf command line options;
3304         add new option "-m 10" for gperf-3.0.
3306 2003-05-12  Bruno Haible  <bruno@clisp.org>
3308         * m4/error.m4: Update from gettext.
3310 2003-05-12  Bruno Haible  <bruno@clisp.org>
3312         * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
3314 2003-05-12  Bruno Haible  <bruno@clisp.org>
3316         * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
3317         CFLAGS to PICFLAGS.
3319 2003-05-09  Bruno Haible  <bruno@clisp.org>
3321         * srclib/error.c: Update from gnulib with modifications.
3322         * srclib/unlocked-io.h: New file, from gnulib.
3323         * m4/strerror_r.m4: New file, from gnulib.
3324         * m4/unlocked-io.m4: New file, from gnulib.
3325         * Makefile.devel (aclocal.m4): Depend on them.
3327 2003-05-08  Bruno Haible  <bruno@clisp.org>
3329         * Makefile.msvc (IIPREFIX): New variable.
3330         * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
3331         * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
3332         IIincludedir): New variables.
3333         (INCLUDES): Add -I..\windows.
3334         (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
3335         ../srclib/icrt.lib.
3336         Patches by Perry Rapp.
3338 2003-05-07  Bruno Haible  <bruno@clisp.org>
3340         * README.woe32: Fix instructions for step 1.
3341         * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
3342         (strtoul.obj): Remove rule.
3343         Reported by Perry Rapp.
3345 2003-05-07  Bruno Haible  <bruno@clisp.org>
3347         * Makefile.vms: New file.
3348         * lib/Makefile.vms: New file.
3349         * srclib/Makefile.vms: New file.
3350         * src/Makefile.vms: New file.
3351         * man/Makefile.vms: New file.
3352         * tests/Makefile.vms: New file.
3353         * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
3354         New rules.
3355         (all): Depend on them.
3357 2003-05-07  Bruno Haible  <bruno@clisp.org>
3359         * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
3360         (findprog.obj): Remove rule.
3361         * src/Makefile.msvc (includedir): New variable.
3363 2003-05-06  Bruno Haible  <bruno@clisp.org>
3365         * lib/translit.def: Upgrade to Unicode 4.0.
3367 2003-05-06  Bruno Haible  <bruno@clisp.org>
3369         * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
3370         * srclib/Makefile.msvc (CFLAGS): Likewise.
3372         * srclib/Makefile.msvc (INCLUDES): Add -I.. .
3373         Reported by Perry Rapp.
3375         * Makefile.msvc (config.h): New rule.
3376         (all): Depend on it.
3377         (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
3378         Reported by Perry Rapp.
3380 2003-05-06  Bruno Haible  <bruno@clisp.org>
3382         * autoconf/config.guess: Update to GNU version 2003-02-22.
3383         * autoconf/config.sub: Likewise.
3385 2003-05-06  Bruno Haible  <bruno@clisp.org>
3387         * m4/lib-link.m4: Update from GNU gettext.
3388         * autoconf/config.rpath: Update from GNU gettext.
3390         * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
3391         * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
3393         * m4/gettext.m4: Update from GNU gettext.
3394         * m4/nls.m4: Update from GNU gettext.
3395         * m4/po.m4: Update from GNU gettext.
3396         * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
3398 2003-04-12  Bruno Haible  <bruno@clisp.org>
3400         Support for OpenVMS 7.3.
3401         * lib/iconv.c (USE_OSF1): Define also on VMS.
3403 2003-04-12  Bruno Haible  <bruno@clisp.org>
3405         Better support for FreeBSD.
3406         * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
3407         aliases, for compatibility with earlier FreeBSD iconv implementation
3408         by Konstantin Chuguev.
3409         * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
3410         aliases.
3411         * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
3413 2003-04-12  Bruno Haible  <bruno@clisp.org>
3415         * configure.in (mandir): Change default value.
3416         * Makefile.in (datadir): New variable.
3417         (install, installdirs, uninstall): Pass datadir to po and man
3418         directories.
3419         * Makefile.os2 (datadir): New variable.
3420         (mandir): Use it instead of prefix.
3421         (install, uninstall): Pass datadir to man directory.
3422         * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
3423         * man/Makefile.in (datadir): New variable.
3424         (docdir): Use it instead of prefix.
3425         (install, installdirs): Update.
3426         * man/Makefile.os2 (datadir): New variable.
3427         (mandir): Use it instead of prefix.
3428         * man/Makefile.msvc (datadir): New variable.
3429         (mandir, docdir): Use it instead of prefix.
3430         (install, installdirs): Update.
3432 2003-04-06  Bruno Haible  <bruno@clisp.org>
3434         Make it possible to build with or without libintl support on Woe32.
3435         * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
3436         * Makefile.msvc (NO_NLS): New variable.
3437         * srclib/Makefile.msvc (NO_NLS): New variable.
3438         (CFLAGS, INCLUDES): Use them.
3439         * src/Makefile.msvc (NO_NLS): New variable.
3440         (NLSFLAGS, INCINTL, LIBINTL): New variables.
3441         (CFLAGS, INCLUDES, iconv.exe): Use them.
3443 2003-04-12  Bruno Haible  <bruno@clisp.org>
3445         * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
3446         variants transliteration failed with RET_ILUNI, don't return
3447         RET_TOOSMALL.
3448         Reported by the FreeBSD porters.
3450 2003-04-06  Bruno Haible  <bruno@clisp.org>
3452         * srclib/binary-io.h: New file, from GNU gettext.
3453         * src/iconv.c: Include it.
3454         (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
3456 2003-04-05  Bruno Haible  <bruno@clisp.org>
3458         Support for relocatable installation.
3459         * m4/alloca.m4: New file, from GNU gettext.
3460         * m4/canonicalize.m4: New file, from GNU gettext.
3461         * m4/error.m4: New file, from GNU gettext.
3462         * m4/onceonly.m4: New file, from GNU gettext.
3463         * m4/pathmax.m4: New file, from GNU gettext.
3464         * m4/relocatable.m4: New file, from GNU gettext.
3465         * m4/setenv.m4: New file, from GNU gettext.
3466         * m4/stdbool.m4: New file, from GNU gettext.
3467         * m4/strerror.m4: New file, from GNU gettext.
3468         * m4/xreadlink.m4: New file, from GNU gettext.
3469         * autoconf/config.libpath: New file, from GNU gettext.
3470         * autoconf/install-reloc: New file, from GNU gettext.
3471         * autoconf/reloc-ldflags: New file, from GNU gettext.
3472         * autoconf/missing: New file, from GNU automake 1.7.3.
3473         * lib/relocatable.h: New file, from GNU gettext.
3474         * lib/relocatable.c: New file, from GNU gettext.
3475         * srclib/alloca.c: New file, from GNU gettext.
3476         * srclib/alloca_.h: New file, from GNU gettext.
3477         * srclib/canonicalize.c: New file, from GNU gettext.
3478         * srclib/canonicalize.h: New file, from GNU gettext.
3479         * srclib/error.c: New file, from GNU gettext.
3480         * srclib/error.h: New file, from GNU gettext.
3481         * srclib/exit.h: New file, from GNU gettext.
3482         * srclib/gettext.h: New file, from GNU gettext.
3483         * srclib/memmove.c: New file, from GNU gettext.
3484         * srclib/pathmax.h: New file, from GNU gettext.
3485         * srclib/progname.c: New file, from GNU gettext.
3486         * srclib/progname.h: New file, from GNU gettext.
3487         * srclib/progreloc.c: New file, from GNU gettext.
3488         * srclib/relocatable.c: New file, from GNU gettext.
3489         * srclib/relocatable.h: New file, from GNU gettext.
3490         * srclib/relocwrapper.c: New file, from GNU gettext.
3491         * srclib/setenv.c: New file, from GNU gettext.
3492         * srclib/setenv.h: New file, from GNU gettext.
3493         * srclib/stdbool.h.in: New file, from GNU gettext.
3494         * srclib/strerror.c: New file, from GNU gettext.
3495         * srclib/unsetenv.c: New file, from GNU gettext.
3496         * srclib/xmalloc.c: New file, from GNU gettext.
3497         * srclib/xmalloc.h: New file, from GNU gettext.
3498         * srclib/xreadlink.c: New file, from GNU gettext.
3499         * srclib/xreadlink.h: New file, from GNU gettext.
3500         * srclib/xstrdup.c: New file, from GNU gettext.
3501         * srclib/Makefile.am: New file.
3502         * srclib/Makefile.msvc: New file.
3503         * windows/alloca.h: New file, from GNU gettext.
3504         * windows/stdbool.h: New file, from GNU gettext.
3505         * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
3506         Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
3507         string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
3508         AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
3509         gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
3510         gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
3511         * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
3512         HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
3513         localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
3514         relocatable.c.
3515         * lib/Makefile.in (DEFS): New variable.
3516         (SOURCES): Add localcharset.c and relocatable.c.
3517         (OBJECTS): Add localcharset.lo and relocatable.lo.
3518         (LIBCHARSET_OBJECTS): Remove variable.
3519         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3520         libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
3521         (iconv.lo): Use $(DEFS).
3522         (localcharset.lo, relocatable.lo): New rules.
3523         * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
3524         ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
3525         set_relocation_prefix, relocate. Remove $(PICFLAGS).
3526         (INCLUDES): Simplify.
3527         (SOURCES): Remove variable.
3528         (OBJECTS): Add localcharset.obj and relocatable.obj.
3529         (LIBCHARSET_OBJECTS): Remove variable.
3530         (iconv.obj): Add $(PICFLAGS).
3531         (localcharset.obj, relocatable.obj): New rules.
3532         (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
3533         * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
3534         * src/gettext.h: Remove file.
3535         * src/iconv.c: Include progname.h and relocatable.h.
3536         (ICONV_CONST): Define to const if the system has no iconv.
3537         (main): Invoke set_program_name. Relocate LOCALEDIR.
3538         * src/Makefile.in (top_srcdir): New variable.
3539         (INCLUDES): Add .. and ../srclib.
3540         (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
3541         (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
3542         (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
3543         RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
3544         variables.
3545         (iconv): Use $(iconv_LDFLAGS).
3546         (install): Use $(INSTALL_PROGRAM_ENV).
3547         (distclean): Drop removing config.h.
3548         * src/Makefile.msvc (INCLUDES): Add .., simplify.
3549         * tests/Makefile.msvc (INCLUDES): Simplify.
3550         * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
3551         (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
3552         (all): Depend on them.
3553         (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
3554         m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
3555         m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
3556         (lib/config.h.msvc): Additional processing.
3557         * Makefile.in (all, install, installdirs, uninstall, check): Recurse
3558         into srclib.
3559         (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
3560         lib/localcharset.h.
3561         (distclean, maintainerclean): Remove also config.h and some stamps.
3562         * Makefile.msvc (all, install, installdirs, uninstall, check,
3563         mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
3564         * INSTALL.generic: Document --enable-relocatable and
3565         --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
3566         LDFLAGS. The lib-link.m4 macros make this unnecessary.
3568 2003-04-05  Bruno Haible  <bruno@clisp.org>
3570         * configure.in: Bump version number to 1.9.
3571         * include/iconv.h.in (_LIBICONV_VERSION): Bump.
3572         * windows/iconv.rc: Bump version number.
3573         * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
3575 2003-04-05  Bruno Haible  <bruno@clisp.org>
3577         * Makefile.msvc (PREFIX): New variable.
3578         (prefix): Use it.
3579         (distclean, maintainer-clean): Drop Unix specific removals.
3580         * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
3581         (prefix): Use it.
3582         (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
3583         (clean): Drop Unix specific removal.
3584         * src/Makefile.msvc (PREFIX): New variable.
3585         (prefix): Use it.
3586         (clean): Drop Unix specific removal.
3587         (distclean): Likewise.
3588         * tests/Makefile.msvc (clean): Drop Unix specific removal.
3589         (distclean): Likewise.
3591 2003-04-05  Bruno Haible  <bruno@clisp.org>
3593         * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
3595 2003-04-05  Bruno Haible  <bruno@clisp.org>
3597         * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
3598         CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
3599         macros.
3600         * m4/gettext.m4: Update from GNU gettext.
3601         * m4/iconv.m4: Update from GNU gettext.
3602         * m4/lcmessage.m4: Update from GNU gettext.
3603         * m4/progtest.m4: Update from GNU gettext.
3604         * m4/libtool.m4: Update from GNU gettext.
3605         2003-02-16  Bruno Haible  <bruno@clisp.org>
3606                 Workaround autoconf >= 2.52 breakage.
3607                 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
3608                 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
3609         * autoconf/ltmain.sh: Update from GNU gettext.
3610         2003-02-18  Bruno Haible  <bruno@clisp.org>
3611                 Fix the 2002-09-16 fix.
3612                 * ltmain.sh (install): If "ln -s -f" fails (this is the case
3613                 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
3615 2003-04-05  Bruno Haible  <bruno@clisp.org>
3617         Start using automake.
3618         * configure.in: Add AM_INIT_AUTOMAKE invocation.
3619         (PACKAGE, VERSION): Remove.
3620         Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
3621         Use AC_PROG_LN_S instead of CL_PROG_LN_S.
3622         Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
3623         Reorder so that AC_CANONICAL_HOST comes early but still after
3624         AC_PROG_CC.
3625         * m4/ranlib.m4: Remove file.
3626         * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
3627         * Makefile.devel (CLISP_DIR): Comment out.
3628         (AUTOCONF_FILES): Change to aclocal.m4.
3629         (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
3630         (configure.in): Drop --include option.
3632 2003-03-17  Bruno Haible  <bruno@clisp.org>
3634         Improved MSVC support.
3635         * Makefile.msvc (prefix): Use less Unixy value.
3636         (local_prefix): Remove variable.
3637         (libdir, includedir, mandir): Use backslashes.
3638         (bindir, datadir, localedir, docdir): New variables.
3639         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3640         (all): Recurse into po/ and man/.
3641         (install, installdirs, uninstall): Rewritten.
3642         (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
3643         into po/ and man/.
3644         * lib/Makefile.msvc (prefix): Use less Unixy value.
3645         (local_prefix): Remove variable.
3646         (libdir): Use backslashes.
3647         (bindir): New variable.
3648         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
3649         (RESOURCES): Enable iconv.res.
3650         (install, installdirs, uninstall): New rules.
3651         (clean): Remove config.h.
3652         (distclean): Don't remove config.h here.
3653         * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
3654         (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3655         (install, installdirs, uninstall): New rules.
3656         * man/Makefile.msvc: New file.
3657         * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
3658         * Makefile.devel (all): Depend on po/Makefile.msvc.
3659         (po/Makefile.msvc): New rule.
3660         * windows/iconv.rc: Update.
3661         * README.woe32: Mention automatic installation command.
3663         Rename libcharset.h to localcharset.h.
3664         * lib/iconv.c: Include localcharset.h, not libcharset.h.
3665         * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
3666         (all, install): Update dependencies.
3667         (all): Create lib/localcharset.h, not lib/libcharset.h.
3668         (mostlyclean, clean, distclean, maintainer-clean): Remove
3669         lib/localcharset.h, not lib/libcharset.h.
3670         * djgpp/README.in, djgpp/README: Update.
3671         * djgpp/config.bat: Update.
3672         * djgpp/config.sed: Update.
3673         * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
3675 2003-01-31  Bruno Haible  <bruno@clisp.org>
3677         * src/Makefile.in (all): Don't do the chmod if it has already been
3678         done.
3680 2003-01-31  Bruno Haible  <bruno@clisp.org>
3682         * lib/loop_unicode.h (unicode_transliterate): Enable recursive
3683         transliteration. Idea from Perry Rapp.
3684         * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
3685         Change element type of translit_data to 'unsigned int'.
3686         * lib/translit.def: Many new transliterations, mostly taken from glibc.
3687         * lib/translit.h: Regenerated.
3688         * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
3689         * tests/Makefile.in (check): Add Translit1 check.
3690         * tests/Makefile.msvc (check): Likewise.
3691         * tests/Makefile.os2 (check): Likewise.
3692         * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
3693         improved transliteration cannot do.
3695 2003-02-14  Bruno Haible  <bruno@clisp.org>
3697         * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
3698         (configure): Update rule.
3700 2003-01-03  Albert Chin  <libtool@thewrittenword.com>
3702         * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
3703         dependency_libs variable directly down to the linker.
3704         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
3706 2003-01-01  Bruno Haible  <bruno@clisp.org>
3708         * src/Makefile.in (install): Use libiconv.la in ../lib, not in
3709         $(libdir), so that installing with DESTDIR works.
3710         Reported by Michael Adams <michael@michaeladams.org>.
3712 2003-01-01  Bruno Haible  <bruno@clisp.org>
3714         * Makefile.in (mkinstalldirs): New variable.
3715         (install-lib, install, installdirs): Use it instead of mkdir.
3716         * lib/Makefile.in (mkinstalldirs): New variable.
3717         (install-lib, install, installdirs): Use it instead of mkdir.
3718         * man/Makefile.in (mkinstalldirs): New variable.
3719         (install, installdirs): Use it instead of mkdir.
3720         * src/Makefile.in (mkinstalldirs): New variable.
3721         (install, installdirs): Use it instead of mkdir.
3723 2002-09-27  Bruno Haible  <bruno@clisp.org>
3725         * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
3727 2002-11-07  Bruno Haible  <bruno@clisp.org>
3729         * m4/libtool.m4: Upgrade to libtool-1.4.3.
3730         * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
3732 2002-07-14  Bruno Haible  <bruno@clisp.org>
3734         * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
3736 2002-06-12  Bruno Haible  <bruno@clisp.org>
3738         * configure.in: Use new AC_* names of libtool macros. Invoke
3739         AC_LIBTOOL_WIN32_DLL.
3741 2002-12-19  Bruno Haible  <bruno@clisp.org>
3743         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
3744         Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
3746 2002-11-07  Bruno Haible  <bruno@clisp.org>
3748         Make "make install" without prior "make" work.
3749         * Makefile.in (lib/libcharset.h): New rule.
3750         (all, install): Depend on it.
3751         Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
3753 2002-10-28  Bruno Haible  <bruno@clisp.org>
3755         * man/Makefile.in (install): Change directory back to the working
3756         directory, so that install-sh (which may be a relative pathname) is
3757         found in the right place.
3759 2002-09-16  Bruno Haible  <bruno@clisp.org>
3761         * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
3762         "rm -f && ln -s" to make a symlink for a shared library.
3763         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3765 2002-09-02  Bruno Haible  <bruno@clisp.org>
3767         * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
3769 2002-08-16  Bruno Haible  <bruno@clisp.org>
3771         * src/iconv.c (main): Perform fflush before testing ferror(stdout).
3773 2002-05-29  Bruno Haible  <bruno@clisp.org>
3775         * Version 1.8 released.
3777 2002-05-26  Bruno Haible  <bruno@clisp.org>
3779         * lib/c99.h: New file.
3780         * lib/converters.h: Include it.
3781         * lib/encodings.def (C99): New encoding.
3782         * README, man/iconv_open.3: Document C99 encoding.
3784 2002-05-26  Bruno Haible  <bruno@clisp.org>
3786         * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
3787         characters.
3788         (java_wctomb): Produce 12-byte sequences for non-BMP characters.
3790 2002-05-29  Bruno Haible  <bruno@clisp.org>
3792         Fix installation of iconv program when linked with a libintl that was
3793         built against an earlier libiconv.
3794         * src/iconv.c: Conditionally disable NLS.
3795         * src/iconv_no_i18n.c: New file.
3796         * src/Makefile.in (libdir): New variable.
3797         (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
3798         directory writable, so iconv executable can be created during "make
3799         install".
3800         (iconv): Remove rule.
3801         (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
3802         (install): Link iconv now, after the new libiconv.so is installed.
3803         (clean): Also remove iconv_no_i18n.
3804         * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
3805         not iconv.
3806         * tests/check-stateful: Use iconv_no_i18n, not iconv.
3807         * tests/check-translit: LIkewise.
3808         * tests/check-translitfailure: Likewise.
3810 2002-05-29  Bruno Haible  <bruno@clisp.org>
3812         * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
3813         * m4/install.m4: Remove file.
3814         * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
3816 2002-05-24  Bruno Haible  <bruno@clisp.org>
3818         * lib/jisx0213.h: Use 'inline' only conditionally.
3820 2002-05-18  Bruno Haible  <bruno@clisp.org>
3822         * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
3823         README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
3824         Bump version number.
3825         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
3827 2002-02-06  Bruno Haible  <bruno@clisp.org>
3829         * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
3831 2002-02-02  Bruno Haible  <bruno@clisp.org>
3833         * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
3835 2001-11-03  Bruno Haible  <haible@clisp.cons.org>
3837         * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
3838         "make install" succeeds.
3840 2002-05-18  Bruno Haible  <bruno@clisp.org>
3842         * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
3843         from the command line. Needed to ensure that the new libiconv version
3844         is used on FreeBSD.
3846 2002-05-14  Bruno Haible  <bruno@clisp.org>
3848         Implement and document CP853, TDS565, RISCOS-LATIN1.
3849         * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
3850         (cp853.h, tds565.h, riscos1.h): New rules.
3851         * lib/cp853.h: New file.
3852         * lib/tds565.h: New file.
3853         * lib/riscos1.h: New file.
3854         * lib/converters.h: Include them.
3855         * lib/encodings_dos.def (CP853): New encoding.
3856         * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
3857         * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
3858         * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
3859         RISCOS-LATIN1.
3860         * tests/Makefile.msvc (check): Check CP853.
3861         * tests/CP853.TXT: New file.
3862         * tests/TDS565.TXT: New file.
3863         * tests/RISCOS-LATIN1.TXT: New file.
3865         * lib/cp860.h (cp860_wctomb): Optimize.
3867 2002-05-12  Bruno Haible  <bruno@clisp.org>
3869         * tools/Makefile (ksc5601.h): Add two extra characters.
3870         * lib/ksc5601.h: Regenerated.
3871         * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
3872         * tests/CP949.TXT: Likewise.
3873         * tests/JOHAB.TXT: Likewise.
3875 2002-05-12  Bruno Haible  <bruno@clisp.org>
3877         * README: Mention extra encodings.
3878         * man/iconv_open.3: Likewise. Improve formatting in text and html
3879         output formats.
3881 2002-05-12  Bruno Haible  <bruno@clisp.org>
3883         * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
3885 2002-05-12  Bruno Haible  <bruno@clisp.org>
3887         * Makefile.devel (AUTOCONF): New variable.
3888         (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
3889         (configure): Use the AUTOCONF variable.
3890         * autoconf/autoconf: Remove file.
3891         * autoconf/autoconf.m4: Remove file.
3892         * autoconf/autoconf.m4f: Remove file.
3894 2002-05-12  Bruno Haible  <bruno@clisp.org>
3896         * tools/JISX0213.TXT: New file.
3897         * tools/cjk_tab_to_h.c (do_jisx0213): New function.
3898         (main): Accept "jisx0213".
3899         * tools/Makefile (all): Add jisx0213.h.
3900         (jisx0213.h): New rule.
3901         * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
3902         * lib/euc_jisx0213.h: New file.
3903         * lib/shift_jisx0213.h: New file.
3904         * lib/iso2022_jp3.h: New file.
3905         * lib/converters.h: Include them.
3906         * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
3907         ISO-2022-JP-3): New encodings.
3908         * tests/EUC-JISX0213.TXT: New file.
3909         * tests/SHIFT_JISX0213.TXT: New file.
3910         * tests/ISO-2022-JP-3-snippet: New file.
3911         * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
3912         * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
3913         SHIFT_JISX0213, ISO-2022-JP-3.
3914         * tests/check-stateless: Add support for encodings which contain
3915         precomposed Unicode characters, by eliminating precomposed characters
3916         before the comparison.
3917         * tests/table-from.c (main): Fix usage message.
3918         * tests/table-to.c (main): Make it work for encodings for which the
3919         "to" direction is stateful.
3921 2002-05-09  Bruno Haible  <bruno@clisp.org>
3923         New configure option --enable-extra-encodings.
3924         * lib/encodings_extra.def: New file.
3925         * lib/converters.h: Handle USE_EXTRA.
3926         * lib/genaliases2.c (main): Handle USE_EXTRA.
3927         * lib/genflags.c: Define USE_EXTRA.
3928         (main): Include encodings_extra.def.
3929         * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
3930         Handle USE_EXTRA.
3931         * lib/config.h.in (ENABLE_EXTRA): New macro.
3932         * configure.in: Accept option --enable-extra-encodings.
3933         * Makefile.devel (all): Depend on lib/aliases_extra.h.
3934         (lib/aliases_extra.h): New rule.
3935         (lib/flags.h): Depend on lib/encodings_extra.def.
3936         * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
3937         New rules.
3938         (check): Invoke check-extra.
3939         * tests/Makefile.msvc (check): Also check the DOS encodings.
3941         Support for testing the AIX encodings.
3942         * tests/CP856.TXT: New file.
3943         * tests/CP922.TXT: New file.
3944         * tests/CP1046.TXT: New file.
3945         * tests/CP1124.TXT: New file.
3946         * tests/CP1129.TXT: New file.
3947         * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
3948         * tests/CP1162.TXT: New file.
3949         * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
3951         Support for testing the OSF/1 encodings.
3952         * tests/DEC-KANJI.TXT: New file.
3953         * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
3955         Support for testing the DOS encodings.
3956         * tests/CP437.TXT: New file.
3957         * tests/CP737.TXT: New file.
3958         * tests/CP775.TXT: New file.
3959         * tests/CP852.TXT: New file.
3960         * tests/CP855.TXT: New file.
3961         * tests/CP857.TXT: New file.
3962         * tests/CP858.TXT: New file.
3963         * tests/CP860.TXT: New file.
3964         * tests/CP861.TXT: New file.
3965         * tests/CP863.TXT: New file.
3966         * tests/CP864.TXT: New file.
3967         * tests/CP865.TXT: New file.
3968         * tests/CP869.TXT: New file.
3969         * tests/CP1125.TXT: New file.
3971 2002-05-09  Bruno Haible  <bruno@clisp.org>
3973         Implement more ASCII compatible DOS encodings.
3974         * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
3975         (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
3976         * lib/cp737.h: New file.
3977         * lib/cp858.h: New file.
3978         * lib/cp860.h: New file.
3979         * lib/cp863.h: New file.
3980         * lib/converters.h: Include them.
3981         * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
3983 2002-05-09  Bruno Haible  <bruno@clisp.org>
3985         Implement new ASCII compatible encodings from IBM.
3986         * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
3987         (cp1161.h, cp1162.h, cp1163.h): New rules.
3988         * lib/cp1161.h: New file.
3989         * lib/cp1162.h: New file.
3990         * lib/cp1163.h: New file.
3991         * lib/converters.h: Include them.
3992         * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
3994 2002-05-09  Bruno Haible  <bruno@clisp.org>
3996         Implement and document KOI8-T.
3997         * tools/Makefile (ALL): Add koi8_t.h.
3998         (koi8_t.h): New rule.
3999         * lib/koi8_t.h: New file.
4000         * lib/converters.h: Include it.
4001         * lib/encodings.def (KOI8-T): New encoding.
4002         * README, man/iconv_open.3: Add KOI8-T.
4003         * tests/Makefile.in (tests): Check KOI8-T.
4004         * tests/Makefile.os2 (tests): Likewise.
4005         * tests/Makefile.msvc (tests): Likewise.
4006         * tests/KOI8-T.TXT: New file.
4008 2002-05-09  Bruno Haible  <bruno@clisp.org>
4010         * tools/8bit_tab_to_h.c (main): Update copyright year.
4011         * tools/cjk_variants.c (main): Likewise.
4013 2002-05-08  Bruno Haible  <bruno@clisp.org>
4015         * README.woe32: Renamed from README.win32.
4017 2002-05-08  Bruno Haible  <bruno@clisp.org>
4019         * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
4020         because the Woe32 consoles use them.
4022 2002-05-04  Bruno Haible  <bruno@clisp.org>
4024         * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
4025         without writing an output character, restore cd->istate to its value
4026         before the xxx_mbtowc call. Otherwise we lose some characters during
4027         CP1255/CP1258/TCVN to Unicode conversion.
4028         (unicode_loop_reset): Likewise for the xxx_flushwc call.
4029         * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
4030         files large enough to test against the bug.
4031         * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
4032         * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
4034 2002-04-28  Bruno Haible  <bruno@clisp.org>
4036         * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
4037         * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
4038         * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
4039         * lib/armscii_8.h: Regenerated.
4041 2002-04-28  Bruno Haible  <bruno@clisp.org>
4043         * src/iconv.c: Include gettext.h.
4044         (_): New macro.
4045         (usage, print_version, convert, main): Internationalize.
4046         (main): Call setlocale, bindtextdomain, textdomain.
4047         * src/gettext.h: New file, from GNU gettext 0.11.2.
4048         * src/config.h.in: New file, needed for ENABLE_NLS.
4049         * src/Makefile.in (datadir, localedir): New variables.
4050         (iconv): Link with @LTLIBINTL@.
4051         (iconv.@OBJEXT@): Define LOCALEDIR.
4052         (distclean): Remove config.h.
4053         * po: New directory.
4054         * Makefile.in (all, install, installdirs, uninstall, check,
4055         mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
4056         directory.
4057         * autoconf/mkinstalldirs: New file, from automake-1.5.
4058         * ABOUT-NLS: New file, from GNU gettext 0.11.2.
4059         * m4/codeset.m4: New file, from GNU gettext 0.11.2.
4060         * m4/gettext.m4: New file, from GNU gettext 0.11.2.
4061         * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
4062         * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
4063         * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
4064         * m4/progtest.m4: New file, from GNU gettext 0.11.2.
4065         * configure.in: Require autoconf-2.52, needed for multiple config.h.in
4066         files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
4067         (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
4068         * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
4070 2002-04-28  gettextize  <bug-gnu-gettext@gnu.org>
4072         * configure.in (AC_OUTPUT): Add po/Makefile.in.
4074 2002-04-28  Bruno Haible  <bruno@clisp.org>
4076         * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
4077         * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
4078         * m4/general.m4: New file, from GNU clisp.
4079         * m4/proto.m4: New file, from GNU clisp.
4080         * m4/ranlib.m4: New file, from GNU clisp.
4081         * m4/install.m4: New file, from GNU clisp.
4082         * m4/cp.m4: New file, from GNU clisp.
4083         * m4/ln.m4: New file, from GNU clisp.
4084         * m4/endian.m4: New file, from GNU clisp.
4085         * m4/iconv.m4: New file, from GNU gettext 0.11.2.
4086         * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
4087         * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
4088         * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
4089         * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
4090         * m4/libtool.m4: New file, based on libtool-1.4.2.
4091         * Makefile.devel (ACLOCAL): Remove variable.
4092         (ACSELECT): Remove variable.
4093         (OTHERMACROS): Remove variable.
4094         (m4/*.m4): New rules.
4095         (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
4096         * configure.in: Invoke AM_ICONV instead of CL_ICONV.
4098 2002-04-06  Bruno Haible  <bruno@clisp.org>
4100         Upgrade to Unicode 3.2.
4101         * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
4102         (compact_large_charset2uni): Add an argument. Determine optimal shift.
4103         Copy modified enc->charset2uni table.
4104         (output_charset2uni): Deal with shift other than 8. Copy encoding, so
4105         as to not disturb subsequent output_uni2charset[_sparse] call.
4106         * lib/hkscs.h: Regenerated.
4107         * tests/BIG5-HKSCS.TXT: Update.
4108         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
4110 2002-04-06  Bruno Haible  <bruno@clisp.org>
4112         Upgrade to Unicode 3.2.
4113         * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
4114         cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4115         cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
4116         CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
4117         * lib/cns11643_3.h: Regenerated.
4118         * lib/cns11643_4a.h: Regenerated.
4119         * lib/cns11643_4b.h: Regenerated.
4120         * lib/cns11643_5.h: Regenerated.
4121         * lib/cns11643_6.h: Regenerated.
4122         * lib/cns11643_7.h: Regenerated.
4123         * lib/cns11643_15.h: Regenerated.
4124         * lib/cns11643_inv.h: Regenerated.
4125         * tests/EUC-TW.TXT: Update.
4127 2002-01-17  Bruno Haible  <bruno@clisp.org>
4129         * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
4130         (tcvn_mbtowc): Small optimization.
4132 2002-01-13  Bruno Haible  <bruno@clisp.org>
4134         New options -l, -c, -s.
4135         * src/iconv.c (discard_unconvertible, silent): New variables.
4136         (usage): Document options -l, -c, -s.
4137         (print_one): New function.
4138         (convert): If silent is true, don't print error messages about the
4139         conversion to stderr. If discard_unconvertible is true, set the
4140         iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
4141         return the same return code as when discard_unconvertible is false.
4142         (main): Accept options -l, -c, -s. Implement option -l.
4143         * man/iconv.1: Document options -l, -c, -s.
4145 2002-01-13  Bruno Haible  <bruno@clisp.org>
4147         Support for "iconv -c".
4148         * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
4149         (ICONV_SET_DISCARD_ILSEQ): Likewise.
4150         * lib/converters.h (struct conv_struct): New field discard_ilseq.
4151         * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
4152         has an "//IGNORE" suffix, and to false otherwise.
4153         (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
4154         * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
4155         true, skip one input character instead of returning EILSEQ.
4156         (unicode_loop_reset): Likewise.
4157         * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
4158         (wchar_to_loop_convert): Likewise.
4160 2002-01-13  Bruno Haible  <bruno@clisp.org>
4162         Support for "iconv -l".
4163         * include/iconv.h.in (iconvlist): New declaration.
4164         * Makefile.devel (lib/aliases.h): Change gperf options.
4165         * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
4166         functions.
4168 2002-01-06  Bruno Haible  <bruno@clisp.org>
4170         * lib/loop_unicode.h (unicode_transliterate): If the transliteration
4171         fails due to limited output encoding, return RET_ILUNI, not
4172         RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4173         * tests/check-translitfailure: New file.
4174         * tests/TranslitFail1.ISO-8859-1: New file.
4175         * tests/Makefile.in (check): Call check-translitfailure.
4177 2001-12-15  Bruno Haible  <bruno@clisp.org>
4179         * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
4180         Shift_JIS characters 0x5C and 0x7E.
4181         * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
4183 2001-12-05  Bruno Haible  <bruno@clisp.org>
4185         * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
4186           endless loop if locale_charset() returns the empty string.
4187         * README, man/iconv_open.3: Add the empty encoding name.
4189 2001-11-10  Bruno Haible  <haible@clisp.cons.org>
4191         * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
4192           non-gcc compiler.
4194 2001-10-23  Bruno Haible  <haible@clisp.cons.org>
4196         * tools/Makefile (cp1125.h): New target.
4197           (ALL): Add it.
4198         * lib/cp1125.h: New file.
4199         * lib/converters.h: Include it.
4200         * lib/encodings_dos.def (CP1125): New encoding.
4202 2001-09-08  Bruno Haible  <haible@clisp.cons.org>
4204         * autoconf/eilseq.m4: New file.
4205         * Makefile.devel (OTHERMACROS): Add it.
4206         * configure.in: Call AC_EILSEQ.
4207         * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
4209 2001-08-25  Bruno Haible  <haible@clisp.cons.org>
4211         Upgrade to autoconf-2.52.
4212         * autoconf/autoconf: Upgrade to autoconf-2.52.
4213         * autoconf/acgeneral.m4: Remove file.
4214         * autoconf/acspecific.m4: Remove file.
4215         * autoconf/autoconf.m4f: New file, from autoconf-2.52.
4216         * autoconf/aclocal.m4: Require autoconf-2.52.
4217         (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
4218         AC_CANONICAL_HOST does it itself. Add $SHELL in front of
4219         $ac_config_guess and $ac_config_sub.
4220         * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
4221         Add autoconf.m4f.
4222         (configure): Use autoconf options -A, -l instead of -m.
4223         * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
4225 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
4227         * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
4228         (AC_LANG_EXTERN): Move to aclocal.m4.
4229         * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
4230         (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
4231         (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
4233 2001-08-05  Bruno Haible  <haible@clisp.cons.org>
4235         Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
4236         * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
4237         'try' to 'incount'.
4238         * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
4239         between sources and libs.
4240         (libiconv_plug_solaris.so) [GCC]: Likewise.
4241         (libiconv_plug_osf.so) [GCC]: Likewise.
4242         * src/Makefile.in (iconv.@OBJEXT@): New rule.
4243         (iconv): Depend on it.
4244         (clean): Erase *.@OBJEXT@, not *.o.
4245         * tests/Makefile.in (table-from.@OBJEXT@): New rule.
4246         (table-from): Depend on it.
4247         (table-to.@OBJEXT@): New rule.
4248         (table-to): Depend on it.
4249         (clean): Erase *.@OBJEXT@, not *.o.
4251 2001-07-28  Bruno Haible  <haible@clisp.cons.org>
4253         * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
4254         * lib/iso8859_16.h: Regenerated.
4255         * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
4257 2001-07-17  Bruno Haible  <haible@clisp.cons.org>
4259         * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
4261 2001-07-03  Bruno Haible  <haible@clisp.cons.org>
4263         * configure.in: Also check for mbsinit.
4264         * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
4265         Needed for SCO 3.2v5.0.2.
4267 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
4269         * Version 1.7 released.
4271 2001-06-27  Bruno Haible  <haible@clisp.cons.org>
4273         * INSTALL.generic (Particular Systems): Generalize section about
4274         /usr/local to "most systems".
4276         * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
4277         Solaris cc destroys iconv.o and iconv.lo while building
4278         libiconv_plug_solaris.so.
4279         (clean): Remove so_locations, left there by the OSF/1 linker.
4281         * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
4283         * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
4284         'unsigned short'.
4286         * tests/table-from.c: Include string.h.
4287         * tests/table-to.c: Likewise.
4289 2001-06-26  Bruno Haible  <haible@clisp.cons.org>
4291         * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
4292         (jisx0212.h): Replace U+007E with U+FF5E.
4293         * lib/jisx0208.h: Regenerated.
4294         * lib/jisx0212.h: Regenerated.
4295         * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
4296         * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
4297         * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
4298         * tests/CP932.TXT: Likewise.
4299         * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
4301 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
4303         * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
4304         $(CPPFLAGS).
4305         * src/Makefile.msvc (iconv.exe): Likewise.
4306         * src/Makefile.os2 (iconv.exe): Likewise.
4307         * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
4308         (libiconv_plug_solaris.so): Likewise.
4309         (libiconv_plug_osf.so): Likewise.
4310         (iconv.lo): Likewise.
4311         * lib/Makefile.msvc (iconv.obj): Likewise.
4312         * lib/Makefile.os2 (iconv.obj): Likewise.
4313         * tests/Makefile.in (table-from, table-to): Likewise.
4314         * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
4315         * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
4316         (genutf8.exe): Don't use $(INCLUDES).
4318 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
4320         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4321           Bump version number.
4322         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
4324 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
4326         * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
4328 2001-06-25  Bruno Haible  <haible@clisp.cons.org>
4330         * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
4332 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
4334         * autoconf/ltmain.sh: Upgrade to libtool-1.4.
4335         * autoconf/ltconfig: Remove file.
4337 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
4339         * autoconf/config.guess: Update to GNU version 2001-05-11.
4340         * autoconf/config.sub: Likewise.
4342 2001-06-03  Bruno Haible  <haible@clisp.cons.org>
4344         * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
4345           characters if they cannot be converted.
4346           (unicode_loop_reset): Likewise.
4347         * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
4348            STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
4349            STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
4350           New macros.
4351           (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
4352           direction.
4353           (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
4354           If "ja", prefer conversion to Japanese character sets. If "zh",
4355           prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
4357         * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
4358           (RET_TOOSMALL): Change value from -1 to -2.
4359         * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
4360           return 0 written bytes.
4362 2001-06-06  Bruno Haible  <haible@clisp.cons.org>
4364         * lib/encodings.def: Align with IANA character-set registry.
4365           (US-ASCII): Add alias "ANSI_X3.4-1986".
4366           (ISO-8859-14): Add alias "ISO-CELTIC".
4367           (JIS_X0208): Add alias "JIS_C6226-1983".
4368           (BIG5HKSCS): Add alias "BIG5-HKSCS".
4369         * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
4370         * tests/Makefile.in (check): Likewise.
4371         * tests/Makefile.os2 (check): Likewise.
4372         * tests/Makefile.msvc (check): Likewise.
4373         * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
4374         * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
4375           BIG5HKSCS.IRREVERSIBLE.TXT.
4377 2001-06-02  Bruno Haible  <haible@clisp.cons.org>
4379         * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
4380           (is_charset2uni_large, compact_large_charset2uni): New functions.
4381           (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
4382           (output_charset2uni): If mapping to more than the Unicode BMP,
4383           use an extra indirection to keep each value in 16 bits.
4384           (invert): Bump limit from U+10000 to U+30000.
4385           (output_uni2charset_dense): Likewise.
4386           (output_uni2charset_sparse): Likewise. If mapping to more than one
4387           CJK plane, use three bytes per value instead of two bytes.
4388           (byte_row_cns11643): Allow more than 3 CJK planes.
4389           (do_cns11643_only_uni2charset): Increase number of rows, to include
4390           plane 15. Remove plane bits hack.
4391           (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
4392         * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
4393           cns11643_6.h, cns11643_7.h, cns11643_15.h.
4394           (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
4395           derived table.
4396           (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4397            cns11643_7.h, cns11643_15.h): New rules.
4398           (cns11643_inv.h): Change title.
4399         * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
4400         * lib/cns11643_3.h: Likewise.
4401         * lib/cns11643_4a.h: New file.
4402         * lib/cns11643_4b.h: New file.
4403         * lib/cns11643_4.h: New file.
4404         * lib/cns11643_5.h: New file.
4405         * lib/cns11643_6.h: New file.
4406         * lib/cns11643_7.h: New file.
4407         * lib/cns11643_15.h: New file.
4408         * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
4409           (cns11643_inv_wctomb): Return 3 bytes now.
4410         * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
4411           cns11643_7.h, cns11643_15.h.
4412           (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
4413           plane number starting at 1, not 0.
4414         * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
4415           change.
4416         * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
4417           well.
4418           (euc_tw_wctomb): Update for cns11643_wctomb change.
4419         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4420         * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
4421           4,5,6,7 as well.
4422           (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
4423           Try CNS11643 planes 4,5,6,7 as well.
4424         * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
4425         * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
4426           Add U+5344.
4428 2001-06-01  Bruno Haible  <haible@clisp.cons.org>
4430         * tests/table-from.c (bmp_only): New variable.
4431           (ucs4_decode): If bmp_only, don't return characters outside Unicode
4432           plane 0.
4433           (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
4434           a conversion line if ucs4_decode returns NULL.
4435         * tests/table-to.c (main): When testing encodings other than UTF-8 and
4436           GB18030, loop upto U+30000 instead of U+10000.
4438 2001-05-24  Bruno Haible  <haible@clisp.cons.org>
4440         * lib/converters.h (mbtowc_funcs): Add flushwc member function.
4441         * lib/flushwc.h: New file.
4442         * lib/cp1255.h: Include flushwc.h.
4443           (cp1255_comp_table_data, cp1255_comp_table): New arrays.
4444           (cp1255_mbtowc): Compose base and combining characters.
4445           (cp1255_flushwc): New macro.
4446         * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
4447         * lib/cp1258.h: Include flushwc.h.
4448           (cp1258_mbtowc): Compose base and combining characters.
4449           (cp1258_flushwc): New macro.
4450         * lib/tcvn.h: Include flushwc.h.
4451           (tcvn_mbtowc): Compose base and combining characters.
4452           (tcvn_flushwc): New macro.
4453         * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
4454           from unicode_loop_convert.
4455           (unicode_loop_convert): Use unicode_transliterate.
4456           (unicode_loop_reset): Call xxx_flushwc and output the resulting
4457           character.
4458         * lib/encodings.def: Add xxx_flushwc member.
4459         * lib/encodings_aix.def: Likewise.
4460         * lib/encodings_dos.def: Likewise.
4461         * lib/encodings_local.def: Likewise.
4462         * lib/encodings_osf1.def: Likewise.
4463         * lib/genaliases.c: Add an argument to the DEFENCODING macro.
4464         * lib/genaliases2.c: Likewise.
4465         * lib/genflags.c: Likewise.
4466         * lib/iconv.c: Likewise.
4467         * tests/table-from.c (try): Reset the iconv descriptor before the main
4468           call, and flush it afterwards.
4469           (ucs4_decode): New function.
4470           (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
4471         * tests/CP1255-snippet: New file.
4472         * tests/CP1255-snippet.UTF-8: New file.
4473         * tests/CP1258-snippet: New file.
4474         * tests/CP1258-snippet.UTF-8: New file.
4475         * tests/TCVN-snippet: New file.
4476         * tests/TCVN-snippet.UTF-8: New file.
4477         * tests/Makefile.in (check): Check combining behaviour of CP1255,
4478           CP1258, TCVN.
4479         * tests/Makefile.msvc (check): Likewise.
4480         * tests/Makefile.os2 (check): Likewise.
4482 2001-05-22  Bruno Haible  <haible@clisp.cons.org>
4484         * lib/converters.h (RET_ILUNI): New macro.
4485           (RET_ILSEQ): Change value to -1.
4486           (RET_TOOFEW): Change value.
4487         * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
4488           of 0. Update handling of xxx_mbtowc return value.
4489         * lib/genflags.c (emit_encoding): Likewise.
4490         * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
4491         * lib/armscii_8.h (armscii_8_wctomb): Likewise.
4492         * lib/big5.h (big5_wctomb): Likewise.
4493         * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
4494         * lib/ces_big5.h (ces_big5_wctomb): Likewise.
4495         * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
4496         * lib/cns11643.h (cns11643_wctomb): Likewise.
4497         * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
4498         * lib/cp437.h (cp437_wctomb): Likewise.
4499         * lib/cp775.h (cp775_wctomb): Likewise.
4500         * lib/cp850.h (cp850_wctomb): Likewise.
4501         * lib/cp852.h (cp852_wctomb): Likewise.
4502         * lib/cp855.h (cp855_wctomb): Likewise.
4503         * lib/cp856.h (cp856_wctomb): Likewise.
4504         * lib/cp857.h (cp857_wctomb): Likewise.
4505         * lib/cp861.h (cp861_wctomb): Likewise.
4506         * lib/cp862.h (cp862_wctomb): Likewise.
4507         * lib/cp864.h (cp864_wctomb): Likewise.
4508         * lib/cp865.h (cp865_wctomb): Likewise.
4509         * lib/cp866.h (cp866_wctomb): Likewise.
4510         * lib/cp869.h (cp869_wctomb): Likewise.
4511         * lib/cp874.h (cp874_wctomb): Likewise.
4512         * lib/cp922.h (cp922_wctomb): Likewise.
4513         * lib/cp932ext.h (cp932ext_wctomb): Likewise.
4514         * lib/cp932.h (cp932_wctomb): Likewise.
4515         * lib/cp936ext.h (cp936ext_wctomb): Likewise.
4516         * lib/cp949.h (cp949_wctomb): Likewise.
4517         * lib/cp950ext.h (cp950ext_wctomb): Likewise.
4518         * lib/cp950.h (cp950_wctomb): Likewise.
4519         * lib/cp1046.h (cp1046_wctomb): Likewise.
4520         * lib/cp1124.h (cp1124_wctomb): Likewise.
4521         * lib/cp1129.h (cp1129_wctomb): Likewise.
4522         * lib/cp1133.h (cp1133_wctomb): Likewise.
4523         * lib/cp1250.h (cp1250_wctomb): Likewise.
4524         * lib/cp1251.h (cp1251_wctomb): Likewise.
4525         * lib/cp1252.h (cp1252_wctomb): Likewise.
4526         * lib/cp1253.h (cp1253_wctomb): Likewise.
4527         * lib/cp1254.h (cp1254_wctomb): Likewise.
4528         * lib/cp1255.h (cp1255_wctomb): Likewise.
4529         * lib/cp1256.h (cp1256_wctomb): Likewise.
4530         * lib/cp1257.h (cp1257_wctomb): Likewise.
4531         * lib/cp1258.h (cp1258_wctomb): Likewise.
4532         * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
4533         * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
4534         * lib/euc_cn.h (euc_cn_wctomb): Likewise.
4535         * lib/euc_jp.h (euc_jp_wctomb): Likewise.
4536         * lib/euc_kr.h (euc_kr_wctomb): Likewise.
4537         * lib/euc_tw.h (euc_tw_wctomb): Likewise.
4538         * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
4539         * lib/gb12345.h (gb12345_wctomb): Likewise.
4540         * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
4541         * lib/gb18030.h (gb18030_wctomb): Likewise.
4542         * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
4543         * lib/gb2312.h (gb2312_wctomb): Likewise.
4544         * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
4545         * lib/gbk.h (gbk_wctomb): Likewise.
4546         * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
4547         * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
4548         * lib/hkscs.h (hkscs_wctomb): Likewise.
4549         * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
4550         * lib/hz.h (hz_wctomb): Likewise.
4551         * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
4552         * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4553         * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
4554         * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
4555         * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
4556         * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4557         * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
4558         * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
4559         * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
4560         * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
4561         * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
4562         * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
4563         * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
4564         * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
4565         * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
4566         * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
4567         * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
4568         * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
4569         * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
4570         * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
4571         * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
4572         * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
4573         * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
4574         * lib/isoir165.h (isoir165_wctomb): Likewise.
4575         * lib/jisx0201.h (jisx0201_wctomb): Likewise.
4576         * lib/jisx0208.h (jisx0208_wctomb): Likewise.
4577         * lib/jisx0212.h (jisx0212_wctomb): Likewise.
4578         * lib/johab.h (johab_wctomb): Likewise.
4579         * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
4580           Likewise.
4581         * lib/koi8_r.h (koi8_r_wctomb): Likewise.
4582         * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
4583         * lib/koi8_u.h (koi8_u_wctomb): Likewise.
4584         * lib/ksc5601.h (ksc5601_wctomb): Likewise.
4585         * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
4586         * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
4587         * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
4588         * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
4589         * lib/mac_greek.h (mac_greek_wctomb): Likewise.
4590         * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
4591         * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
4592         * lib/mac_roman.h (mac_roman_wctomb): Likewise.
4593         * lib/mac_romania.h (mac_romania_wctomb): Likewise.
4594         * lib/mac_thai.h (mac_thai_wctomb): Likewise.
4595         * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
4596         * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
4597         * lib/mulelao.h (mulelao_wctomb): Likewise.
4598         * lib/nextstep.h (nextstep_wctomb): Likewise.
4599         * lib/sjis.h (sjis_wctomb): Likewise.
4600         * lib/tcvn.h (tcvn_wctomb): Likewise.
4601         * lib/tis620.h (tis620_wctomb): Likewise.
4602         * lib/ucs2be.h (ucs2be_wctomb): Likewise.
4603         * lib/ucs2.h (ucs2_wctomb): Likewise.
4604         * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
4605         * lib/ucs2le.h (ucs2le_wctomb): Likewise.
4606         * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
4607         * lib/ucs4.h (ucs4_wctomb): Likewise.
4608         * lib/uhc_1.h (uhc_1_wctomb): Likewise.
4609         * lib/uhc_2.h (uhc_2_wctomb): Likewise.
4610         * lib/utf16be.h (utf16be_wctomb): Likewise.
4611         * lib/utf16.h (utf16_wctomb): Likewise.
4612         * lib/utf16le.h (utf16le_wctomb): Likewise.
4613         * lib/utf32be.h (utf32be_wctomb): Likewise.
4614         * lib/utf32.h (utf32_wctomb): Likewise.
4615         * lib/utf32le.h (utf32le_wctomb): Likewise.
4616         * lib/utf7.h (utf7_wctomb): Likewise.
4617         * lib/utf8.h (utf8_wctomb): Likewise.
4618         * lib/viscii.h (viscii_wctomb): Likewise.
4619         * tools/8bit_tab_to_h.c (main): Likewise.
4620         * tools/cjk_tab_to_h.c (output_uni2charset_dense,
4621            output_uni2charset_sparse, do_gb18030uni): Likewise.
4623 2001-05-19  Bruno Haible  <haible@clisp.cons.org>
4625         * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
4626           (man/%.html): New rule.
4627         * man/Makefile.in (docdir, htmldir): New variables.
4628           (install, installdirs): Install the HTML formatted man pages in
4629           $(htmldir).
4630           (uninstall): Uninstall them.
4632 2001-05-20  Bruno Haible  <haible@clisp.cons.org>
4634         * lib/cp1255.h (cp1255_decomp_table): New array.
4635           (cp1255_comb_table): New array.
4636           (cp1255_wctomb): Decompose Unicode characters.
4637         * tests/CP1255.IRREVERSIBLE.TXT: New file.
4639 2001-05-13  Bruno Haible  <haible@clisp.cons.org>
4641         * lib/vietcomb.h: New file.
4642         * lib/cp1258.h: Include it.
4643           (cp1258_comb_table): New array.
4644           (cp1258_wctomb): Decompose Unicode characters.
4645         * lib/tcvn.h: Include it.
4646           (tcvn_comb_table): New array.
4647           (tcvn_wctomb): Decompose Unicode characters.
4648         * tests/CP1258.IRREVERSIBLE.TXT: New file.
4649         * tests/TCVN.IRREVERSIBLE.TXT: New file.
4651 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4653         * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
4654         (iconv.lib): Likewise.
4656 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4658         * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4659         (CPP): Remove variable.
4660         (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
4661          libiconv_plug_osf.so): Use LDFLAGS.
4662         (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4663          libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
4664         * lib/Makefile.msvc (CPP): Remove variable.
4665         * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4666         (CPP): Remove variable.
4667         (iconv): Use CPPFLAGS and LDFLAGS.
4668         * src/Makefile.msvc (CPP): Remove variable.
4669         * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4670         (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
4671         * tests/Makefile.msvc (CPP): Remove variable.
4673 2001-05-06  Bruno Haible  <haible@clisp.cons.org>
4675         * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
4676           gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
4678 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4680         Implement and document UTF-32, UTF-32BE, UTF-32LE.
4681         * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
4682         * src/converters.h: Include them.
4683         * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
4684         * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
4685         * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
4686         * tests/Makefile.os2 (check): Likewise.
4687         * tests/Makefile.msvc (check): Likewise.
4688         * tests/UTF-32*snippet*: New files.
4690         * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
4691           (ucs4_wctomb): Allow any 31-bit codepoint.
4693 2001-04-11  Bruno Haible  <haible@clisp.cons.org>
4695         * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
4696           unassigned code points.
4697         * tests/table-from.c (main); When dumping GB18030, don't print code
4698           points larger than U+FFFF.
4700 2001-03-30  Bruno Haible  <haible@clisp.cons.org>
4702         * tools/Makefile (GB18030uni.TXT): Use a table source which includes
4703           the unassigned Unicode code points.
4704         * lib/gb18030uni.h: Update.
4705           (gb18030uni_ranges): Remove bitmap_offset field.
4706           (gb18030uni_bitmap): Remove array.
4707           (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
4708           (gb18030uni_wctomb): Likewise.
4709         * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
4710           (gb18030_wctomb): Likewise.
4712 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4714         * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
4716 2001-03-21  Bruno Haible  <haible@clisp.cons.org>
4718         * src/iconv.c (print_version): Now called GNU libiconv.
4720 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
4722         * README: This package is now called GNU libiconv.
4724         * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
4725           file.
4726         * tools/cjk_tab_to_h.c (output_title): Likewise.
4727         * tools/cjk_variants.c (main): Likewise.
4728         * lib/gentranslit.c (main): Likewise.
4730 2001-03-19  Bruno Haible  <haible@clisp.cons.org>
4732         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
4733           ac_config_guess and ac_config_sub. Then ignore requests for
4734           AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
4736 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4738         * INSTALL.generic: New section "Particular Systems".
4740 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
4742         * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
4743           platforms like BeOS.
4745         * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
4746           config.h.
4748 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
4750         * Version 1.6 released.
4751         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4752           Bump version number.
4753         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
4755 2001-03-05  Bruno Haible  <haible@clisp.cons.org>
4757         Provide all encodings used by OSF/1 5.1 locales.
4758         * lib/dec_kanji.h: New file.
4759         * lib/dec_hanyu.h: New file.
4760         * lib/converters.h: Include them if USE_OSF1 is defined.
4761         * lib/encodings_osf1.def: New file.
4762         * lib/genflags.c (main): Include it. Define USE_OSF1.
4763         * lib/genaliases2.c (main): Include it conditionally.
4764         * lib/iconv.c: Define USE_OSF1 on OSF/1.
4765           Include encodings_osf1.def and aliases_osf1.h.
4766         * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
4767           aliases_osf1.h.
4768         * Makefile.devel (lib/aliases_osf1.h): New target.
4769           (all): Depend on lib/aliases_osf1.h.
4770           (lib/flags.h): Depend on lib/encodings_osf1.def.
4772 2001-03-01  Bruno Haible  <haible@clisp.cons.org>
4774         * tools/Makefile (cp775.h): New target.
4775           (ALL): Add it.
4776         * lib/cp775.h: New file.
4777         * lib/converters.h: Include it.
4778         * lib/encodings_dos.def (CP775): New encoding.
4780 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4782         * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
4783           more.
4785 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4787         * src/iconv.c (convert): Use ICONV_CONST.
4788         * tests/table-from.c: Include config.h.
4789           (try): Use ICONV_CONST.
4790         * tests/table-to.c: Include config.h.
4791           (main): Use ICONV_CONST.
4792         * tests/Makefile.in (INCLUDES): Add -I../lib.
4793         * tests/Makefile.os2 (INCLUDES): Likewise.
4794         * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
4796 2001-02-24  Bruno Haible  <haible@clisp.cons.org>
4798         Provide all encodings used by DOS locales.
4799         * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
4800            cp864.h, cp865.h, cp869.h): New targets.
4801           (ALL): Add them.
4802         * lib/cp437.h: New file.
4803         * lib/cp852.h: New file.
4804         * lib/cp855.h: New file.
4805         * lib/cp857.h: New file.
4806         * lib/cp861.h: New file.
4807         * lib/cp864.h: New file.
4808         * lib/cp865.h: New file.
4809         * lib/cp869.h: New file.
4810         * lib/converters.h: Include them if USE_DOS is defined.
4811         * lib/encodings_dos.def: New file.
4812         * lib/genflags.c (main): Include it. Define USE_DOS.
4813         * lib/genaliases2.c (main): Include it conditionally.
4814         * lib/iconv.c: Define USE_DOS on DJGPP.
4815           Include encodings_dos.def and aliases_dos.h.
4816         * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
4817           aliases_dos.h.
4818         * Makefile.devel (lib/aliases_dos.h): New target.
4819           (all): Depend on lib/aliases_dos.h.
4820           (lib/flags.h): Depend on lib/encodings_dos.def.
4822 2001-02-23  Bruno Haible  <haible@clisp.cons.org>
4824         * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
4825           (SET_BINARY) [O_BINARY]: New macro.
4826           (usage): Mention --binary if available.
4827           (convert): Use SET_BINARY instead of setmode.
4828           (main): Likewise.
4829           Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
4831 2001-02-25  Bruno Haible  <haible@clisp.cons.org>
4833         * autoconf/ltconfig:
4834           sed -e 's/reload object files/produce relocatable object files/'.
4836 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4838         * src/iconv.c (usage, main): Make -f and -t options optional.
4839         * man/iconv.1: Mark them as optional.
4841 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4843         * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
4844           glibc-2.2.2 table.
4845         * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
4846           0xFE5E -> U+2E97. Shift the entire four-byte range.
4847         * tests/GB18030.TXT: Regenerated.
4849 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4851         Better support for DOS/Windows platforms.
4852         * autoconf/ltconfig: Upgrade to libtool-1.3.5.
4853         * autoconf/ltmain.sh: Likewise.
4854         * autoconf/aclocal.m4: Likewise.
4855         * autoconf/install-sh: New file.
4856         * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
4858 2001-02-20  Bruno Haible  <haible@clisp.cons.org>
4860         * Makefile.in (libdir, includedir, mandir): Use the autoconf
4861           determined value, in order to respect the configure arguments.
4862         * lib/Makefile.in (libdir): Likewise.
4863         * src/Makefile.in (bindir): Likewise.
4864         * man/Makefile.in (mandir): Likewise.
4866 2001-02-04  Bruno Haible  <haible@clisp.cons.org>
4868         * lib/translit.def: Add all the neutral transliterations from glibc.
4869         * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
4870           UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
4871           Avoid accessing data[-1].
4872         * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
4873           into translit_data.
4875 2001-01-05  Bruno Haible  <haible@clisp.cons.org>
4877         Implement and document CP862.
4878         * tools/Makefile (ALL): Add cp862.h.
4879           (cp862.h): New target.
4880         * lib/cp862.h: New file.
4881         * lib/converters.h: Include it.
4882         * lib/encodings.def (CP862): New encoding.
4883         * README, man/iconv_open.3: Add CP862.
4884         * tests/Makefile.in (check): Check CP862.
4885         * tests/Makefile.msvc (check): Likewise.
4886         * tests/Makefile.os2 (check): Likewise.
4887         * tests/CP862.TXT: New file.
4889 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
4891         * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
4892         * Makefile.devel (OTHERMACROS): Add it.
4893         * configure.in: Call AC_MBSTATE_T.
4894         * lib/config.h.in (mbstate_t): New definition.
4895         * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
4897 2000-12-12  Bruno Haible  <haible@clisp.cons.org>
4899         * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
4900           "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
4901           given. Reported by Toshimitsu Fujiwara.
4903 2000-12-08  Bruno Haible  <haible@clisp.cons.org>
4905         * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
4906         * lib/Makefile.in (exec_prefix): Likewise.
4907         * src/Makefile.in (exec_prefix): Likewise.
4908         * man/Makefile.in (exec_prefix): Likewise.
4910 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4912         * Version 1.5 released.
4913         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4914           Bump version number.
4915         * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
4917 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4919         * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
4920           Remove files installed in lib by libcharset.
4921         * Makefile.msvc (mostlyclean): Likewise.
4923         * Makefile.in (check): Depend on target 'all'.
4924         * Makefile.os2 (check): Likewise.
4925         * Makefile.msvc (check): Depend on target 'force' as well.
4927         * src/iconv.c (usage): Take an exitcode argument.
4928           (print_version): New function.
4929           (main): Recognize --help and --version command line options.
4931 2000-12-02  Bruno Haible  <haible@clisp.cons.org>
4933         * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
4934         * lib/Makefile.msvc: Likewise.
4935         * src/Makefile.msvc: Likewise.
4936         * tests/Makefile.msvc: Likewise.
4938 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4940         * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
4941           (force_binary): New variable.
4942           (convert): If requested, set the input O_BINARY.
4943           (main): Accept --binary option. If requested, set the output O_BINARY.
4944         * tests/check-stateful.bat: Pass --binary to iconv.
4945         * tests/check-stateful.cmd: Likewise.
4946         * tests/check-translit.bat: Likewise.
4947         * tests/check-translit.cmd: Likewise.
4949 2000-12-01  Bruno Haible  <haible@clisp.cons.org>
4951         * include/iconv.h.in (_libiconv_version): New declaration.
4952         * lib/iconv.c (_libiconv_version): New variable.
4954 2000-11-30  Bruno Haible  <haible@clisp.cons.org>
4956         * Makefile.msvc (all): File now named lib/libcharset.h.
4957           (clean, distclean, maintainer-clean): Likewise.
4959 2000-11-23  Bruno Haible  <haible@clisp.cons.org>
4961         * lib/*: Move here all files from src/*.
4962         * src/*: Move all files to lib.
4963         * lib/Makefile.in (distclean): No need to remove config.status,
4964           config.log, config.cache.
4965         * configure.in: Require lib/iconv.c, not src/iconv.c. Create
4966           lib/config.h, not src/config.h. Also create lib/Makefile.
4967         * Makefile.in (all): Install libcharset into lib, not src. Recurse
4968           into lib and src.
4969           (install-lib): Recurse into lib, not src.
4970           (install): Recurse into libcharset, lib and src.
4971           (installdirs, uninstall): Likewise.
4972           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4973         * Makefile.msvc (all): Recurse into lib and src.
4974           (install): Recurse into libcharset, lib and src.
4975           (installdirs, uninstall): Likewise.
4976           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4977         * Makefile.os2 (all): Recurse into lib and src.
4978           (install-lib): Recurse into lib, not src.
4979           (install, uninstall): Recurse into lib and src.
4980           (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4981         * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
4982           (lib/aliases.h): Renamed from src/aliases.h.
4983           (lib/aliases.gperf): Renamed from src/aliases.gperf.
4984           (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
4985           (lib/flags.h): Renamed from src/flags.h.
4986           (lib/translit.h): Renamed from src/translit.h.
4987         * src/iconv.c: Moved here from tests/iconv.c.
4988         * src/Makefile.in: New file.
4989         * src/Makefile.msvc: New file.
4990         * src/Makefile.os2: New file.
4991         * tests/Makefile.in (iconv): Remove target.
4992           (../lib/libiconv.la): Renamed from ../src/libiconv.la.
4993           (clean): No need to remove iconv.
4994         * tests/Makefile.msvc (iconv.exe): Remove target.
4995         * tests/Makefile.os2 (iconv.exe): Likewise.
4996         * tests/check-stateful: iconv is in ../src.
4997         * tests/check-stateful.bat: Likewise.
4998         * tests/check-stateful.cmd: Likewise.
4999         * tests/check-translit: iconv is in ../src.
5000         * tests/check-translit.bat: Likewise.
5001         * tests/check-translit.cmd: Likewise.
5002         * man/iconv.1: New file.
5003         * man/Makefile.in (install, installdirs, uninstall): Also install *.1
5004           man pages.
5005         * man/Makefile.os2 (MAN3): Renamed from MAN.
5006           (MAN1): New variable.
5007           (install, uninstall): Also install *.1 man pages.
5009 2000-11-21  Bruno Haible  <haible@clisp.cons.org>
5011         * Makefile.msvc (all, check, mostlyclean, clean, distclean,
5012            maintainer-clean): Recurse into libcharset.
5013           (clean, distclean, maintainer-clean): Remove src\libcharset.h.
5014         * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
5015           (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
5017 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
5019         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
5020           so that it agrees with Microsoft's definition of CP950.
5021         * tests/CP950.TXT: Likewise.
5022         * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
5024 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
5026         Add support for locale dependent "char" and "wchar_t" encodings.
5027         * libcharset: New subdirectory.
5028         * src/loop_unicode.h: New file, extracted from src/iconv.c.
5029         * src/loop_wchar.h: New file.
5030         * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
5031         * src/encodings_local.def: New file.
5032         * src/genaliases.c: Also create aliases for encodings_local.def.
5033         * src/converters.h (conv_struct): Add lfuncs field.
5034         * src/genflags.c: Add dummy definitions of struct loop_funcs.
5035         * src/iconv.c: Include libcharset.h.
5036           (loop_funcs): New structure.
5037           Treat encodings_local.def like encodings.def.
5038           Include loops.h.
5039           (iconv_open): Move the bulk of the code to loop_unicode.h.
5040           (iconv): Likewise.
5041           (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
5042           descriptors.
5043         * src/Makefile.in (PLUG_SOURCES): Remove variable.
5044           (LIBCHARSET_OBJECTS): New variable.
5045           (libiconv.la): Link in the LIBCHARSET_OBJECTS.
5046           (libiconv_plug_linux.so, libiconv_plug_solaris.so,
5047            libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
5048           LIBTOOL_LINK.
5049           (iconv.lo): Depend on encodings_local.def.
5050         * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
5051         * src/Makefile.os2 (iconv.obj): Likewise.
5052         * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
5053           Recurse into libcharset.
5054         * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
5055            HAVE_SETLOCALE): New macros.
5056         * tests/iconv.c: Include config.h and locale.h.
5057           (main): Call setlocale.
5058         * tests/Makefile.in (iconv): Search for config.h in ../src.
5059         * tests/Makefile.os2 (iconv.exe): Likewise.
5060         * tests/Makefile.msvc (iconv.exe): Likewise.
5061         * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
5062         * Makefile.in: After "cd", use "&&" not ";".
5063           (all, check, mostlyclean, clean, distclean, maintainer-clean):
5064           Recurse into libcharset.
5065         * Makefile.devel (all): Recurse into libcharset.
5066           (src/aliases.gperf): Depend on src/encodings_local.def.
5068 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
5070         * src/converters.h (ucs4_t): New type.
5071           (wchar_t): Remove locally defined override.
5072           (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
5073         * src/iconv.c (iconv): Likewise.
5074         * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
5075         * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
5076         * tools/cjk_tab_to_h.c: Likewise.
5077         * src/armscii_8.h: Use ucs4_t instead of wchar_t.
5078         * src/ascii.h: Likewise.
5079         * src/big5.h: Likewise.
5080         * src/big5hkscs.h: Likewise.
5081         * src/ces_big5.h: Likewise.
5082         * src/ces_gbk.h: Likewise.
5083         * src/cns11643.h: Likewise.
5084         * src/cns11643_1.h: Likewise.
5085         * src/cns11643_2.h: Likewise.
5086         * src/cns11643_3.h: Likewise.
5087         * src/cns11643_inv.h: Likewise.
5088         * src/cp1046.h: Likewise.
5089         * src/cp1124.h: Likewise.
5090         * src/cp1129.h: Likewise.
5091         * src/cp1133.h: Likewise.
5092         * src/cp1250.h: Likewise.
5093         * src/cp1251.h: Likewise.
5094         * src/cp1252.h: Likewise.
5095         * src/cp1253.h: Likewise.
5096         * src/cp1254.h: Likewise.
5097         * src/cp1255.h: Likewise.
5098         * src/cp1256.h: Likewise.
5099         * src/cp1257.h: Likewise.
5100         * src/cp1258.h: Likewise.
5101         * src/cp850.h: Likewise.
5102         * src/cp856.h: Likewise.
5103         * src/cp866.h: Likewise.
5104         * src/cp874.h: Likewise.
5105         * src/cp922.h: Likewise.
5106         * src/cp932.h: Likewise.
5107         * src/cp932ext.h: Likewise.
5108         * src/cp936ext.h: Likewise.
5109         * src/cp949.h: Likewise.
5110         * src/cp950.h: Likewise.
5111         * src/cp950ext.h: Likewise.
5112         * src/euc_cn.h: Likewise.
5113         * src/euc_jp.h: Likewise.
5114         * src/euc_kr.h: Likewise.
5115         * src/euc_tw.h: Likewise.
5116         * src/gb12345.h: Likewise.
5117         * src/gb12345ext.h: Likewise.
5118         * src/gb18030.h: Likewise.
5119         * src/gb18030ext.h: Likewise.
5120         * src/gb18030uni.h: Likewise.
5121         * src/gb2312.h: Likewise.
5122         * src/gbk.h: Likewise.
5123         * src/gbkext1.h: Likewise.
5124         * src/gbkext2.h: Likewise.
5125         * src/gbkext_inv.h: Likewise.
5126         * src/georgian_academy.h: Likewise.
5127         * src/georgian_ps.h: Likewise.
5128         * src/hkscs.h: Likewise.
5129         * src/hp_roman8.h: Likewise.
5130         * src/hz.h: Likewise.
5131         * src/iso2022_cn.h: Likewise.
5132         * src/iso2022_cnext.h: Likewise.
5133         * src/iso2022_jp.h: Likewise.
5134         * src/iso2022_jp1.h: Likewise.
5135         * src/iso2022_jp2.h: Likewise.
5136         * src/iso2022_kr.h: Likewise.
5137         * src/iso646_cn.h: Likewise.
5138         * src/iso646_jp.h: Likewise.
5139         * src/iso8859_1.h: Likewise.
5140         * src/iso8859_10.h: Likewise.
5141         * src/iso8859_13.h: Likewise.
5142         * src/iso8859_14.h: Likewise.
5143         * src/iso8859_15.h: Likewise.
5144         * src/iso8859_16.h: Likewise.
5145         * src/iso8859_2.h: Likewise.
5146         * src/iso8859_3.h: Likewise.
5147         * src/iso8859_4.h: Likewise.
5148         * src/iso8859_5.h: Likewise.
5149         * src/iso8859_6.h: Likewise.
5150         * src/iso8859_7.h: Likewise.
5151         * src/iso8859_8.h: Likewise.
5152         * src/iso8859_9.h: Likewise.
5153         * src/isoir165.h: Likewise.
5154         * src/isoir165ext.h: Likewise.
5155         * src/java.h: Likewise.
5156         * src/jisx0201.h: Likewise.
5157         * src/jisx0208.h: Likewise.
5158         * src/jisx0212.h: Likewise.
5159         * src/johab.h: Likewise.
5160         * src/johab_hangul.h: Likewise.
5161         * src/koi8_r.h: Likewise.
5162         * src/koi8_ru.h: Likewise.
5163         * src/koi8_u.h: Likewise.
5164         * src/ksc5601.h: Likewise.
5165         * src/mac_arabic.h: Likewise.
5166         * src/mac_centraleurope.h: Likewise.
5167         * src/mac_croatian.h: Likewise.
5168         * src/mac_cyrillic.h: Likewise.
5169         * src/mac_greek.h: Likewise.
5170         * src/mac_hebrew.h: Likewise.
5171         * src/mac_iceland.h: Likewise.
5172         * src/mac_roman.h: Likewise.
5173         * src/mac_romania.h: Likewise.
5174         * src/mac_thai.h: Likewise.
5175         * src/mac_turkish.h: Likewise.
5176         * src/mac_ukraine.h: Likewise.
5177         * src/mulelao.h: Likewise.
5178         * src/nextstep.h: Likewise.
5179         * src/sjis.h: Likewise.
5180         * src/tcvn.h: Likewise.
5181         * src/tis620.h: Likewise.
5182         * src/ucs2.h: Likewise.
5183         * src/ucs2be.h: Likewise.
5184         * src/ucs2internal.h: Likewise.
5185         * src/ucs2le.h: Likewise.
5186         * src/ucs2swapped.h: Likewise.
5187         * src/ucs4.h: Likewise.
5188         * src/ucs4be.h: Likewise.
5189         * src/ucs4internal.h: Likewise.
5190         * src/ucs4le.h: Likewise.
5191         * src/ucs4swapped.h: Likewise.
5192         * src/uhc_1.h: Likewise.
5193         * src/uhc_2.h: Likewise.
5194         * src/utf16.h: Likewise.
5195         * src/utf16be.h: Likewise.
5196         * src/utf16le.h: Likewise.
5197         * src/utf7.h: Likewise.
5198         * src/utf8.h: Likewise.
5199         * src/viscii.h: Likewise.
5201 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
5203         Make transliteration optional.
5204         * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
5205           Set transliteration on if and only if tocode ends in //TRANSLIT.
5206         * README, man/iconv_open.3: Document how to enable transliteration.
5207         * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
5208         * tests/check-translit.bat: Likewise.
5209         * tests/check-translit.cmd: Likewise.
5211 2000-11-18  Bruno Haible  <haible@clisp.cons.org>
5213         * man/iconv.3: Fix typo.
5215 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
5217         * README, man/iconv_open.3: Document JOHAB again.
5219 2000-11-15  Bruno Haible  <haible@clisp.cons.org>
5221         * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
5222           (STATIC): Change default from 0 to 1.
5223         * src/Makefile.msvc: Likewise.
5224         * tests/Makefile.msvc: Likewise.
5225         * tests/check-stateless.bat: Call 'sort' with no arguments.
5227 2000-11-12  Bruno Haible  <haible@clisp.cons.org>
5229         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
5230           version from GNU CVS.
5232 2000-10-24  Bruno Haible  <haible@clisp.cons.org>
5234         * Version 1.4 released.
5235         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5236           Bump version number.
5237         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
5239 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
5241         Implement and document GB18030 and BIG5HKSCS.
5242         * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
5243           functions.
5244           (do_gb18030uni): New function.
5245           (main): Accept gb18030ext, gb18030uni, hkscs.
5246         * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
5247           (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
5248            hkscs.h): New targets.
5249         * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
5250         * src/hkscs.h, src/big5hkscs.h: New files.
5251         * src/converters.h: Include gb18030.h and big5hkscs.h.
5252         * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
5253         * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
5254         * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
5255         * tests/Makefile.msvc (check): Likewise.
5256         * tests/Makefile.os2 (check): Likewise.
5257         * tests/GB18030.TXT: New file.
5258         * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
5260 2000-10-23  Bruno Haible  <haible@clisp.cons.org>
5262         * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
5263           UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
5264         * tests/table-to.c (main): Likewise.
5266 2000-10-22  Bruno Haible  <haible@clisp.cons.org>
5268         * src/gentranslit.c (main): Read the input in UTF-8 encoding.
5270 2000-10-09  Bruno Haible  <haible@clisp.cons.org>
5272         CPU recognition on OpenBSD.
5273         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
5274           __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
5276 2000-10-03  Bruno Haible  <haible@clisp.cons.org>
5278         * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
5279           character literals, use the numeric value instead.
5280           Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
5282 2000-09-29  Bruno Haible  <haible@clisp.cons.org>
5284         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
5285           change.
5287 2000-09-25  Bruno Haible  <haible@clisp.cons.org>
5289         * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
5290           as equivalent to __i386. For OpenBSD.
5292 2000-09-21  Bruno Haible  <haible@clisp.cons.org>
5294         * src/utf16.h (utf16_wctomb): Reject single surrogates.
5295         * src/utf16be.h (utf16be_wctomb): Likewise.
5296         * src/utf16le.h (utf16le_wctomb): Likewise.
5297         * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
5298         * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
5299         * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
5300         * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
5301           Likewise.
5302         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
5303           Likewise.
5305 2000-09-15  Bruno Haible  <haible@clisp.cons.org>
5307         * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
5308         * src/Makefile.in (install, installdirs, uninstall): Likewise.
5309         * man/Makefile.in (install, installdirs, uninstall): Likewise.
5311 2000-09-11  Bruno Haible  <haible@clisp.cons.org>
5313         * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
5315 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
5317         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
5318           value, not parens.
5320 2000-07-04  Akira Hatakeyama  <akira@sra.co.jp>
5321             Bruno Haible  <haible@clisp.cons.org>
5323         * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
5324           tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
5325           tests/check-stateless.cmd, tests/check-translit.cmd: New files.
5327 2000-06-28  Bruno Haible  <haible@clisp.cons.org>
5329         * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
5330           cast.
5331         * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
5332         * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
5333           sizeof(unsigned short).
5334         * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
5335           sizeof(unsigned int).
5336         Reported by François Pinard <pinard@iro.umontreal.ca>.
5338 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
5340         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
5341         Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
5343 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
5345         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
5346           host_vendor, host_os correctly if $host has more than two hyphens.
5348 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
5350         * Version 1.3 released.
5351         * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5352           Bump version number.
5353         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
5355 2000-04-15  Bruno Haible  <haible@clisp.cons.org>
5357         * THANKS: New file.
5358         * INSTALL.generic: New file.
5360         Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5361         * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
5362         * src/converters.h: Include them.
5363         * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
5364         * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
5365         * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
5366           (UCS-2LE): Renamed from UCS-2-LE.
5367           (UCS-4BE): Renamed from UCS-4-BE.
5368           (UCS-4LE): Renamed from UCS-4-LE.
5369         * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
5370         * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5371         * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5372         * tests/Makefile.msvc (check): Likewise.
5373         * tests/UCS-*snippet*: New files.
5375         Allow building as a shared library on Windows.
5376         Allow running the tests on Windows.
5377         * Makefile.devel (include/iconv.h.msvc): Remove rule.
5378           (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
5379           rules.
5380           (all): Update.
5381         * windows/dllexport.h: New file.
5382         * include/iconv.h.msvc: Remove file.
5383         * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
5384           autogenerated files.
5385         * Makefile.msvc (STATIC, DEBUG): Default to 0.
5386           (all): Choose either include\iconv.h.msvc-static or
5387           include\iconv.h.msvc-shared.
5388           (check): Depend on all.
5389           (all, check, mostlyclean, clean, distclean, maintainer-clean):
5390           Recurse into tests directory.
5391         * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
5392           (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
5393           (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
5394           (RESOURCES): New variable.
5395           (iconv.lib): Change rule when building DLL.
5396           (clean, distclean): One filename per line.
5397         * tests/Makefile.msvc: New file.
5398         * tests/check-stateful.bat, tests/check-stateless.bat,
5399           tests/check-translit.bat: New files.
5400         * tests/uniq-u.c: New file, taken from GNU textutils.
5401         * README.win32: Update.
5402         Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
5404 2000-04-14  Bruno Haible  <haible@clisp.cons.org>
5406         Fix an OSF/1 problem.
5407         * configure.in: Define GCC variable for substitution.
5408         * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
5409           gcc.
5411 2000-04-13  Bruno Haible  <haible@clisp.cons.org>
5413         Fix a SunOS 4 problem.
5414         * include/iconv.h.in: If EILSEQ is not defined by the system, define
5415           it to ENOENT, not EINVAL.
5417 2000-04-02  Bruno Haible  <haible@clisp.cons.org>
5419         Allow building on filesystems lacking symlinks and hard links.
5420         * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
5421           CL_PROG_LN_S.
5422         * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
5423         * src/Makefile.in (LN): Use autoconfigured value @LN@.
5424           (LN_S): Use autoconfigured value @LN_S@.
5426 2000-03-15  Bruno Haible  <haible@clisp.cons.org>
5428         * Version 1.2 released.
5429         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5430         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
5432 2000-03-14  Bruno Haible  <haible@clisp.cons.org>
5434         Implement and document UTF-16BE and UTF16LE.
5435         * src/utf16be.h, src/utf16le.h: New files.
5436         * src/converters.h: Include them.
5437         * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
5438         * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
5439         * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
5440         * tests/UTF-16*snippet*: New files.
5442         * src/utf16.h (utf16_wctomb): Output a byte order mark.
5444 2000-03-13  Bruno Haible  <haible@clisp.cons.org>
5446         Provide all encodings used by AIX locales.
5447         * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
5448           cp1129.h.
5449           (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
5450         * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
5451           src/cp1129.h: New files.
5452         * src/converters.h: Include them if USE_AIX is defined.
5453         * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
5454           CP1124, CP1129.
5455         * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
5456         * src/genaliases2.c: New file.
5457         * src/iconv.c: Define USE_AIX on AIX.
5458           Include encodings_aix.def and aliases_aix.h.
5459           (aliases2_lookup): New function.
5460           (iconv_open): Call aliases2_lookup.
5461         * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
5462           aliases_aix.h.
5463         * Makefile.devel (all): Add src/aliases_aix.h.
5464           (src/aliases_aix.h): New rule.
5465           (src/flags.h): Depend on src/encodings_aix.def.
5467 2000-02-24  Bruno Haible  <haible@clisp.cons.org>
5469         * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
5470           Reported by Edmund Grimley Evans <edmundo@rano.org>.
5472 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
5474         * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
5476 2000-02-15  Bruno Haible  <haible@clisp.cons.org>
5478         * src/iconv.c (iconv): Add cast in xxx_reset call.
5480 2000-02-05  Bruno Haible  <haible@clisp.cons.org>
5482         * src/tis620.h: Simplify.
5484 2000-01-27  Bruno Haible  <haible@clisp.cons.org>
5486         * Makefile.devel (CLISP_DIR): Change to "..".
5488 2000-01-24  Bruno Haible  <haible@clisp.cons.org>
5490         * Version 1.1 released.
5491         * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5492         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
5494 2000-01-23  Bruno Haible  <haible@clisp.cons.org>
5496         * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
5497           '+' as "+-".
5499 2000-01-22  Bruno Haible  <haible@clisp.cons.org>
5501         * include/iconv.h.in (iconvctl): New declaration.
5502           (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
5503           New macros.
5504         * src/iconv.c (iconvctl): New function.
5506         * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
5508         Solve a build problem.
5509         * include/iconv.h.in: Renamed from include/libiconv.h.in.
5510         * Makefile.devel: libiconv.h -> iconv.h.
5511         * Makefile.in: Likewise.
5512         * configure.in: Likewise. Remove check for <iconv.h>.
5513         * src/iconv.c: Include iconv.h instead of libiconv.h.
5514         * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
5516         * README, man/iconv_open.3: Don't document JOHAB any more.
5518         * man/iconv.3: Clarify return value again.
5520 2000-01-16  Bruno Haible  <haible@clisp.cons.org>
5522         Add aliases.
5523         * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
5524           (ISO-8859-15): Add alias ISO-IR-203.
5525           (EUC-CN): Add alias CN-GB, from RFC 1922.
5526           (BIG5): Add alias CN-BIG5, from RFC 1922.
5527         * Makefile.devel (src/aliases.h): Add 8th character to key set.
5529         Drop X11 aliases.
5530         * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
5531           (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
5532           (KSC_5601): Drop KSC5601.1987-0 alias.
5534         Improve GB/T 12345 (not used yet).
5535         * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
5536         * src/gb12345ext.h: Regenerated.
5538         Improve and document CP949.
5539         * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
5540           (uhc_1.h, uhc_2.h): New rules.
5541         * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
5542           function.
5543           (output_uni2charset_sparse): Take an additional boolean argument.
5544           All callers changed.
5545           (*_uhc_1, *_uhc_2): New functions.
5546           (main): Treat uhc_1 and uhc_2.
5547         * src/uhc_1.h, src/uhc_2.h: New files.
5548         * src/cp949.h: New file, include them.
5549         * src/converters.h: Include it.
5550         * src/encodings.def (KSC_5601): Remove alias CP949.
5551           (CP949): New encoding.
5552         * README, man/iconv_open.3: Add CP949.
5553         * tests/Makefile.in (check): Check CP949.
5554         * tests/CP949.TXT: New file.
5556         Document CP932.
5557         * README, man/iconv_open.3: Add CP932.
5558         * tests/Makefile.in (check): Check CP932.
5559         * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
5561         * Makefile.devel (src/flags.h): Depend on src/converters.h.
5563         * tests/Makefile.in (check): Check JIS_X0201.
5564         * tests/JIS_X0201.TXT: New file.
5566         * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
5567         * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
5569         * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
5570           (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
5572         Add ISO-IR-165 (undocumented).
5573         * tools/Makefile (all): Add isoir165ext.h.
5574           (isoir165ext.h): New rule.
5575         * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
5576         * src/isoir165.h, src/isoir165ext.h: New files.
5577         * src/converters.h: Include it.
5578         * src/encodings.def: Add ISO-IR-165.
5579         * tests/Makefile.in (check): Check ISO-IR-165.
5580         * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
5582         Add ISO646-CN (undocumented).
5583         * src/iso646_cn.h: New file.
5584         * src/converters.h: Include it.
5585         * src/encodings.def: Add ISO646-CN.
5586         * tests/Makefile.in (check): Check ISO646-CN.
5587         * tests/ISO646-CN.TXT: New file.
5589         Add ISO646-JP (undocumented).
5590         * src/iso646_jp.h: New file.
5591         * src/converters.h: Include it.
5592         * src/encodings.def: Add ISO646-JP.
5593         * tests/Makefile.in (check): Check ISO646-JP.
5594         * tests/ISO646-JP.TXT: New file.
5596 2000-01-05  Bruno Haible  <haible@clisp.cons.org>
5598         Add ISO-8859-16.
5599         * tools/Makefile (all): Add iso8859_16.h.
5600           (iso8859_16.h): New rule.
5601         * src/iso8859_16.h: New file.
5602         * src/converters.h: Include it.
5603         * src/encodings.def: Add ISO-8859-16.
5604         * README, man/iconv_open.3: Add ISO-8859-16.
5605         * tests/Makefile.in (check): Check ISO-8859-16.
5606         * tests/ISO-8859-16.TXT: New file.
5608         * man/iconv.3: Clarify what happens *inbuf in case 3.
5610         * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
5611         * tests/ISO-8859-8.TXT: Likewise.
5613 2000-01-04  Bruno Haible  <haible@clisp.cons.org>
5615         * Version 1.0 released.
5616         * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
5617         * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
5618           (libiconv.la): Use LIBICONV_VERSION_INFO.
5620 2000-01-03  Bruno Haible  <haible@clisp.cons.org>
5622         * tests/Makefile.in: New file.
5623           tests/check-stateless, tests/table-from.c, tests/table-to.c,
5624           tests/*.TXT, tests/genutf8.c: New files, checks for stateless
5625           encodings.
5626           tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
5627           checks for stateful encodings.
5628         * Makefile.in (all, check, mostlyclean, clean, distclean,
5629            maintainer-clean): Descend into tests directory.
5630         * configure.in: Add tests/Makefile to AC_OUTPUT duties.
5632         * src/gentranslit.c: New file.
5633         * Makefile.devel (src/translit.h): New rule.
5634         * src/translit.def, src/translit.h: New files.
5635         * src/iconv.c: Include it.
5636           (iconv): Transliterate using translit.h table.
5638         * src/genflags.c: New file.
5639         * Makefile.devel (src/flags.h): New rule.
5640         * src/flags.h: New file.
5641         * src/iconv.c: Include it.
5642           (encoding): Add field 'oflags'.
5643           (all_encodings): Initialize the field 'oflags'.
5644           (iconv_open): Copy field 'oflags'.
5645           (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
5646         * src/Makefile.in (iconv.lo): Update dependencies.
5648         * src/converters.h: New file, extracted from src/iconv.c.
5649         * src/iconv.c: Include it.
5650         * src/Makefile.in (iconv.lo): Update dependencies.
5652         * tools/cjk_variants.c: New file.
5653         * tools/Makefile (ALL): Add cjk_variants.h.
5654           (cjk_variants.h, cjk_variants): New rules.
5655         * src/cjk_variants.h: New file.
5656         * src/iconv.c: Include it.
5657           (iconv): Use cjk_variants for transliteration.
5659         * man/iconv.3: Fix description of return value.
5660         * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
5661         * iso2022_kr.h (iso2022kr_wctomb): Likewise.
5662         * src/iconv.c (iconv): Do Hangul transliteration here and increment
5663           result once for every transliterated character.
5664         * src/johab_hangul.h (johab_hangul_decompose): Change result array
5665           from 'unsigned char*' to 'wchar_t*'.
5667         * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
5668           0xfffd.
5670         * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
5672         * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
5673           Katakana.
5675         * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
5677         * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
5678           0xC6A1..0xC7FE.
5680         * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
5681           not being excluded. Fix that.
5682         * src/ksc5601.h: Regenerated.
5683         * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
5684           valid in KSC5601/KSX1001 but not in JOHAB.
5686         * src/iconv.c (conv_struct): Add fields iindex, oindex.
5687           (iconv_open): Fill in iindex, oindex.
5689         * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
5690           "csUnicode11", from IANA charset list.
5691           (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
5692           from IANA charset list.
5693           (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
5694           from IANA charset list.
5695           (GB_2312-80): New encoding, from IANA charset list.
5697         * README, man/iconv_open.3: Add MacIceland and MacUkraine.
5699         * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
5700           (all): Depend on src/aliases.h.
5701         * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
5702           $(srcdir)/aliases.gperf.
5703           (clean): Clean up.
5705         * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
5707 1999-12-31  Bruno Haible  <haible@clisp.cons.org>
5709         * Version 0.3 released.