1 2022-04-13 Bruno Haible <bruno@clisp.org>
3 Fix undefined behaviour.
4 * tests/test-shiftseq.c (main2): Make input array larger.
6 2022-02-12 Bruno Haible <bruno@clisp.org>
9 * po/ro.po: Update Romanian translations.
10 * po/wa.po: Update Walloon translations.
12 2022-02-12 Bruno Haible <bruno@clisp.org>
14 Prepare for version 1.17.
15 * configure.ac: Bump version number to 1.17.
16 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
17 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 9:0:7.
18 * src/iconv.c (print_version): Update copyright year.
19 * windows/iconv.rc: Likewise.
20 * windows/libiconv.rc: Likewise.
21 * README: Update download link.
23 2022-02-12 Bruno Haible <bruno@clisp.org>
25 Update source file list (regression 2022-01-23).
26 * lib/Makefile.in (SOURCE_FILES): Add encodings_zos.def, ebcdic*.h.
27 (GENERATED_FILES): Add aliases_zos.h, canonical_zos.h.
28 * tests/Makefile.in (SOURCE_FILES): Add IBM-*.TXT.
30 2022-01-23 Bruno Haible <bruno@clisp.org>
33 * NEWS: Mention the EBCDIC encodings.
35 2022-01-23 Bruno Haible <bruno@clisp.org>
37 Optimize the EBCDIC table sizes.
38 * lib/converters.h (DEDUPLICATE_TABLES): New macro.
39 * lib/ebcdic1025.h: Deduplicate tables with ebcdic880.h.
40 * lib/ebcdic1123.h: Deduplicate tables with ebcdic1025.h.
41 * lib/ebcdic1132.h: Deduplicate tables with ebcdic838.h.
42 * lib/ebcdic1153.h: Deduplicate tables with ebcdic870.h.
43 * lib/ebcdic1154.h: Deduplicate tables with ebcdic880.h.
44 * lib/ebcdic1155.h: Deduplicate tables with ebcdic1026.h.
45 * lib/ebcdic1156.h: Deduplicate tables with ebcdic1112.h.
46 * lib/ebcdic1157.h: Deduplicate tables with ebcdic1122.h.
47 * lib/ebcdic1158.h: Deduplicate tables with ebcdic1154.h, ebcdic1123.h.
48 * lib/ebcdic1160.h: Deduplicate tables with ebcdic838.h.
49 * lib/ebcdic1164.h: Deduplicate tables with ebcdic1130.h.
50 * lib/ebcdic1165.h: Deduplicate tables with ebcdic870.h.
51 * lib/ebcdic1166.h: Deduplicate tables with ebcdic1154.h.
52 * lib/ebcdic4971.h: Deduplicate tables with ebcdic875.h.
53 * lib/ebcdic12712.h: Deduplicate tables with ebcdic424.h.
55 2022-01-23 Bruno Haible <bruno@clisp.org>
58 Reported by Ulrich Schwab and Calvin Buckley via Jack Woehr.
59 * NOTES: Mention how to enable EBCDIC encodings.
60 * tests/IBM-*.TXT: New files.
61 * tools/8bit_tab_to_h.c (main): Emit copyright header with year 2022.
62 * tools/Makefile: Add rules for generating ebcdic*.h.
63 * lib/ebcdic*.h: New files, automatically generated by tools/Makefile.
64 * lib/ebcdic838.h: Tweak reverse mapping manually.
65 * lib/ebcdic1160.h: Likewise.
66 * lib/converters.h: Include all ebcdic*.h.
67 * lib/encodings_zos.def: New file.
68 * lib/genaliases2.c: Include encodings_zos.def.
69 * lib/genflags.c: Likewise.
70 * Makefile.devel (lib/aliases_zos.h lib/canonical_zos.h): New rule.
71 (lib/flags.h, totally-clean): Update.
72 * lib/aliases2.h: Include aliases_zos.h.
73 * lib/iconv.c (USE_ZOS): New macro.
74 Include encodings_zos.def, canonical_zos.h.
75 * README, man/iconv_open.3: Document the IBM-* encodings.
76 * tests/Makefile.in (check-extra-yes): Also test the EBCDIC encodings.
78 2022-01-04 Bruno Haible <bruno@clisp.org>
80 Update after gnulib changed.
81 * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Set GL_GENERATE_ALLOCA_H
82 instead of ALLOCA_H. Drop AC_SUBST and AM_CONDITIONAL invocations.
84 2021-09-19 Bruno Haible <bruno@clisp.org>
86 tests: Avoid check-subst failures in QEMU user-mode environments.
87 * Makefile.devel (GNULIB_MODULES): Add stdbool.
88 (gnulib-imported-files): Copy also tests/qemu.h.
89 * tests/is-native.c: New file.
90 * tests/Makefile.in (is-native, is-native.@OBJEXT@): New targets.
91 (clean): Remove the 'is-native' program.
92 (SOURCE_FILES): Add is-native.c.
93 (IMPORTED_FILES): Add qemu.h.
94 * tests/check-subst: Invoke 'locale charmap' only in native
97 2021-06-27 Bruno Haible <bruno@clisp.org>
100 Reported at <https://savannah.gnu.org/bugs/?60837>.
101 * README: Overhaul the paragraph that mentions iconv.m4.
103 2021-06-06 Bruno Haible <bruno@clisp.org>
105 gnulib-local: Put real license notice into the source files.
106 * gnulib-local/lib/alloca.in.h: Use an LGPLv2+ notice.
108 2021-02-28 Bruno Haible <bruno@clisp.org>
111 * DEPENDENCIES: List the normal dependencies of a package with an
112 Autoconf-generated configure file.
114 2021-02-07 Bruno Haible <bruno@clisp.org>
116 Support creating shared libraries on MidnightBSD.
117 Patch from <https://savannah.gnu.org/patch/?10007>.
118 * m4/libtool.m4: Treat MidnightBSD like FreeBSD.
119 * build-aux/ltmain.sh: Likewise.
121 2021-01-31 Bruno Haible <bruno@clisp.org>
123 Update after gnulib changed on 2020-08-26.
124 * configure.ac: Test $iconv_arg1, not $am_cv_proto_iconv_arg1.
126 2021-01-31 Bruno Haible <bruno@clisp.org>
128 Switch to autoconf 2.71.
129 * autogen.sh: Update comment.
130 * configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING. Invoke
131 AC_C_BIGENDIAN instead of CL_WORDS_LITTLEENDIAN.
132 * m4/eilseq.m4: Require Autoconf >= 2.61.
133 (AC_EILSEQ): Improve quoting. Use AC_COMPUTE_INT instead of
135 * m4/endian.m4: Remove file.
136 * Makefile.in (SOURCE_FILES): Remove it.
138 2020-12-08 Bruno Haible <bruno@clisp.org>
140 Switch to autoconf 2.70.
141 * Makefile.devel (AUTOCONF, AUTOHEADER): Remove '-2.69' suffix.
142 * HACKING: Remove sentence about symbolic links.
143 * autogen.sh: Update comment.
145 2020-08-31 Bruno Haible <bruno@clisp.org>
147 Fix some -Wcast-qual warning, reported by clang.
148 * lib/iconv.c (compare_by_name): Add more 'const'.
149 (iconv_canonicalize): Cast value to 'unsigned char', not pointer to 'unsigned char *'.
150 * lib/iconv_open1.h: Likewise.
152 2020-08-30 Bruno Haible <bruno@clisp.org>
154 Make sure that build-aux/compile is in the tarball.
155 * autogen.sh: Fetch also 'build-aux/compile' through gnulib-tool.
156 * Makefile.devel (srclib/Makefile.in): Don't fetch nor delete
158 * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/compile.
159 (IMPORTED_FILES): Add build-aux/compile.
161 2020-08-29 Bruno Haible <bruno@clisp.org>
163 Update after gnulib changed.
164 * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.64.
166 2020-08-06 Bruno Haible <bruno@clisp.org>
168 Avoid a GCC warning with GCC >= 7.
169 Reported by Reini Urban <rurban@cpan.org>
170 in <https://savannah.gnu.org/bugs/?58903>.
171 * lib/gentranslit.c (main): Reset i to 0 each time p gets a new value.
172 Add assertion about i's possible values.
174 2020-04-05 Bruno Haible <bruno@clisp.org>
176 Fix an autogen.sh failure (regression from 2016-12-04).
177 Reported by Petr Ovtchenkov <ptr@void-ptr.info> in
178 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2020-04/msg00003.html>.
179 * autogen.sh: Invoke also the Makefile target srclib/Makefile.in, so as
180 to get build-aux/install-sh. Finish the "copy files" phase before recursing
181 through the subpackages tree through Makefile.devel.
182 * Makefile.devel: Reorder targets.
184 2020-04-04 Bruno Haible <bruno@clisp.org>
187 * gnulib-local/modules/mbstate (License): Set to LGPLv2+.
189 2020-04-04 Bruno Haible <bruno@clisp.org>
191 Change the license of the library from LGPL 2.0 to LGPL 2.1.
192 * COPYING.LIB: Upgrade to LGPL 2.1.
194 2019-12-23 Bruno Haible <bruno@clisp.org>
196 Do export the symbol 'locale_charset' (needed by GNU bash).
197 * lib/Makefile.in (DEFS): Define also BUILDING_LIBCHARSET.
199 2019-09-01 Bruno Haible <bruno@clisp.org>
201 build: Add support for shallow-cloning of subdirectories.
202 * gitsub.sh (func_usage): Document allowed git options with 'git pull'.
203 (func_pull): Accept GIT_OPTIONS argument.
204 (pull): Parse git options before complaining about too many arguments.
205 Pass the git options to func_pull.
207 2019-07-05 Bruno Haible <bruno@clisp.org>
209 Don't export the symbol 'aliases_lookup' on non-ELF platforms.
210 * Makefile.devel (lib/aliases.h, lib/aliases_sysaix.h,
211 lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h):
212 Add a 'static' keyword in front of the declaration of aliases_lookup.
214 2019-07-02 Bruno Haible <bruno@clisp.org>
216 Update to current gnulib.
217 * Makefile.devel (GNULIB_MODULES): Add lib-symbol-visibility.
218 (srclib/Makefile.gnulib): Copy codeset.m4.
219 * srclib/Makefile.am (AM_CFLAGS): Initialize.
221 2019-07-02 Bruno Haible <bruno@clisp.org>
223 Drop unused macro gl_GLIBC21.
224 * autogen.sh: Don't copy glibc21.m4.
226 2019-05-22 Bruno Haible <bruno@clisp.org>
229 Reported by Paul Hardy <unifoundry@gmail.com>.
230 * lib/jisx0213.h: Fix comment about the underlying standard version.
232 2019-05-11 Bruno Haible <bruno@clisp.org>
234 Update bug reporting instructions.
235 * README: Tell users to report bugs in the bug tracker or by email.
236 * src/iconv.c (usage): Likewise.
237 (print_version): Move URL out of translatable string.
239 2019-04-26 Bruno Haible <bruno@clisp.org>
242 $ rsync -Lrtvz translationproject.org::tp/latest/libiconv/ po/new
244 $ for f in *.po; do \
245 msgmerge --update --lang=${f%.po} --previous $f ../libiconv.pot; \
250 2019-04-26 Bruno Haible <bruno@clisp.org>
253 $ cd po; make update-po
255 2019-04-26 Bruno Haible <bruno@clisp.org>
257 Prepare for version 1.16.
258 * configure.ac: Bump version number to 1.16.
259 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
260 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:1:6.
261 * src/iconv.c (print_version): Update copyright year.
262 * windows/iconv.rc: Likewise.
263 * windows/libiconv.rc: Likewise.
264 * README: Update download link.
266 2019-04-26 Bruno Haible <bruno@clisp.org>
268 Tweak exported symbols when --enable-relocatable is used.
269 * lib/Makefile.in (DEFS): Map 'relocate2' to a different symbol.
271 2019-04-01 Bruno Haible <bruno@clisp.org>
273 build: Separate git operations from build operations.
274 * gitsub.sh: New file, from gnulib.
275 * .gitmodules: New file.
276 * autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
277 environment variable. Ignore the GNULIB_TOOL environment variable.
278 * HACKING: Explain when to use gitsub.sh.
280 2019-03-07 Bruno Haible <bruno@clisp.org>
282 Avoid signed integer overflow during shifts.
283 Reported by Jeffrey Walton <noloader@gmail.com>.
284 * lib/tcvn.h (tcvn_wctomb): Use unsigned integer type for bit mask
286 * lib/viscii.h (viscii_wctomb): Likewise.
288 2019-03-04 Bruno Haible <bruno@clisp.org>
290 Add support for --enable-relocatable to libcharset.
291 * autogen.sh: Copy some more files to libcharset/build-aux/ and
294 2019-03-04 Bruno Haible <bruno@clisp.org>
296 Update --enable-relocatable support after gnulib changed.
297 * configure.ac: Move the LT_INIT invocation before the gl_RELOCATABLE
298 invocation. Remove unused argument to gl_RELOCATABLE.
300 2019-01-27 Bruno Haible <bruno@clisp.org>
302 Accommodate a shell that is not in /bin/sh.
303 * Makefile.in (SHELL): Use the value found by configure.
304 * lib/Makefile.in (SHELL): Likewise.
305 * man/Makefile.in (SHELL): Likewise.
306 * src/Makefile.in (SHELL): Likewise.
307 * tests/Makefile.in (SHELL): Likewise.
308 (check, check-extra-yes): Use SHELL to run the check-* scripts.
310 2019-01-27 Bruno Haible <bruno@clisp.org>
312 Update after gnulib changed.
313 * Makefile.in (GNULIB_IMPORTED_FILES): Remove build-aux/snippet/*.
315 2019-01-27 Bruno Haible <bruno@clisp.org>
317 Update support for building with MSVC. Automake does not install ar-lib.
318 * autogen.sh: Fetch build-aux/ar-lib here.
319 * Makefile.devel (srclib/Makefile.in): Don't fetch build-aux/ar-lib
321 * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/ar-lib.
322 (IMPORTED_FILES): Add build-aux/ar-lib.
324 2019-01-06 Bruno Haible <bruno@clisp.org>
326 Revisit handling of file descriptors closed by the parent process.
327 * src/iconv.c (main): Add comment.
329 2018-10-23 Bruno Haible <bruno@clisp.org>
331 Remove outdated DJGPP build infrastructure.
332 Approved by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
333 * djgpp: Remove directory.
334 * INSTALL.djgpp: Remove file.
335 * Makefile.in (SOURCE_FILES): Remove them.
337 2018-10-23 Bruno Haible <bruno@clisp.org>
339 Update after gnulib changed.
340 * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.63.
342 2018-09-22 Bruno Haible <bruno@clisp.org>
344 Avoid some warnings in MSVC build.
345 * include/export.h: Handle MSVC compiler as well.
347 2018-09-22 Bruno Haible <bruno@clisp.org>
349 Update from gnulib. Move mapping tables into the code.
350 * autogen.sh: Don't create libcharset/m4/relocatable-lib.m4.
351 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean): Don't
352 remove lib/charset.alias.
353 * tests/check-subst: Don't set CHARSETALIASDIR.
355 2018-05-04 Bruno Haible <bruno@clisp.org>
357 Drop special instructions for OSF/1.
358 * INSTALL.generic: Remove the recommendation for OSF/1.
360 2018-05-04 Bruno Haible <bruno@clisp.org>
362 Simplify: Remove the ability to install a preloadable library.
363 * preload/*: Remove directory.
364 * Makefile.devel: Don't recurse into 'preload'.
365 * Makefile.in: Likewise.
366 * configure.ac: Don't declare 'preload' as a subdirectory.
367 * README, NEWS: Update.
369 2018-05-04 Bruno Haible <bruno@clisp.org>
371 Simplify code. Drop support for Borland C++ on Windows.
372 * lib/iconv.c: Simplify 'defined _WIN32 || defined __WIN32__' to just
374 * lib/iconv_open1.h: Likewise.
376 2018-05-04 Bruno Haible <bruno@clisp.org>
378 * lib/relocatable.c: Update from gnulib.
380 2018-05-04 Bruno Haible <bruno@clisp.org>
382 Switch to automake 1.16.
383 * autogen.sh: Update comment.
384 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.16.
385 * libcharset/Makefile.devel (ACLOCAL): Likewise.
386 * preload/Makefile.devel (ACLOCAL): Likewise.
388 2018-03-27 Bruno Haible <bruno@clisp.org>
391 * README: Don't recommend to use --prefix=/usr/local, as it produces
392 problems with GCC (since GCC's treatment of /usr/local/include and
393 /usr/local/lib is inconsistent by default). Don't recommend to use
394 the iconv.m4 installed by GNU gettext, because it won't work when
395 GNU automake and GNU gettext are installed with different --prefix
396 options; instead recommend the 'iconv' module from gnulib.
398 2018-01-27 Bruno Haible <bruno@clisp.org>
401 * INSTALL.windows: Renamed from README.windows.
402 * INSTALL.djgpp: Renamed from README.djgpp.
403 * Makefile.in (SOURCE_FILES): Update.
405 2018-01-03 Bruno Haible <bruno@clisp.org>
407 Fix installation in 64-bit mode on AIX.
408 * lib/Makefile.in (AR): New variable.
409 (install): Use it instead of hardcoding 'ar'.
411 2017-11-26 Bruno Haible <bruno@clisp.org>
413 Avoid end-of-lines problem in generated shell scripts on Cygwin.
414 Patch by Feiyun Wang <feiyunw@yahoo.com>.
415 * lib/genaliases.c (main): Create canonical.sh and canonical_local.sh
416 with Unix end-of-line characters, regardless of Cygwin choice of
417 text mode vs. binary mode.
419 2017-07-15 Bruno Haible <bruno@clisp.org>
421 Allow building statically linked binaries, through LDFLAGS="-static".
423 <https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
424 * build-aux/ltmain.sh (func_mode_help, func_mode_link): In the link
425 mode, accept option '-static-uninstalled-libs' in place of '-static',
426 and make '-static' an equivalent of '-all-static'.
428 2017-07-15 Bruno Haible <bruno@clisp.org>
430 Don't attempt to build preloadable_libiconv.so when linking statically.
431 * preload/configure.ac (enable_shared, enable_static): Don't force
432 shared libraries when LDFLAGS indicates static linking.
433 (PLUGLIB): Set to empty when is not configured for building shared
436 2017-07-15 Bruno Haible <bruno@clisp.org>
438 Get rid of autom4te.cache directories, as far as possible.
439 * Makefile.devel (srclib/Makefile.in, aclocal.m4, configure,
440 config.h.in): Remove autom4te.cache after invoking aclocal, autoconf,
441 autoheader, automake.
442 * preload/Makefile.devel (aclocal, configure): Likewise.
444 2017-05-18 Bruno Haible <bruno@clisp.org>
446 * lib/relocatable.h: Update from gnulib.
447 * lib/relocatable.c: Update from gnulib.
449 2017-01-30 Bruno Haible <bruno@clisp.org>
451 Prepare for version 1.15.
452 * src/iconv.c (print_version): Update copyright year.
453 * windows/iconv.rc: Likewise.
454 * windows/libiconv.rc: Likewise.
456 2016-12-29 Bruno Haible <bruno@clisp.org>
458 Make Makefile.devel consistent with .gitignore.
459 * Makefile.devel (srclib/Makefile.in): Depend on aclocal.m4.
460 (totally-clean): Remove also aclocal.m4.
462 2016-12-25 Bruno Haible <bruno@clisp.org>
465 * autogen.sh: Emit a "done" diagnostic when autogen.sh completed
468 2016-12-25 Bruno Haible <bruno@clisp.org>
470 Reorder Makefile.devel.
471 * Makefile.devel: Reorder: put gnulib targets before autotools targets.
473 2016-12-14 Bruno Haible <bruno@clisp.org>
475 Cleanup useless removals.
476 * lib/Makefile.in (distclean): No need to remove 'libtool'.
478 2016-12-04 Bruno Haible <bruno@clisp.org>
481 * Makefile.devel: Update comments about release process.
483 2016-12-04 Bruno Haible <bruno@clisp.org>
485 Create tarballs through an Automake-like "make dist" command.
486 * Makefile.in (SOURCE_FILES, LIBTOOL_IMPORTED_FILES,
487 AUTOMAKE_OLD_IMPORTED_FILES, AUTOMAKE_IMPORTED_FILES, IMPORTED_FILES,
488 GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
489 (distdir): New target.
490 (PACKAGE, VERSION, TAR, GZIP): New macros.
492 * lib/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
493 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
494 (distdir): New target.
495 * man/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
496 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
497 (distdir): New target.
498 * preload/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
499 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
500 (distdir): New target.
501 * src/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
502 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
503 (distdir): New target.
504 * tests/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
505 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
506 (distdir): New target.
508 2016-12-04 Bruno Haible <bruno@clisp.org>
510 Remove duplicates of imported files from version control.
511 * autogen.sh: Copy imported files to libcharset.
513 2016-12-04 Bruno Haible <bruno@clisp.org>
515 Always use the newest released copies of files brought in from Automake.
516 * Makefile.devel (srclib/Makefile.in): Make sure to get new versions of
517 files brought in by automake.
518 * build-aux/install-sh: Remove from version control.
519 * build-aux/missing: Likewise.
521 2016-12-04 Bruno Haible <bruno@clisp.org>
523 Always use the newest copies of config.guess, config.sub.
524 * Makefile.devel (gnulib-imported-files): New target.
525 * autogen.sh: Invoke it.
526 * build-aux/config.guess: Remove from version control.
527 * build-aux/config.sub: Likewise.
529 2016-12-04 Bruno Haible <bruno@clisp.org>
531 Always use the newest copy of fcntl-o.m4.
532 * m4/fcntl-o.m4: Remove file. Rely on srcm4/fcntl-o.m4 instead.
534 2016-12-04 Bruno Haible <bruno@clisp.org>
536 Remove obsolete documentation.
537 * PORTS: Remove file.
539 2016-12-03 Bruno Haible <bruno@clisp.org>
541 Make Makefile.devel more useful for the users of the released tarball.
542 * Makefile.devel (srclib/Makefile.gnulib): Don't force this target.
543 (gnulib-clean): New target.
544 (totally-clean): New target. Do the removals from autogen.sh. Also,
545 remove lib/aliases*.gperf, lib/canonical*.h, man/iconvctl.3.html,
546 man/iconv_open_into.3.html.
547 * autogen.sh: Invoke target gnulib-clean before srclib/Makefile.gnulib.
548 Invoke target totally-clean before all.
549 * preload/Makefile.devel (totally-clean): New target.
551 2016-12-03 Bruno Haible <bruno@clisp.org>
553 Modernize configure.ac.
554 * configure.ac: Use 2-argument AC_INIT. Avoid an AM_INIT_AUTOMAKE
556 * preload/configure.ac: Use 2-argument AC_INIT. Use AC_CONFIG_SRCDIR.
558 2016-12-03 Bruno Haible <bruno@clisp.org>
560 Towards reproducible builds.
561 * Makefile.devel (man/%.html): Remove the CreationDate comment line
564 2016-12-04 Bruno Haible <bruno@clisp.org>
566 Update to gettext-0.19.8.1.
567 * ABOUT-NLS: Update through 'gettextize'.
569 2016-12-03 Bruno Haible <bruno@clisp.org>
571 Update documentation.
572 * HACKING: Refer to the Git repository.
574 2016-12-03 Bruno Haible <bruno@clisp.org>
576 Avoid compilation warnings in 'genflags' program.
577 * lib/genflags.c: Avoid warnings from GCC's -Wunused-function option.
579 2016-12-02 Bruno Haible <bruno@clisp.org>
581 * relocatable.c: Update from gnulib.
583 2016-11-25 Bruno Haible <bruno@clisp.org>
585 Prepare for version 1.15.
586 * configure.ac: Bump version number to 1.15.
588 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
589 * windows/iconv.rc: Update.
590 * windows/libiconv.rc: Update.
591 * Makefile.devel: Update comments.
592 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:0:6.
593 * src/iconv.c (print_version): Update copyright year.
595 2016-11-23 Bruno Haible <bruno@clisp.org>
597 Update installation instructions for Windows.
598 * README.windows: Assume a 64-bit Windows. Explain both 32-bit and
599 64-bit builds. Add instructions for the MS Visual C/C++ tool chain.
600 Revamp instructions for Cygwin.
602 2016-11-23 Bruno Haible <bruno@clisp.org>
604 Drop the nickname "woe32".
605 * README.windows: Renamed from README.woe32.
607 2016-11-22 Bruno Haible <bruno@clisp.org>
609 Update support for building with MSVC.
610 * Makefile.devel (srclib/Makefile.in): Import 'ar-lib' and 'compile'
612 * lib/Makefile.in (install-lib, install): Install the .la file with
613 $(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets
614 installed without execution permissions, and programs linked to it fail:
615 in a Cygwin shell with exit code 127, or from a cmd.exe window with a
616 dialog "The application was unable to start correctly (0xc0000022)."
618 2016-11-19 Bruno Haible <bruno@clisp.org>
620 Fix link error when compiling with gcc -O0.
621 * lib/iconv.c (aliases2_lookup): Make static.
622 Reported by Chung-Lin Tang <chunglin.tang@gmail.com>
623 at https://savannah.gnu.org/bugs/?47953 .
625 2016-11-17 Bruno Haible <bruno@clisp.org>
627 UTF-8: Reject surrogates and out-of-range code points.
628 * lib/utf8.h (utf8_mbtowc, utf8_wctomb): Reject code points in the
629 range 0xD800..0xDFFF and >= 0x110000.
630 * tests/genutf8.c (main): Don't emit mappings for 0xD800..0xDFFF.
632 2016-10-22 Bruno Haible <bruno@clisp.org>
634 Switch to libtool 2.4.6.
635 * m4/libtool.m4: Update from libtool-2.4.6, with modifications:
636 2008-04-06 Bruno Haible <bruno@clisp.org>
637 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
638 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
640 * m4/ltoptions.m4: Likewise.
641 * m4/ltversion.m4: Likewise.
642 * build-aux/ltmain.sh: Likewise.
644 2016-10-14 Bruno Haible <bruno@clisp.org>
646 Use 'size_t', not 'int', for the length of a string.
647 * lib/iconv.c: Include <limits.h>.
648 * lib/genflags.c: Likewise.
649 * lib/converters.h (struct mbtowc_funcs, struct wctomb_funcs): Change
650 'int n' parameter to 'size_t n'.
651 (RET_COUNT_MAX): New macro.
652 * lib/*.h: Use 'size_t n' instead of 'int n'.
653 * lib/ucs2.h (ucs2_mbtowc): Make sure 'count' does not cause an 'int'
655 * lib/ucs4.h (ucs4_mbtowc): Likewise.
656 * lib/utf16.h (utf16_mbtowc): Likewise.
657 * lib/utf32.h (utf32_mbtowc): Likewise.
658 * tools/8bit_tab_to_h.c: Generate function signatures with 'size_t n'.
659 * tools/cjk_tab_to_h.c: Likewise.
660 * NEWS: Mention the change.
662 2016-10-04 Bruno Haible <bruno@clisp.org>
664 Extend CP1255 mapping.
665 * lib/cp1255.h (cp1255_2uni, cp1255_page05): Map 0xCA to U+05BA.
666 * tests/CP1255.TXT: Likewise.
667 This matches https://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1255.txt
668 and what the native Windows converter does since at least Windows XP.
670 2016-10-01 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
671 Bruno Haible <bruno@clisp.org>
673 Remove large stack requirement from gentranslit.
674 * lib/gentranslit.c (main): Heap-allocate large arrays.
675 * Makefile.devel (lib/translit.h): Remove 'ulimit -s unlimited' command.
677 2015-12-10 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
679 Remove unused array from gentranslit.
680 * lib/gentranslit.c (main): Remove unused array.
681 * Makefile.devel (CC): Add -Wall option.
682 Reported in https://savannah.gnu.org/bugs/?46663 .
684 2016-10-01 Bruno Haible <bruno@clisp.org>
687 * src/iconv.c (main): Increment i after parsing the --silent option.
688 Reported in https://savannah.gnu.org/bugs/?41187 .
690 2016-10-01 Bruno Haible <bruno@clisp.org>
692 Update to current gnulib.
693 * Makefile.devel (GNULIB_MODULES): Remove memmove.
694 * tests/Makefile.in (INCLUDES): Make sure to include the top-level
695 "config.h". Needed for the 'binary-io' module.
697 2016-10-01 Bruno Haible <bruno@clisp.org>
699 Switch to automake 1.15.
700 * autogen.sh: Update comment.
701 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
702 (srclib/Makefile.in): Don't remove auxiliary files brought in by
704 * preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
705 * srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
706 * build-aux/missing: Update from automake-1.15.
708 2016-10-01 Bruno Haible <bruno@clisp.org>
710 Remove autogenerated doc files from version control.
711 * man/iconvctl.3.html: Remove file.
712 * man/iconv_open_into.3.html: Remove file.
714 2012-12-06 Bruno Haible <bruno@clisp.org>
716 Change copyright holder of man pages.
717 * man/*.[13]: Replace myself with FSF.
719 2012-06-30 Bruno Haible <bruno@clisp.org>
721 Make it possible to run 'genaliases2' on native Windows.
722 * lib/genaliases2.c (main): Expect 3 arguments. Open the output files
723 explicitly. Complain if they don't exist.
724 * Makefile.devel (lib/aliases_*.h): Pass the output filenames as
725 arguments to genaliases.
726 Reported at <https://savannah.gnu.org/bugs/?36748>.
728 Make it possible to run 'genaliases' on native Windows.
729 * lib/genaliases.c (main): Expect 3 arguments. Open the output files
730 explicitly. Complain if they don't exist. Improve error checking.
731 * Makefile.devel (lib/aliases*.h): Pass the output filenames as
732 arguments to genaliases.
733 Reported at <https://savannah.gnu.org/bugs/?36748>.
735 2012-05-13 Bruno Haible <bruno@clisp.org>
737 Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
738 * lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
739 from U+E7C7 to 0xA8BC.
740 * lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
742 (gb18030uni_wctomb): Treat U+E7C7 as a special case.
743 * tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
744 * tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
745 0x8135F437 and U+E7C7.
747 2012-04-28 Bruno Haible <bruno@clisp.org>
749 Switch to autoconf 2.69 and automake 1.12.
750 * autogen.sh: Update comment.
751 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
752 (AUTOMAKE, ACLOCAL): Switch to version 1.12.
753 * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
754 (ACLOCAL): Switch to version 1.12.
756 2012-03-24 Bruno Haible <bruno@clisp.org>
759 * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
761 2012-01-26 Bruno Haible <bruno@clisp.org>
764 * README: Quote 'like this', not `like this', as per the recent change
765 to the GNU coding standards.
767 * gnulib-local/lib/xmalloc.c: Likewise.
768 * lib/config.h.in: Likewise.
769 * src/iconv.c (usage): Likewise.
770 * tests/uniq-u.c: Likewise.
771 * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
773 * lib/big5.h: Update accordingly.
774 * lib/cns11643_inv.h: Likewise.
775 * lib/cp932ext.h: Likewise.
776 * lib/cp950ext.h: Likewise.
777 * lib/gb12345ext.h: Likewise.
778 * lib/gb2312.h: Likewise.
779 * lib/gbkext_inv.h: Likewise.
780 * lib/hkscs1999.h: Likewise.
781 * lib/hkscs2001.h: Likewise.
782 * lib/hkscs2004.h: Likewise.
783 * lib/hkscs2008.h: Likewise.
784 * lib/isoir165ext.h: Likewise.
785 * lib/jisx0208.h: Likewise.
786 * lib/jisx0212.h: Likewise.
787 * lib/jisx0213.h: Likewise.
788 * lib/ksc5601.h: Likewise.
789 * lib/uhc_1.h: Likewise.
790 * lib/uhc_2.h: Likewise.
792 2012-01-15 Bruno Haible <bruno@clisp.org>
795 * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
797 * tests/genutf8.c: Include config.h.
798 * tests/gengb18030z.c: Likewise.
799 * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
801 2011-01-28 Bruno Haible <bruno@clisp.org>
804 * woe32dll/export.h: Add a reference to the woe32dll writeup.
806 2012-01-06 Bruno Haible <bruno@clisp.org>
808 Update after gnulib changed.
809 * gnulib-local/lib/error.h.diff: Update.
811 2012-01-06 Bruno Haible <bruno@clisp.org>
813 Talk about "native Windows API", not "Woe32".
814 * lib/relocatable.c: Update comments to mention native Windows.
816 2012-01-04 Bruno Haible <bruno@clisp.org>
818 Talk about "native Windows API", not "Win32".
819 * lib/relocatable.c: Update comments to mention native Windows.
820 (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
822 2011-10-27 Bruno Haible <bruno@clisp.org>
824 Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
825 * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
826 * lib/ucs4.h (ucs4_mbtowc): Likewise.
827 * lib/utf32.h (utf32_mbtowc): Likewise.
828 Reported at <https://savannah.gnu.org/bugs/?34916>.
830 2012-06-30 Bruno Haible <bruno@clisp.org>
832 Improve ISO-2022-CP-MS versus CP932.
833 * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
834 the rows 0x79..0x7C as rows from CP932.
835 * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
836 tests/ISO-2022-JP-MS-snippet.
837 * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
838 to ESC $ B 0x79..0x7C.
839 * tests/ISO-2022-JP-MS-snippet: Likewise.
840 * tests/check-stateful: Also test the *-snippet.alt file if it exists.
841 * tests/check-stateful.bat: Likewise.
843 2012-06-30 Bruno Haible <bruno@clisp.org>
845 Improve ISO-2022-CP-MS versus CP932.
846 * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
848 * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
849 0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
850 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
852 2011-10-23 Bruno Haible <bruno@clisp.org>
854 New encoding ISO-2022-CP-MS.
855 * NOTES: Mention ISO-2022-JP-MS.
856 * tools/CP50221-0208-EXT.TXT: New file.
857 * tools/CP50221-0212-EXT.TXT: New file.
858 * tools/8bit_tab_to_h.c: Add comments about how to generate
859 cp50221_0208_ext.h, cp50221_0212_ext.h.
860 * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
862 * lib/cp50221_0208_ext.h: New file, mostly generated.
863 * lib/cp50221_0212_ext.h: New file, mostly generated.
864 * lib/iso2022_jpms.h: New file.
865 * lib/converters.h: Include it.
866 * lib/encodings.def: Add ISO-2022-JP-MS.
867 * README, man/iconv_open.3: Add ISO-2022-JP-MS.
868 * tests/ISO-2022-JP-MS-snippet: New file.
869 * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
870 * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
871 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
873 2011-10-23 Bruno Haible <bruno@clisp.org>
875 * lib/encodings.def: Add comments about Windows names of encodings.
877 2011-10-18 Bruno Haible <bruno@clisp.org>
879 * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
880 2008-04-06 Bruno Haible <bruno@clisp.org>
881 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
882 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
884 * m4/ltoptions.m4: Likewise.
885 * m4/ltversion.m4: Likewise.
886 * build-aux/ltmain.sh: Likewise.
888 2011-10-03 Bruno Haible <bruno@clisp.org>
890 * lib/relocatable.c: Update from gnulib.
892 2011-09-02 Bruno Haible <bruno@clisp.org>
894 Fix "make check" failure when $(srcdir) != $(builddir).
895 * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
896 GB18030.IRREVERSIBLE.TXT into the build directory.
897 Reported by Christian Weisgerber <naddy@mips.inka.de>.
899 2011-08-07 Bruno Haible <bruno@clisp.org>
901 Ensure all HTML-formatted man pages are up-to-date.
902 * Makefile.devel (all): Depend on man/iconvctl.3.html and
903 man/iconv_open_into.3.html.
905 2011-08-07 Bruno Haible <bruno@clisp.org>
907 * Version 1.14 released.
909 2011-08-07 Bruno Haible <bruno@clisp.org>
911 * configure.ac: Bump version number to 1.14.
913 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
914 * windows/iconv.rc: Update.
915 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
916 * src/iconv.c (print_version): Update copyright year.
918 2011-08-07 Bruno Haible <bruno@clisp.org>
920 Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
921 * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
924 2011-08-07 Bruno Haible <bruno@clisp.org>
926 * tests/check-subst: Add comments about OSF/1.
928 2011-08-07 Bruno Haible <bruno@clisp.org>
930 * lib/relocatable.c: Update from gnulib.
932 2011-08-06 Bruno Haible <bruno@clisp.org>
934 Upgrade the GB18030 converter to the version from 2005.
935 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
936 'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
937 0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
938 (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
939 for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
940 (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
941 (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
942 U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
943 * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
944 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
945 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
946 to now-assigned Unicode codepoints.
947 * tests/GB18030.IRREVERSIBLE.TXT: New file.
949 2011-08-06 Bruno Haible <bruno@clisp.org>
951 Fix conversion bug in CP1258 converter.
952 * lib/vietcomb.h (viet_comp_table_data): Remove entry for
953 U+00A5 U+0301. Fix entry for U+00A8 U+0301.
954 (viet_decomp_table): Fix entry for U+0385.
955 * tests/CP1258.IRREVERSIBLE.TXT: Update.
956 Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
958 2011-07-03 Bruno Haible <bruno@clisp.org>
960 Improve interactive behaviour of iconv program.
961 * src/iconv.c (convert): Flush the output before starting a possibly
962 blocking safe_read call.
964 2011-07-03 Bruno Haible <bruno@clisp.org>
966 Fix interactive behaviour of iconv program.
967 * Makefile.devel (GNULIB_MODULES): Add safe-read.
968 * src/iconv.c: Include safe-read.h.
969 (convert): Take the infile as a file descriptor, not as a FILE stream.
970 Use safe_read() instead of fread().
972 Reported by Xavier Pucel <xpucel@hotmail.com>.
974 2011-05-02 Bruno Haible <bruno@clisp.org>
976 Update after gnulib changed.
977 * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
979 2011-06-02 Bruno Haible <bruno@clisp.org>
981 Update after gnulib changed.
982 * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
984 2011-06-04 Bruno Haible <bruno@clisp.org>
986 Work around <wchar.h> bug on OSF/1 5.1.
987 * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
990 2011-03-27 KO Myung-Hun <komh@chollian.net>
992 Fix installation on OS/2.
993 * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
994 iconv_no_i18n. This is the recommended way to use libtool, see
995 <https://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
997 2011-03-31 Bruno Haible <bruno@clisp.org>
999 gentranslit: Fix buffer overrun.
1000 * lib/gentranslit.c (main): Allocate more room for the suffix strings
1001 of the translit pages.
1002 Reported by Ben Noordhuis <info@bnoordhuis.nl>.
1004 2011-02-28 Bruno Haible <bruno@clisp.org>
1006 * lib/relocatable.h: Update from gnulib.
1007 * lib/relocatable.c: Likewise.
1009 2011-01-29 Corinna Vinschen <corinna-cygwin@cygwin.com>
1010 Bruno Haible <bruno@clisp.org>
1012 Simplify "wchar_t" handling on Cygwin 1.7.x.
1013 * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
1014 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
1015 * lib/iconv_open1.h: Likewise.
1016 Rationale: <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
1018 2011-01-29 Bruno Haible <bruno@clisp.org>
1020 Adjust the meaning of "wchar_t" on native Windows systems.
1021 * lib/iconv.c (iconv_canonicalize): On native Windows, map
1022 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
1023 * lib/iconv_open1.h: Likewise.
1024 Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
1025 in <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
1027 2010-11-23 Bruno Haible <bruno@clisp.org>
1029 Implement newer release of BIG5-HKSCS.
1030 * tools/Makefile (ALL): Add hkscs2008.h.
1031 (hkscs2008.h): New rule.
1032 * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
1033 * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
1034 equivalent to BIG5-HKSCS:2008.
1035 * lib/hkscs2008.h: New file, autogenerated.
1036 * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
1037 * lib/converters.h: Include the new file.
1038 * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
1039 * tests/BIG5-HKSCS-2008.TXT: New file, based on
1040 tests/BIG5-HKSCS-2004.TXT.
1041 * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
1042 tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
1043 * tests/BIG5-HKSCS-2008-snippet: New file, based on
1044 tests/BIG5-HKSCS-2004-snippet.
1045 * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
1046 tests/BIG5-HKSCS-2004-snippet.UTF-8.
1047 * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
1048 Reported by oCameLo <camel322@gmail.com>.
1050 2010-11-23 Bruno Haible <bruno@clisp.org>
1052 Make cjk_tab_to_h 64-bit clean.
1053 * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
1054 (output_title): Update copyright year.
1056 2010-09-23 Bruno Haible <bruno@clisp.org>
1058 Switch to autoconf 2.68.
1059 * autogen.sh: Update comment.
1060 * configure.ac: Fix AC_COMPILE_IFELSE invocation.
1061 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
1062 * preload/Makefile.devel (AUTOCONF): Likewise.
1064 2010-09-23 Bruno Haible <bruno@clisp.org>
1066 * m4/libtool.m4: Update from libtool-2.4, with modifications:
1067 2008-04-06 Bruno Haible <bruno@clisp.org>
1068 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1069 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1071 * m4/ltversion.m4: Update from libtool-2.4.
1072 * build-aux/ltmain.sh: Likewise.
1074 2010-09-23 Bruno Haible <bruno@clisp.org>
1076 Simplify use of gnulib-tool now that gnulib-tool --import works better.
1077 * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
1078 * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
1080 2010-07-31 Bruno Haible <bruno@clisp.org>
1082 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
1083 * preload/Makefile.devel (AUTOCONF): Likewise.
1085 2010-07-03 Bruno Haible <bruno@clisp.org>
1087 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
1088 * preload/Makefile.devel (AUTOCONF): Likewise.
1090 2010-06-04 Bruno Haible <bruno@clisp.org>
1092 Addendum to 2009-10-18 commit.
1093 * m4/fcntl-o.m4: New file, from gnulib.
1094 * configure.ac: Invoke gl_FCNTL_O_FLAGS.
1095 * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
1097 2010-06-04 Bruno Haible <bruno@clisp.org>
1099 * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
1100 2008-04-06 Bruno Haible <bruno@clisp.org>
1101 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1102 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1104 * m4/ltoptions.m4: Update from libtool-2.2.8.
1105 * m4/ltversion.m4: Likewise.
1106 * m4/lt~obsolete.m4: Likewise.
1107 * build-aux/ltmain.sh: Likewise.
1109 2010-04-06 Bruno Haible <bruno@clisp.org>
1111 Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
1112 * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
1113 doesn't contains #include directives.
1115 2010-03-30 Bruno Haible <bruno@clisp.org>
1117 * README.woe32: Update for Cygwin 1.7.x.
1119 2009-12-26 Bruno Haible <bruno@clisp.org>
1121 * windows/libiconv.rc: Update.
1122 * windows/iconv.rc: Update.
1124 2009-12-11 Bruno Haible <bruno@clisp.org>
1126 * include/iconv.h.in: Untabify.
1127 * gnulib-local/lib/xalloc.h: Untabify.
1128 * woe32dll/export.h: Untabify.
1129 * tests/uniq-u.c: Untabify.
1131 2009-12-11 Bruno Haible <bruno@clisp.org>
1133 * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
1135 2009-12-11 Bruno Haible <bruno@clisp.org>
1137 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
1138 * preload/Makefile.devel (AUTOCONF): Likewise.
1140 2009-11-22 Bruno Haible <bruno@clisp.org>
1142 * tests/check-subst: Add reference to the Solaris printf bug.
1143 Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
1145 2009-09-01 Bruno Haible <bruno@clisp.org>
1147 * README.woe32: Put the -mno-cygwin option into CC and CXX.
1148 Recommended by Paolo Bonzini and Eric Blake.
1150 2009-08-15 Bruno Haible <bruno@clisp.org>
1152 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
1153 * preload/Makefile.devel (AUTOCONF): Likewise.
1155 2009-08-15 Bruno Haible <bruno@clisp.org>
1157 Use .git/info/exclude, not .gitignore, for imported or generated files.
1158 * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
1161 2009-07-07 Bruno Haible <bruno@clisp.org>
1163 Fix an endless loop.
1164 * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
1165 incomplete input correctly.
1166 * tests/test-to-wchar.c: New file.
1167 * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
1168 (check): Depend on and run tests-to-wchar.
1169 (clean): Add tests-to-wchar.
1170 Reported by Tristan Gingold <gingold@adacore.com>.
1172 2009-06-30 Bruno Haible <bruno@clisp.org>
1174 * Version 1.13.1 released.
1176 2009-06-30 Bruno Haible <bruno@clisp.org>
1178 * configure.ac: Bump version number to 1.13.1.
1181 2009-06-04 Bruno Haible <bruno@clisp.org>
1183 * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
1184 (ACLOCAL): Switch to version 1.11.
1186 2009-05-19 Bruno Haible <bruno@clisp.org>
1188 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
1189 * autogen.sh: Update comments.
1191 2009-04-24 Bruno Haible <bruno@clisp.org>
1193 Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
1194 * src/iconv_open2.h: Don't initialize nonexistent field if
1195 !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1196 Patch by Joel Brobecker <brobecker@adacore.com>.
1198 2009-04-15 Bruno Haible <bruno@clisp.org>
1200 * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
1201 explicitly. Needed on Cygwin.
1203 2009-04-11 Bruno Haible <bruno@clisp.org>
1205 * configure.ac: Move the statements for WOE32 and WINDRES.
1207 2009-03-26 Bruno Haible <bruno@clisp.org>
1209 * Version 1.13 released.
1211 2009-03-26 Bruno Haible <bruno@clisp.org>
1213 * src/iconv.c: Update copyright header to GPLv3+.
1214 (print_version): Update license info.
1216 2009-03-26 Bruno Haible <bruno@clisp.org>
1218 * src/iconv.c (print_version): Bump year.
1220 2009-03-25 Bruno Haible <bruno@clisp.org>
1222 * build-aux/config.guess: Update to GNU version 2009-02-03.
1223 * build-aux/config.sub: Likewise.
1225 2009-03-25 Bruno Haible <bruno@clisp.org>
1227 * configure.ac: Bump version number to 1.13.
1229 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1230 * windows/iconv.rc: Update.
1231 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
1233 2009-03-25 Bruno Haible <bruno@clisp.org>
1235 Fix the handling of Windows resources in shared libraries.
1236 * configure.ac: Invoke LT_LANG for 'Windows Resource'.
1237 * lib/Makefile.in (RC): New variable.
1238 (WINDRES): Remove variable.
1239 (OBJECTS_RES_yes): Add .lo suffix.
1240 (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
1242 Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
1244 2009-03-14 Bruno Haible <bruno@clisp.org>
1246 * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
1248 2009-01-24 Bruno Haible <bruno@clisp.org>
1250 * tools/Makefile (ALL): Add cp1131.h.
1251 (cp1131.h): New rule.
1252 * lib/encodings.def: Add CP1131.
1253 * lib/cp1131.h: New file.
1254 * lib/converters.h: Include it.
1255 * README, man/iconv_open.3: Add CP1131.
1256 * NOTES: Mention CP1131.
1257 * tests/CP1131.TXT: New file.
1258 * tests/Makefile.in (check): Also test CP1131.
1260 2009-01-17 Bruno Haible <bruno@clisp.org>
1262 Add support for "make install-strip".
1263 * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
1264 * Makefile.in (install-strip): New rule.
1265 * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
1267 (install-strip): New rule.
1268 * lib/Makefile.in (install-strip): New target.
1269 * preload/Makefile.in (install-strip): Likewise.
1270 * man/Makefile.in (install-strip): Likewise.
1271 Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
1273 2009-01-17 Bruno Haible <bruno@clisp.org>
1275 Update after gnulib changed.
1276 * src/Makefile.in (RELOCATABLE_STRIP): New variable.
1278 2009-01-17 Bruno Haible <bruno@clisp.org>
1280 Make --enable-relocatable work on glibc systems.
1281 * src/Makefile.in (host): New variable.
1283 2009-01-17 Bruno Haible <bruno@clisp.org>
1285 * lib/genflags.c: Include <string.h>.
1287 2009-01-14 Bruno Haible <bruno@clisp.org>
1289 * configure.ac: More consistent m4 quoting.
1290 * preload/configure.ac: Likewise.
1292 2008-09-28 Bruno Haible <bruno@clisp.org>
1294 * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
1295 preprocess the argument vector through prepare_spawn.
1297 2008-09-27 Bruno Haible <bruno@clisp.org>
1299 * build-aux/config.guess: Update to GNU version 2008-09-08.
1300 * build-aux/config.sub: Likewise.
1302 2008-09-26 Bruno Haible <bruno@clisp.org>
1304 * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
1306 2008-09-26 Bruno Haible <bruno@clisp.org>
1308 * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
1309 * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
1310 all programs against libicrt.a. Needed for the stdio function
1311 replacements on mingw.
1313 2008-09-21 Tadamasa Teranishi <yw3t-trns@asahi-net.or.jp>
1315 * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
1316 ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
1318 2008-09-20 Bruno Haible <bruno@clisp.org>
1320 * man/iconv_open_into.3: New file.
1322 2008-09-16 Bruno Haible <bruno@clisp.org>
1324 New function iconv_open_into.
1325 * include/iconv.h.in: Include <wchar.h> and its prerequisites.
1326 (iconv_allocation_t): New type.
1327 (iconv_open_into): New declaration.
1328 * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
1329 * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
1330 * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
1331 Verify size of iconv_allocation_t.
1332 (iconv_open_into): New function.
1333 * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
1334 field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1335 * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
1336 Reported by Roman Rybalko <romanr@romanr.info>.
1338 2008-09-16 Bruno Haible <bruno@clisp.org>
1340 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
1342 2008-09-16 Bruno Haible <bruno@clisp.org>
1344 * include/iconv.h.in: Use Unicode single-quotes in comments.
1346 2008-09-14 Bruno Haible <bruno@clisp.org>
1348 * Makefile.devel (GNULIB_MODULES): Add strerror.
1350 2008-09-07 Bruno Haible <bruno@clisp.org>
1352 Make behaviour when encountering invalid input after a shift sequence
1354 * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
1355 (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
1356 (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
1357 (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
1358 * lib/loop_unicode.h (unicode_loop_convert): Take into account the
1359 shift count contained in the negative return values.
1360 * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
1361 modified state and return RET_SHIFT_ILSEQ.
1362 * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
1363 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
1364 * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
1365 * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
1366 * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
1367 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
1368 * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
1369 * lib/ucs2.h (ucs2_mbtowc): Likewise.
1370 * lib/ucs4.h (ucs4_mbtowc): Likewise.
1371 * lib/utf16.h (utf16_mbtowc): Likewise.
1372 * lib/utf32.h (utf32_mbtowc): Likewise.
1373 * lib/utf7.h (utf7_mbtowc): Likewise.
1374 * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
1375 invalid input, return RET_SHIFT_ILSEQ.
1376 * lib/utf16le.h (utf16le_mbtowc): Likewise.
1377 * tests/test-shiftseq.c: New file.
1378 * tests/Makefile.in (check): Run test-shiftseq.
1379 (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
1380 (clean): Remove test-shiftseq executable.
1381 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1382 at <https://savannah.gnu.org/bugs/?24216>.
1384 2008-09-07 Bruno Haible <bruno@clisp.org>
1386 * man/iconv.3: Clarify the processing of shift-sequences.
1388 2008-09-07 Bruno Haible <bruno@clisp.org>
1390 * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
1391 2008-04-06 Bruno Haible <bruno@clisp.org>
1392 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1393 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1395 * m4/ltoptions.m4: Update from libtool-2.2.6.
1396 * m4/ltsugar.m4: Likewise.
1397 * m4/ltversion.m4: Likewise.
1398 * build-aux/ltmain.sh: Likewise.
1400 2008-09-06 Bruno Haible <bruno@clisp.org>
1402 * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
1403 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1404 at <https://savannah.gnu.org/bugs/?24214>.
1406 2008-06-30 Bruno Haible <bruno@clisp.org>
1408 Fix sed expressions to work with the old sed-3.02 on MSYS.
1409 * windows/windres-options (sed_extract_major, sed_extract_minor,
1410 sed_extract_subminor): Put a semicolon before the closing brace. Use
1411 an i\ command instead of an a\ command.
1412 Reported by Sunil Negi <sunil.negi@morningstar.com>
1413 in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
1414 via Keith Marshall <keithmarshall@users.sourceforge.net>.
1416 2008-05-22 Bruno Haible <bruno@clisp.org>
1418 * README.woe32: Update with info from GNU gettext's README.woe32.
1420 2008-05-18 Bruno Haible <bruno@clisp.org>
1422 * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
1423 2008-04-06 Bruno Haible <bruno@clisp.org>
1424 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1425 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1427 * m4/ltoptions.m4: Update from libtool-2.2.4.
1428 * m4/ltversion.m4: Likewise.
1429 * m4/lt~obsolete.m4: Likewise.
1430 * build-aux/ltmain.sh: Likewise.
1432 2008-04-14 Bruno Haible <bruno@clisp.org>
1434 * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
1437 2008-04-14 Bruno Haible <bruno@clisp.org>
1439 * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
1440 AC_AIX and AC_MINIX.
1441 * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
1442 * preload/Makefile.devel (AUTOCONF): Likewise.
1443 * autogen.sh: Likewise.
1445 2008-04-06 Bruno Haible <bruno@clisp.org>
1447 * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
1448 2008-04-06 Bruno Haible <bruno@clisp.org>
1449 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1450 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1452 * m4/ltoptions.m4: New file, from libtool-2.2.2.
1453 * m4/ltsugar.m4: New file, from libtool-2.2.2.
1454 * m4/ltversion.m4: New file, from libtool-2.2.2.
1455 * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
1456 * build-aux/ltmain.sh: New file, from libtool-2.2.2.
1457 * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
1458 * preload/configure.ac: Likewise.
1460 2008-04-06 Bruno Haible <bruno@clisp.org>
1462 More portable way of building the preloadable library.
1463 * preload/Makefile.devel: New file.
1464 * preload/Makefile.in: New file, based on lib/Makefile.in.
1465 * preload/configure.ac: New file, based on configure.ac.
1466 * Makefile.devel (all): Recurse into preload directory.
1467 * Makefile.in (all, install, installdirs, uninstall, check,
1468 mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
1470 * configure.ac: Likewise.
1471 (OS, GCC, PLUGLIB): Remove definitions.
1472 * lib/Makefile.in (all): Don't depend on PLUGLIB.
1473 (preloadable_libiconv.so, preloadable_libiconv_linux.so,
1474 preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
1476 (install, uninstall, clean): Don't handle the preloadable library here.
1478 2008-04-06 Bruno Haible <bruno@clisp.org>
1480 Avoid a gcc warning.
1481 * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
1483 2008-04-06 Bruno Haible <bruno@clisp.org>
1485 * src/iconv.c (print_version): Bump year.
1487 2008-04-06 Bruno Haible <bruno@clisp.org>
1489 Support all possible nl_langinfo(CODESET) results on the respective
1490 platforms, according to libcharset/lib/config.charset.
1491 * lib/encodings.def: Add DEFALIAS statements, conditional on
1492 USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
1493 USE_SOLARIS_ALIASES.
1494 * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
1496 * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
1498 * lib/genaliases.c (emit_alias): New function, extracted from
1500 (emit_encoding): Use it.
1501 (main): Define DEFALIAS.
1502 * lib/genaliases2.c (counter): New variable, extracted from
1504 (emit_alias): New function, extracted from emit_encoding.
1505 (emit_encoding): Use it.
1506 (main): Define DEFALIAS.
1507 * lib/genflags.c (main): Define DEFALIAS.
1508 * lib/iconv.c (all_encodings): Define DEFALIAS.
1509 Include the system dependent variant of aliases.h on the appropriate
1511 (all_canonical): Include the system dependent variant of canonical.h,
1512 canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
1514 * lib/aliases2.h: Include the system dependent variant of
1515 aliases_aix.h or aliases_osf1.h on the appropriate systems.
1516 * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
1517 aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
1518 aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
1519 aliases_extra.h, translit.h.
1520 * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
1521 lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1522 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1523 (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
1524 lib/aliases_syssolaris.h): New rules.
1525 (lib/aliases_aix_sysaix.h): New rule.
1526 (lib/aliases_osf1_sysosf1.h): New rule.
1527 * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
1528 lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1529 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1531 2008-04-06 Bruno Haible <bruno@clisp.org>
1533 * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
1534 * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
1536 2007-11-11 Bruno Haible <bruno@clisp.org>
1538 * Version 1.12 released.
1540 2007-11-11 Bruno Haible <bruno@clisp.org>
1542 * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
1543 (AUTOMAKE, ACLOCAL): Require version 1.10.
1544 (srclib/Makefile.in): Avoid error from automake.
1546 2007-10-26 Bruno Haible <bruno@clisp.org>
1548 * m4/libtool.m4: Update, based on libtool-1.5.24.
1549 * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
1551 2007-10-23 Bruno Haible <bruno@clisp.org>
1553 * build-aux/config.guess: Update to GNU version 2007-07-22.
1554 * build-aux/config.sub: Likewise.
1556 2007-10-23 Bruno Haible <bruno@clisp.org>
1558 * configure.ac: Bump version number to 1.12.
1561 2007-10-23 Bruno Haible <bruno@clisp.org>
1563 Move relocatability infrastructure to gnulib.
1564 * gnulib-local/lib/relocatable.h: Remove file.
1565 * gnulib-local/lib/relocatable.c: Remove file.
1567 2007-10-23 Bruno Haible <bruno@clisp.org>
1569 Update from GNU gettext.
1570 2006-11-26 Bruno Haible <bruno@clisp.org>
1571 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
1573 Based on a patch from Paul Eggert in gnulib.
1574 2006-11-06 Bruno Haible <bruno@clisp.org>
1575 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
1576 (xmemdup): New declaration.
1577 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
1578 2006-11-03 Bruno Haible <bruno@clisp.org>
1579 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
1580 XCALLOC): New macros.
1581 (xnboundedmalloc): New inline function.
1582 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
1584 2006-11-02 Bruno Haible <bruno@clisp.org>
1585 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
1587 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
1588 (xnmalloc): New function.
1590 2007-10-23 Bruno Haible <bruno@clisp.org>
1592 Moved module xreadlink to gnulib.
1593 * gnulib-local/modules/xreadlink: Remove file.
1594 * gnulib-local/lib/xreadlink.h: Remove file.
1595 * gnulib-local/lib/xreadlink.c: Remove file.
1596 * gnulib-local/m4/xreadlink.m4: Remove file.
1598 2007-10-07 Bruno Haible <bruno@clisp.org>
1600 Update program license to GPLv3.
1601 * COPYING: Replace with GPL 3.
1602 * windows/iconv.rc (Comments): Update.
1604 2007-10-07 Bruno Haible <bruno@clisp.org>
1606 * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
1608 2007-03-30 Bruno Haible <bruno@clisp.org>
1610 * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
1613 2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
1615 * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
1618 2007-09-29 Bruno Haible <bruno@clisp.org>
1620 * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
1621 valid since 2007-09-19.
1623 2007-07-07 Bruno Haible <bruno@clisp.org>
1625 * autogen.sh: Add an option --skip-gnulib.
1627 2007-07-07 Bruno Haible <bruno@clisp.org>
1629 * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
1630 * gnulib-local/lib/width.c: Remove file, moved to gnulib.
1631 * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
1632 * gnulib-local/modules/uniwidth: Remove file.
1633 * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
1634 * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
1636 2007-06-30 Bruno Haible <bruno@clisp.org>
1638 * src/iconv.c (print_version): Use the standard --version output, see
1639 <https://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
1641 2007-06-30 Bruno Haible <bruno@clisp.org>
1643 * autogen.sh: New file.
1644 * DEPENDENCIES: New file.
1645 * HACKING: New file.
1647 2007-06-30 Bruno Haible <bruno@clisp.org>
1649 * src/iconv.c: Provide translator comments for many messages.
1650 (conversion_error_EILSEQ, conversion_error_EINVAL,
1651 conversion_error_other): New functions, extracted from convert.
1652 (convert): Use them.
1653 Reported by Tim Van Holder <tim.van.holder@telenet.be>.
1655 2007-06-09 Bruno Haible <bruno@clisp.org>
1657 * gnulib-local/lib/relocwrapper.c: Remove file.
1659 2007-05-27 Bruno Haible <bruno@clisp.org>
1661 * windows/libiconv.rc: New file.
1662 * windows/iconv.rc: New file.
1663 * windows/windres-options: New file.
1664 * configure.ac (WOE32): New variable.
1665 (WINDRES) [WOE32]: New variable.
1666 * lib/Makefile.in (WINDRES): New variable.
1667 (PACKAGE_VERSION): New variable.
1668 (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
1669 (OBJECTS_EXP_no): Renamed from OBJECTS_no.
1670 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1671 (OBJECTS): Add one of them.
1672 (libiconv.res): New rule.
1673 (clean): Remove also libiconv.res.
1674 * src/Makefile.in (WINDRES): New variable.
1675 (PACKAGE_VERSION): New variable.
1676 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1677 (all, iconv_no_i18n, install): Use them.
1678 (iconv.res): New rule.
1679 (clean): Remove also iconv.res.
1680 Suggested and inspired by work by Perry Rapp.
1682 2007-05-27 Bruno Haible <bruno@clisp.org>
1684 Follow broken iconv() prototype in POSIX.
1685 * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
1686 * lib/config.h.in (ICONV_CONST): Change default value to an empty
1688 * src/iconv.c (ICONV_CONST): Change default value to empty.
1689 Reported by Andreas Krennmair <ak@synflood.at>.
1691 2007-05-25 Bruno Haible <bruno@clisp.org>
1693 * tools/Makefile (ALL): Add rk1048.h.
1694 (rk1048.h): New rule.
1695 * lib/encodings.def: Add RK1048.
1696 * lib/rk1048.h: New file.
1697 * lib/converters.h: Include it.
1698 * README, man/iconv_open.3: Add RK1048.
1699 * NOTES: Mention RK1048.
1700 * tests/RK1048.TXT: New file.
1701 * tests/Makefile.in (check): Also test RK1048.
1702 Suggested by Timur Birsh <team9@host.kz>.
1704 2007-04-24 Bruno Haible <bruno@clisp.org>
1706 * man/iconv_open.3: Tweak explanation of TRANSLIT.
1707 Reported by Perry Rapp.
1709 2007-04-23 Bruno Haible <bruno@clisp.org>
1711 * tests/check-subst: Use the output of 'printf' only if it didn't
1712 crash. Needed to work around a buffer overflow in Solaris /bin/printf.
1713 Reported by Arto C. Nirkko <anirkko@insel.ch>.
1715 2007-04-23 Bruno Haible <bruno@clisp.org>
1717 * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
1718 systems like those which define __STDC_ISO_10646__.
1719 Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
1721 2007-03-31 Bruno Haible <bruno@clisp.org>
1723 * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
1725 * man/iconv_open.3: Likewise.
1726 * man/iconv.3: Likewise.
1727 * man/iconv_close.3: Likewise.
1728 * man/iconvctl.3: Likewise.
1730 2007-03-31 Bruno Haible <bruno@clisp.org>
1732 * man/iconv.1: Mark as POSIX compliant.
1733 * man/iconv_open.3: Likewise.
1734 * man/iconv.3: Likewise.
1735 * man/iconv_close.3: Likewise.
1737 * man/*.[13]: Syntactic simplifications.
1739 2007-03-19 Bruno Haible <bruno@clisp.org>
1741 Assume that mkinstalldirs also creates the necessary parent directories.
1742 * Makefile.in (install, installdirs): Don't explicitly create the
1744 * lib/Makefile.in (install, installdirs): Likewise.
1745 * src/Makefile.in (install, installdirs): Likewise.
1746 * man/Makefile.in (install, installdirs): Likewise.
1747 Reported by Thomas Klausner <tk@giga.or.at>.
1749 2007-03-04 Bruno Haible <bruno@clisp.org>
1751 * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
1752 relocatable, relocwrapper.
1753 * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
1754 * gnulib-local/modules/progreloc: Remove file.
1755 * gnulib-local/modules/relocatable: Remove file.
1756 * gnulib-local/modules/relocwrapper: Remove file.
1757 * gnulib-local/m4/relocatable.m4: Remove file.
1758 * gnulib-local/lib/strerror.c.diff: Remove file.
1759 * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
1760 RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
1762 2007-02-19 Bruno Haible <bruno@clisp.org>
1764 * gnulib-local/lib/xmalloc.c: Don't include exit.h.
1765 * src/iconv.c: Likewise.
1767 2007-02-16 Juan Manuel Guerrero <juan.guerrero@gmx.de>
1771 2007-02-03 Bruno Haible <bruno@clisp.org>
1773 * tools/Makefile (ksc5601.h): Add one extra character.
1774 * lib/ksc5601.h: Regenerated.
1775 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
1776 * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
1777 * tests/JOHAB.TXT: Likewise.
1778 Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
1780 * lib/euc_kr.h: Update comments.
1781 * lib/johab.h: Likewise.
1783 2007-02-03 Bruno Haible <bruno@clisp.org>
1785 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
1787 2007-01-26 Bruno Haible <bruno@clisp.org>
1789 Moved streq.h to gnulib.
1790 * gnulib-local/lib/streq.h: Remove file.
1791 * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
1792 (Depends-on): Add streq.
1793 (lib_SOURCES): Remove streq.h.
1795 2007-01-26 Bruno Haible <bruno@clisp.org>
1797 Moved unitypes.h to gnulib.
1798 * gnulib-local/lib/unitypes.h: Remove file.
1799 * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
1800 (Depends-on): Add unitypes.
1801 (lib_SOURCES): Remove unitypes.h.
1803 2007-01-26 Bruno Haible <bruno@clisp.org>
1805 Moved canonicalize to gnulib.
1806 * gnulib-local/modules/canonicalize: Remove file.
1807 * gnulib-local/lib/canonicalize.h: Remove file.
1808 * gnulib-local/lib/canonicalize.c: Remove file.
1809 * gnulib-local/m4/canonicalize.m4: Remove file.
1810 * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
1811 with 'canonicalize-lgpl'.
1813 2006-12-20 Bruno Haible <bruno@clisp.org>
1815 * lib/Makefile.in (install): On AIX, add the contents of
1816 /lib/libiconv.a to libiconv.a.
1818 2006-12-20 Bruno Haible <bruno@clisp.org>
1820 * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
1822 (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
1824 (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
1825 option --makefile-name.
1826 (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
1827 * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
1829 2006-10-31 Bruno Haible <bruno@clisp.org>
1831 Update from GNU gettext.
1832 2006-10-29 Bruno Haible <bruno@clisp.org>
1833 Make it compile in C++ mode.
1834 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
1835 with appropriate return type.
1836 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
1837 2006-10-26 Bruno Haible <bruno@clisp.org>
1838 * gnulib-local/modules/canonicalize (Makefile.am): Remove
1839 EXTRA_DIST. Now done by gnulib-tool.
1840 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1841 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
1842 2006-10-25 Bruno Haible <bruno@clisp.org>
1843 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
1844 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
1845 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
1846 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
1847 AC_RELOCATABLE instead of requiring it.
1848 2006-10-12 Bruno Haible <bruno@clisp.org>
1849 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
1850 all files in lib/ through EXTRA_DIST.
1851 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1852 2006-09-14 Bruno Haible <bruno@clisp.org>
1853 * gnulib-local/lib/canonicalize.c: Include <config.h>
1855 * gnulib-local/lib/relocatable.c: Likewise.
1856 * lib/relocatable.c: Likewise.
1857 * gnulib-local/lib/relocwrapper.c: Likewise.
1858 * gnulib-local/lib/xmalloc.c: Likewise.
1859 * gnulib-local/lib/xreadlink.c: Likewise.
1860 * gnulib-local/lib/xstrdup.c: Likewise.
1861 2006-08-02 Bruno Haible <bruno@clisp.org>
1862 * gnulib-local/modules/canonicalize: Put under LGPL.
1863 * gnulib-local/modules/relocatable: Likewise.
1864 2006-07-18 Bruno Haible <bruno@clisp.org>
1865 * gnulib-local/xalloc.h (xzalloc): New declaration.
1866 * gnulib-local/xmalloc.c (xzalloc): New function.
1868 2006-10-24 Bruno Haible <bruno@clisp.org>
1870 * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
1871 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1873 2006-10-14 Bruno Haible <bruno@clisp.org>
1875 * COPYING: New file.
1876 * README: Clarify copyright of the iconv program.
1877 Reported by Charles Wilson <cwilson@fastmail.fm>.
1879 2006-08-08 Bruno Haible <bruno@clisp.org>
1881 * INSTALL.generic: Add a recommendation for Tru64.
1882 Reported by Gary V. Vaughan <gary@gnu.org>.
1884 2006-07-29 Bruno Haible <bruno@clisp.org>
1886 * tests/check-subst: Set CHARSETALIASDIR.
1887 Needed so that "make check" works before "make install" on systems
1890 2006-07-29 Bruno Haible <bruno@clisp.org>
1892 * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
1893 (AUTOCONF_FILES): Add the existing *.m4 files.
1895 2006-07-29 Bruno Haible <bruno@clisp.org>
1897 * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
1898 * src/iconv.c: Assume <locale.h> exists.
1899 * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
1902 2006-07-29 Bruno Haible <bruno@clisp.org>
1904 * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
1905 AC_ISC_POSIX, AC_HEADER_STDC.
1907 2006-07-29 Bruno Haible <bruno@clisp.org>
1909 * configure.ac: Remove macro invocations that are redundant through
1910 gl_EARLY and gl_INIT.
1912 2006-07-29 Bruno Haible <bruno@clisp.org>
1914 * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
1915 Avoids a sh syntax error.
1917 2006-07-29 Bruno Haible <bruno@clisp.org>
1919 * gnulib-local/m4/relocatable.m4: Add comments.
1921 2006-07-29 Bruno Haible <bruno@clisp.org>
1923 * gnulib-local/modules/libiconv-misc: New file.
1924 * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
1926 * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
1928 2006-07-29 Bruno Haible <bruno@clisp.org>
1930 Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
1931 AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
1932 because we now assume that the system defines size_t and ptrdiff_t.
1934 2006-07-29 Bruno Haible <bruno@clisp.org>
1936 Switch to using gnulib.
1937 * configure.ac (AC_PREREQ): Require autoconf-2.60.
1938 Invoke gl_EARLY and gl_INIT.
1939 * Makefile.devel (all): Depend on srclib/Makefile.am.
1940 (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
1942 (GNULIB_MODULES): New variable.
1943 (srclib/Makefile.am): New rule.
1944 * gnulib-local: New directory.
1945 * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
1946 * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
1947 * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
1948 * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
1949 * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
1950 * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
1951 * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
1952 * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
1953 * gnulib-local/lib/error.h.diff: New file.
1954 * gnulib-local/lib/progname.h.diff: New file.
1955 * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
1956 * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
1957 * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
1958 * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
1959 * gnulib-local/lib/strerror.c.diff: New file.
1960 * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
1961 * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
1962 * gnulib-local/lib/width.c: Moved here from srclib/width.c.
1963 * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
1964 * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
1965 * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
1966 * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
1967 * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
1968 * gnulib-local/modules/canonicalize: New file.
1969 * gnulib-local/modules/progreloc: New file.
1970 * gnulib-local/modules/relocatable: New file.
1971 * gnulib-local/modules/relocwrapper: New file.
1972 * gnulib-local/modules/uniwidth: New file.
1973 * gnulib-local/modules/xalloc: New file.
1974 * gnulib-local/modules/xreadlink: New file.
1976 * m4/allocsa.m4: Remove file. Now taken from gnulib.
1977 * m4/codeset.m4: Likewise.
1978 * m4/eealloc.m4: Likewise.
1979 * m4/error.m4: Likewise.
1980 * m4/extensions.m4: Likewise.
1981 * m4/full-header-path.m4: Likewise.
1982 * m4/gettext.m4: Likewise.
1983 * m4/glibc21.m4: Likewise.
1984 * m4/iconv.m4: Likewise.
1985 * m4/intmax.m4: Likewise.
1986 * m4/inttypes-h.m4: Likewise.
1987 * m4/inttypes_h.m4: Likewise.
1988 * m4/isc-posix.m4: Likewise.
1989 * m4/lcmessage.m4: Likewise.
1990 * m4/lib-ld.m4: Likewise.
1991 * m4/lib-link.m4: Likewise.
1992 * m4/lib-prefix.m4: Likewise.
1993 * m4/longdouble.m4: Likewise.
1994 * m4/longlong.m4: Likewise.
1995 * m4/mbstate_t.m4: Likewise.
1996 * m4/nls.m4: Likewise.
1997 * m4/onceonly.m4: Likewise.
1998 * m4/pathmax.m4: Likewise.
1999 * m4/po.m4: Likewise.
2000 * m4/printf-posix.m4: Likewise.
2001 * m4/progtest.m4: Likewise.
2002 * m4/readlink.m4: Likewise.
2003 * m4/setenv.m4: Likewise.
2004 * m4/signed.m4: Likewise.
2005 * m4/size_max.m4: Likewise.
2006 * m4/ssize_t.m4: Likewise.
2007 * m4/stdbool.m4: Likewise.
2008 * m4/stdint.m4: Likewise.
2009 * m4/stdint_h.m4: Likewise.
2010 * m4/strerror.m4: Likewise.
2011 * m4/strerror_r.m4: Likewise.
2012 * m4/unistd_h.m4: Likewise.
2013 * m4/unlocked-io.m4: Likewise.
2014 * m4/visibility.m4: Likewise.
2015 * m4/wchar_t.m4: Likewise.
2016 * m4/wint_t.m4: Likewise.
2018 * srclib/allocsa.h: Remove file. Now taken from gnulib.
2019 * srclib/allocsa.c: Likewise.
2020 * srclib/binary-io.h: Likewise.
2021 * srclib/error.h: Likewise.
2022 * srclib/error.c: Likewise.
2023 * srclib/exit.h: Likewise.
2024 * srclib/gettext.h: Likewise.
2025 * srclib/memmove.c: Likewise.
2026 * srclib/pathmax.h: Likewise.
2027 * srclib/progname.h: Likewise.
2028 * srclib/progname.c: Likewise.
2029 * srclib/progreloc.c: Likewise.
2030 * srclib/readlink.c: Likewise.
2031 * srclib/setenv.h: Likewise.
2032 * srclib/setenv.c: Likewise.
2033 * srclib/stdbool_.h: Likewise.
2034 * srclib/stdint_.h: Likewise.
2035 * srclib/strerror.c: Likewise.
2036 * srclib/unlocked-io.h: Likewise.
2037 * srclib/unsetenv.c: Likewise.
2038 * srclib/Makefile.am: Remove file.
2040 2006-07-27 Bruno Haible <bruno@clisp.org>
2042 Remove OS/2 build support that doesn't assume GNU make and GNU bash.
2043 * README.os2: Remove file.
2044 * Makefile.os2: Remove file.
2045 * lib/Makefile.os2: Remove file.
2046 * src/Makefile.os2: Remove file.
2047 * man/Makefile.os2: Remove file.
2048 * tests/Makefile.os2: Remove file.
2049 * tests/check-stateful.cmd: Remove file.
2050 * tests/check-stateless.cmd: Remove file.
2051 * tests/check-translit.cmd: Remove file.
2053 2006-07-25 Bruno Haible <bruno@clisp.org>
2055 Remove MSVC/nmake build support.
2056 * windows: Remove directory.
2057 * Makefile.msvc: Remove file.
2058 * lib/Makefile.msvc: Remove file.
2059 * srclib/Makefile.msvc: Remove file.
2060 * src/Makefile.msvc: Remove file.
2061 * tests/Makefile.msvc: Remove file.
2062 * man/Makefile.msvc: Remove file.
2063 * po/Rules-msvc: Remove file.
2064 * po/Makefile.msvc.sh: Remove file.
2065 * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
2066 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
2068 (po/Makefile.msvc): Remove rule.
2071 2006-07-25 Bruno Haible <bruno@clisp.org>
2074 * vms: Remove directory.
2075 * Makefile.vms: Remove file.
2076 * lib/Makefile.vms: Remove file.
2077 * srclib/Makefile.vms: Remove file.
2078 * src/Makefile.vms: Remove file.
2079 * tests/Makefile.vms: Remove file.
2080 * man/Makefile.vms: Remove file.
2081 * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
2082 (include/iconv.h_vms): Remove rule.
2085 2006-07-23 Bruno Haible <bruno@clisp.org>
2087 * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
2088 * src/Makefile.in (iconv_no_i18n): Likewise.
2089 (install): Likewise.
2090 * tests/Makefile.in (table-from, table-to): Likewise.
2091 Needed because the CFLAGS can e.g. trigger profiling.
2092 Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
2094 2006-07-19 Bruno Haible <bruno@clisp.org>
2096 * Version 1.11 released.
2098 2006-07-19 Bruno Haible <bruno@clisp.org>
2100 * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
2101 (LIBADD_SOURCE): Add them here.
2103 2006-07-19 Bruno Haible <bruno@clisp.org>
2105 * build-aux/config.guess: Update to GNU version 2006-07-02.
2106 * build-aux/config.sub: Likewise.
2108 2006-07-14 Bruno Haible <bruno@clisp.org>
2110 * lib/Makefile.in (clean): Remove also *.stackdump.
2111 * src/Makefile.in (clean): Likewise.
2112 * tests/Makefile.in (clean): Likewise.
2114 2006-07-14 Bruno Haible <bruno@clisp.org>
2116 * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
2118 * tests/Makefile.in (clean): Remove also the programs, without
2119 EXEEXT. Needed for cygwin or mingw.
2120 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
2121 Remove also bin directory. Needed for cygwin and mingw.
2123 2006-07-03 Bruno Haible <bruno@clisp.org>
2125 * src/iconv.c (check_subst_formatstring): Use ngettext.
2126 (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
2127 after 2006-01-22 change.
2128 * configure.ac: Require a gettext version with ngettext.
2130 2006-06-28 Bruno Haible <bruno@clisp.org>
2132 * m4/gettext.m4: Update from GNU gettext.
2133 * m4/po.m4: Update from GNU gettext.
2135 2006-06-27 Bruno Haible <bruno@clisp.org>
2137 * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
2138 * Makefile.in (datarootdir): New variable.
2139 (install, installdirs, uninstall): Also pass datarootdir.
2140 * configure.ac (mandir): Remove customization.
2141 * man/Makefile.in (datarootdir): New variable.
2142 (docdir, htmldir): Use autoconf-substituted value.
2143 * src/Makefile.in (datarootdir): New variable.
2144 (localedir): Use autoconf-substituted value.
2146 2006-06-27 Bruno Haible <bruno@clisp.org>
2148 * m4/stdint.m4: Update from gnulib.
2149 * srclib/stdint_.h: Update from gnulib.
2150 * srclib/Makefile.am: Update.
2152 2006-06-17 Bruno Haible <bruno@clisp.org>
2154 * srclib/unsetenv.c: Update from GNU gettext.
2155 * srclib/xreadlink.c: Likewise.
2157 2006-06-16 Bruno Haible <bruno@clisp.org>
2159 * m4/full-header-path.m4: New file, from gnulib.
2160 * m4/size_max.m4: New file, from gnulib.
2161 * m4/stdint.m4: Update from gnulib.
2162 * srclib/stdint_.h: Update from gnulib.
2163 * srclib/Makefile.am (stdint.h): Likewise.
2164 * Makefile.devel (aclocal.m4): Update dependencies.
2166 2006-06-16 Bruno Haible <bruno@clisp.org>
2168 * m4/ssize_t.m4: Update from GNU gettext.
2170 2006-06-12 Bruno Haible <bruno@clisp.org>
2172 * m4/gettext.m4: Update from GNU gettext.
2173 * m4/inttypes-h.m4: New file, from GNU gettext.
2174 * m4/inttypes.m4: Remove file.
2175 * m4/stdint.m4 (gl_STDINT_H): Update.
2176 * Makefile.devel (aclocal.m4): Update dependencies.
2178 2006-06-10 Bruno Haible <bruno@clisp.org>
2180 * src/iconv.c (error) [NO_I18N]: Define here instead of including
2181 error.h. Fixes link failure introduced on 2006-01-22.
2183 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2185 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
2186 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
2188 2006-05-20 Bruno Haible <bruno@clisp.org>
2190 * tests/BIG5-HKSCS-1999-snippet: New file.
2191 * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
2192 * tests/BIG5-HKSCS-2001-snippet: New file.
2193 * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
2194 * tests/BIG5-HKSCS-2004-snippet: New file.
2195 * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
2196 * tests/Makefile.in (check): Test also the stateful parts of
2197 BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
2199 2006-05-17 Bruno Haible <bruno@clisp.org>
2201 Implement newer releases of BIG5-HKSCS.
2202 * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
2204 (hkscs.h): Remove rule.
2205 (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
2206 * tools/cjk_tab_to_h.c (output_title): Update year.
2207 (main): Recognize hkscs1999, hkscs2001, hkscs2004.
2208 * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
2209 BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
2210 * lib/hkscs.h: Remove file.
2211 * lib/hkscs1999.h: New file.
2212 * lib/hkscs2001.h: New file.
2213 * lib/hkscs2004.h: New file.
2214 * lib/big5hkscs.h: Remove file.
2215 * lib/big5hkscs1999.h: New file.
2216 * lib/big5hkscs2001.h: New file.
2217 * lib/big5hkscs2004.h: New file.
2218 * lib/converters.h: Include the new files.
2219 * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
2220 * tests/BIG5-HKSCS.TXT: Remove file.
2221 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
2222 * tests/BIG5-HKSCS-1999.TXT: New file.
2223 * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
2224 * tests/BIG5-HKSCS-2001.TXT: New file.
2225 * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
2226 * tests/BIG5-HKSCS-2004.TXT: New file.
2227 * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
2228 * tests/check-stateless: Convert colon in the charset name to a dash in
2230 * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
2231 BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
2232 * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
2233 * tests/Makefile.os2 (check): Likewise.
2235 2006-05-17 Bruno Haible <bruno@clisp.org>
2237 * srclib/progreloc.c: Update from GNU gettext.
2239 2006-05-16 Bruno Haible <bruno@clisp.org>
2241 * src/Makefile.in (clean): Use EXEEXT.
2242 * tests/Makefile.in (check, clean): Likewise.
2244 2006-05-15 Bruno Haible <bruno@clisp.org>
2246 * configure.ac: Move some checks before AC_RELOCATABLE.
2248 2006-05-15 Bruno Haible <bruno@clisp.org>
2250 Support for building shared libraries on mingw and Cygwin.
2251 * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
2252 * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
2253 * woe32dll/export.h: New file, from GNU gettext.
2254 * woe32dll/iconv-exports.h: New file.
2255 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2256 include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
2257 * lib/Makefile.in (INCLUDES): Add -I for parent directory.
2258 (LDFLAGS): Add WOE32DLL dependent flags.
2259 (LDFLAGS_yes, LDFLAGS_no): New variables.
2260 (OBJECTS): Add WOE32DLL dependent objects.
2261 (OBJECTS_yes, OBJECTS_no): New variables.
2262 (iconv-exports.lo): New rule.
2264 2006-05-15 Bruno Haible <bruno@clisp.org>
2266 * srclib/gettext.h: Update from GNU gettext.
2267 * srclib/pathmax.h: Update from GNU gettext.
2268 * srclib/progreloc.c: Update from GNU gettext.
2269 * srclib/unsetenv.c: Update from GNU gettext.
2270 * srclib/Makefile.am: Add snippet for creation of unistd.h.
2271 * m4/extensions.m4: Update from GNU gettext.
2272 * m4/gettext.m4: Update from GNU gettext.
2273 * m4/lib-ld.m4: Update from GNU gettext.
2274 * m4/lib-link.m4: Update from GNU gettext.
2275 * m4/lib-prefix.m4: Update from GNU gettext.
2276 * m4/longdouble.m4: Update from GNU gettext.
2277 * m4/nls.m4: Update from GNU gettext.
2278 * m4/onceonly.m4: Update from GNU gettext.
2279 * m4/po.m4: Update from GNU gettext.
2280 * m4/relocatable.m4: Update from GNU gettext.
2281 * m4/unistd_h.m4: New file, from GNU gettext.
2282 * Makefile.devel (aclocal.m4): Depend on it.
2283 * configure.ac: Invoke gl_HEADER_UNISTD.
2285 2006-05-14 Bruno Haible <bruno@clisp.org>,
2286 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2288 * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
2289 (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
2290 (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
2291 Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
2293 2006-05-06 Charles Wilson <cygwin@cwilson.fastmail.fm>
2295 * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
2296 compiling a shared library object.
2298 2006-05-15 Bruno Haible <bruno@clisp.org>
2300 * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
2302 2006-03-31 Juan Manuel Guerrero <juan.guerrero@gmx.de>
2306 2006-01-23 Bruno Haible <bruno@clisp.org>
2308 * configure.ac: Invoke gl_ALLOCSA.
2310 * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
2312 2006-01-22 Bruno Haible <bruno@clisp.org>
2314 * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
2317 2006-01-22 Bruno Haible <bruno@clisp.org>
2319 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
2321 2006-01-22 Bruno Haible <bruno@clisp.org>
2323 * src/iconv.c: Include error.h, exit.h.
2324 (print_version): Use EXIT_SUCCESS.
2325 (check_subst_formatstring, subst_mb_to_uc_fallback,
2326 subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
2327 subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
2328 error() instead of fprintf to stderr.
2330 2006-01-22 Bruno Haible <bruno@clisp.org>
2332 New feature: character-dependent substitutions.
2333 * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
2334 iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
2335 iconv_wchar_wc_to_mb_fallback): New types.
2336 (struct iconv_fallbacks): New structure type.
2337 (ICONV_SET_FALLBACKS): New macro.
2338 * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
2339 * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
2340 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2341 include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
2342 * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
2343 * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
2344 (uc_to_mb_write_replacement): New function.
2345 (struct mb_to_uc_fallback_locals): New type.
2346 (mb_to_uc_write_replacement): New function.
2347 (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
2348 (unicode_loop_reset): Call uc_to_mb_fallback.
2349 * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
2350 (wc_to_mb_write_replacement): New function.
2351 (wchar_from_loop_convert): Call wc_to_mb_fallback.
2352 (struct mb_to_wc_fallback_locals): New type.
2353 (mb_to_wc_write_replacement): New function.
2354 (wchar_to_loop_convert): Call mb_to_wc_fallback.
2355 * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
2356 (iconvctl): Handle ICONV_SET_FALLBACKS.
2357 * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
2358 * src/iconv.c: Include limits.h.
2359 (isdigit, c_isprint): New macros.
2360 (usage): Document long options and new options.
2361 (check_subst_formatstring): New function.
2362 (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
2364 (ilseq_byte_subst_size, ilseq_wchar_subst_size,
2365 ilseq_unicode_subst_size): New variables.
2366 (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
2367 ilseq_unicode_subst_buffer): New variables.
2368 (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
2369 (subst_mb_to_uc_fallback): New function.
2370 (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
2371 (subst_uc_to_mb_fallback): New function.
2372 (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
2373 (subst_mb_to_wc_fallback): New function.
2374 (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
2375 (subst_wc_to_mb_fallback): New function.
2376 (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
2377 (subst_mb_to_mb_fallback): New function.
2378 (convert): Enlarge the outbuf when the conversion failed with E2BIG.
2379 (main): Handle new options --byte-subst, --widechar-subst,
2381 * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
2383 * tests/check-subst: New file.
2384 * tests/Makefile.in (check): Also invoke check-subst.
2385 Suggested by James Taylor <james@oakseed.demon.co.uk>.
2387 2006-01-21 Bruno Haible <bruno@clisp.org>
2389 * src/iconv.c (print_version): Bump copyright year.
2390 (main): Accept long options --from-code, --to-code, --list, --silent.
2391 Accept abbreviated long options, like getopt() does.
2392 * man/iconv.1: Document long options.
2394 2005-12-29 Bruno Haible <bruno@clisp.org>
2396 * src/iconv.c (print_version): Update copyright year.
2398 2005-12-29 Bruno Haible <bruno@clisp.org>
2400 * configure.ac: Renamed from configure.in.
2401 * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
2403 2005-12-29 Bruno Haible <bruno@clisp.org>
2405 * configure.in: Bump version number.
2406 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2407 * windows/iconv.rc: Likewise.
2408 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
2410 2005-12-29 Bruno Haible <bruno@clisp.org>
2412 * build-aux/config.guess: Update to GNU version 2005-12-23.
2413 * build-aux/config.sub: Likewise.
2414 * build-aux/config.libpath: Update from GNU gettext.
2415 * build-aux/install-sh: Upgrade to automake-1.9.5.
2416 * build-aux/missing: Upgrade to automake-1.9.5.
2417 * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
2419 2005-12-29 Bruno Haible <bruno@clisp.org>
2421 * m4/alloca.m4: Update from GNU gettext.
2422 * m4/allocsa.m4: Update from GNU gettext.
2423 * m4/canonicalize.m4: Update from GNU gettext.
2424 * m4/codeset.m4: Update from GNU gettext.
2425 * m4/eealloc.m4: Update from GNU gettext.
2426 * m4/error.m4: Update from GNU gettext.
2427 * m4/extensions.m4: Update from GNU gettext.
2428 * m4/gettext.m4: Update from GNU gettext.
2429 * m4/glibc21.m4: Update from GNU gettext.
2430 * m4/iconv.m4: Update from GNU gettext.
2431 * m4/intmax.m4: Update from GNU gettext.
2432 * m4/inttypes_h.m4: New file, from GNU gettext.
2433 * m4/isc-posix.m4: Update from GNU gettext.
2434 * m4/lcmessage.m4: Update from GNU gettext.
2435 * m4/longdouble.m4: Update from GNU gettext.
2436 * m4/longlong.m4: Update from GNU gettext.
2437 * m4/mbstate_t.m4: Update from GNU gettext.
2438 * m4/nls.m4: Update from GNU gettext.
2439 * m4/onceonly.m4: Update from GNU gettext.
2440 * m4/pathmax.m4: Update from GNU gettext.
2441 * m4/po.m4: Update from GNU gettext.
2442 * m4/printf-posix.m4: Update from GNU gettext.
2443 * m4/progtest.m4: Update from GNU gettext.
2444 * m4/readlink.m4: Update from GNU gettext.
2445 * m4/relocatable.m4: Update from GNU gettext.
2446 * m4/setenv.m4: Update from GNU gettext.
2447 * m4/signed.m4: Update from GNU gettext.
2448 * m4/ssize_t.m4: Update from GNU gettext.
2449 * m4/stdbool.m4: Update from GNU gettext.
2450 * m4/stdint_h.m4: New file, from GNU gettext.
2451 * m4/strerror.m4: Update from GNU gettext.
2452 * m4/strerror_r.m4: Update from GNU gettext.
2453 * m4/unlocked-io.m4: Update from GNU gettext.
2454 * m4/wchar_t.m4: Update from GNU gettext.
2455 * m4/wint_t.m4: Update from GNU gettext.
2456 * m4/xreadlink.m4: Update from GNU gettext.
2457 * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
2458 m4/stdint_h.m4 as well.
2459 * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
2460 Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
2461 Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
2462 Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
2463 Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
2464 SRCLIBOBJS instead of LIBOBJS.
2465 * srclib/alloca_.h: Update from GNU gettext.
2466 * srclib/allocsa.h: Update from GNU gettext.
2467 * srclib/canonicalize.c: Update from GNU gettext.
2468 * srclib/error.h: Update from GNU gettext.
2469 * srclib/error.c: Update from GNU gettext.
2470 * srclib/gettext.h: Update from GNU gettext.
2471 * srclib/memmove.c: Update from GNU gettext.
2472 * srclib/progname.h: Update from GNU gettext.
2473 * srclib/progname.c: Update from GNU gettext.
2474 * srclib/progreloc.c: Update from GNU gettext.
2475 * srclib/readlink.c: Update from GNU gettext.
2476 * srclib/relocatable.c: Update from GNU gettext.
2477 * srclib/relocwrapper.c: Update from GNU gettext.
2478 * srclib/setenv.h: Update from GNU gettext.
2479 * srclib/setenv.c: Update from GNU gettext.
2480 * srclib/stdbool_.h: Update from GNU gettext.
2481 * srclib/stdint_.h: Update from gnulib.
2482 * srclib/strerror.c: Update from GNU gettext.
2483 * srclib/unlocked-io.h: Update from GNU gettext.
2484 * srclib/unsetenv.c: Update from GNU gettext.
2485 * srclib/xalloc.h: Update from GNU gettext.
2486 * srclib/xmalloc.c: Update from GNU gettext.
2487 * srclib/xreadlink.c: Update from GNU gettext.
2488 * srclib/xstrdup.c: Update from GNU gettext.
2489 * srclib/Makefile.am (DEFS): Also define EXEEXT.
2490 (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
2491 (libicrt_a_DEPENDENCIES): New variable.
2492 * src/Makefile.in (EXEEXT): New variable.
2493 * build-aux/install-reloc: Update from GNU gettext.
2494 * build-aux/reloc-ldflags: Update from GNU gettext.
2495 * build-aux/config.rpath: Update from GNU gettext.
2497 2005-12-29 Bruno Haible <bruno@clisp.org>
2499 * m4/libtool.m4: Update, based on libtool-1.5.22.
2500 * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
2502 2005-12-24 Bruno Haible <bruno@clisp.org>
2504 Check the whole range of GB18030.
2505 * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
2506 * tests/gengb18030z.c: New file.
2507 * tests/table-from.c (main): For GB18030, don't stop at U+10000.
2508 * tests/table-to.c (main): Likewise.
2509 * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
2511 (clean): Remove also gengb18030z and GB18030.TXT.
2512 * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
2514 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2515 * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
2516 GB18030.TXT on the fly from GB18030-BMP.TXT.
2517 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2519 2005-12-20 Bruno Haible <bruno@clisp.org>
2521 * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
2522 up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
2525 2005-12-22 Bruno Haible <bruno@clisp.org>
2527 Extend GB18030 converter to cover the entire Unicode PUA.
2528 * lib/gb18030.h: Update comments, based on second printing.
2529 (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
2530 (gb18030_pua2charset): New array.
2531 (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
2532 part of range U+E766..U+E864.
2533 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
2535 (gb18030ext_mbtowc): Add mapping for the two-byte part of range
2537 * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
2538 gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
2540 (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
2541 * tests/GB18030.TXT: Complete mappings to private area.
2543 2005-12-22 Bruno Haible <bruno@clisp.org>
2545 * lib/gbk.h: Update comments.
2547 2005-12-20 Bruno Haible <bruno@clisp.org>
2549 Add private area mappings to CP949.
2550 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
2552 * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
2554 2005-12-15 Bruno Haible <bruno@clisp.org>
2556 Add private area mappings to CP950.
2557 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
2559 * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
2561 2005-12-15 Bruno Haible <bruno@clisp.org>
2563 Make CP936 follow what Microsoft does.
2564 In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
2565 added a 0x80 - U+20AC mapping to the code chart, but not to the
2566 tooltips and not to the list of mappings.
2567 * lib/cp936.h: New file.
2568 * lib/gbk.h: Update comments.
2569 * lib/ces_gbk.h: Update comments.
2570 * lib/converters.h: Include cp936.h.
2571 * lib/encodings.def (CP936): New encoding.
2572 (GBK): Remove CP936 aliases.
2573 * README, man/iconv_open.3: Add CP936.
2574 * tests/Makefile.in (check): Check CP936.
2575 * tests/Makefile.msvc (check): Likewise.
2576 * tests/Makefile.os2 (check): Likewise.
2577 * tests/CP936.TXT: New file.
2579 2005-12-14 Bruno Haible <bruno@clisp.org>
2581 * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
2582 U+FFE1 like Microsoft does it.
2583 * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
2584 Reported by Lei Wang <lwang@qilinsoft.com>.
2586 2005-12-14 Bruno Haible <bruno@clisp.org>
2588 Follow Euro sign addition done in 1999 in
2589 http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
2590 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
2591 * tests/CP950.TXT: Add mapping for 0xA3E1.
2593 2005-11-11 Bruno Haible <bruno@clisp.org>
2595 * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
2596 and only two bytes are available in the output buffer, return
2597 RET_TOOSMALL instead of overrunning the output buffer.
2598 * lib/isoir165.h (isoir165_wctomb): When only one byte is available
2599 in the output buffer, don't overrun the output buffer.
2600 Reported by William Bardwell <bardwell@curl.com>.
2602 2005-09-18 Bruno Haible <bruno@clisp.org>
2604 * m4/libtool.m4: Update, based on libtool-1.5.20.
2605 * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
2607 2005-08-12 Bruno Haible <bruno@clisp.org>
2609 * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
2610 * tests/BIG5-2003.TXT: Likewise.
2611 * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
2612 Reported by Ping Yeh <ping@pingyeh.net>.
2614 2005-07-24 Bruno Haible <bruno@clisp.org>
2616 Tidy up exported symbols.
2617 * m4/visibility.m4: New file.
2618 * include/export.h: New file.
2619 * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
2620 create also include/iconv.h.inst.
2621 * Makefile.devel (all): Depend on include/iconv.h.build.in.
2622 (aclocal.m4): Depend on m4/visibility.m4.
2623 (include/iconv.h.build.in): New rule.
2624 * Makefile.in (install-lib, install): Install include/iconv.h.inst,
2625 not the include/iconv.h that was used for building.
2626 (distclean, maintainer-clean): Remove also include/iconv.h.inst.
2627 * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
2628 (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
2629 * lib/config.h.in (HAVE_VISIBILITY): New macro.
2630 * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2631 Define to the gcc visibility attribute.
2632 * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2635 2005-07-25 Bruno Haible <bruno@clisp.org>
2637 2003-08-24 Bruno Haible <bruno@clisp.org>
2638 * lib/relocatable.h: Make this file includable in C++ mode: add extern
2641 2005-07-08 Bruno Haible <bruno@clisp.org>
2643 * Version 1.10 released.
2645 2005-07-08 Bruno Haible <bruno@clisp.org>
2647 * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
2648 executable after installing it.
2650 2005-07-08 Bruno Haible <bruno@clisp.org>
2652 * configure.in: Bump version number.
2653 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2654 * windows/iconv.rc: Likewise.
2655 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
2657 2005-07-05 Bruno Haible <bruno@clisp.org>
2659 * Makefile.devel (ACLOCAL): New variable.
2660 (aclocal.m4): Use it.
2662 2005-07-05 Bruno Haible <bruno@clisp.org>
2664 * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
2665 SET_RELOCATABLE to a trivial value.
2667 2004-08-08 Bruno Haible <bruno@clisp.org>
2669 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2672 2004-04-28 Bruno Haible <bruno@clisp.org>
2674 * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
2675 Treat Cygwin like Windows, since it now accepts Windows pathnames.
2677 2005-06-09 Bruno Haible <bruno@clisp.org>
2679 * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
2680 * lib/Makefile.in (mkinstalldirs): Likewise.
2681 * src/Makefile.in (mkinstalldirs): Likewise.
2682 * man/Makefile.in (mkinstalldirs): Likewise.
2684 2005-06-08 Bruno Haible <bruno@clisp.org>
2686 * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
2687 that don't support symbolic links.
2689 2005-06-08 Bruno Haible <bruno@clisp.org>
2691 * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
2692 gcc warning on mingw.
2694 2005-05-22 Bruno Haible <bruno@clisp.org>
2696 Implement and document BIG5-2003.
2697 * lib/big5_2003.h: New file.
2698 * lib/converters.h: Include it.
2699 * lib/encodings_extra.def (BIG5-2003): New encoding.
2700 * README, man/iconv_open.3: Add BIG5-2003.
2701 * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
2702 * tests/BIG5-2003.TXT: New file.
2704 2005-05-21 Bruno Haible <bruno@clisp.org>
2706 Add EURO SIGN to EUC-TW converter.
2707 * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
2708 (cns11643_1_mbtowc): Update.
2709 * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
2710 (cns11643_inv_uni2indx_page*): Update.
2711 * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
2713 * tests/EUC-TW.TXT: Add entry for 0x20AC.
2714 * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
2716 2005-05-03 Bruno Haible <bruno@clisp.org>
2718 * tools/Makefile (ALL): Add pt154.h.
2719 (pt154.h): New rule.
2720 * lib/encodings.def: Add PT154.
2721 * lib/pt154.h: New file.
2722 * lib/converters.h: Include it.
2723 * README, man/iconv_open.3: Add PT154.
2724 * NOTES: Mention PT154.
2725 * tests/PT154.TXT: New file.
2726 * tests/Makefile.in (check): Also test PT154.
2727 * tests/Makefile.msvc (check): Likewise.
2728 * tests/Makefile.os2 (check): Likewise.
2730 2005-03-29 Bruno Haible <bruno@clisp.org>
2732 Rename libiconv_plug.so to preloadable_libiconv.so.
2733 * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
2735 * lib/Makefile.in (preloadable_libiconv.so): Renamed from
2737 (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
2738 (preloadable_libiconv_solaris.so): Renamed from
2739 libiconv_plug_solaris.so.
2740 (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
2744 2005-03-29 Bruno Haible <bruno@clisp.org>
2746 Implement and document ATARIST.
2747 * tools/Makefile (ALL): Add atarist.h.
2748 (atarist.h): New rule.
2749 * lib/atarist.h: New file.
2750 * lib/converters.h: Include it.
2751 * lib/encodings_extra.def (ATARIST): New encoding.
2752 * README, man/iconv_open.3: Add ATARIST.
2753 * tests/Makefile.in (check-extra-yes): Check ATARIST.
2754 * tests/ATARIST.TXT: New file.
2756 2005-03-22 Bruno Haible <bruno@clisp.org>
2758 * build-aux: New directory, renamed from autoconf.
2759 * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2761 2005-03-16 Bruno Haible <bruno@clisp.org>
2763 * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
2764 HAVE_LONGLONG_64BIT.
2765 * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
2766 HAVE_LONGLONG_64BIT.
2767 * srclib/Makefile.am (stdint.h): Likewise.
2769 2005-03-14 Bruno Haible <bruno@clisp.org>
2771 * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
2772 extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
2773 printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
2774 wchar_t.m4, wint_t.m4.
2776 2005-03-13 Bruno Haible <bruno@clisp.org>
2778 Make stdout error checking reliable, also when writing to a NFS file.
2779 * src/iconv.c (main): Check the return value of fclose(stdout).
2780 * lib/genaliases.c (main): Likewise.
2781 * lib/genaliases2.c (main): Likewise.
2782 * lib/genflags.c (main): Likewise.
2783 * lib/gentranslit.c (main): Likewise.
2784 * tests/genutf8.c (main): Likewise.
2785 * tests/table-from.c (main): Likewise.
2786 * tests/table-to.c (main): Likewise.
2788 2005-03-13 Bruno Haible <bruno@clisp.org>
2790 * src/iconv.c (convert): Before outputting an error message, flush
2791 stdout and output a newline if suitable.
2793 2005-03-13 Bruno Haible <bruno@clisp.org>
2795 Improved error messages.
2796 * srclib/width.c: New file, from GNU clisp.
2797 * srclib/uniwidth.h: New file, from GNU clisp with modifications.
2798 * srclib/unitypes.h: New file, from GNU clisp with modifications.
2799 * srclib/cjk.h: New file, from GNU clisp.
2800 * srclib/streq.h: New file, from GNU clisp.
2801 * srclib/stdint_.h: New file, from gnulib.
2802 * m4/stdint.m4: New file, from gnulib.
2803 * m4/inttypes.m4: New file, from gnulib.
2804 * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
2805 (BUILT_SOURCES): New variable.
2806 (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
2808 * configure.in: Invoke gl_STDINT_H.
2809 * src/iconv.c: Include cjk.h, uniwidth.h.
2810 (line, column, cjkcode): New variables.
2811 (update_line_column): New function.
2812 (convert): Initialize line and column. In all error message, show also
2813 the line and column number.
2814 (main): Initialize cjkcode. Set up hooks to call update_line_column.
2816 2005-03-13 Bruno Haible <bruno@clisp.org>
2818 * include/iconv.h.in (iconv_canonicalize): New declaration.
2819 * lib/genaliases.c (emit_encoding): Take two output streams as
2820 arguments. To the second stream, emit a shell command for extracting
2821 offsets into the gperf generated string pool.
2822 (main): Write the shell commands into file descriptors 3 and 4.
2823 * lib/genaliases2.c (emit_encoding): Take two output streams as
2824 arguments. To the second stream, emit an expression for the offset
2825 into the string pool.
2826 (main): Write the offsets into file descriptor 3.
2827 * Makefile.devel (lib/aliases.gperf): Remove target.
2828 (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
2829 lib/canonical.h and lib/canonical_local.h.
2830 (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
2831 (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
2832 (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
2833 (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
2834 * lib/iconv.c (stringpool2): Provide default definition when it doesn't
2836 (all_canonical): New array.
2837 (iconv_canonicalize): New function.
2839 2005-03-13 Bruno Haible <bruno@clisp.org>
2841 * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
2842 iconv_hooks): New types.
2843 (ICONV_SET_HOOKS): New macro.
2844 * lib/converters.h (struct conv_struct): Add field 'hooks'.
2845 * lib/iconv.c (iconv_open): Initialize hooks to NULL.
2846 (iconvctl): Handle ICONV_SET_HOOKS.
2847 * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
2848 conversion of a character, call the uc_hook.
2849 * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
2851 * lib/genflags.c (iconv_hooks): Provide a dummy definition.
2853 2005-02-05 Bruno Haible <bruno@clisp.org>
2855 * src/iconv.c (main): In case of unsupported encodings, show a hint
2858 2005-01-06 Bruno Haible <bruno@clisp.org>
2860 * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
2861 * lib/Makefile.vms (DEFS): Likewise.
2862 Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2864 2005-01-05 Bruno Haible <bruno@clisp.org>
2866 * autoconf/config.rpath: Update from GNU gettext.
2868 2005-01-05 Bruno Haible <bruno@clisp.org>
2870 Assume automake-1.9.
2871 * Makefile.devel (AUTOMAKE): Assume automake-1.9.
2873 2005-01-05 Bruno Haible <bruno@clisp.org>
2875 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
2876 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2878 2004-11-11 Bruno Haible <bruno@clisp.org>
2880 * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
2882 Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2884 2004-09-21 Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>
2886 * djgpp/config.bat: Update.
2887 * djgpp/config.sed: Update.
2888 * djgpp/config.site: Update.
2889 * djgpp/edtest.bat: Update.
2890 * djgpp/fnchange.in: Update.
2891 * djgpp/Makefile.maint: Update.
2892 * djgpp/makefile.sed: Update.
2893 * djgpp/README.in: Update.
2894 * djgpp/sources.sed: Update.
2895 * djgpp/translit-check.sed: Update.
2897 2004-08-25 Bruno Haible <bruno@clisp.org>
2899 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
2900 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2902 2004-07-31 Bruno Haible <bruno@clisp.org>
2904 Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
2905 * tools/Makefile (jisx0213.h): Bump version number.
2906 * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
2907 U+2299 -> U+29BF, and add 10 new characters.
2908 * tools/cjk_tab_to_h.c (output_title): Bump year.
2909 (do_jisx0213): Update comments. Emit a conditional 'inline'.
2910 * lib/jisx0213.h: Regenerated.
2911 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
2912 ESC $ ( Q as a synonym of ESC $ ( O.
2913 (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
2914 * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
2915 U+2299 -> U+29BF, and add 10 new characters.
2916 * tests/SHIFT_JISX0213.TXT: Likewise.
2917 * tests/ISO-2022-JP-3-snippet: Update.
2918 * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2920 2004-07-22 Bruno Haible <bruno@clisp.org>
2922 * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
2923 * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
2924 * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
2925 * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2927 2004-07-22 Bruno Haible <bruno@clisp.org>
2929 * tools/Makefile (ALL): Add iso8859_11.h.
2930 (iso8859_11.h): New rule.
2931 * lib/encodings.def: Add ISO-8859-11.
2932 * lib/iso8859_11.h: New file.
2933 * lib/converters.h: Include it.
2934 * tests/ISO-8859-11.TXT: New file.
2935 * tests/Makefile.in (check): Also test ISO-8859-11.
2936 * tests/Makefile.msvc (check): Likewise.
2937 * tests/Makefile.os2 (check): Likewise.
2939 2004-07-17 Bruno Haible <bruno@clisp.org>
2941 * src/iconv.c (main): Terminate option parsing when option -- is seen.
2942 Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2944 2004-03-05 Bruno Haible <bruno@clisp.org>
2946 * src/Makefile.in (install): Make DESTDIR work on HP-UX.
2947 Reported by Bob Proulx <box@proulx.com>.
2949 2004-02-19 Bruno Haible <bruno@clisp.org>
2951 * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
2952 0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
2953 (viet_comp_table0301_len): Increment by 4.
2955 * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
2956 which are not entries in cp1255_comp_table_data.
2957 * lib/cp1258.h (cp1258_comp_bases): New array.
2958 (cp1258_mbtowc): Don't delay the handling of characters which are not
2959 relevant entries in viet_comp_table_data.
2960 * lib/tcvn.h (tcvn_comp_bases): New array.
2961 (tcvn_mbtowc): Don't delay the handling of characters which are not
2962 relevant entries in viet_comp_table_data.
2963 Reported by Alain Bench <veronatif@free.fr>.
2965 2004-02-02 Perry Rapp <lifelines_3_0_18@hotmail.com>
2966 Bruno Haible <bruno@clisp.org>
2968 * man/iconvctl.3: New file.
2969 * man/iconv.3: Refer to it in "See also".
2970 * man/iconv_open.3: Likewise.
2972 2004-01-24 Bruno Haible <bruno@clisp.org>
2974 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2977 2004-01-20 Bruno Haible <bruno@clisp.org>
2979 Upgrade from gettext-0.14.
2981 * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
2982 instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
2983 * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
2984 xalloc.h. Remove xmalloc.h.
2985 (libicrt_a_LIBADD): Remove @ALLOCA@.
2986 * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
2987 (allocsa.obj): New rule.
2988 * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
2989 (allocsa.obj): New rule.
2990 * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
2991 (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
2995 2003-10-09 Bruno Haible <bruno@clisp.org>
2996 * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2998 2003-08-01 Bruno Haible <bruno@clisp.org>
2999 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
3000 Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3002 2003-06-22 Bruno Haible <bruno@clisp.org>
3003 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3004 the case when it is not used.
3005 Reported by Pavel Roskin <proski@gnu.org>.
3009 * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
3010 * m4/po.m4: Likewise.
3012 * m4/readlink.m4: New file, from GNU gettext.
3014 2003-11-30 Bruno Haible <bruno@clisp.org>
3015 * m4/allocsa.m4: New file.
3016 * m4/eealloc.m4: New file.
3017 * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
3020 2003-10-21 Bruno Haible <bruno@clisp.org>
3021 * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
3024 2003-08-24 Bruno Haible <bruno@clisp.org>
3025 * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
3026 since the substitution of @host@ may occur before the substitution of
3029 2003-08-23 Bruno Haible <bruno@clisp.org>
3030 * stdbool.m4: Replace with the version from gnulib, without
3033 2003-08-08 Paul Eggert <eggert@twinsun.com>
3034 * m4/extensions.m4: New file.
3035 * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
3036 Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
3038 2003-07-01 Bruno Haible <bruno@clisp.org>
3039 * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
3040 <sys/types.h> should be sufficient.
3041 Reported by Paul Eggert.
3043 2003-07-01 Bruno Haible <bruno@clisp.org>
3044 * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
3045 from aclocal-1.4-p4.
3046 Reported by Luke Schierer <lschiere@rackspace.com> and
3047 Michael C. Toren <mct@toren.net>.
3049 2003-07-01 Paul Eggert <eggert@twinsun.com>
3050 * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
3051 xreadlink.c now includes it unconditionally.
3053 2003-06-17 Paul Eggert <eggert@twinsun.com>
3054 * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
3055 for portability to POSIX 1003.1-2001. Backported from libtool-1.5.
3057 2003-05-28 Paul Eggert <eggert@twinsun.com>
3058 * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
3059 * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
3061 2002-12-24 Bruno Haible <bruno@clisp.org>
3062 * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
3063 (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
3065 (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
3070 2003-11-30 Bruno Haible <bruno@clisp.org>
3071 * srclib/alloca.c: Remove file.
3073 2003-11-30 Bruno Haible <bruno@clisp.org>
3074 Safer stack allocation.
3075 * srclib/allocsa.h: New file.
3076 * srclib/allocsa.c: New file.
3077 * canonicalize.c: Include allocsa.h.
3078 (__realpath): Use allocsa instead of alloca. Don't clobber errno right
3079 before returning NULL.
3080 * srclib/relocwrapper.c: Indirectly depends on allocsa.
3081 * srclib/setenv.c: Include allocsa.h.
3082 (alloca): Remove fallback definition.
3083 (freea): Remove macro.
3084 (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
3087 2003-11-17 Bruno Haible <bruno@clisp.org>
3088 * srclib/canonicalize.c: #undef realpath after <config.h> but before
3089 the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
3090 Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
3092 2003-10-21 Bruno Haible <bruno@clisp.org>
3093 * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
3094 systems without symbolic links.
3096 2003-10-17 Bruno Haible <bruno@clisp.org>
3097 * srclib/binary-io.h: Avoid warnings on Cygwin.
3099 2003-10-09 Bruno Haible <bruno@clisp.org>
3100 * srclib/xalloc.h: Renamed from xmalloc.h.
3101 * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
3102 * srclib/relocatable.c: Likewise.
3103 * srclib/xmalloc.c: Likewise.
3104 * srclib/xreadlink.c: Likewise.
3105 * srclib/xstrdup.c: Likewise.
3107 2003-09-12 Paul Eggert <eggert@twinsun.com>
3108 * srclib/progreloc.c (get_full_program_name): Define via prototype.
3110 2003-09-12 Paul Eggert <eggert@twinsun.com>
3111 * srclib/setenv.c (clearenv): Define via prototype.
3113 2003-09-10 Bruno Haible <bruno@clisp.org>
3114 * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
3115 * srclib/unsetenv.c: Likewise.
3117 2003-08-28 Bruno Haible <bruno@clisp.org>
3118 * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
3119 a warning on QNX, which defines O_BINARY to 000000.
3121 2003-08-24 Bruno Haible <bruno@clisp.org>
3122 * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
3123 when MSVC7 <stdio.h> is included later.
3125 2003-08-24 Bruno Haible <bruno@clisp.org>
3126 * srclib/error.h: Use ANSI C "..." declarations when compiling with
3127 MSVC, even though it doesn't define __STDC__ by default.
3128 * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
3129 it doesn't define __STDC__ by default.
3131 2003-08-24 Bruno Haible <bruno@clisp.org>
3132 Support for building DLLs on Windows.
3133 * srclib/error.h (error_print_progname, error_message_count,
3134 error_one_per_line): Add DLL_VARIABLE attribute.
3135 * srclib/progname.h (program_name): Likewise.
3137 2003-08-24 Bruno Haible <bruno@clisp.org>
3138 * srclib/progname.h: Make this file includable in C++ mode: add extern
3140 * srclib/relocatable.h: Likewise.
3141 * srclib/xmalloc.h: Likewise.
3143 2003-08-22 Bruno Haible <bruno@clisp.org>
3144 * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
3146 * srclib/progname.c (error_with_progname): Remove variable.
3147 (maybe_print_progname): Remove function.
3149 2003-08-01 Bruno Haible <bruno@clisp.org>
3150 * srclib/relocatable.c (find_shared_library_fullname): Disable the code
3151 on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3153 2003-07-01 Paul Eggert <eggert@twinsun.com>
3154 * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
3155 having it depend on HAVE_SYS_TYPES_H.
3157 2003-06-23 Bruno Haible <bruno@clisp.org>
3158 Avoid compilation units that are empty after preprocessing.
3159 * srclib/canonicalize.c: Add dummy declaration.
3160 * srclib/strerror.c: Likewise.
3161 * srclib/error.c: Include <stdio.h> even if there's nothing to be
3164 2003-06-22 Bruno Haible <bruno@clisp.org>
3165 * srclib/relocatable.c (compute_curr_prefix): Comment out this function
3166 in the case when it is not used.
3167 Reported by Pavel Roskin <proski@gnu.org>.
3169 2003-05-28 Paul Eggert <eggert@twinsun.com>
3170 * srclib/pathmax.h: Include <limits.h> without checking for
3172 * srclib/xreadlink.c: Likewise.
3174 2004-01-20 Bruno Haible <bruno@clisp.org>
3176 Assume automake-1.8.
3177 * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
3178 (AUTOMAKE): Assume automake-1.8.
3179 * Makefile.in (am--refresh): New target.
3181 2004-01-23 Bruno Haible <bruno@clisp.org>
3183 * Version 1.9.2 released.
3185 2004-01-23 Bruno Haible <bruno@clisp.org>
3187 * tests/table-from.c: Include binary-io.h.
3188 (main): Switch stdout to binary mode.
3189 * tests/table-to.c: Include binary-io.h.
3190 (main): Switch stdout to binary mode.
3191 * tests/genutf8.c: Include binary-io.h.
3192 (main): Switch stdout to binary mode.
3193 * tests/Makefile.in (INCLUDES): Also look in srclib.
3194 (check): Pass INCLUDES when compiling genutf8.c.
3195 * tests/Makefile.os2 (INCLUDES): Also look in srclib.
3196 (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
3197 * tests/Makefile.msvc (INCLUDES): Also look in srclib.
3198 (check): Pass INCLUDES when compiling genutf8.c.
3200 2004-01-21 Bruno Haible <bruno@clisp.org>
3202 * src/iconv.c (force_binary): Remove variable.
3203 (usage): Don't document --binary any more.
3204 (convert, main): Always switch to binary mode.
3205 * tests/check-stateful.bat: Remove --binary option.
3206 * tests/check-translit.bat: Likewise.
3207 * tests/check-stateful.cmd: Likewise.
3208 * tests/check-translit.cmd: Likewise.
3209 * djgpp/stateful-check.sed: Remove MODE variable.
3210 * djgpp/translit-check.sed: Likewise.
3212 2004-01-21 Bruno Haible <bruno@clisp.org>
3214 * man/iconv.3: Fix description of return value in case of error.
3215 Reported by Jonathan Wakely <redi@users.sf.net>.
3217 2003-09-12 Paul Eggert <eggert@twinsun.com>
3219 * srclib/progreloc.c (get_full_program_name): Define via prototype.
3221 2003-08-15 Bruno Haible <bruno@clisp.org>
3223 * Makefile.devel (lib/translit.h): Add ulimit command so that the
3224 gentranslit program gets the stack it needs. Many Linux distributions
3225 allow only 8 MB of stack by default.
3227 2003-08-01 Bruno Haible <bruno@clisp.org>
3229 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
3231 * srclib/relocatable.c (find_shared_library_fullname): Likewise.
3232 Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3234 2003-07-02 Bruno Haible <bruno@clisp.org>
3236 * m4/lib-ld.m4: Update from GNU gettext.
3237 * m4/lib-prefix.m4: Update from GNU gettext.
3238 * m4/gettext.m4: Update from GNU gettext.
3239 * m4/intmax.m4: New file, from GNU gettext.
3240 * m4/longdouble.m4: New file, from GNU gettext.
3241 * m4/longlong.m4: New file, from GNU gettext.
3242 * m4/printf-posix.m4: New file, from GNU gettext.
3243 * m4/signed.m4: New file, from GNU gettext.
3244 * m4/wchar_t.m4: New file, from GNU gettext.
3245 * m4/wint_t.m4: New file, from GNU gettext.
3246 * m4/pathmax.m4: Update from GNU gettext and gnulib.
3247 * m4/ssize_t.m4: Update from GNU gettext and gnulib.
3248 * m4/xreadlink.m4: Update from GNU gettext and gnulib.
3249 * m4/readlink.m4: New file, from gnulib.
3250 * autoconf/install-reloc: Update from GNU gettext.
3251 * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
3252 * srclib/readlink.c: New file, from GNU gettext and gnulib.
3253 * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
3254 (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
3255 * configure.in: Invoke gl_FUNC_READLINK.
3257 2003-06-22 Bruno Haible <bruno@clisp.org>
3259 * src/Makefile.in (install): Link with the already installed library.
3260 This fixes a link error on Solaris.
3261 Reported by Paul Eggert.
3263 2003-06-08 Bruno Haible <bruno@clisp.org>
3265 * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
3267 2003-05-02 Bruno Haible <bruno@clisp.org>
3269 Support for libtool-1.5.
3270 * srclib/progname.c (set_program_name): Remove a leading
3271 "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
3273 2003-06-23 Bruno Haible <bruno@clisp.org>
3275 Avoid compilation units that are empty after preprocessing.
3276 * srclib/canonicalize.c: Add dummy declaration.
3277 * srclib/strerror.c: Likewise.
3278 * srclib/error.c: Include <stdio.h> even if there's nothing to be
3281 2003-06-22 Bruno Haible <bruno@clisp.org>
3283 Portability to mingw32.
3284 * m4/ssize_t.m4: New file, from GNU gettext.
3285 * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
3286 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3288 2003-06-22 Bruno Haible <bruno@clisp.org>
3290 Portability to mingw32.
3291 * lib/relocatable.c [WIN32]: Include <windows.h>.
3292 * srclib/relocatable.c: Likewise.
3293 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3295 2003-06-22 Bruno Haible <bruno@clisp.org>
3297 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3298 the case when it is not used.
3299 * srclib/relocatable.c (compute_curr_prefix): Likewise.
3300 Reported by Pavel Roskin <proski@gnu.org>.
3302 2003-06-18 Bruno Haible <bruno@clisp.org>
3304 * config/install-sh: Update from automake-1.7.5.
3306 2003-06-16 Bruno Haible <bruno@clisp.org>
3308 * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
3309 (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
3311 (GBK): Add aliases MS936, WINDOWS-936.
3312 Reported by Guido Flohr <guido@imperia.net>.
3314 2003-05-09 Bruno Haible <bruno@clisp.org>
3316 * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
3317 "extraneous semicolon" warning from Tru64 cc.
3319 2003-06-07 Bruno Haible <bruno@clisp.org>
3321 * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
3322 * Makefile.vms (config.h): New rule.
3323 (all, install): Depend on it.
3324 (all, install, installdirs, uninstall, check): Fix typo.
3325 (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
3327 * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
3328 (OBJECTS): Use libiconv.obj instead of iconv.obj.
3329 (libiconv.obj): Renamed from iconv.obj.
3330 * srclib/Makefile.vms (INCLUDES): Add parent directory.
3331 (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
3332 (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
3333 (alloca.h): New rule.
3334 (canonicalize.obj): Depend on it.
3335 (clean): Remove alloca.h.
3336 * src/Makefile.vms (datadir, localedir): New variables.
3337 (DEFS): Also define LOCALEDIR.
3338 (iconv.obj): Add flags for relocatability,
3339 (iconv.exe): Link with libicrt. Use link_options.
3340 * vms/link_options.opt: New file.
3341 Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
3343 2003-06-07 Bruno Haible <bruno@clisp.org>
3345 Support for relocatable data files even on Woe32.
3346 * lib/Makefile.msvc (PICFLAGS): Also define PIC.
3348 2003-05-22 Bruno Haible <bruno@clisp.org>
3350 * Version 1.9.1 released.
3352 2003-05-22 Bruno Haible <bruno@clisp.org>
3354 * lib/genaliases.c (main): Emit %pic instead of %null-strings.
3355 Change type of 'name' field to 'int'.
3356 * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
3357 invocation of macro S(), including the tag and a counter.
3358 (main): Use the command-line argument as tag.
3359 * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
3360 lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
3361 * lib/iconv.c (stringpool2_t): New type.
3362 (stringpool2_contents): New data table.
3363 (stringpool2): New macro.
3364 (sysdep_aliases): Make position-independent. Move #includes out to
3366 (aliases2_lookup): Update.
3368 (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
3369 (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
3370 * lib/aliases2.h: New file, extracted from lib/iconv.c.
3372 2003-05-20 Bruno Haible <bruno@clisp.org>
3374 * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
3375 Reported by Muraoka Taro <koron@tka.att.ne.jp>.
3377 2003-05-19 Bruno Haible <bruno@clisp.org>
3379 * windows/iconv.rc: Include <winver.h>.
3380 Reported by Perry Rapp.
3382 2003-05-18 Bruno Haible <bruno@clisp.org>
3384 * Version 1.9 released.
3386 2003-05-18 Bruno Haible <bruno@clisp.org>
3388 * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
3390 2003-05-18 Bruno Haible <bruno@clisp.org>
3392 * lib/Makefile.msvc (DEBUGFLAGS): New variable.
3393 (iconv.lib): Use it.
3394 * src/Makefile.msvc (DEBUGFLAGS): New variable.
3395 * tests/Makefile.msvc (DEBUGFLAGS): New variable.
3397 2003-05-17 Bruno Haible <bruno@clisp.org>
3399 * src/Makefile.msvc (libdir, datadir, localedir): New variables.
3400 (IIlibdir, IIdatadir, IIlocaledir): New variables.
3401 (CFLAGS): Define LOCALEDIR.
3402 (iconv_no_i18n.exe): New rule.
3403 (all): Depend on it.
3404 * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
3405 * tests/check-translit.bat: Likewise.
3407 2003-05-16 Bruno Haible <bruno@clisp.org>
3409 * lib/genaliases.c (main): Emit declarations for gperf-3.0.
3410 * Makefile.devel (lib/aliases.h): Remove gperf command line options;
3411 add new option "-m 10" for gperf-3.0.
3413 2003-05-12 Bruno Haible <bruno@clisp.org>
3415 * m4/error.m4: Update from gettext.
3417 2003-05-12 Bruno Haible <bruno@clisp.org>
3419 * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
3421 2003-05-12 Bruno Haible <bruno@clisp.org>
3423 * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
3426 2003-05-09 Bruno Haible <bruno@clisp.org>
3428 * srclib/error.c: Update from gnulib with modifications.
3429 * srclib/unlocked-io.h: New file, from gnulib.
3430 * m4/strerror_r.m4: New file, from gnulib.
3431 * m4/unlocked-io.m4: New file, from gnulib.
3432 * Makefile.devel (aclocal.m4): Depend on them.
3434 2003-05-08 Bruno Haible <bruno@clisp.org>
3436 * Makefile.msvc (IIPREFIX): New variable.
3437 * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
3438 * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
3439 IIincludedir): New variables.
3440 (INCLUDES): Add -I..\windows.
3441 (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
3443 Patches by Perry Rapp.
3445 2003-05-07 Bruno Haible <bruno@clisp.org>
3447 * README.woe32: Fix instructions for step 1.
3448 * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
3449 (strtoul.obj): Remove rule.
3450 Reported by Perry Rapp.
3452 2003-05-07 Bruno Haible <bruno@clisp.org>
3454 * Makefile.vms: New file.
3455 * lib/Makefile.vms: New file.
3456 * srclib/Makefile.vms: New file.
3457 * src/Makefile.vms: New file.
3458 * man/Makefile.vms: New file.
3459 * tests/Makefile.vms: New file.
3460 * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
3462 (all): Depend on them.
3464 2003-05-07 Bruno Haible <bruno@clisp.org>
3466 * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
3467 (findprog.obj): Remove rule.
3468 * src/Makefile.msvc (includedir): New variable.
3470 2003-05-06 Bruno Haible <bruno@clisp.org>
3472 * lib/translit.def: Upgrade to Unicode 4.0.
3474 2003-05-06 Bruno Haible <bruno@clisp.org>
3476 * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
3477 * srclib/Makefile.msvc (CFLAGS): Likewise.
3479 * srclib/Makefile.msvc (INCLUDES): Add -I.. .
3480 Reported by Perry Rapp.
3482 * Makefile.msvc (config.h): New rule.
3483 (all): Depend on it.
3484 (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
3485 Reported by Perry Rapp.
3487 2003-05-06 Bruno Haible <bruno@clisp.org>
3489 * autoconf/config.guess: Update to GNU version 2003-02-22.
3490 * autoconf/config.sub: Likewise.
3492 2003-05-06 Bruno Haible <bruno@clisp.org>
3494 * m4/lib-link.m4: Update from GNU gettext.
3495 * autoconf/config.rpath: Update from GNU gettext.
3497 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
3498 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
3500 * m4/gettext.m4: Update from GNU gettext.
3501 * m4/nls.m4: Update from GNU gettext.
3502 * m4/po.m4: Update from GNU gettext.
3503 * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
3505 2003-04-12 Bruno Haible <bruno@clisp.org>
3507 Support for OpenVMS 7.3.
3508 * lib/iconv.c (USE_OSF1): Define also on VMS.
3510 2003-04-12 Bruno Haible <bruno@clisp.org>
3512 Better support for FreeBSD.
3513 * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
3514 aliases, for compatibility with earlier FreeBSD iconv implementation
3515 by Konstantin Chuguev.
3516 * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
3518 * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
3520 2003-04-12 Bruno Haible <bruno@clisp.org>
3522 * configure.in (mandir): Change default value.
3523 * Makefile.in (datadir): New variable.
3524 (install, installdirs, uninstall): Pass datadir to po and man
3526 * Makefile.os2 (datadir): New variable.
3527 (mandir): Use it instead of prefix.
3528 (install, uninstall): Pass datadir to man directory.
3529 * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
3530 * man/Makefile.in (datadir): New variable.
3531 (docdir): Use it instead of prefix.
3532 (install, installdirs): Update.
3533 * man/Makefile.os2 (datadir): New variable.
3534 (mandir): Use it instead of prefix.
3535 * man/Makefile.msvc (datadir): New variable.
3536 (mandir, docdir): Use it instead of prefix.
3537 (install, installdirs): Update.
3539 2003-04-06 Bruno Haible <bruno@clisp.org>
3541 Make it possible to build with or without libintl support on Woe32.
3542 * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
3543 * Makefile.msvc (NO_NLS): New variable.
3544 * srclib/Makefile.msvc (NO_NLS): New variable.
3545 (CFLAGS, INCLUDES): Use them.
3546 * src/Makefile.msvc (NO_NLS): New variable.
3547 (NLSFLAGS, INCINTL, LIBINTL): New variables.
3548 (CFLAGS, INCLUDES, iconv.exe): Use them.
3550 2003-04-12 Bruno Haible <bruno@clisp.org>
3552 * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
3553 variants transliteration failed with RET_ILUNI, don't return
3555 Reported by the FreeBSD porters.
3557 2003-04-06 Bruno Haible <bruno@clisp.org>
3559 * srclib/binary-io.h: New file, from GNU gettext.
3560 * src/iconv.c: Include it.
3561 (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
3563 2003-04-05 Bruno Haible <bruno@clisp.org>
3565 Support for relocatable installation.
3566 * m4/alloca.m4: New file, from GNU gettext.
3567 * m4/canonicalize.m4: New file, from GNU gettext.
3568 * m4/error.m4: New file, from GNU gettext.
3569 * m4/onceonly.m4: New file, from GNU gettext.
3570 * m4/pathmax.m4: New file, from GNU gettext.
3571 * m4/relocatable.m4: New file, from GNU gettext.
3572 * m4/setenv.m4: New file, from GNU gettext.
3573 * m4/stdbool.m4: New file, from GNU gettext.
3574 * m4/strerror.m4: New file, from GNU gettext.
3575 * m4/xreadlink.m4: New file, from GNU gettext.
3576 * autoconf/config.libpath: New file, from GNU gettext.
3577 * autoconf/install-reloc: New file, from GNU gettext.
3578 * autoconf/reloc-ldflags: New file, from GNU gettext.
3579 * autoconf/missing: New file, from GNU automake 1.7.3.
3580 * lib/relocatable.h: New file, from GNU gettext.
3581 * lib/relocatable.c: New file, from GNU gettext.
3582 * srclib/alloca.c: New file, from GNU gettext.
3583 * srclib/alloca_.h: New file, from GNU gettext.
3584 * srclib/canonicalize.c: New file, from GNU gettext.
3585 * srclib/canonicalize.h: New file, from GNU gettext.
3586 * srclib/error.c: New file, from GNU gettext.
3587 * srclib/error.h: New file, from GNU gettext.
3588 * srclib/exit.h: New file, from GNU gettext.
3589 * srclib/gettext.h: New file, from GNU gettext.
3590 * srclib/memmove.c: New file, from GNU gettext.
3591 * srclib/pathmax.h: New file, from GNU gettext.
3592 * srclib/progname.c: New file, from GNU gettext.
3593 * srclib/progname.h: New file, from GNU gettext.
3594 * srclib/progreloc.c: New file, from GNU gettext.
3595 * srclib/relocatable.c: New file, from GNU gettext.
3596 * srclib/relocatable.h: New file, from GNU gettext.
3597 * srclib/relocwrapper.c: New file, from GNU gettext.
3598 * srclib/setenv.c: New file, from GNU gettext.
3599 * srclib/setenv.h: New file, from GNU gettext.
3600 * srclib/stdbool.h.in: New file, from GNU gettext.
3601 * srclib/strerror.c: New file, from GNU gettext.
3602 * srclib/unsetenv.c: New file, from GNU gettext.
3603 * srclib/xmalloc.c: New file, from GNU gettext.
3604 * srclib/xmalloc.h: New file, from GNU gettext.
3605 * srclib/xreadlink.c: New file, from GNU gettext.
3606 * srclib/xreadlink.h: New file, from GNU gettext.
3607 * srclib/xstrdup.c: New file, from GNU gettext.
3608 * srclib/Makefile.am: New file.
3609 * srclib/Makefile.msvc: New file.
3610 * windows/alloca.h: New file, from GNU gettext.
3611 * windows/stdbool.h: New file, from GNU gettext.
3612 * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
3613 Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
3614 string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
3615 AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
3616 gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
3617 gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
3618 * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
3619 HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
3620 localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
3622 * lib/Makefile.in (DEFS): New variable.
3623 (SOURCES): Add localcharset.c and relocatable.c.
3624 (OBJECTS): Add localcharset.lo and relocatable.lo.
3625 (LIBCHARSET_OBJECTS): Remove variable.
3626 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3627 libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
3628 (iconv.lo): Use $(DEFS).
3629 (localcharset.lo, relocatable.lo): New rules.
3630 * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
3631 ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
3632 set_relocation_prefix, relocate. Remove $(PICFLAGS).
3633 (INCLUDES): Simplify.
3634 (SOURCES): Remove variable.
3635 (OBJECTS): Add localcharset.obj and relocatable.obj.
3636 (LIBCHARSET_OBJECTS): Remove variable.
3637 (iconv.obj): Add $(PICFLAGS).
3638 (localcharset.obj, relocatable.obj): New rules.
3639 (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
3640 * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
3641 * src/gettext.h: Remove file.
3642 * src/iconv.c: Include progname.h and relocatable.h.
3643 (ICONV_CONST): Define to const if the system has no iconv.
3644 (main): Invoke set_program_name. Relocate LOCALEDIR.
3645 * src/Makefile.in (top_srcdir): New variable.
3646 (INCLUDES): Add .. and ../srclib.
3647 (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
3648 (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
3649 (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
3650 RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
3652 (iconv): Use $(iconv_LDFLAGS).
3653 (install): Use $(INSTALL_PROGRAM_ENV).
3654 (distclean): Drop removing config.h.
3655 * src/Makefile.msvc (INCLUDES): Add .., simplify.
3656 * tests/Makefile.msvc (INCLUDES): Simplify.
3657 * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
3658 (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
3659 (all): Depend on them.
3660 (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
3661 m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
3662 m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
3663 (lib/config.h.msvc): Additional processing.
3664 * Makefile.in (all, install, installdirs, uninstall, check): Recurse
3666 (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
3668 (distclean, maintainerclean): Remove also config.h and some stamps.
3669 * Makefile.msvc (all, install, installdirs, uninstall, check,
3670 mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
3671 * INSTALL.generic: Document --enable-relocatable and
3672 --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
3673 LDFLAGS. The lib-link.m4 macros make this unnecessary.
3675 2003-04-05 Bruno Haible <bruno@clisp.org>
3677 * configure.in: Bump version number to 1.9.
3678 * include/iconv.h.in (_LIBICONV_VERSION): Bump.
3679 * windows/iconv.rc: Bump version number.
3680 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
3682 2003-04-05 Bruno Haible <bruno@clisp.org>
3684 * Makefile.msvc (PREFIX): New variable.
3686 (distclean, maintainer-clean): Drop Unix specific removals.
3687 * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
3689 (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
3690 (clean): Drop Unix specific removal.
3691 * src/Makefile.msvc (PREFIX): New variable.
3693 (clean): Drop Unix specific removal.
3694 (distclean): Likewise.
3695 * tests/Makefile.msvc (clean): Drop Unix specific removal.
3696 (distclean): Likewise.
3698 2003-04-05 Bruno Haible <bruno@clisp.org>
3700 * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
3702 2003-04-05 Bruno Haible <bruno@clisp.org>
3704 * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
3705 CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
3707 * m4/gettext.m4: Update from GNU gettext.
3708 * m4/iconv.m4: Update from GNU gettext.
3709 * m4/lcmessage.m4: Update from GNU gettext.
3710 * m4/progtest.m4: Update from GNU gettext.
3711 * m4/libtool.m4: Update from GNU gettext.
3712 2003-02-16 Bruno Haible <bruno@clisp.org>
3713 Workaround autoconf >= 2.52 breakage.
3714 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
3715 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
3716 * autoconf/ltmain.sh: Update from GNU gettext.
3717 2003-02-18 Bruno Haible <bruno@clisp.org>
3718 Fix the 2002-09-16 fix.
3719 * ltmain.sh (install): If "ln -s -f" fails (this is the case
3720 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
3722 2003-04-05 Bruno Haible <bruno@clisp.org>
3724 Start using automake.
3725 * configure.in: Add AM_INIT_AUTOMAKE invocation.
3726 (PACKAGE, VERSION): Remove.
3727 Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
3728 Use AC_PROG_LN_S instead of CL_PROG_LN_S.
3729 Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
3730 Reorder so that AC_CANONICAL_HOST comes early but still after
3732 * m4/ranlib.m4: Remove file.
3733 * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
3734 * Makefile.devel (CLISP_DIR): Comment out.
3735 (AUTOCONF_FILES): Change to aclocal.m4.
3736 (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
3737 (configure.in): Drop --include option.
3739 2003-03-17 Bruno Haible <bruno@clisp.org>
3741 Improved MSVC support.
3742 * Makefile.msvc (prefix): Use less Unixy value.
3743 (local_prefix): Remove variable.
3744 (libdir, includedir, mandir): Use backslashes.
3745 (bindir, datadir, localedir, docdir): New variables.
3746 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3747 (all): Recurse into po/ and man/.
3748 (install, installdirs, uninstall): Rewritten.
3749 (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
3751 * lib/Makefile.msvc (prefix): Use less Unixy value.
3752 (local_prefix): Remove variable.
3753 (libdir): Use backslashes.
3754 (bindir): New variable.
3755 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
3756 (RESOURCES): Enable iconv.res.
3757 (install, installdirs, uninstall): New rules.
3758 (clean): Remove config.h.
3759 (distclean): Don't remove config.h here.
3760 * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
3761 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3762 (install, installdirs, uninstall): New rules.
3763 * man/Makefile.msvc: New file.
3764 * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
3765 * Makefile.devel (all): Depend on po/Makefile.msvc.
3766 (po/Makefile.msvc): New rule.
3767 * windows/iconv.rc: Update.
3768 * README.woe32: Mention automatic installation command.
3770 Rename libcharset.h to localcharset.h.
3771 * lib/iconv.c: Include localcharset.h, not libcharset.h.
3772 * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
3773 (all, install): Update dependencies.
3774 (all): Create lib/localcharset.h, not lib/libcharset.h.
3775 (mostlyclean, clean, distclean, maintainer-clean): Remove
3776 lib/localcharset.h, not lib/libcharset.h.
3777 * djgpp/README.in, djgpp/README: Update.
3778 * djgpp/config.bat: Update.
3779 * djgpp/config.sed: Update.
3780 * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
3782 2003-01-31 Bruno Haible <bruno@clisp.org>
3784 * src/Makefile.in (all): Don't do the chmod if it has already been
3787 2003-01-31 Bruno Haible <bruno@clisp.org>
3789 * lib/loop_unicode.h (unicode_transliterate): Enable recursive
3790 transliteration. Idea from Perry Rapp.
3791 * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
3792 Change element type of translit_data to 'unsigned int'.
3793 * lib/translit.def: Many new transliterations, mostly taken from glibc.
3794 * lib/translit.h: Regenerated.
3795 * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
3796 * tests/Makefile.in (check): Add Translit1 check.
3797 * tests/Makefile.msvc (check): Likewise.
3798 * tests/Makefile.os2 (check): Likewise.
3799 * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
3800 improved transliteration cannot do.
3802 2003-02-14 Bruno Haible <bruno@clisp.org>
3804 * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
3805 (configure): Update rule.
3807 2003-01-03 Albert Chin <libtool@thewrittenword.com>
3809 * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
3810 dependency_libs variable directly down to the linker.
3811 Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
3813 2003-01-01 Bruno Haible <bruno@clisp.org>
3815 * src/Makefile.in (install): Use libiconv.la in ../lib, not in
3816 $(libdir), so that installing with DESTDIR works.
3817 Reported by Michael Adams <michael@michaeladams.org>.
3819 2003-01-01 Bruno Haible <bruno@clisp.org>
3821 * Makefile.in (mkinstalldirs): New variable.
3822 (install-lib, install, installdirs): Use it instead of mkdir.
3823 * lib/Makefile.in (mkinstalldirs): New variable.
3824 (install-lib, install, installdirs): Use it instead of mkdir.
3825 * man/Makefile.in (mkinstalldirs): New variable.
3826 (install, installdirs): Use it instead of mkdir.
3827 * src/Makefile.in (mkinstalldirs): New variable.
3828 (install, installdirs): Use it instead of mkdir.
3830 2002-09-27 Bruno Haible <bruno@clisp.org>
3832 * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
3834 2002-11-07 Bruno Haible <bruno@clisp.org>
3836 * m4/libtool.m4: Upgrade to libtool-1.4.3.
3837 * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
3839 2002-07-14 Bruno Haible <bruno@clisp.org>
3841 * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
3843 2002-06-12 Bruno Haible <bruno@clisp.org>
3845 * configure.in: Use new AC_* names of libtool macros. Invoke
3846 AC_LIBTOOL_WIN32_DLL.
3848 2002-12-19 Bruno Haible <bruno@clisp.org>
3850 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
3851 Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
3853 2002-11-07 Bruno Haible <bruno@clisp.org>
3855 Make "make install" without prior "make" work.
3856 * Makefile.in (lib/libcharset.h): New rule.
3857 (all, install): Depend on it.
3858 Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
3860 2002-10-28 Bruno Haible <bruno@clisp.org>
3862 * man/Makefile.in (install): Change directory back to the working
3863 directory, so that install-sh (which may be a relative pathname) is
3864 found in the right place.
3866 2002-09-16 Bruno Haible <bruno@clisp.org>
3868 * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
3869 "rm -f && ln -s" to make a symlink for a shared library.
3870 Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3872 2002-09-02 Bruno Haible <bruno@clisp.org>
3874 * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
3876 2002-08-16 Bruno Haible <bruno@clisp.org>
3878 * src/iconv.c (main): Perform fflush before testing ferror(stdout).
3880 2002-05-29 Bruno Haible <bruno@clisp.org>
3882 * Version 1.8 released.
3884 2002-05-26 Bruno Haible <bruno@clisp.org>
3886 * lib/c99.h: New file.
3887 * lib/converters.h: Include it.
3888 * lib/encodings.def (C99): New encoding.
3889 * README, man/iconv_open.3: Document C99 encoding.
3891 2002-05-26 Bruno Haible <bruno@clisp.org>
3893 * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
3895 (java_wctomb): Produce 12-byte sequences for non-BMP characters.
3897 2002-05-29 Bruno Haible <bruno@clisp.org>
3899 Fix installation of iconv program when linked with a libintl that was
3900 built against an earlier libiconv.
3901 * src/iconv.c: Conditionally disable NLS.
3902 * src/iconv_no_i18n.c: New file.
3903 * src/Makefile.in (libdir): New variable.
3904 (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
3905 directory writable, so iconv executable can be created during "make
3907 (iconv): Remove rule.
3908 (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
3909 (install): Link iconv now, after the new libiconv.so is installed.
3910 (clean): Also remove iconv_no_i18n.
3911 * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
3913 * tests/check-stateful: Use iconv_no_i18n, not iconv.
3914 * tests/check-translit: LIkewise.
3915 * tests/check-translitfailure: Likewise.
3917 2002-05-29 Bruno Haible <bruno@clisp.org>
3919 * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
3920 * m4/install.m4: Remove file.
3921 * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
3923 2002-05-24 Bruno Haible <bruno@clisp.org>
3925 * lib/jisx0213.h: Use 'inline' only conditionally.
3927 2002-05-18 Bruno Haible <bruno@clisp.org>
3929 * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
3930 README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
3931 Bump version number.
3932 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
3934 2002-02-06 Bruno Haible <bruno@clisp.org>
3936 * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
3938 2002-02-02 Bruno Haible <bruno@clisp.org>
3940 * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
3942 2001-11-03 Bruno Haible <haible@clisp.cons.org>
3944 * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
3945 "make install" succeeds.
3947 2002-05-18 Bruno Haible <bruno@clisp.org>
3949 * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
3950 from the command line. Needed to ensure that the new libiconv version
3953 2002-05-14 Bruno Haible <bruno@clisp.org>
3955 Implement and document CP853, TDS565, RISCOS-LATIN1.
3956 * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
3957 (cp853.h, tds565.h, riscos1.h): New rules.
3958 * lib/cp853.h: New file.
3959 * lib/tds565.h: New file.
3960 * lib/riscos1.h: New file.
3961 * lib/converters.h: Include them.
3962 * lib/encodings_dos.def (CP853): New encoding.
3963 * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
3964 * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
3965 * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
3967 * tests/Makefile.msvc (check): Check CP853.
3968 * tests/CP853.TXT: New file.
3969 * tests/TDS565.TXT: New file.
3970 * tests/RISCOS-LATIN1.TXT: New file.
3972 * lib/cp860.h (cp860_wctomb): Optimize.
3974 2002-05-12 Bruno Haible <bruno@clisp.org>
3976 * tools/Makefile (ksc5601.h): Add two extra characters.
3977 * lib/ksc5601.h: Regenerated.
3978 * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
3979 * tests/CP949.TXT: Likewise.
3980 * tests/JOHAB.TXT: Likewise.
3982 2002-05-12 Bruno Haible <bruno@clisp.org>
3984 * README: Mention extra encodings.
3985 * man/iconv_open.3: Likewise. Improve formatting in text and html
3988 2002-05-12 Bruno Haible <bruno@clisp.org>
3990 * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
3992 2002-05-12 Bruno Haible <bruno@clisp.org>
3994 * Makefile.devel (AUTOCONF): New variable.
3995 (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
3996 (configure): Use the AUTOCONF variable.
3997 * autoconf/autoconf: Remove file.
3998 * autoconf/autoconf.m4: Remove file.
3999 * autoconf/autoconf.m4f: Remove file.
4001 2002-05-12 Bruno Haible <bruno@clisp.org>
4003 * tools/JISX0213.TXT: New file.
4004 * tools/cjk_tab_to_h.c (do_jisx0213): New function.
4005 (main): Accept "jisx0213".
4006 * tools/Makefile (all): Add jisx0213.h.
4007 (jisx0213.h): New rule.
4008 * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
4009 * lib/euc_jisx0213.h: New file.
4010 * lib/shift_jisx0213.h: New file.
4011 * lib/iso2022_jp3.h: New file.
4012 * lib/converters.h: Include them.
4013 * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
4014 ISO-2022-JP-3): New encodings.
4015 * tests/EUC-JISX0213.TXT: New file.
4016 * tests/SHIFT_JISX0213.TXT: New file.
4017 * tests/ISO-2022-JP-3-snippet: New file.
4018 * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
4019 * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
4020 SHIFT_JISX0213, ISO-2022-JP-3.
4021 * tests/check-stateless: Add support for encodings which contain
4022 precomposed Unicode characters, by eliminating precomposed characters
4023 before the comparison.
4024 * tests/table-from.c (main): Fix usage message.
4025 * tests/table-to.c (main): Make it work for encodings for which the
4026 "to" direction is stateful.
4028 2002-05-09 Bruno Haible <bruno@clisp.org>
4030 New configure option --enable-extra-encodings.
4031 * lib/encodings_extra.def: New file.
4032 * lib/converters.h: Handle USE_EXTRA.
4033 * lib/genaliases2.c (main): Handle USE_EXTRA.
4034 * lib/genflags.c: Define USE_EXTRA.
4035 (main): Include encodings_extra.def.
4036 * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
4038 * lib/config.h.in (ENABLE_EXTRA): New macro.
4039 * configure.in: Accept option --enable-extra-encodings.
4040 * Makefile.devel (all): Depend on lib/aliases_extra.h.
4041 (lib/aliases_extra.h): New rule.
4042 (lib/flags.h): Depend on lib/encodings_extra.def.
4043 * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
4045 (check): Invoke check-extra.
4046 * tests/Makefile.msvc (check): Also check the DOS encodings.
4048 Support for testing the AIX encodings.
4049 * tests/CP856.TXT: New file.
4050 * tests/CP922.TXT: New file.
4051 * tests/CP1046.TXT: New file.
4052 * tests/CP1124.TXT: New file.
4053 * tests/CP1129.TXT: New file.
4054 * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
4055 * tests/CP1162.TXT: New file.
4056 * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
4058 Support for testing the OSF/1 encodings.
4059 * tests/DEC-KANJI.TXT: New file.
4060 * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
4062 Support for testing the DOS encodings.
4063 * tests/CP437.TXT: New file.
4064 * tests/CP737.TXT: New file.
4065 * tests/CP775.TXT: New file.
4066 * tests/CP852.TXT: New file.
4067 * tests/CP855.TXT: New file.
4068 * tests/CP857.TXT: New file.
4069 * tests/CP858.TXT: New file.
4070 * tests/CP860.TXT: New file.
4071 * tests/CP861.TXT: New file.
4072 * tests/CP863.TXT: New file.
4073 * tests/CP864.TXT: New file.
4074 * tests/CP865.TXT: New file.
4075 * tests/CP869.TXT: New file.
4076 * tests/CP1125.TXT: New file.
4078 2002-05-09 Bruno Haible <bruno@clisp.org>
4080 Implement more ASCII compatible DOS encodings.
4081 * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
4082 (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
4083 * lib/cp737.h: New file.
4084 * lib/cp858.h: New file.
4085 * lib/cp860.h: New file.
4086 * lib/cp863.h: New file.
4087 * lib/converters.h: Include them.
4088 * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
4090 2002-05-09 Bruno Haible <bruno@clisp.org>
4092 Implement new ASCII compatible encodings from IBM.
4093 * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
4094 (cp1161.h, cp1162.h, cp1163.h): New rules.
4095 * lib/cp1161.h: New file.
4096 * lib/cp1162.h: New file.
4097 * lib/cp1163.h: New file.
4098 * lib/converters.h: Include them.
4099 * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
4101 2002-05-09 Bruno Haible <bruno@clisp.org>
4103 Implement and document KOI8-T.
4104 * tools/Makefile (ALL): Add koi8_t.h.
4105 (koi8_t.h): New rule.
4106 * lib/koi8_t.h: New file.
4107 * lib/converters.h: Include it.
4108 * lib/encodings.def (KOI8-T): New encoding.
4109 * README, man/iconv_open.3: Add KOI8-T.
4110 * tests/Makefile.in (tests): Check KOI8-T.
4111 * tests/Makefile.os2 (tests): Likewise.
4112 * tests/Makefile.msvc (tests): Likewise.
4113 * tests/KOI8-T.TXT: New file.
4115 2002-05-09 Bruno Haible <bruno@clisp.org>
4117 * tools/8bit_tab_to_h.c (main): Update copyright year.
4118 * tools/cjk_variants.c (main): Likewise.
4120 2002-05-08 Bruno Haible <bruno@clisp.org>
4122 * README.woe32: Renamed from README.win32.
4124 2002-05-08 Bruno Haible <bruno@clisp.org>
4126 * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
4127 because the Woe32 consoles use them.
4129 2002-05-04 Bruno Haible <bruno@clisp.org>
4131 * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
4132 without writing an output character, restore cd->istate to its value
4133 before the xxx_mbtowc call. Otherwise we lose some characters during
4134 CP1255/CP1258/TCVN to Unicode conversion.
4135 (unicode_loop_reset): Likewise for the xxx_flushwc call.
4136 * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
4137 files large enough to test against the bug.
4138 * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
4139 * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
4141 2002-04-28 Bruno Haible <bruno@clisp.org>
4143 * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
4144 * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
4145 * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
4146 * lib/armscii_8.h: Regenerated.
4148 2002-04-28 Bruno Haible <bruno@clisp.org>
4150 * src/iconv.c: Include gettext.h.
4152 (usage, print_version, convert, main): Internationalize.
4153 (main): Call setlocale, bindtextdomain, textdomain.
4154 * src/gettext.h: New file, from GNU gettext 0.11.2.
4155 * src/config.h.in: New file, needed for ENABLE_NLS.
4156 * src/Makefile.in (datadir, localedir): New variables.
4157 (iconv): Link with @LTLIBINTL@.
4158 (iconv.@OBJEXT@): Define LOCALEDIR.
4159 (distclean): Remove config.h.
4160 * po: New directory.
4161 * Makefile.in (all, install, installdirs, uninstall, check,
4162 mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
4164 * autoconf/mkinstalldirs: New file, from automake-1.5.
4165 * ABOUT-NLS: New file, from GNU gettext 0.11.2.
4166 * m4/codeset.m4: New file, from GNU gettext 0.11.2.
4167 * m4/gettext.m4: New file, from GNU gettext 0.11.2.
4168 * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
4169 * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
4170 * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
4171 * m4/progtest.m4: New file, from GNU gettext 0.11.2.
4172 * configure.in: Require autoconf-2.52, needed for multiple config.h.in
4173 files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
4174 (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
4175 * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
4177 2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
4179 * configure.in (AC_OUTPUT): Add po/Makefile.in.
4181 2002-04-28 Bruno Haible <bruno@clisp.org>
4183 * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
4184 * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
4185 * m4/general.m4: New file, from GNU clisp.
4186 * m4/proto.m4: New file, from GNU clisp.
4187 * m4/ranlib.m4: New file, from GNU clisp.
4188 * m4/install.m4: New file, from GNU clisp.
4189 * m4/cp.m4: New file, from GNU clisp.
4190 * m4/ln.m4: New file, from GNU clisp.
4191 * m4/endian.m4: New file, from GNU clisp.
4192 * m4/iconv.m4: New file, from GNU gettext 0.11.2.
4193 * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
4194 * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
4195 * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
4196 * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
4197 * m4/libtool.m4: New file, based on libtool-1.4.2.
4198 * Makefile.devel (ACLOCAL): Remove variable.
4199 (ACSELECT): Remove variable.
4200 (OTHERMACROS): Remove variable.
4201 (m4/*.m4): New rules.
4202 (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
4203 * configure.in: Invoke AM_ICONV instead of CL_ICONV.
4205 2002-04-06 Bruno Haible <bruno@clisp.org>
4207 Upgrade to Unicode 3.2.
4208 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
4209 (compact_large_charset2uni): Add an argument. Determine optimal shift.
4210 Copy modified enc->charset2uni table.
4211 (output_charset2uni): Deal with shift other than 8. Copy encoding, so
4212 as to not disturb subsequent output_uni2charset[_sparse] call.
4213 * lib/hkscs.h: Regenerated.
4214 * tests/BIG5-HKSCS.TXT: Update.
4215 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
4217 2002-04-06 Bruno Haible <bruno@clisp.org>
4219 Upgrade to Unicode 3.2.
4220 * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
4221 cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4222 cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
4223 CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
4224 * lib/cns11643_3.h: Regenerated.
4225 * lib/cns11643_4a.h: Regenerated.
4226 * lib/cns11643_4b.h: Regenerated.
4227 * lib/cns11643_5.h: Regenerated.
4228 * lib/cns11643_6.h: Regenerated.
4229 * lib/cns11643_7.h: Regenerated.
4230 * lib/cns11643_15.h: Regenerated.
4231 * lib/cns11643_inv.h: Regenerated.
4232 * tests/EUC-TW.TXT: Update.
4234 2002-01-17 Bruno Haible <bruno@clisp.org>
4236 * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
4237 (tcvn_mbtowc): Small optimization.
4239 2002-01-13 Bruno Haible <bruno@clisp.org>
4241 New options -l, -c, -s.
4242 * src/iconv.c (discard_unconvertible, silent): New variables.
4243 (usage): Document options -l, -c, -s.
4244 (print_one): New function.
4245 (convert): If silent is true, don't print error messages about the
4246 conversion to stderr. If discard_unconvertible is true, set the
4247 iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
4248 return the same return code as when discard_unconvertible is false.
4249 (main): Accept options -l, -c, -s. Implement option -l.
4250 * man/iconv.1: Document options -l, -c, -s.
4252 2002-01-13 Bruno Haible <bruno@clisp.org>
4254 Support for "iconv -c".
4255 * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
4256 (ICONV_SET_DISCARD_ILSEQ): Likewise.
4257 * lib/converters.h (struct conv_struct): New field discard_ilseq.
4258 * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
4259 has an "//IGNORE" suffix, and to false otherwise.
4260 (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
4261 * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
4262 true, skip one input character instead of returning EILSEQ.
4263 (unicode_loop_reset): Likewise.
4264 * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
4265 (wchar_to_loop_convert): Likewise.
4267 2002-01-13 Bruno Haible <bruno@clisp.org>
4269 Support for "iconv -l".
4270 * include/iconv.h.in (iconvlist): New declaration.
4271 * Makefile.devel (lib/aliases.h): Change gperf options.
4272 * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
4275 2002-01-06 Bruno Haible <bruno@clisp.org>
4277 * lib/loop_unicode.h (unicode_transliterate): If the transliteration
4278 fails due to limited output encoding, return RET_ILUNI, not
4279 RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4280 * tests/check-translitfailure: New file.
4281 * tests/TranslitFail1.ISO-8859-1: New file.
4282 * tests/Makefile.in (check): Call check-translitfailure.
4284 2001-12-15 Bruno Haible <bruno@clisp.org>
4286 * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
4287 Shift_JIS characters 0x5C and 0x7E.
4288 * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
4290 2001-12-05 Bruno Haible <bruno@clisp.org>
4292 * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
4293 endless loop if locale_charset() returns the empty string.
4294 * README, man/iconv_open.3: Add the empty encoding name.
4296 2001-11-10 Bruno Haible <haible@clisp.cons.org>
4298 * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
4301 2001-10-23 Bruno Haible <haible@clisp.cons.org>
4303 * tools/Makefile (cp1125.h): New target.
4305 * lib/cp1125.h: New file.
4306 * lib/converters.h: Include it.
4307 * lib/encodings_dos.def (CP1125): New encoding.
4309 2001-09-08 Bruno Haible <haible@clisp.cons.org>
4311 * autoconf/eilseq.m4: New file.
4312 * Makefile.devel (OTHERMACROS): Add it.
4313 * configure.in: Call AC_EILSEQ.
4314 * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
4316 2001-08-25 Bruno Haible <haible@clisp.cons.org>
4318 Upgrade to autoconf-2.52.
4319 * autoconf/autoconf: Upgrade to autoconf-2.52.
4320 * autoconf/acgeneral.m4: Remove file.
4321 * autoconf/acspecific.m4: Remove file.
4322 * autoconf/autoconf.m4f: New file, from autoconf-2.52.
4323 * autoconf/aclocal.m4: Require autoconf-2.52.
4324 (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
4325 AC_CANONICAL_HOST does it itself. Add $SHELL in front of
4326 $ac_config_guess and $ac_config_sub.
4327 * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
4329 (configure): Use autoconf options -A, -l instead of -m.
4330 * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
4332 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4334 * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
4335 (AC_LANG_EXTERN): Move to aclocal.m4.
4336 * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
4337 (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
4338 (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
4340 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4342 Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
4343 * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
4345 * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
4346 between sources and libs.
4347 (libiconv_plug_solaris.so) [GCC]: Likewise.
4348 (libiconv_plug_osf.so) [GCC]: Likewise.
4349 * src/Makefile.in (iconv.@OBJEXT@): New rule.
4350 (iconv): Depend on it.
4351 (clean): Erase *.@OBJEXT@, not *.o.
4352 * tests/Makefile.in (table-from.@OBJEXT@): New rule.
4353 (table-from): Depend on it.
4354 (table-to.@OBJEXT@): New rule.
4355 (table-to): Depend on it.
4356 (clean): Erase *.@OBJEXT@, not *.o.
4358 2001-07-28 Bruno Haible <haible@clisp.cons.org>
4360 * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
4361 * lib/iso8859_16.h: Regenerated.
4362 * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
4364 2001-07-17 Bruno Haible <haible@clisp.cons.org>
4366 * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
4368 2001-07-03 Bruno Haible <haible@clisp.cons.org>
4370 * configure.in: Also check for mbsinit.
4371 * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
4372 Needed for SCO 3.2v5.0.2.
4374 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4376 * Version 1.7 released.
4378 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4380 * INSTALL.generic (Particular Systems): Generalize section about
4381 /usr/local to "most systems".
4383 * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
4384 Solaris cc destroys iconv.o and iconv.lo while building
4385 libiconv_plug_solaris.so.
4386 (clean): Remove so_locations, left there by the OSF/1 linker.
4388 * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
4390 * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
4393 * tests/table-from.c: Include string.h.
4394 * tests/table-to.c: Likewise.
4396 2001-06-26 Bruno Haible <haible@clisp.cons.org>
4398 * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
4399 (jisx0212.h): Replace U+007E with U+FF5E.
4400 * lib/jisx0208.h: Regenerated.
4401 * lib/jisx0212.h: Regenerated.
4402 * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
4403 * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
4404 * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
4405 * tests/CP932.TXT: Likewise.
4406 * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
4408 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4410 * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
4412 * src/Makefile.msvc (iconv.exe): Likewise.
4413 * src/Makefile.os2 (iconv.exe): Likewise.
4414 * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
4415 (libiconv_plug_solaris.so): Likewise.
4416 (libiconv_plug_osf.so): Likewise.
4417 (iconv.lo): Likewise.
4418 * lib/Makefile.msvc (iconv.obj): Likewise.
4419 * lib/Makefile.os2 (iconv.obj): Likewise.
4420 * tests/Makefile.in (table-from, table-to): Likewise.
4421 * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
4422 * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
4423 (genutf8.exe): Don't use $(INCLUDES).
4425 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4427 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4428 Bump version number.
4429 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
4431 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4433 * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
4435 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4437 * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
4439 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4441 * autoconf/ltmain.sh: Upgrade to libtool-1.4.
4442 * autoconf/ltconfig: Remove file.
4444 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4446 * autoconf/config.guess: Update to GNU version 2001-05-11.
4447 * autoconf/config.sub: Likewise.
4449 2001-06-03 Bruno Haible <haible@clisp.cons.org>
4451 * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
4452 characters if they cannot be converted.
4453 (unicode_loop_reset): Likewise.
4454 * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
4455 STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
4456 STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
4458 (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
4460 (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
4461 If "ja", prefer conversion to Japanese character sets. If "zh",
4462 prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
4464 * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
4465 (RET_TOOSMALL): Change value from -1 to -2.
4466 * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
4467 return 0 written bytes.
4469 2001-06-06 Bruno Haible <haible@clisp.cons.org>
4471 * lib/encodings.def: Align with IANA character-set registry.
4472 (US-ASCII): Add alias "ANSI_X3.4-1986".
4473 (ISO-8859-14): Add alias "ISO-CELTIC".
4474 (JIS_X0208): Add alias "JIS_C6226-1983".
4475 (BIG5HKSCS): Add alias "BIG5-HKSCS".
4476 * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
4477 * tests/Makefile.in (check): Likewise.
4478 * tests/Makefile.os2 (check): Likewise.
4479 * tests/Makefile.msvc (check): Likewise.
4480 * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
4481 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
4482 BIG5HKSCS.IRREVERSIBLE.TXT.
4484 2001-06-02 Bruno Haible <haible@clisp.cons.org>
4486 * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
4487 (is_charset2uni_large, compact_large_charset2uni): New functions.
4488 (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
4489 (output_charset2uni): If mapping to more than the Unicode BMP,
4490 use an extra indirection to keep each value in 16 bits.
4491 (invert): Bump limit from U+10000 to U+30000.
4492 (output_uni2charset_dense): Likewise.
4493 (output_uni2charset_sparse): Likewise. If mapping to more than one
4494 CJK plane, use three bytes per value instead of two bytes.
4495 (byte_row_cns11643): Allow more than 3 CJK planes.
4496 (do_cns11643_only_uni2charset): Increase number of rows, to include
4497 plane 15. Remove plane bits hack.
4498 (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
4499 * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
4500 cns11643_6.h, cns11643_7.h, cns11643_15.h.
4501 (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
4503 (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4504 cns11643_7.h, cns11643_15.h): New rules.
4505 (cns11643_inv.h): Change title.
4506 * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
4507 * lib/cns11643_3.h: Likewise.
4508 * lib/cns11643_4a.h: New file.
4509 * lib/cns11643_4b.h: New file.
4510 * lib/cns11643_4.h: New file.
4511 * lib/cns11643_5.h: New file.
4512 * lib/cns11643_6.h: New file.
4513 * lib/cns11643_7.h: New file.
4514 * lib/cns11643_15.h: New file.
4515 * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
4516 (cns11643_inv_wctomb): Return 3 bytes now.
4517 * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
4518 cns11643_7.h, cns11643_15.h.
4519 (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
4520 plane number starting at 1, not 0.
4521 * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
4523 * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
4525 (euc_tw_wctomb): Update for cns11643_wctomb change.
4526 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4527 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
4529 (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
4530 Try CNS11643 planes 4,5,6,7 as well.
4531 * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
4532 * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
4535 2001-06-01 Bruno Haible <haible@clisp.cons.org>
4537 * tests/table-from.c (bmp_only): New variable.
4538 (ucs4_decode): If bmp_only, don't return characters outside Unicode
4540 (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
4541 a conversion line if ucs4_decode returns NULL.
4542 * tests/table-to.c (main): When testing encodings other than UTF-8 and
4543 GB18030, loop upto U+30000 instead of U+10000.
4545 2001-05-24 Bruno Haible <haible@clisp.cons.org>
4547 * lib/converters.h (mbtowc_funcs): Add flushwc member function.
4548 * lib/flushwc.h: New file.
4549 * lib/cp1255.h: Include flushwc.h.
4550 (cp1255_comp_table_data, cp1255_comp_table): New arrays.
4551 (cp1255_mbtowc): Compose base and combining characters.
4552 (cp1255_flushwc): New macro.
4553 * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
4554 * lib/cp1258.h: Include flushwc.h.
4555 (cp1258_mbtowc): Compose base and combining characters.
4556 (cp1258_flushwc): New macro.
4557 * lib/tcvn.h: Include flushwc.h.
4558 (tcvn_mbtowc): Compose base and combining characters.
4559 (tcvn_flushwc): New macro.
4560 * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
4561 from unicode_loop_convert.
4562 (unicode_loop_convert): Use unicode_transliterate.
4563 (unicode_loop_reset): Call xxx_flushwc and output the resulting
4565 * lib/encodings.def: Add xxx_flushwc member.
4566 * lib/encodings_aix.def: Likewise.
4567 * lib/encodings_dos.def: Likewise.
4568 * lib/encodings_local.def: Likewise.
4569 * lib/encodings_osf1.def: Likewise.
4570 * lib/genaliases.c: Add an argument to the DEFENCODING macro.
4571 * lib/genaliases2.c: Likewise.
4572 * lib/genflags.c: Likewise.
4573 * lib/iconv.c: Likewise.
4574 * tests/table-from.c (try): Reset the iconv descriptor before the main
4575 call, and flush it afterwards.
4576 (ucs4_decode): New function.
4577 (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
4578 * tests/CP1255-snippet: New file.
4579 * tests/CP1255-snippet.UTF-8: New file.
4580 * tests/CP1258-snippet: New file.
4581 * tests/CP1258-snippet.UTF-8: New file.
4582 * tests/TCVN-snippet: New file.
4583 * tests/TCVN-snippet.UTF-8: New file.
4584 * tests/Makefile.in (check): Check combining behaviour of CP1255,
4586 * tests/Makefile.msvc (check): Likewise.
4587 * tests/Makefile.os2 (check): Likewise.
4589 2001-05-22 Bruno Haible <haible@clisp.cons.org>
4591 * lib/converters.h (RET_ILUNI): New macro.
4592 (RET_ILSEQ): Change value to -1.
4593 (RET_TOOFEW): Change value.
4594 * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
4595 of 0. Update handling of xxx_mbtowc return value.
4596 * lib/genflags.c (emit_encoding): Likewise.
4597 * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
4598 * lib/armscii_8.h (armscii_8_wctomb): Likewise.
4599 * lib/big5.h (big5_wctomb): Likewise.
4600 * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
4601 * lib/ces_big5.h (ces_big5_wctomb): Likewise.
4602 * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
4603 * lib/cns11643.h (cns11643_wctomb): Likewise.
4604 * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
4605 * lib/cp437.h (cp437_wctomb): Likewise.
4606 * lib/cp775.h (cp775_wctomb): Likewise.
4607 * lib/cp850.h (cp850_wctomb): Likewise.
4608 * lib/cp852.h (cp852_wctomb): Likewise.
4609 * lib/cp855.h (cp855_wctomb): Likewise.
4610 * lib/cp856.h (cp856_wctomb): Likewise.
4611 * lib/cp857.h (cp857_wctomb): Likewise.
4612 * lib/cp861.h (cp861_wctomb): Likewise.
4613 * lib/cp862.h (cp862_wctomb): Likewise.
4614 * lib/cp864.h (cp864_wctomb): Likewise.
4615 * lib/cp865.h (cp865_wctomb): Likewise.
4616 * lib/cp866.h (cp866_wctomb): Likewise.
4617 * lib/cp869.h (cp869_wctomb): Likewise.
4618 * lib/cp874.h (cp874_wctomb): Likewise.
4619 * lib/cp922.h (cp922_wctomb): Likewise.
4620 * lib/cp932ext.h (cp932ext_wctomb): Likewise.
4621 * lib/cp932.h (cp932_wctomb): Likewise.
4622 * lib/cp936ext.h (cp936ext_wctomb): Likewise.
4623 * lib/cp949.h (cp949_wctomb): Likewise.
4624 * lib/cp950ext.h (cp950ext_wctomb): Likewise.
4625 * lib/cp950.h (cp950_wctomb): Likewise.
4626 * lib/cp1046.h (cp1046_wctomb): Likewise.
4627 * lib/cp1124.h (cp1124_wctomb): Likewise.
4628 * lib/cp1129.h (cp1129_wctomb): Likewise.
4629 * lib/cp1133.h (cp1133_wctomb): Likewise.
4630 * lib/cp1250.h (cp1250_wctomb): Likewise.
4631 * lib/cp1251.h (cp1251_wctomb): Likewise.
4632 * lib/cp1252.h (cp1252_wctomb): Likewise.
4633 * lib/cp1253.h (cp1253_wctomb): Likewise.
4634 * lib/cp1254.h (cp1254_wctomb): Likewise.
4635 * lib/cp1255.h (cp1255_wctomb): Likewise.
4636 * lib/cp1256.h (cp1256_wctomb): Likewise.
4637 * lib/cp1257.h (cp1257_wctomb): Likewise.
4638 * lib/cp1258.h (cp1258_wctomb): Likewise.
4639 * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
4640 * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
4641 * lib/euc_cn.h (euc_cn_wctomb): Likewise.
4642 * lib/euc_jp.h (euc_jp_wctomb): Likewise.
4643 * lib/euc_kr.h (euc_kr_wctomb): Likewise.
4644 * lib/euc_tw.h (euc_tw_wctomb): Likewise.
4645 * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
4646 * lib/gb12345.h (gb12345_wctomb): Likewise.
4647 * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
4648 * lib/gb18030.h (gb18030_wctomb): Likewise.
4649 * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
4650 * lib/gb2312.h (gb2312_wctomb): Likewise.
4651 * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
4652 * lib/gbk.h (gbk_wctomb): Likewise.
4653 * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
4654 * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
4655 * lib/hkscs.h (hkscs_wctomb): Likewise.
4656 * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
4657 * lib/hz.h (hz_wctomb): Likewise.
4658 * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
4659 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4660 * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
4661 * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
4662 * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
4663 * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4664 * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
4665 * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
4666 * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
4667 * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
4668 * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
4669 * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
4670 * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
4671 * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
4672 * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
4673 * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
4674 * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
4675 * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
4676 * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
4677 * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
4678 * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
4679 * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
4680 * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
4681 * lib/isoir165.h (isoir165_wctomb): Likewise.
4682 * lib/jisx0201.h (jisx0201_wctomb): Likewise.
4683 * lib/jisx0208.h (jisx0208_wctomb): Likewise.
4684 * lib/jisx0212.h (jisx0212_wctomb): Likewise.
4685 * lib/johab.h (johab_wctomb): Likewise.
4686 * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
4688 * lib/koi8_r.h (koi8_r_wctomb): Likewise.
4689 * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
4690 * lib/koi8_u.h (koi8_u_wctomb): Likewise.
4691 * lib/ksc5601.h (ksc5601_wctomb): Likewise.
4692 * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
4693 * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
4694 * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
4695 * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
4696 * lib/mac_greek.h (mac_greek_wctomb): Likewise.
4697 * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
4698 * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
4699 * lib/mac_roman.h (mac_roman_wctomb): Likewise.
4700 * lib/mac_romania.h (mac_romania_wctomb): Likewise.
4701 * lib/mac_thai.h (mac_thai_wctomb): Likewise.
4702 * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
4703 * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
4704 * lib/mulelao.h (mulelao_wctomb): Likewise.
4705 * lib/nextstep.h (nextstep_wctomb): Likewise.
4706 * lib/sjis.h (sjis_wctomb): Likewise.
4707 * lib/tcvn.h (tcvn_wctomb): Likewise.
4708 * lib/tis620.h (tis620_wctomb): Likewise.
4709 * lib/ucs2be.h (ucs2be_wctomb): Likewise.
4710 * lib/ucs2.h (ucs2_wctomb): Likewise.
4711 * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
4712 * lib/ucs2le.h (ucs2le_wctomb): Likewise.
4713 * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
4714 * lib/ucs4.h (ucs4_wctomb): Likewise.
4715 * lib/uhc_1.h (uhc_1_wctomb): Likewise.
4716 * lib/uhc_2.h (uhc_2_wctomb): Likewise.
4717 * lib/utf16be.h (utf16be_wctomb): Likewise.
4718 * lib/utf16.h (utf16_wctomb): Likewise.
4719 * lib/utf16le.h (utf16le_wctomb): Likewise.
4720 * lib/utf32be.h (utf32be_wctomb): Likewise.
4721 * lib/utf32.h (utf32_wctomb): Likewise.
4722 * lib/utf32le.h (utf32le_wctomb): Likewise.
4723 * lib/utf7.h (utf7_wctomb): Likewise.
4724 * lib/utf8.h (utf8_wctomb): Likewise.
4725 * lib/viscii.h (viscii_wctomb): Likewise.
4726 * tools/8bit_tab_to_h.c (main): Likewise.
4727 * tools/cjk_tab_to_h.c (output_uni2charset_dense,
4728 output_uni2charset_sparse, do_gb18030uni): Likewise.
4730 2001-05-19 Bruno Haible <haible@clisp.cons.org>
4732 * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
4733 (man/%.html): New rule.
4734 * man/Makefile.in (docdir, htmldir): New variables.
4735 (install, installdirs): Install the HTML formatted man pages in
4737 (uninstall): Uninstall them.
4739 2001-05-20 Bruno Haible <haible@clisp.cons.org>
4741 * lib/cp1255.h (cp1255_decomp_table): New array.
4742 (cp1255_comb_table): New array.
4743 (cp1255_wctomb): Decompose Unicode characters.
4744 * tests/CP1255.IRREVERSIBLE.TXT: New file.
4746 2001-05-13 Bruno Haible <haible@clisp.cons.org>
4748 * lib/vietcomb.h: New file.
4749 * lib/cp1258.h: Include it.
4750 (cp1258_comb_table): New array.
4751 (cp1258_wctomb): Decompose Unicode characters.
4752 * lib/tcvn.h: Include it.
4753 (tcvn_comb_table): New array.
4754 (tcvn_wctomb): Decompose Unicode characters.
4755 * tests/CP1258.IRREVERSIBLE.TXT: New file.
4756 * tests/TCVN.IRREVERSIBLE.TXT: New file.
4758 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4760 * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
4761 (iconv.lib): Likewise.
4763 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4765 * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4766 (CPP): Remove variable.
4767 (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
4768 libiconv_plug_osf.so): Use LDFLAGS.
4769 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4770 libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
4771 * lib/Makefile.msvc (CPP): Remove variable.
4772 * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4773 (CPP): Remove variable.
4774 (iconv): Use CPPFLAGS and LDFLAGS.
4775 * src/Makefile.msvc (CPP): Remove variable.
4776 * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4777 (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
4778 * tests/Makefile.msvc (CPP): Remove variable.
4780 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4782 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
4783 gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
4785 2001-04-11 Bruno Haible <haible@clisp.cons.org>
4787 Implement and document UTF-32, UTF-32BE, UTF-32LE.
4788 * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
4789 * src/converters.h: Include them.
4790 * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
4791 * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
4792 * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
4793 * tests/Makefile.os2 (check): Likewise.
4794 * tests/Makefile.msvc (check): Likewise.
4795 * tests/UTF-32*snippet*: New files.
4797 * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
4798 (ucs4_wctomb): Allow any 31-bit codepoint.
4800 2001-04-11 Bruno Haible <haible@clisp.cons.org>
4802 * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
4803 unassigned code points.
4804 * tests/table-from.c (main); When dumping GB18030, don't print code
4805 points larger than U+FFFF.
4807 2001-03-30 Bruno Haible <haible@clisp.cons.org>
4809 * tools/Makefile (GB18030uni.TXT): Use a table source which includes
4810 the unassigned Unicode code points.
4811 * lib/gb18030uni.h: Update.
4812 (gb18030uni_ranges): Remove bitmap_offset field.
4813 (gb18030uni_bitmap): Remove array.
4814 (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
4815 (gb18030uni_wctomb): Likewise.
4816 * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
4817 (gb18030_wctomb): Likewise.
4819 2001-03-21 Bruno Haible <haible@clisp.cons.org>
4821 * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
4823 2001-03-21 Bruno Haible <haible@clisp.cons.org>
4825 * src/iconv.c (print_version): Now called GNU libiconv.
4827 2001-03-20 Bruno Haible <haible@clisp.cons.org>
4829 * README: This package is now called GNU libiconv.
4831 * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
4833 * tools/cjk_tab_to_h.c (output_title): Likewise.
4834 * tools/cjk_variants.c (main): Likewise.
4835 * lib/gentranslit.c (main): Likewise.
4837 2001-03-19 Bruno Haible <haible@clisp.cons.org>
4839 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
4840 ac_config_guess and ac_config_sub. Then ignore requests for
4841 AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
4843 2001-03-10 Bruno Haible <haible@clisp.cons.org>
4845 * INSTALL.generic: New section "Particular Systems".
4847 2001-03-10 Bruno Haible <haible@clisp.cons.org>
4849 * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
4850 platforms like BeOS.
4852 * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
4855 2001-03-06 Bruno Haible <haible@clisp.cons.org>
4857 * Version 1.6 released.
4858 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4859 Bump version number.
4860 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
4862 2001-03-05 Bruno Haible <haible@clisp.cons.org>
4864 Provide all encodings used by OSF/1 5.1 locales.
4865 * lib/dec_kanji.h: New file.
4866 * lib/dec_hanyu.h: New file.
4867 * lib/converters.h: Include them if USE_OSF1 is defined.
4868 * lib/encodings_osf1.def: New file.
4869 * lib/genflags.c (main): Include it. Define USE_OSF1.
4870 * lib/genaliases2.c (main): Include it conditionally.
4871 * lib/iconv.c: Define USE_OSF1 on OSF/1.
4872 Include encodings_osf1.def and aliases_osf1.h.
4873 * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
4875 * Makefile.devel (lib/aliases_osf1.h): New target.
4876 (all): Depend on lib/aliases_osf1.h.
4877 (lib/flags.h): Depend on lib/encodings_osf1.def.
4879 2001-03-01 Bruno Haible <haible@clisp.cons.org>
4881 * tools/Makefile (cp775.h): New target.
4883 * lib/cp775.h: New file.
4884 * lib/converters.h: Include it.
4885 * lib/encodings_dos.def (CP775): New encoding.
4887 2001-02-25 Bruno Haible <haible@clisp.cons.org>
4889 * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
4892 2001-02-24 Bruno Haible <haible@clisp.cons.org>
4894 * src/iconv.c (convert): Use ICONV_CONST.
4895 * tests/table-from.c: Include config.h.
4896 (try): Use ICONV_CONST.
4897 * tests/table-to.c: Include config.h.
4898 (main): Use ICONV_CONST.
4899 * tests/Makefile.in (INCLUDES): Add -I../lib.
4900 * tests/Makefile.os2 (INCLUDES): Likewise.
4901 * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
4903 2001-02-24 Bruno Haible <haible@clisp.cons.org>
4905 Provide all encodings used by DOS locales.
4906 * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
4907 cp864.h, cp865.h, cp869.h): New targets.
4909 * lib/cp437.h: New file.
4910 * lib/cp852.h: New file.
4911 * lib/cp855.h: New file.
4912 * lib/cp857.h: New file.
4913 * lib/cp861.h: New file.
4914 * lib/cp864.h: New file.
4915 * lib/cp865.h: New file.
4916 * lib/cp869.h: New file.
4917 * lib/converters.h: Include them if USE_DOS is defined.
4918 * lib/encodings_dos.def: New file.
4919 * lib/genflags.c (main): Include it. Define USE_DOS.
4920 * lib/genaliases2.c (main): Include it conditionally.
4921 * lib/iconv.c: Define USE_DOS on DJGPP.
4922 Include encodings_dos.def and aliases_dos.h.
4923 * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
4925 * Makefile.devel (lib/aliases_dos.h): New target.
4926 (all): Depend on lib/aliases_dos.h.
4927 (lib/flags.h): Depend on lib/encodings_dos.def.
4929 2001-02-23 Bruno Haible <haible@clisp.cons.org>
4931 * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
4932 (SET_BINARY) [O_BINARY]: New macro.
4933 (usage): Mention --binary if available.
4934 (convert): Use SET_BINARY instead of setmode.
4936 Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
4938 2001-02-25 Bruno Haible <haible@clisp.cons.org>
4940 * autoconf/ltconfig:
4941 sed -e 's/reload object files/produce relocatable object files/'.
4943 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4945 * src/iconv.c (usage, main): Make -f and -t options optional.
4946 * man/iconv.1: Mark them as optional.
4948 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4950 * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
4952 * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
4953 0xFE5E -> U+2E97. Shift the entire four-byte range.
4954 * tests/GB18030.TXT: Regenerated.
4956 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4958 Better support for DOS/Windows platforms.
4959 * autoconf/ltconfig: Upgrade to libtool-1.3.5.
4960 * autoconf/ltmain.sh: Likewise.
4961 * autoconf/aclocal.m4: Likewise.
4962 * autoconf/install-sh: New file.
4963 * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
4965 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4967 * Makefile.in (libdir, includedir, mandir): Use the autoconf
4968 determined value, in order to respect the configure arguments.
4969 * lib/Makefile.in (libdir): Likewise.
4970 * src/Makefile.in (bindir): Likewise.
4971 * man/Makefile.in (mandir): Likewise.
4973 2001-02-04 Bruno Haible <haible@clisp.cons.org>
4975 * lib/translit.def: Add all the neutral transliterations from glibc.
4976 * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
4977 UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
4978 Avoid accessing data[-1].
4979 * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
4982 2001-01-05 Bruno Haible <haible@clisp.cons.org>
4984 Implement and document CP862.
4985 * tools/Makefile (ALL): Add cp862.h.
4986 (cp862.h): New target.
4987 * lib/cp862.h: New file.
4988 * lib/converters.h: Include it.
4989 * lib/encodings.def (CP862): New encoding.
4990 * README, man/iconv_open.3: Add CP862.
4991 * tests/Makefile.in (check): Check CP862.
4992 * tests/Makefile.msvc (check): Likewise.
4993 * tests/Makefile.os2 (check): Likewise.
4994 * tests/CP862.TXT: New file.
4996 2000-12-18 Bruno Haible <haible@clisp.cons.org>
4998 * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
4999 * Makefile.devel (OTHERMACROS): Add it.
5000 * configure.in: Call AC_MBSTATE_T.
5001 * lib/config.h.in (mbstate_t): New definition.
5002 * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
5004 2000-12-12 Bruno Haible <haible@clisp.cons.org>
5006 * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
5007 "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
5008 given. Reported by Toshimitsu Fujiwara.
5010 2000-12-08 Bruno Haible <haible@clisp.cons.org>
5012 * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
5013 * lib/Makefile.in (exec_prefix): Likewise.
5014 * src/Makefile.in (exec_prefix): Likewise.
5015 * man/Makefile.in (exec_prefix): Likewise.
5017 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5019 * Version 1.5 released.
5020 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5021 Bump version number.
5022 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
5024 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5026 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
5027 Remove files installed in lib by libcharset.
5028 * Makefile.msvc (mostlyclean): Likewise.
5030 * Makefile.in (check): Depend on target 'all'.
5031 * Makefile.os2 (check): Likewise.
5032 * Makefile.msvc (check): Depend on target 'force' as well.
5034 * src/iconv.c (usage): Take an exitcode argument.
5035 (print_version): New function.
5036 (main): Recognize --help and --version command line options.
5038 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5040 * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
5041 * lib/Makefile.msvc: Likewise.
5042 * src/Makefile.msvc: Likewise.
5043 * tests/Makefile.msvc: Likewise.
5045 2000-12-01 Bruno Haible <haible@clisp.cons.org>
5047 * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
5048 (force_binary): New variable.
5049 (convert): If requested, set the input O_BINARY.
5050 (main): Accept --binary option. If requested, set the output O_BINARY.
5051 * tests/check-stateful.bat: Pass --binary to iconv.
5052 * tests/check-stateful.cmd: Likewise.
5053 * tests/check-translit.bat: Likewise.
5054 * tests/check-translit.cmd: Likewise.
5056 2000-12-01 Bruno Haible <haible@clisp.cons.org>
5058 * include/iconv.h.in (_libiconv_version): New declaration.
5059 * lib/iconv.c (_libiconv_version): New variable.
5061 2000-11-30 Bruno Haible <haible@clisp.cons.org>
5063 * Makefile.msvc (all): File now named lib/libcharset.h.
5064 (clean, distclean, maintainer-clean): Likewise.
5066 2000-11-23 Bruno Haible <haible@clisp.cons.org>
5068 * lib/*: Move here all files from src/*.
5069 * src/*: Move all files to lib.
5070 * lib/Makefile.in (distclean): No need to remove config.status,
5071 config.log, config.cache.
5072 * configure.in: Require lib/iconv.c, not src/iconv.c. Create
5073 lib/config.h, not src/config.h. Also create lib/Makefile.
5074 * Makefile.in (all): Install libcharset into lib, not src. Recurse
5076 (install-lib): Recurse into lib, not src.
5077 (install): Recurse into libcharset, lib and src.
5078 (installdirs, uninstall): Likewise.
5079 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5080 * Makefile.msvc (all): Recurse into lib and src.
5081 (install): Recurse into libcharset, lib and src.
5082 (installdirs, uninstall): Likewise.
5083 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5084 * Makefile.os2 (all): Recurse into lib and src.
5085 (install-lib): Recurse into lib, not src.
5086 (install, uninstall): Recurse into lib and src.
5087 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5088 * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
5089 (lib/aliases.h): Renamed from src/aliases.h.
5090 (lib/aliases.gperf): Renamed from src/aliases.gperf.
5091 (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
5092 (lib/flags.h): Renamed from src/flags.h.
5093 (lib/translit.h): Renamed from src/translit.h.
5094 * src/iconv.c: Moved here from tests/iconv.c.
5095 * src/Makefile.in: New file.
5096 * src/Makefile.msvc: New file.
5097 * src/Makefile.os2: New file.
5098 * tests/Makefile.in (iconv): Remove target.
5099 (../lib/libiconv.la): Renamed from ../src/libiconv.la.
5100 (clean): No need to remove iconv.
5101 * tests/Makefile.msvc (iconv.exe): Remove target.
5102 * tests/Makefile.os2 (iconv.exe): Likewise.
5103 * tests/check-stateful: iconv is in ../src.
5104 * tests/check-stateful.bat: Likewise.
5105 * tests/check-stateful.cmd: Likewise.
5106 * tests/check-translit: iconv is in ../src.
5107 * tests/check-translit.bat: Likewise.
5108 * tests/check-translit.cmd: Likewise.
5109 * man/iconv.1: New file.
5110 * man/Makefile.in (install, installdirs, uninstall): Also install *.1
5112 * man/Makefile.os2 (MAN3): Renamed from MAN.
5113 (MAN1): New variable.
5114 (install, uninstall): Also install *.1 man pages.
5116 2000-11-21 Bruno Haible <haible@clisp.cons.org>
5118 * Makefile.msvc (all, check, mostlyclean, clean, distclean,
5119 maintainer-clean): Recurse into libcharset.
5120 (clean, distclean, maintainer-clean): Remove src\libcharset.h.
5121 * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
5122 (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
5124 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5126 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
5127 so that it agrees with Microsoft's definition of CP950.
5128 * tests/CP950.TXT: Likewise.
5129 * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
5131 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5133 Add support for locale dependent "char" and "wchar_t" encodings.
5134 * libcharset: New subdirectory.
5135 * src/loop_unicode.h: New file, extracted from src/iconv.c.
5136 * src/loop_wchar.h: New file.
5137 * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
5138 * src/encodings_local.def: New file.
5139 * src/genaliases.c: Also create aliases for encodings_local.def.
5140 * src/converters.h (conv_struct): Add lfuncs field.
5141 * src/genflags.c: Add dummy definitions of struct loop_funcs.
5142 * src/iconv.c: Include libcharset.h.
5143 (loop_funcs): New structure.
5144 Treat encodings_local.def like encodings.def.
5146 (iconv_open): Move the bulk of the code to loop_unicode.h.
5148 (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
5150 * src/Makefile.in (PLUG_SOURCES): Remove variable.
5151 (LIBCHARSET_OBJECTS): New variable.
5152 (libiconv.la): Link in the LIBCHARSET_OBJECTS.
5153 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
5154 libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
5156 (iconv.lo): Depend on encodings_local.def.
5157 * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
5158 * src/Makefile.os2 (iconv.obj): Likewise.
5159 * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
5160 Recurse into libcharset.
5161 * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
5162 HAVE_SETLOCALE): New macros.
5163 * tests/iconv.c: Include config.h and locale.h.
5164 (main): Call setlocale.
5165 * tests/Makefile.in (iconv): Search for config.h in ../src.
5166 * tests/Makefile.os2 (iconv.exe): Likewise.
5167 * tests/Makefile.msvc (iconv.exe): Likewise.
5168 * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
5169 * Makefile.in: After "cd", use "&&" not ";".
5170 (all, check, mostlyclean, clean, distclean, maintainer-clean):
5171 Recurse into libcharset.
5172 * Makefile.devel (all): Recurse into libcharset.
5173 (src/aliases.gperf): Depend on src/encodings_local.def.
5175 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5177 * src/converters.h (ucs4_t): New type.
5178 (wchar_t): Remove locally defined override.
5179 (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
5180 * src/iconv.c (iconv): Likewise.
5181 * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
5182 * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
5183 * tools/cjk_tab_to_h.c: Likewise.
5184 * src/armscii_8.h: Use ucs4_t instead of wchar_t.
5185 * src/ascii.h: Likewise.
5186 * src/big5.h: Likewise.
5187 * src/big5hkscs.h: Likewise.
5188 * src/ces_big5.h: Likewise.
5189 * src/ces_gbk.h: Likewise.
5190 * src/cns11643.h: Likewise.
5191 * src/cns11643_1.h: Likewise.
5192 * src/cns11643_2.h: Likewise.
5193 * src/cns11643_3.h: Likewise.
5194 * src/cns11643_inv.h: Likewise.
5195 * src/cp1046.h: Likewise.
5196 * src/cp1124.h: Likewise.
5197 * src/cp1129.h: Likewise.
5198 * src/cp1133.h: Likewise.
5199 * src/cp1250.h: Likewise.
5200 * src/cp1251.h: Likewise.
5201 * src/cp1252.h: Likewise.
5202 * src/cp1253.h: Likewise.
5203 * src/cp1254.h: Likewise.
5204 * src/cp1255.h: Likewise.
5205 * src/cp1256.h: Likewise.
5206 * src/cp1257.h: Likewise.
5207 * src/cp1258.h: Likewise.
5208 * src/cp850.h: Likewise.
5209 * src/cp856.h: Likewise.
5210 * src/cp866.h: Likewise.
5211 * src/cp874.h: Likewise.
5212 * src/cp922.h: Likewise.
5213 * src/cp932.h: Likewise.
5214 * src/cp932ext.h: Likewise.
5215 * src/cp936ext.h: Likewise.
5216 * src/cp949.h: Likewise.
5217 * src/cp950.h: Likewise.
5218 * src/cp950ext.h: Likewise.
5219 * src/euc_cn.h: Likewise.
5220 * src/euc_jp.h: Likewise.
5221 * src/euc_kr.h: Likewise.
5222 * src/euc_tw.h: Likewise.
5223 * src/gb12345.h: Likewise.
5224 * src/gb12345ext.h: Likewise.
5225 * src/gb18030.h: Likewise.
5226 * src/gb18030ext.h: Likewise.
5227 * src/gb18030uni.h: Likewise.
5228 * src/gb2312.h: Likewise.
5229 * src/gbk.h: Likewise.
5230 * src/gbkext1.h: Likewise.
5231 * src/gbkext2.h: Likewise.
5232 * src/gbkext_inv.h: Likewise.
5233 * src/georgian_academy.h: Likewise.
5234 * src/georgian_ps.h: Likewise.
5235 * src/hkscs.h: Likewise.
5236 * src/hp_roman8.h: Likewise.
5237 * src/hz.h: Likewise.
5238 * src/iso2022_cn.h: Likewise.
5239 * src/iso2022_cnext.h: Likewise.
5240 * src/iso2022_jp.h: Likewise.
5241 * src/iso2022_jp1.h: Likewise.
5242 * src/iso2022_jp2.h: Likewise.
5243 * src/iso2022_kr.h: Likewise.
5244 * src/iso646_cn.h: Likewise.
5245 * src/iso646_jp.h: Likewise.
5246 * src/iso8859_1.h: Likewise.
5247 * src/iso8859_10.h: Likewise.
5248 * src/iso8859_13.h: Likewise.
5249 * src/iso8859_14.h: Likewise.
5250 * src/iso8859_15.h: Likewise.
5251 * src/iso8859_16.h: Likewise.
5252 * src/iso8859_2.h: Likewise.
5253 * src/iso8859_3.h: Likewise.
5254 * src/iso8859_4.h: Likewise.
5255 * src/iso8859_5.h: Likewise.
5256 * src/iso8859_6.h: Likewise.
5257 * src/iso8859_7.h: Likewise.
5258 * src/iso8859_8.h: Likewise.
5259 * src/iso8859_9.h: Likewise.
5260 * src/isoir165.h: Likewise.
5261 * src/isoir165ext.h: Likewise.
5262 * src/java.h: Likewise.
5263 * src/jisx0201.h: Likewise.
5264 * src/jisx0208.h: Likewise.
5265 * src/jisx0212.h: Likewise.
5266 * src/johab.h: Likewise.
5267 * src/johab_hangul.h: Likewise.
5268 * src/koi8_r.h: Likewise.
5269 * src/koi8_ru.h: Likewise.
5270 * src/koi8_u.h: Likewise.
5271 * src/ksc5601.h: Likewise.
5272 * src/mac_arabic.h: Likewise.
5273 * src/mac_centraleurope.h: Likewise.
5274 * src/mac_croatian.h: Likewise.
5275 * src/mac_cyrillic.h: Likewise.
5276 * src/mac_greek.h: Likewise.
5277 * src/mac_hebrew.h: Likewise.
5278 * src/mac_iceland.h: Likewise.
5279 * src/mac_roman.h: Likewise.
5280 * src/mac_romania.h: Likewise.
5281 * src/mac_thai.h: Likewise.
5282 * src/mac_turkish.h: Likewise.
5283 * src/mac_ukraine.h: Likewise.
5284 * src/mulelao.h: Likewise.
5285 * src/nextstep.h: Likewise.
5286 * src/sjis.h: Likewise.
5287 * src/tcvn.h: Likewise.
5288 * src/tis620.h: Likewise.
5289 * src/ucs2.h: Likewise.
5290 * src/ucs2be.h: Likewise.
5291 * src/ucs2internal.h: Likewise.
5292 * src/ucs2le.h: Likewise.
5293 * src/ucs2swapped.h: Likewise.
5294 * src/ucs4.h: Likewise.
5295 * src/ucs4be.h: Likewise.
5296 * src/ucs4internal.h: Likewise.
5297 * src/ucs4le.h: Likewise.
5298 * src/ucs4swapped.h: Likewise.
5299 * src/uhc_1.h: Likewise.
5300 * src/uhc_2.h: Likewise.
5301 * src/utf16.h: Likewise.
5302 * src/utf16be.h: Likewise.
5303 * src/utf16le.h: Likewise.
5304 * src/utf7.h: Likewise.
5305 * src/utf8.h: Likewise.
5306 * src/viscii.h: Likewise.
5308 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5310 Make transliteration optional.
5311 * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
5312 Set transliteration on if and only if tocode ends in //TRANSLIT.
5313 * README, man/iconv_open.3: Document how to enable transliteration.
5314 * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
5315 * tests/check-translit.bat: Likewise.
5316 * tests/check-translit.cmd: Likewise.
5318 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5320 * man/iconv.3: Fix typo.
5322 2000-10-31 Bruno Haible <haible@clisp.cons.org>
5324 * README, man/iconv_open.3: Document JOHAB again.
5326 2000-11-15 Bruno Haible <haible@clisp.cons.org>
5328 * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
5329 (STATIC): Change default from 0 to 1.
5330 * src/Makefile.msvc: Likewise.
5331 * tests/Makefile.msvc: Likewise.
5332 * tests/check-stateless.bat: Call 'sort' with no arguments.
5334 2000-11-12 Bruno Haible <haible@clisp.cons.org>
5336 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
5337 version from GNU CVS.
5339 2000-10-24 Bruno Haible <haible@clisp.cons.org>
5341 * Version 1.4 released.
5342 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5343 Bump version number.
5344 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
5346 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5348 Implement and document GB18030 and BIG5HKSCS.
5349 * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
5351 (do_gb18030uni): New function.
5352 (main): Accept gb18030ext, gb18030uni, hkscs.
5353 * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
5354 (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
5355 hkscs.h): New targets.
5356 * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
5357 * src/hkscs.h, src/big5hkscs.h: New files.
5358 * src/converters.h: Include gb18030.h and big5hkscs.h.
5359 * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
5360 * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
5361 * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
5362 * tests/Makefile.msvc (check): Likewise.
5363 * tests/Makefile.os2 (check): Likewise.
5364 * tests/GB18030.TXT: New file.
5365 * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
5367 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5369 * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
5370 UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
5371 * tests/table-to.c (main): Likewise.
5373 2000-10-22 Bruno Haible <haible@clisp.cons.org>
5375 * src/gentranslit.c (main): Read the input in UTF-8 encoding.
5377 2000-10-09 Bruno Haible <haible@clisp.cons.org>
5379 CPU recognition on OpenBSD.
5380 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
5381 __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
5383 2000-10-03 Bruno Haible <haible@clisp.cons.org>
5385 * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
5386 character literals, use the numeric value instead.
5387 Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
5389 2000-09-29 Bruno Haible <haible@clisp.cons.org>
5391 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
5394 2000-09-25 Bruno Haible <haible@clisp.cons.org>
5396 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
5397 as equivalent to __i386. For OpenBSD.
5399 2000-09-21 Bruno Haible <haible@clisp.cons.org>
5401 * src/utf16.h (utf16_wctomb): Reject single surrogates.
5402 * src/utf16be.h (utf16be_wctomb): Likewise.
5403 * src/utf16le.h (utf16le_wctomb): Likewise.
5404 * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
5405 * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
5406 * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
5407 * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
5409 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
5412 2000-09-15 Bruno Haible <haible@clisp.cons.org>
5414 * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
5415 * src/Makefile.in (install, installdirs, uninstall): Likewise.
5416 * man/Makefile.in (install, installdirs, uninstall): Likewise.
5418 2000-09-11 Bruno Haible <haible@clisp.cons.org>
5420 * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
5422 2000-08-26 Bruno Haible <haible@clisp.cons.org>
5424 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
5427 2000-07-04 Akira Hatakeyama <akira@sra.co.jp>
5428 Bruno Haible <haible@clisp.cons.org>
5430 * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
5431 tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
5432 tests/check-stateless.cmd, tests/check-translit.cmd: New files.
5434 2000-06-28 Bruno Haible <haible@clisp.cons.org>
5436 * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
5438 * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
5439 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
5440 sizeof(unsigned short).
5441 * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
5442 sizeof(unsigned int).
5443 Reported by François Pinard <pinard@iro.umontreal.ca>.
5445 2000-05-29 Bruno Haible <haible@clisp.cons.org>
5447 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
5448 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
5450 2000-05-23 Bruno Haible <haible@clisp.cons.org>
5452 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
5453 host_vendor, host_os correctly if $host has more than two hyphens.
5455 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5457 * Version 1.3 released.
5458 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5459 Bump version number.
5460 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
5462 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5465 * INSTALL.generic: New file.
5467 Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5468 * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
5469 * src/converters.h: Include them.
5470 * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
5471 * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
5472 * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
5473 (UCS-2LE): Renamed from UCS-2-LE.
5474 (UCS-4BE): Renamed from UCS-4-BE.
5475 (UCS-4LE): Renamed from UCS-4-LE.
5476 * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
5477 * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5478 * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5479 * tests/Makefile.msvc (check): Likewise.
5480 * tests/UCS-*snippet*: New files.
5482 Allow building as a shared library on Windows.
5483 Allow running the tests on Windows.
5484 * Makefile.devel (include/iconv.h.msvc): Remove rule.
5485 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
5488 * windows/dllexport.h: New file.
5489 * include/iconv.h.msvc: Remove file.
5490 * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
5491 autogenerated files.
5492 * Makefile.msvc (STATIC, DEBUG): Default to 0.
5493 (all): Choose either include\iconv.h.msvc-static or
5494 include\iconv.h.msvc-shared.
5495 (check): Depend on all.
5496 (all, check, mostlyclean, clean, distclean, maintainer-clean):
5497 Recurse into tests directory.
5498 * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
5499 (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
5500 (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
5501 (RESOURCES): New variable.
5502 (iconv.lib): Change rule when building DLL.
5503 (clean, distclean): One filename per line.
5504 * tests/Makefile.msvc: New file.
5505 * tests/check-stateful.bat, tests/check-stateless.bat,
5506 tests/check-translit.bat: New files.
5507 * tests/uniq-u.c: New file, taken from GNU textutils.
5508 * README.win32: Update.
5509 Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
5511 2000-04-14 Bruno Haible <haible@clisp.cons.org>
5513 Fix an OSF/1 problem.
5514 * configure.in: Define GCC variable for substitution.
5515 * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
5518 2000-04-13 Bruno Haible <haible@clisp.cons.org>
5520 Fix a SunOS 4 problem.
5521 * include/iconv.h.in: If EILSEQ is not defined by the system, define
5522 it to ENOENT, not EINVAL.
5524 2000-04-02 Bruno Haible <haible@clisp.cons.org>
5526 Allow building on filesystems lacking symlinks and hard links.
5527 * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
5529 * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
5530 * src/Makefile.in (LN): Use autoconfigured value @LN@.
5531 (LN_S): Use autoconfigured value @LN_S@.
5533 2000-03-15 Bruno Haible <haible@clisp.cons.org>
5535 * Version 1.2 released.
5536 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5537 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
5539 2000-03-14 Bruno Haible <haible@clisp.cons.org>
5541 Implement and document UTF-16BE and UTF16LE.
5542 * src/utf16be.h, src/utf16le.h: New files.
5543 * src/converters.h: Include them.
5544 * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
5545 * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
5546 * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
5547 * tests/UTF-16*snippet*: New files.
5549 * src/utf16.h (utf16_wctomb): Output a byte order mark.
5551 2000-03-13 Bruno Haible <haible@clisp.cons.org>
5553 Provide all encodings used by AIX locales.
5554 * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
5556 (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
5557 * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
5558 src/cp1129.h: New files.
5559 * src/converters.h: Include them if USE_AIX is defined.
5560 * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
5562 * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
5563 * src/genaliases2.c: New file.
5564 * src/iconv.c: Define USE_AIX on AIX.
5565 Include encodings_aix.def and aliases_aix.h.
5566 (aliases2_lookup): New function.
5567 (iconv_open): Call aliases2_lookup.
5568 * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
5570 * Makefile.devel (all): Add src/aliases_aix.h.
5571 (src/aliases_aix.h): New rule.
5572 (src/flags.h): Depend on src/encodings_aix.def.
5574 2000-02-24 Bruno Haible <haible@clisp.cons.org>
5576 * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
5577 Reported by Edmund Grimley Evans <edmundo@rano.org>.
5579 2000-02-22 Bruno Haible <haible@clisp.cons.org>
5581 * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
5583 2000-02-15 Bruno Haible <haible@clisp.cons.org>
5585 * src/iconv.c (iconv): Add cast in xxx_reset call.
5587 2000-02-05 Bruno Haible <haible@clisp.cons.org>
5589 * src/tis620.h: Simplify.
5591 2000-01-27 Bruno Haible <haible@clisp.cons.org>
5593 * Makefile.devel (CLISP_DIR): Change to "..".
5595 2000-01-24 Bruno Haible <haible@clisp.cons.org>
5597 * Version 1.1 released.
5598 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5599 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
5601 2000-01-23 Bruno Haible <haible@clisp.cons.org>
5603 * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
5606 2000-01-22 Bruno Haible <haible@clisp.cons.org>
5608 * include/iconv.h.in (iconvctl): New declaration.
5609 (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
5611 * src/iconv.c (iconvctl): New function.
5613 * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
5615 Solve a build problem.
5616 * include/iconv.h.in: Renamed from include/libiconv.h.in.
5617 * Makefile.devel: libiconv.h -> iconv.h.
5618 * Makefile.in: Likewise.
5619 * configure.in: Likewise. Remove check for <iconv.h>.
5620 * src/iconv.c: Include iconv.h instead of libiconv.h.
5621 * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
5623 * README, man/iconv_open.3: Don't document JOHAB any more.
5625 * man/iconv.3: Clarify return value again.
5627 2000-01-16 Bruno Haible <haible@clisp.cons.org>
5630 * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
5631 (ISO-8859-15): Add alias ISO-IR-203.
5632 (EUC-CN): Add alias CN-GB, from RFC 1922.
5633 (BIG5): Add alias CN-BIG5, from RFC 1922.
5634 * Makefile.devel (src/aliases.h): Add 8th character to key set.
5637 * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
5638 (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
5639 (KSC_5601): Drop KSC5601.1987-0 alias.
5641 Improve GB/T 12345 (not used yet).
5642 * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
5643 * src/gb12345ext.h: Regenerated.
5645 Improve and document CP949.
5646 * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
5647 (uhc_1.h, uhc_2.h): New rules.
5648 * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
5650 (output_uni2charset_sparse): Take an additional boolean argument.
5651 All callers changed.
5652 (*_uhc_1, *_uhc_2): New functions.
5653 (main): Treat uhc_1 and uhc_2.
5654 * src/uhc_1.h, src/uhc_2.h: New files.
5655 * src/cp949.h: New file, include them.
5656 * src/converters.h: Include it.
5657 * src/encodings.def (KSC_5601): Remove alias CP949.
5658 (CP949): New encoding.
5659 * README, man/iconv_open.3: Add CP949.
5660 * tests/Makefile.in (check): Check CP949.
5661 * tests/CP949.TXT: New file.
5664 * README, man/iconv_open.3: Add CP932.
5665 * tests/Makefile.in (check): Check CP932.
5666 * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
5668 * Makefile.devel (src/flags.h): Depend on src/converters.h.
5670 * tests/Makefile.in (check): Check JIS_X0201.
5671 * tests/JIS_X0201.TXT: New file.
5673 * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
5674 * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
5676 * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
5677 (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
5679 Add ISO-IR-165 (undocumented).
5680 * tools/Makefile (all): Add isoir165ext.h.
5681 (isoir165ext.h): New rule.
5682 * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
5683 * src/isoir165.h, src/isoir165ext.h: New files.
5684 * src/converters.h: Include it.
5685 * src/encodings.def: Add ISO-IR-165.
5686 * tests/Makefile.in (check): Check ISO-IR-165.
5687 * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
5689 Add ISO646-CN (undocumented).
5690 * src/iso646_cn.h: New file.
5691 * src/converters.h: Include it.
5692 * src/encodings.def: Add ISO646-CN.
5693 * tests/Makefile.in (check): Check ISO646-CN.
5694 * tests/ISO646-CN.TXT: New file.
5696 Add ISO646-JP (undocumented).
5697 * src/iso646_jp.h: New file.
5698 * src/converters.h: Include it.
5699 * src/encodings.def: Add ISO646-JP.
5700 * tests/Makefile.in (check): Check ISO646-JP.
5701 * tests/ISO646-JP.TXT: New file.
5703 2000-01-05 Bruno Haible <haible@clisp.cons.org>
5706 * tools/Makefile (all): Add iso8859_16.h.
5707 (iso8859_16.h): New rule.
5708 * src/iso8859_16.h: New file.
5709 * src/converters.h: Include it.
5710 * src/encodings.def: Add ISO-8859-16.
5711 * README, man/iconv_open.3: Add ISO-8859-16.
5712 * tests/Makefile.in (check): Check ISO-8859-16.
5713 * tests/ISO-8859-16.TXT: New file.
5715 * man/iconv.3: Clarify what happens *inbuf in case 3.
5717 * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
5718 * tests/ISO-8859-8.TXT: Likewise.
5720 2000-01-04 Bruno Haible <haible@clisp.cons.org>
5722 * Version 1.0 released.
5723 * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
5724 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
5725 (libiconv.la): Use LIBICONV_VERSION_INFO.
5727 2000-01-03 Bruno Haible <haible@clisp.cons.org>
5729 * tests/Makefile.in: New file.
5730 tests/check-stateless, tests/table-from.c, tests/table-to.c,
5731 tests/*.TXT, tests/genutf8.c: New files, checks for stateless
5733 tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
5734 checks for stateful encodings.
5735 * Makefile.in (all, check, mostlyclean, clean, distclean,
5736 maintainer-clean): Descend into tests directory.
5737 * configure.in: Add tests/Makefile to AC_OUTPUT duties.
5739 * src/gentranslit.c: New file.
5740 * Makefile.devel (src/translit.h): New rule.
5741 * src/translit.def, src/translit.h: New files.
5742 * src/iconv.c: Include it.
5743 (iconv): Transliterate using translit.h table.
5745 * src/genflags.c: New file.
5746 * Makefile.devel (src/flags.h): New rule.
5747 * src/flags.h: New file.
5748 * src/iconv.c: Include it.
5749 (encoding): Add field 'oflags'.
5750 (all_encodings): Initialize the field 'oflags'.
5751 (iconv_open): Copy field 'oflags'.
5752 (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
5753 * src/Makefile.in (iconv.lo): Update dependencies.
5755 * src/converters.h: New file, extracted from src/iconv.c.
5756 * src/iconv.c: Include it.
5757 * src/Makefile.in (iconv.lo): Update dependencies.
5759 * tools/cjk_variants.c: New file.
5760 * tools/Makefile (ALL): Add cjk_variants.h.
5761 (cjk_variants.h, cjk_variants): New rules.
5762 * src/cjk_variants.h: New file.
5763 * src/iconv.c: Include it.
5764 (iconv): Use cjk_variants for transliteration.
5766 * man/iconv.3: Fix description of return value.
5767 * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
5768 * iso2022_kr.h (iso2022kr_wctomb): Likewise.
5769 * src/iconv.c (iconv): Do Hangul transliteration here and increment
5770 result once for every transliterated character.
5771 * src/johab_hangul.h (johab_hangul_decompose): Change result array
5772 from 'unsigned char*' to 'wchar_t*'.
5774 * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
5777 * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
5779 * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
5782 * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
5784 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
5787 * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
5788 not being excluded. Fix that.
5789 * src/ksc5601.h: Regenerated.
5790 * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
5791 valid in KSC5601/KSX1001 but not in JOHAB.
5793 * src/iconv.c (conv_struct): Add fields iindex, oindex.
5794 (iconv_open): Fill in iindex, oindex.
5796 * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
5797 "csUnicode11", from IANA charset list.
5798 (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
5799 from IANA charset list.
5800 (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
5801 from IANA charset list.
5802 (GB_2312-80): New encoding, from IANA charset list.
5804 * README, man/iconv_open.3: Add MacIceland and MacUkraine.
5806 * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
5807 (all): Depend on src/aliases.h.
5808 * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
5809 $(srcdir)/aliases.gperf.
5812 * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
5814 1999-12-31 Bruno Haible <haible@clisp.cons.org>
5816 * Version 0.3 released.