1 2019-04-26 Bruno Haible <bruno@clisp.org>
4 $ rsync -Lrtvz translationproject.org::tp/latest/libiconv/ po/new
7 msgmerge --update --lang=${f%.po} --previous $f ../libiconv.pot; \
12 2019-04-26 Bruno Haible <bruno@clisp.org>
15 $ cd po; make update-po
17 2019-04-26 Bruno Haible <bruno@clisp.org>
19 Prepare for version 1.16.
20 * configure.ac: Bump version number to 1.15.
21 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
22 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:1:6.
23 * src/iconv.c (print_version): Update copyright year.
24 * windows/iconv.rc: Likewise.
25 * windows/libiconv.rc: Likewise.
26 * README: Update download link.
28 2019-04-26 Bruno Haible <bruno@clisp.org>
30 Tweak exported symbols when --enable-relocatable is used.
31 * lib/Makefile.in (DEFS): Map 'relocate2' to a different symbol.
33 2019-04-01 Bruno Haible <bruno@clisp.org>
35 build: Separate git operations from build operations.
36 * gitsub.sh: New file, from gnulib.
37 * .gitmodules: New file.
38 * autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
39 environment variable. Ignore the GNULIB_TOOL environment variable.
40 * HACKING: Explain when to use gitsub.sh.
42 2019-03-07 Bruno Haible <bruno@clisp.org>
44 Avoid signed integer overflow during shifts.
45 Reported by Jeffrey Walton <noloader@gmail.com>.
46 * lib/tcvn.h (tcvn_wctomb): Use unsigned integer type for bit mask
48 * lib/viscii.h (viscii_wctomb): Likewise.
50 2019-03-04 Bruno Haible <bruno@clisp.org>
52 Add support for --enable-relocatable to libcharset.
53 * autogen.sh: Copy some more files to libcharset/build-aux/ and
56 2019-03-04 Bruno Haible <bruno@clisp.org>
58 Update --enable-relocatable support after gnulib changed.
59 * configure.ac: Move the LT_INIT invocation before the gl_RELOCATABLE
60 invocation. Remove unused argument to gl_RELOCATABLE.
62 2019-01-27 Bruno Haible <bruno@clisp.org>
64 Accommodate a shell that is not in /bin/sh.
65 * Makefile.in (SHELL): Use the value found by configure.
66 * lib/Makefile.in (SHELL): Likewise.
67 * man/Makefile.in (SHELL): Likewise.
68 * src/Makefile.in (SHELL): Likewise.
69 * tests/Makefile.in (SHELL): Likewise.
70 (check, check-extra-yes): Use SHELL to run the check-* scripts.
72 2019-01-27 Bruno Haible <bruno@clisp.org>
74 Update after gnulib changed.
75 * Makefile.in (GNULIB_IMPORTED_FILES): Remove build-aux/snippet/*.
77 2019-01-27 Bruno Haible <bruno@clisp.org>
79 Update support for building with MSVC. Automake does not install ar-lib.
80 * autogen.sh: Fetch build-aux/ar-lib here.
81 * Makefile.devel (srclib/Makefile.in): Don't fetch build-aux/ar-lib
83 * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/ar-lib.
84 (IMPORTED_FILES): Add build-aux/ar-lib.
86 2019-01-06 Bruno Haible <bruno@clisp.org>
88 Revisit handling of file descriptors closed by the parent process.
89 * src/iconv.c (main): Add comment.
91 2018-10-23 Bruno Haible <bruno@clisp.org>
93 Remove outdated DJGPP build infrastructure.
94 Approved by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
95 * djgpp: Remove directory.
96 * INSTALL.djgpp: Remove file.
97 * Makefile.in (SOURCE_FILES): Remove them.
99 2018-10-23 Bruno Haible <bruno@clisp.org>
101 Update after gnulib changed.
102 * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.63.
104 2018-09-22 Bruno Haible <bruno@clisp.org>
106 Avoid some warnings in MSVC build.
107 * include/export.h: Handle MSVC compiler as well.
109 2018-09-22 Bruno Haible <bruno@clisp.org>
111 Update from gnulib. Move mapping tables into the code.
112 * autogen.sh: Don't create libcharset/m4/relocatable-lib.m4.
113 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean): Don't
114 remove lib/charset.alias.
115 * tests/check-subst: Don't set CHARSETALIASDIR.
117 2018-05-04 Bruno Haible <bruno@clisp.org>
119 Drop special instructions for OSF/1.
120 * INSTALL.generic: Remove the recommendation for OSF/1.
122 2018-05-04 Bruno Haible <bruno@clisp.org>
124 Simplify: Remove the ability to install a preloadable library.
125 * preload/*: Remove directory.
126 * Makefile.devel: Don't recurse into 'preload'.
127 * Makefile.in: Likewise.
128 * configure.ac: Don't declare 'preload' as a subdirectory.
129 * README, NEWS: Update.
131 2018-05-04 Bruno Haible <bruno@clisp.org>
133 Simplify code. Drop support for Borland C++ on Windows.
134 * lib/iconv.c: Simplify 'defined _WIN32 || defined __WIN32__' to just
136 * lib/iconv_open1.h: Likewise.
138 2018-05-04 Bruno Haible <bruno@clisp.org>
140 * lib/relocatable.c: Update from gnulib.
142 2018-05-04 Bruno Haible <bruno@clisp.org>
144 Switch to automake 1.16.
145 * autogen.sh: Update comment.
146 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.16.
147 * libcharset/Makefile.devel (ACLOCAL): Likewise.
148 * preload/Makefile.devel (ACLOCAL): Likewise.
150 2018-03-27 Bruno Haible <bruno@clisp.org>
153 * README: Don't recommend to use --prefix=/usr/local, as it produces
154 problems with GCC (since GCC's treatment of /usr/local/include and
155 /usr/local/lib is inconsistent by default). Don't recommend to use
156 the iconv.m4 installed by GNU gettext, because it won't work when
157 GNU automake and GNU gettext are installed with different --prefix
158 options; instead recommend the 'iconv' module from gnulib.
160 2018-01-27 Bruno Haible <bruno@clisp.org>
163 * INSTALL.windows: Renamed from README.windows.
164 * INSTALL.djgpp: Renamed from README.djgpp.
165 * Makefile.in (SOURCE_FILES): Update.
167 2018-01-03 Bruno Haible <bruno@clisp.org>
169 Fix installation in 64-bit mode on AIX.
170 * lib/Makefile.in (AR): New variable.
171 (install): Use it instead of hardcoding 'ar'.
173 2017-11-26 Bruno Haible <bruno@clisp.org>
175 Avoid end-of-lines problem in generated shell scripts on Cygwin.
176 Patch by Feiyun Wang <feiyunw@yahoo.com>.
177 * lib/genaliases.c (main): Create canonical.sh and canonical_local.sh
178 with Unix end-of-line characters, regardless of Cygwin choice of
179 text mode vs. binary mode.
181 2017-07-15 Bruno Haible <bruno@clisp.org>
183 Allow building statically linked binaries, through LDFLAGS="-static".
185 <https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
186 * build-aux/ltmain.sh (func_mode_help, func_mode_link): In the link
187 mode, accept option '-static-uninstalled-libs' in place of '-static',
188 and make '-static' an equivalent of '-all-static'.
190 2017-07-15 Bruno Haible <bruno@clisp.org>
192 Don't attempt to build preloadable_libiconv.so when linking statically.
193 * preload/configure.ac (enable_shared, enable_static): Don't force
194 shared libraries when LDFLAGS indicates static linking.
195 (PLUGLIB): Set to empty when is not configured for building shared
198 2017-07-15 Bruno Haible <bruno@clisp.org>
200 Get rid of autom4te.cache directories, as far as possible.
201 * Makefile.devel (srclib/Makefile.in, aclocal.m4, configure,
202 config.h.in): Remove autom4te.cache after invoking aclocal, autoconf,
203 autoheader, automake.
204 * preload/Makefile.devel (aclocal, configure): Likewise.
206 2017-05-18 Bruno Haible <bruno@clisp.org>
208 * lib/relocatable.h: Update from gnulib.
209 * lib/relocatable.c: Update from gnulib.
211 2017-01-30 Bruno Haible <bruno@clisp.org>
213 Prepare for version 1.15.
214 * src/iconv.c (print_version): Update copyright year.
215 * windows/iconv.rc: Likewise.
216 * windows/libiconv.rc: Likewise.
218 2016-12-29 Bruno Haible <bruno@clisp.org>
220 Make Makefile.devel consistent with .gitignore.
221 * Makefile.devel (srclib/Makefile.in): Depend on aclocal.m4.
222 (totally-clean): Remove also aclocal.m4.
224 2016-12-25 Bruno Haible <bruno@clisp.org>
227 * autogen.sh: Emit a "done" diagnostic when autogen.sh completed
230 2016-12-25 Bruno Haible <bruno@clisp.org>
232 Reorder Makefile.devel.
233 * Makefile.devel: Reorder: put gnulib targets before autotools targets.
235 2016-12-14 Bruno Haible <bruno@clisp.org>
237 Cleanup useless removals.
238 * lib/Makefile.in (distclean): No need to remove 'libtool'.
240 2016-12-04 Bruno Haible <bruno@clisp.org>
243 * Makefile.devel: Update comments about release process.
245 2016-12-04 Bruno Haible <bruno@clisp.org>
247 Create tarballs through an Automake-like "make dist" command.
248 * Makefile.in (SOURCE_FILES, LIBTOOL_IMPORTED_FILES,
249 AUTOMAKE_OLD_IMPORTED_FILES, AUTOMAKE_IMPORTED_FILES, IMPORTED_FILES,
250 GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
251 (distdir): New target.
252 (PACKAGE, VERSION, TAR, GZIP): New macros.
254 * lib/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
255 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
256 (distdir): New target.
257 * man/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
258 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
259 (distdir): New target.
260 * preload/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
261 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
262 (distdir): New target.
263 * src/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
264 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
265 (distdir): New target.
266 * tests/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
267 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
268 (distdir): New target.
270 2016-12-04 Bruno Haible <bruno@clisp.org>
272 Remove duplicates of imported files from version control.
273 * autogen.sh: Copy imported files to libcharset.
275 2016-12-04 Bruno Haible <bruno@clisp.org>
277 Always use the newest released copies of files brought in from Automake.
278 * Makefile.devel (srclib/Makefile.in): Make sure to get new versions of
279 files brought in by automake.
280 * build-aux/install-sh: Remove from version control.
281 * build-aux/missing: Likewise.
283 2016-12-04 Bruno Haible <bruno@clisp.org>
285 Always use the newest copies of config.guess, config.sub.
286 * Makefile.devel (gnulib-imported-files): New target.
287 * autogen.sh: Invoke it.
288 * build-aux/config.guess: Remove from version control.
289 * build-aux/config.sub: Likewise.
291 2016-12-04 Bruno Haible <bruno@clisp.org>
293 Always use the newest copy of fcntl-o.m4.
294 * m4/fcntl-o.m4: Remove file. Rely on srcm4/fcntl-o.m4 instead.
296 2016-12-04 Bruno Haible <bruno@clisp.org>
298 Remove obsolete documentation.
299 * PORTS: Remove file.
301 2016-12-03 Bruno Haible <bruno@clisp.org>
303 Make Makefile.devel more useful for the users of the released tarball.
304 * Makefile.devel (srclib/Makefile.gnulib): Don't force this target.
305 (gnulib-clean): New target.
306 (totally-clean): New target. Do the removals from autogen.sh. Also,
307 remove lib/aliases*.gperf, lib/canonical*.h, man/iconvctl.3.html,
308 man/iconv_open_into.3.html.
309 * autogen.sh: Invoke target gnulib-clean before srclib/Makefile.gnulib.
310 Invoke target totally-clean before all.
311 * preload/Makefile.devel (totally-clean): New target.
313 2016-12-03 Bruno Haible <bruno@clisp.org>
315 Modernize configure.ac.
316 * configure.ac: Use 2-argument AC_INIT. Avoid an AM_INIT_AUTOMAKE
318 * preload/configure.ac: Use 2-argument AC_INIT. Use AC_CONFIG_SRCDIR.
320 2016-12-03 Bruno Haible <bruno@clisp.org>
322 Towards reproducible builds.
323 * Makefile.devel (man/%.html): Remove the CreationDate comment line
326 2016-12-04 Bruno Haible <bruno@clisp.org>
328 Update to gettext-0.19.8.1.
329 * ABOUT-NLS: Update through 'gettextize'.
331 2016-12-03 Bruno Haible <bruno@clisp.org>
333 Update documentation.
334 * HACKING: Refer to the Git repository.
336 2016-12-03 Bruno Haible <bruno@clisp.org>
338 Avoid compilation warnings in 'genflags' program.
339 * lib/genflags.c: Avoid warnings from GCC's -Wunused-function option.
341 2016-12-02 Bruno Haible <bruno@clisp.org>
343 * relocatable.c: Update from gnulib.
345 2016-11-25 Bruno Haible <bruno@clisp.org>
347 Prepare for version 1.15.
348 * configure.ac: Bump version number to 1.15.
350 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
351 * windows/iconv.rc: Update.
352 * windows/libiconv.rc: Update.
353 * Makefile.devel: Update comments.
354 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:0:6.
355 * src/iconv.c (print_version): Update copyright year.
357 2016-11-23 Bruno Haible <bruno@clisp.org>
359 Update installation instructions for Windows.
360 * README.windows: Assume a 64-bit Windows. Explain both 32-bit and
361 64-bit builds. Add instructions for the MS Visual C/C++ tool chain.
362 Revamp instructions for Cygwin.
364 2016-11-23 Bruno Haible <bruno@clisp.org>
366 Drop the nickname "woe32".
367 * README.windows: Renamed from README.woe32.
369 2016-11-22 Bruno Haible <bruno@clisp.org>
371 Update support for building with MSVC.
372 * Makefile.devel (srclib/Makefile.in): Import 'ar-lib' and 'compile'
374 * lib/Makefile.in (install-lib, install): Install the .la file with
375 $(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets
376 installed without execution permissions, and programs linked to it fail:
377 in a Cygwin shell with exit code 127, or from a cmd.exe window with a
378 dialog "The application was unable to start correctly (0xc0000022)."
380 2016-11-19 Bruno Haible <bruno@clisp.org>
382 Fix link error when compiling with gcc -O0.
383 * lib/iconv.c (aliases2_lookup): Make static.
384 Reported by Chung-Lin Tang <chunglin.tang@gmail.com>
385 at https://savannah.gnu.org/bugs/?47953 .
387 2016-11-17 Bruno Haible <bruno@clisp.org>
389 UTF-8: Reject surrogates and out-of-range code points.
390 * lib/utf8.h (utf8_mbtowc, utf8_wctomb): Reject code points in the
391 range 0xD800..0xDFFF and >= 0x110000.
392 * tests/genutf8.c (main): Don't emit mappings for 0xD800..0xDFFF.
394 2016-10-22 Bruno Haible <bruno@clisp.org>
396 Switch to libtool 2.4.6.
397 * m4/libtool.m4: Update from libtool-2.4.6, with modifications:
398 2008-04-06 Bruno Haible <bruno@clisp.org>
399 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
400 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
402 * m4/ltoptions.m4: Likewise.
403 * m4/ltversion.m4: Likewise.
404 * build-aux/ltmain.sh: Likewise.
406 2016-10-14 Bruno Haible <bruno@clisp.org>
408 Use 'size_t', not 'int', for the length of a string.
409 * lib/iconv.c: Include <limits.h>.
410 * lib/genflags.c: Likewise.
411 * lib/converters.h (struct mbtowc_funcs, struct wctomb_funcs): Change
412 'int n' parameter to 'size_t n'.
413 (RET_COUNT_MAX): New macro.
414 * lib/*.h: Use 'size_t n' instead of 'int n'.
415 * lib/ucs2.h (ucs2_mbtowc): Make sure 'count' does not cause an 'int'
417 * lib/ucs4.h (ucs4_mbtowc): Likewise.
418 * lib/utf16.h (utf16_mbtowc): Likewise.
419 * lib/utf32.h (utf32_mbtowc): Likewise.
420 * tools/8bit_tab_to_h.c: Generate function signatures with 'size_t n'.
421 * tools/cjk_tab_to_h.c: Likewise.
422 * NEWS: Mention the change.
424 2016-10-04 Bruno Haible <bruno@clisp.org>
426 Extend CP1255 mapping.
427 * lib/cp1255.h (cp1255_2uni, cp1255_page05): Map 0xCA to U+05BA.
428 * tests/CP1255.TXT: Likewise.
429 This matches https://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1255.txt
430 and what the native Windows converter does since at least Windows XP.
432 2016-10-01 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
433 Bruno Haible <bruno@clisp.org>
435 Remove large stack requirement from gentranslit.
436 * lib/gentranslit.c (main): Heap-allocate large arrays.
437 * Makefile.devel (lib/translit.h): Remove 'ulimit -s unlimited' command.
439 2015-12-10 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
441 Remove unused array from gentranslit.
442 * lib/gentranslit.c (main): Remove unused array.
443 * Makefile.devel (CC): Add -Wall option.
444 Reported in https://savannah.gnu.org/bugs/?46663 .
446 2016-10-01 Bruno Haible <bruno@clisp.org>
449 * src/iconv.c (main): Increment i after parsing the --silent option.
450 Reported in https://savannah.gnu.org/bugs/?41187 .
452 2016-10-01 Bruno Haible <bruno@clisp.org>
454 Update to current gnulib.
455 * Makefile.devel (GNULIB_MODULES): Remove memmove.
456 * tests/Makefile.in (INCLUDES): Make sure to include the top-level
457 "config.h". Needed for the 'binary-io' module.
459 2016-10-01 Bruno Haible <bruno@clisp.org>
461 Switch to automake 1.15.
462 * autogen.sh: Update comment.
463 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
464 (srclib/Makefile.in): Don't remove auxiliary files brought in by
466 * preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
467 * srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
468 * build-aux/missing: Update from automake-1.15.
470 2016-10-01 Bruno Haible <bruno@clisp.org>
472 Remove autogenerated doc files from version control.
473 * man/iconvctl.3.html: Remove file.
474 * man/iconv_open_into.3.html: Remove file.
476 2012-12-06 Bruno Haible <bruno@clisp.org>
478 Change copyright holder of man pages.
479 * man/*.[13]: Replace myself with FSF.
481 2012-06-30 Bruno Haible <bruno@clisp.org>
483 Make it possible to run 'genaliases2' on native Windows.
484 * lib/genaliases2.c (main): Expect 3 arguments. Open the output files
485 explicitly. Complain if they don't exist.
486 * Makefile.devel (lib/aliases_*.h): Pass the output filenames as
487 arguments to genaliases.
488 Reported at <https://savannah.gnu.org/bugs/?36748>.
490 Make it possible to run 'genaliases' on native Windows.
491 * lib/genaliases.c (main): Expect 3 arguments. Open the output files
492 explicitly. Complain if they don't exist. Improve error checking.
493 * Makefile.devel (lib/aliases*.h): Pass the output filenames as
494 arguments to genaliases.
495 Reported at <https://savannah.gnu.org/bugs/?36748>.
497 2012-05-13 Bruno Haible <bruno@clisp.org>
499 Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
500 * lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
501 from U+E7C7 to 0xA8BC.
502 * lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
504 (gb18030uni_wctomb): Treat U+E7C7 as a special case.
505 * tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
506 * tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
507 0x8135F437 and U+E7C7.
509 2012-04-28 Bruno Haible <bruno@clisp.org>
511 Switch to autoconf 2.69 and automake 1.12.
512 * autogen.sh: Update comment.
513 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
514 (AUTOMAKE, ACLOCAL): Switch to version 1.12.
515 * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
516 (ACLOCAL): Switch to version 1.12.
518 2012-03-24 Bruno Haible <bruno@clisp.org>
521 * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
523 2012-01-26 Bruno Haible <bruno@clisp.org>
526 * README: Quote 'like this', not `like this', as per the recent change
527 to the GNU coding standards.
529 * gnulib-local/lib/xmalloc.c: Likewise.
530 * lib/config.h.in: Likewise.
531 * src/iconv.c (usage): Likewise.
532 * tests/uniq-u.c: Likewise.
533 * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
535 * lib/big5.h: Update accordingly.
536 * lib/cns11643_inv.h: Likewise.
537 * lib/cp932ext.h: Likewise.
538 * lib/cp950ext.h: Likewise.
539 * lib/gb12345ext.h: Likewise.
540 * lib/gb2312.h: Likewise.
541 * lib/gbkext_inv.h: Likewise.
542 * lib/hkscs1999.h: Likewise.
543 * lib/hkscs2001.h: Likewise.
544 * lib/hkscs2004.h: Likewise.
545 * lib/hkscs2008.h: Likewise.
546 * lib/isoir165ext.h: Likewise.
547 * lib/jisx0208.h: Likewise.
548 * lib/jisx0212.h: Likewise.
549 * lib/jisx0213.h: Likewise.
550 * lib/ksc5601.h: Likewise.
551 * lib/uhc_1.h: Likewise.
552 * lib/uhc_2.h: Likewise.
554 2012-01-15 Bruno Haible <bruno@clisp.org>
557 * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
559 * tests/genutf8.c: Include config.h.
560 * tests/gengb18030z.c: Likewise.
561 * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
563 2011-01-28 Bruno Haible <bruno@clisp.org>
566 * woe32dll/export.h: Add a reference to the woe32dll writeup.
568 2012-01-06 Bruno Haible <bruno@clisp.org>
570 Update after gnulib changed.
571 * gnulib-local/lib/error.h.diff: Update.
573 2012-01-06 Bruno Haible <bruno@clisp.org>
575 Talk about "native Windows API", not "Woe32".
576 * lib/relocatable.c: Update comments to mention native Windows.
578 2012-01-04 Bruno Haible <bruno@clisp.org>
580 Talk about "native Windows API", not "Win32".
581 * lib/relocatable.c: Update comments to mention native Windows.
582 (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
584 2011-10-27 Bruno Haible <bruno@clisp.org>
586 Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
587 * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
588 * lib/ucs4.h (ucs4_mbtowc): Likewise.
589 * lib/utf32.h (utf32_mbtowc): Likewise.
590 Reported at <https://savannah.gnu.org/bugs/?34916>.
592 2012-06-30 Bruno Haible <bruno@clisp.org>
594 Improve ISO-2022-CP-MS versus CP932.
595 * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
596 the rows 0x79..0x7C as rows from CP932.
597 * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
598 tests/ISO-2022-JP-MS-snippet.
599 * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
600 to ESC $ B 0x79..0x7C.
601 * tests/ISO-2022-JP-MS-snippet: Likewise.
602 * tests/check-stateful: Also test the *-snippet.alt file if it exists.
603 * tests/check-stateful.bat: Likewise.
605 2012-06-30 Bruno Haible <bruno@clisp.org>
607 Improve ISO-2022-CP-MS versus CP932.
608 * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
610 * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
611 0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
612 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
614 2011-10-23 Bruno Haible <bruno@clisp.org>
616 New encoding ISO-2022-CP-MS.
617 * NOTES: Mention ISO-2022-JP-MS.
618 * tools/CP50221-0208-EXT.TXT: New file.
619 * tools/CP50221-0212-EXT.TXT: New file.
620 * tools/8bit_tab_to_h.c: Add comments about how to generate
621 cp50221_0208_ext.h, cp50221_0212_ext.h.
622 * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
624 * lib/cp50221_0208_ext.h: New file, mostly generated.
625 * lib/cp50221_0212_ext.h: New file, mostly generated.
626 * lib/iso2022_jpms.h: New file.
627 * lib/converters.h: Include it.
628 * lib/encodings.def: Add ISO-2022-JP-MS.
629 * README, man/iconv_open.3: Add ISO-2022-JP-MS.
630 * tests/ISO-2022-JP-MS-snippet: New file.
631 * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
632 * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
633 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
635 2011-10-23 Bruno Haible <bruno@clisp.org>
637 * lib/encodings.def: Add comments about Windows names of encodings.
639 2011-10-18 Bruno Haible <bruno@clisp.org>
641 * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
642 2008-04-06 Bruno Haible <bruno@clisp.org>
643 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
644 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
646 * m4/ltoptions.m4: Likewise.
647 * m4/ltversion.m4: Likewise.
648 * build-aux/ltmain.sh: Likewise.
650 2011-10-03 Bruno Haible <bruno@clisp.org>
652 * lib/relocatable.c: Update from gnulib.
654 2011-09-02 Bruno Haible <bruno@clisp.org>
656 Fix "make check" failure when $(srcdir) != $(builddir).
657 * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
658 GB18030.IRREVERSIBLE.TXT into the build directory.
659 Reported by Christian Weisgerber <naddy@mips.inka.de>.
661 2011-08-07 Bruno Haible <bruno@clisp.org>
663 Ensure all HTML-formatted man pages are up-to-date.
664 * Makefile.devel (all): Depend on man/iconvctl.3.html and
665 man/iconv_open_into.3.html.
667 2011-08-07 Bruno Haible <bruno@clisp.org>
669 * Version 1.14 released.
671 2011-08-07 Bruno Haible <bruno@clisp.org>
673 * configure.ac: Bump version number to 1.14.
675 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
676 * windows/iconv.rc: Update.
677 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
678 * src/iconv.c (print_version): Update copyright year.
680 2011-08-07 Bruno Haible <bruno@clisp.org>
682 Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
683 * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
686 2011-08-07 Bruno Haible <bruno@clisp.org>
688 * tests/check-subst: Add comments about OSF/1.
690 2011-08-07 Bruno Haible <bruno@clisp.org>
692 * lib/relocatable.c: Update from gnulib.
694 2011-08-06 Bruno Haible <bruno@clisp.org>
696 Upgrade the GB18030 converter to the version from 2005.
697 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
698 'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
699 0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
700 (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
701 for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
702 (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
703 (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
704 U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
705 * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
706 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
707 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
708 to now-assigned Unicode codepoints.
709 * tests/GB18030.IRREVERSIBLE.TXT: New file.
711 2011-08-06 Bruno Haible <bruno@clisp.org>
713 Fix conversion bug in CP1258 converter.
714 * lib/vietcomb.h (viet_comp_table_data): Remove entry for
715 U+00A5 U+0301. Fix entry for U+00A8 U+0301.
716 (viet_decomp_table): Fix entry for U+0385.
717 * tests/CP1258.IRREVERSIBLE.TXT: Update.
718 Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
720 2011-07-03 Bruno Haible <bruno@clisp.org>
722 Improve interactive behaviour of iconv program.
723 * src/iconv.c (convert): Flush the output before starting a possibly
724 blocking safe_read call.
726 2011-07-03 Bruno Haible <bruno@clisp.org>
728 Fix interactive behaviour of iconv program.
729 * Makefile.devel (GNULIB_MODULES): Add safe-read.
730 * src/iconv.c: Include safe-read.h.
731 (convert): Take the infile as a file descriptor, not as a FILE stream.
732 Use safe_read() instead of fread().
734 Reported by Xavier Pucel <xpucel@hotmail.com>.
736 2011-05-02 Bruno Haible <bruno@clisp.org>
738 Update after gnulib changed.
739 * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
741 2011-06-02 Bruno Haible <bruno@clisp.org>
743 Update after gnulib changed.
744 * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
746 2011-06-04 Bruno Haible <bruno@clisp.org>
748 Work around <wchar.h> bug on OSF/1 5.1.
749 * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
752 2011-03-27 KO Myung-Hun <komh@chollian.net>
754 Fix installation on OS/2.
755 * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
756 iconv_no_i18n. This is the recommended way to use libtool, see
757 <https://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
759 2011-03-31 Bruno Haible <bruno@clisp.org>
761 gentranslit: Fix buffer overrun.
762 * lib/gentranslit.c (main): Allocate more room for the suffix strings
763 of the translit pages.
764 Reported by Ben Noordhuis <info@bnoordhuis.nl>.
766 2011-02-28 Bruno Haible <bruno@clisp.org>
768 * lib/relocatable.h: Update from gnulib.
769 * lib/relocatable.c: Likewise.
771 2011-01-29 Corinna Vinschen <corinna-cygwin@cygwin.com>
772 Bruno Haible <bruno@clisp.org>
774 Simplify "wchar_t" handling on Cygwin 1.7.x.
775 * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
776 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
777 * lib/iconv_open1.h: Likewise.
778 Rationale: <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
780 2011-01-29 Bruno Haible <bruno@clisp.org>
782 Adjust the meaning of "wchar_t" on native Windows systems.
783 * lib/iconv.c (iconv_canonicalize): On native Windows, map
784 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
785 * lib/iconv_open1.h: Likewise.
786 Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
787 in <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
789 2010-11-23 Bruno Haible <bruno@clisp.org>
791 Implement newer release of BIG5-HKSCS.
792 * tools/Makefile (ALL): Add hkscs2008.h.
793 (hkscs2008.h): New rule.
794 * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
795 * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
796 equivalent to BIG5-HKSCS:2008.
797 * lib/hkscs2008.h: New file, autogenerated.
798 * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
799 * lib/converters.h: Include the new file.
800 * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
801 * tests/BIG5-HKSCS-2008.TXT: New file, based on
802 tests/BIG5-HKSCS-2004.TXT.
803 * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
804 tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
805 * tests/BIG5-HKSCS-2008-snippet: New file, based on
806 tests/BIG5-HKSCS-2004-snippet.
807 * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
808 tests/BIG5-HKSCS-2004-snippet.UTF-8.
809 * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
810 Reported by oCameLo <camel322@gmail.com>.
812 2010-11-23 Bruno Haible <bruno@clisp.org>
814 Make cjk_tab_to_h 64-bit clean.
815 * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
816 (output_title): Update copyright year.
818 2010-09-23 Bruno Haible <bruno@clisp.org>
820 Switch to autoconf 2.68.
821 * autogen.sh: Update comment.
822 * configure.ac: Fix AC_COMPILE_IFELSE invocation.
823 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
824 * preload/Makefile.devel (AUTOCONF): Likewise.
826 2010-09-23 Bruno Haible <bruno@clisp.org>
828 * m4/libtool.m4: Update from libtool-2.4, with modifications:
829 2008-04-06 Bruno Haible <bruno@clisp.org>
830 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
831 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
833 * m4/ltversion.m4: Update from libtool-2.4.
834 * build-aux/ltmain.sh: Likewise.
836 2010-09-23 Bruno Haible <bruno@clisp.org>
838 Simplify use of gnulib-tool now that gnulib-tool --import works better.
839 * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
840 * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
842 2010-07-31 Bruno Haible <bruno@clisp.org>
844 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
845 * preload/Makefile.devel (AUTOCONF): Likewise.
847 2010-07-03 Bruno Haible <bruno@clisp.org>
849 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
850 * preload/Makefile.devel (AUTOCONF): Likewise.
852 2010-06-04 Bruno Haible <bruno@clisp.org>
854 Addendum to 2009-10-18 commit.
855 * m4/fcntl-o.m4: New file, from gnulib.
856 * configure.ac: Invoke gl_FCNTL_O_FLAGS.
857 * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
859 2010-06-04 Bruno Haible <bruno@clisp.org>
861 * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
862 2008-04-06 Bruno Haible <bruno@clisp.org>
863 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
864 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
866 * m4/ltoptions.m4: Update from libtool-2.2.8.
867 * m4/ltversion.m4: Likewise.
868 * m4/lt~obsolete.m4: Likewise.
869 * build-aux/ltmain.sh: Likewise.
871 2010-04-06 Bruno Haible <bruno@clisp.org>
873 Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
874 * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
875 doesn't contains #include directives.
877 2010-03-30 Bruno Haible <bruno@clisp.org>
879 * README.woe32: Update for Cygwin 1.7.x.
881 2009-12-26 Bruno Haible <bruno@clisp.org>
883 * windows/libiconv.rc: Update.
884 * windows/iconv.rc: Update.
886 2009-12-11 Bruno Haible <bruno@clisp.org>
888 * include/iconv.h.in: Untabify.
889 * gnulib-local/lib/xalloc.h: Untabify.
890 * woe32dll/export.h: Untabify.
891 * tests/uniq-u.c: Untabify.
893 2009-12-11 Bruno Haible <bruno@clisp.org>
895 * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
897 2009-12-11 Bruno Haible <bruno@clisp.org>
899 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
900 * preload/Makefile.devel (AUTOCONF): Likewise.
902 2009-11-22 Bruno Haible <bruno@clisp.org>
904 * tests/check-subst: Add reference to the Solaris printf bug.
905 Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
907 2009-09-01 Bruno Haible <bruno@clisp.org>
909 * README.woe32: Put the -mno-cygwin option into CC and CXX.
910 Recommended by Paolo Bonzini and Eric Blake.
912 2009-08-15 Bruno Haible <bruno@clisp.org>
914 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
915 * preload/Makefile.devel (AUTOCONF): Likewise.
917 2009-08-15 Bruno Haible <bruno@clisp.org>
919 Use .git/info/exclude, not .gitignore, for imported or generated files.
920 * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
923 2009-07-07 Bruno Haible <bruno@clisp.org>
926 * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
927 incomplete input correctly.
928 * tests/test-to-wchar.c: New file.
929 * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
930 (check): Depend on and run tests-to-wchar.
931 (clean): Add tests-to-wchar.
932 Reported by Tristan Gingold <gingold@adacore.com>.
934 2009-06-30 Bruno Haible <bruno@clisp.org>
936 * Version 1.13.1 released.
938 2009-06-30 Bruno Haible <bruno@clisp.org>
940 * configure.ac: Bump version number to 1.13.1.
943 2009-06-04 Bruno Haible <bruno@clisp.org>
945 * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
946 (ACLOCAL): Switch to version 1.11.
948 2009-05-19 Bruno Haible <bruno@clisp.org>
950 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
951 * autogen.sh: Update comments.
953 2009-04-24 Bruno Haible <bruno@clisp.org>
955 Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
956 * src/iconv_open2.h: Don't initialize nonexistent field if
957 !(HAVE_WCRTOMB || HAVE_MBRTOWC).
958 Patch by Joel Brobecker <brobecker@adacore.com>.
960 2009-04-15 Bruno Haible <bruno@clisp.org>
962 * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
963 explicitly. Needed on Cygwin.
965 2009-04-11 Bruno Haible <bruno@clisp.org>
967 * configure.ac: Move the statements for WOE32 and WINDRES.
969 2009-03-26 Bruno Haible <bruno@clisp.org>
971 * Version 1.13 released.
973 2009-03-26 Bruno Haible <bruno@clisp.org>
975 * src/iconv.c: Update copyright header to GPLv3+.
976 (print_version): Update license info.
978 2009-03-26 Bruno Haible <bruno@clisp.org>
980 * src/iconv.c (print_version): Bump year.
982 2009-03-25 Bruno Haible <bruno@clisp.org>
984 * build-aux/config.guess: Update to GNU version 2009-02-03.
985 * build-aux/config.sub: Likewise.
987 2009-03-25 Bruno Haible <bruno@clisp.org>
989 * configure.ac: Bump version number to 1.13.
991 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
992 * windows/iconv.rc: Update.
993 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
995 2009-03-25 Bruno Haible <bruno@clisp.org>
997 Fix the handling of Windows resources in shared libraries.
998 * configure.ac: Invoke LT_LANG for 'Windows Resource'.
999 * lib/Makefile.in (RC): New variable.
1000 (WINDRES): Remove variable.
1001 (OBJECTS_RES_yes): Add .lo suffix.
1002 (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
1004 Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
1006 2009-03-14 Bruno Haible <bruno@clisp.org>
1008 * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
1010 2009-01-24 Bruno Haible <bruno@clisp.org>
1012 * tools/Makefile (ALL): Add cp1131.h.
1013 (cp1131.h): New rule.
1014 * lib/encodings.def: Add CP1131.
1015 * lib/cp1131.h: New file.
1016 * lib/converters.h: Include it.
1017 * README, man/iconv_open.3: Add CP1131.
1018 * NOTES: Mention CP1131.
1019 * tests/CP1131.TXT: New file.
1020 * tests/Makefile.in (check): Also test CP1131.
1022 2009-01-17 Bruno Haible <bruno@clisp.org>
1024 Add support for "make install-strip".
1025 * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
1026 * Makefile.in (install-strip): New rule.
1027 * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
1029 (install-strip): New rule.
1030 * lib/Makefile.in (install-strip): New target.
1031 * preload/Makefile.in (install-strip): Likewise.
1032 * man/Makefile.in (install-strip): Likewise.
1033 Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
1035 2009-01-17 Bruno Haible <bruno@clisp.org>
1037 Update after gnulib changed.
1038 * src/Makefile.in (RELOCATABLE_STRIP): New variable.
1040 2009-01-17 Bruno Haible <bruno@clisp.org>
1042 Make --enable-relocatable work on glibc systems.
1043 * src/Makefile.in (host): New variable.
1045 2009-01-17 Bruno Haible <bruno@clisp.org>
1047 * lib/genflags.c: Include <string.h>.
1049 2009-01-14 Bruno Haible <bruno@clisp.org>
1051 * configure.ac: More consistent m4 quoting.
1052 * preload/configure.ac: Likewise.
1054 2008-09-28 Bruno Haible <bruno@clisp.org>
1056 * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
1057 preprocess the argument vector through prepare_spawn.
1059 2008-09-27 Bruno Haible <bruno@clisp.org>
1061 * build-aux/config.guess: Update to GNU version 2008-09-08.
1062 * build-aux/config.sub: Likewise.
1064 2008-09-26 Bruno Haible <bruno@clisp.org>
1066 * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
1068 2008-09-26 Bruno Haible <bruno@clisp.org>
1070 * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
1071 * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
1072 all programs against libicrt.a. Needed for the stdio function
1073 replacements on mingw.
1075 2008-09-21 Tadamasa Teranishi <yw3t-trns@asahi-net.or.jp>
1077 * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
1078 ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
1080 2008-09-20 Bruno Haible <bruno@clisp.org>
1082 * man/iconv_open_into.3: New file.
1084 2008-09-16 Bruno Haible <bruno@clisp.org>
1086 New function iconv_open_into.
1087 * include/iconv.h.in: Include <wchar.h> and its prerequisites.
1088 (iconv_allocation_t): New type.
1089 (iconv_open_into): New declaration.
1090 * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
1091 * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
1092 * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
1093 Verify size of iconv_allocation_t.
1094 (iconv_open_into): New function.
1095 * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
1096 field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1097 * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
1098 Reported by Roman Rybalko <romanr@romanr.info>.
1100 2008-09-16 Bruno Haible <bruno@clisp.org>
1102 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
1104 2008-09-16 Bruno Haible <bruno@clisp.org>
1106 * include/iconv.h.in: Use Unicode single-quotes in comments.
1108 2008-09-14 Bruno Haible <bruno@clisp.org>
1110 * Makefile.devel (GNULIB_MODULES): Add strerror.
1112 2008-09-07 Bruno Haible <bruno@clisp.org>
1114 Make behaviour when encountering invalid input after a shift sequence
1116 * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
1117 (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
1118 (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
1119 (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
1120 * lib/loop_unicode.h (unicode_loop_convert): Take into account the
1121 shift count contained in the negative return values.
1122 * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
1123 modified state and return RET_SHIFT_ILSEQ.
1124 * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
1125 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
1126 * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
1127 * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
1128 * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
1129 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
1130 * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
1131 * lib/ucs2.h (ucs2_mbtowc): Likewise.
1132 * lib/ucs4.h (ucs4_mbtowc): Likewise.
1133 * lib/utf16.h (utf16_mbtowc): Likewise.
1134 * lib/utf32.h (utf32_mbtowc): Likewise.
1135 * lib/utf7.h (utf7_mbtowc): Likewise.
1136 * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
1137 invalid input, return RET_SHIFT_ILSEQ.
1138 * lib/utf16le.h (utf16le_mbtowc): Likewise.
1139 * tests/test-shiftseq.c: New file.
1140 * tests/Makefile.in (check): Run test-shiftseq.
1141 (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
1142 (clean): Remove test-shiftseq executable.
1143 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1144 at <https://savannah.gnu.org/bugs/?24216>.
1146 2008-09-07 Bruno Haible <bruno@clisp.org>
1148 * man/iconv.3: Clarify the processing of shift-sequences.
1150 2008-09-07 Bruno Haible <bruno@clisp.org>
1152 * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
1153 2008-04-06 Bruno Haible <bruno@clisp.org>
1154 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1155 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1157 * m4/ltoptions.m4: Update from libtool-2.2.6.
1158 * m4/ltsugar.m4: Likewise.
1159 * m4/ltversion.m4: Likewise.
1160 * build-aux/ltmain.sh: Likewise.
1162 2008-09-06 Bruno Haible <bruno@clisp.org>
1164 * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
1165 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1166 at <https://savannah.gnu.org/bugs/?24214>.
1168 2008-06-30 Bruno Haible <bruno@clisp.org>
1170 Fix sed expressions to work with the old sed-3.02 on MSYS.
1171 * windows/windres-options (sed_extract_major, sed_extract_minor,
1172 sed_extract_subminor): Put a semicolon before the closing brace. Use
1173 an i\ command instead of an a\ command.
1174 Reported by Sunil Negi <sunil.negi@morningstar.com>
1175 in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
1176 via Keith Marshall <keithmarshall@users.sourceforge.net>.
1178 2008-05-22 Bruno Haible <bruno@clisp.org>
1180 * README.woe32: Update with info from GNU gettext's README.woe32.
1182 2008-05-18 Bruno Haible <bruno@clisp.org>
1184 * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
1185 2008-04-06 Bruno Haible <bruno@clisp.org>
1186 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1187 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1189 * m4/ltoptions.m4: Update from libtool-2.2.4.
1190 * m4/ltversion.m4: Likewise.
1191 * m4/lt~obsolete.m4: Likewise.
1192 * build-aux/ltmain.sh: Likewise.
1194 2008-04-14 Bruno Haible <bruno@clisp.org>
1196 * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
1199 2008-04-14 Bruno Haible <bruno@clisp.org>
1201 * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
1202 AC_AIX and AC_MINIX.
1203 * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
1204 * preload/Makefile.devel (AUTOCONF): Likewise.
1205 * autogen.sh: Likewise.
1207 2008-04-06 Bruno Haible <bruno@clisp.org>
1209 * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
1210 2008-04-06 Bruno Haible <bruno@clisp.org>
1211 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1212 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1214 * m4/ltoptions.m4: New file, from libtool-2.2.2.
1215 * m4/ltsugar.m4: New file, from libtool-2.2.2.
1216 * m4/ltversion.m4: New file, from libtool-2.2.2.
1217 * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
1218 * build-aux/ltmain.sh: New file, from libtool-2.2.2.
1219 * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
1220 * preload/configure.ac: Likewise.
1222 2008-04-06 Bruno Haible <bruno@clisp.org>
1224 More portable way of building the preloadable library.
1225 * preload/Makefile.devel: New file.
1226 * preload/Makefile.in: New file, based on lib/Makefile.in.
1227 * preload/configure.ac: New file, based on configure.ac.
1228 * Makefile.devel (all): Recurse into preload directory.
1229 * Makefile.in (all, install, installdirs, uninstall, check,
1230 mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
1232 * configure.ac: Likewise.
1233 (OS, GCC, PLUGLIB): Remove definitions.
1234 * lib/Makefile.in (all): Don't depend on PLUGLIB.
1235 (preloadable_libiconv.so, preloadable_libiconv_linux.so,
1236 preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
1238 (install, uninstall, clean): Don't handle the preloadable library here.
1240 2008-04-06 Bruno Haible <bruno@clisp.org>
1242 Avoid a gcc warning.
1243 * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
1245 2008-04-06 Bruno Haible <bruno@clisp.org>
1247 * src/iconv.c (print_version): Bump year.
1249 2008-04-06 Bruno Haible <bruno@clisp.org>
1251 Support all possible nl_langinfo(CODESET) results on the respective
1252 platforms, according to libcharset/lib/config.charset.
1253 * lib/encodings.def: Add DEFALIAS statements, conditional on
1254 USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
1255 USE_SOLARIS_ALIASES.
1256 * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
1258 * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
1260 * lib/genaliases.c (emit_alias): New function, extracted from
1262 (emit_encoding): Use it.
1263 (main): Define DEFALIAS.
1264 * lib/genaliases2.c (counter): New variable, extracted from
1266 (emit_alias): New function, extracted from emit_encoding.
1267 (emit_encoding): Use it.
1268 (main): Define DEFALIAS.
1269 * lib/genflags.c (main): Define DEFALIAS.
1270 * lib/iconv.c (all_encodings): Define DEFALIAS.
1271 Include the system dependent variant of aliases.h on the appropriate
1273 (all_canonical): Include the system dependent variant of canonical.h,
1274 canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
1276 * lib/aliases2.h: Include the system dependent variant of
1277 aliases_aix.h or aliases_osf1.h on the appropriate systems.
1278 * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
1279 aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
1280 aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
1281 aliases_extra.h, translit.h.
1282 * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
1283 lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1284 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1285 (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
1286 lib/aliases_syssolaris.h): New rules.
1287 (lib/aliases_aix_sysaix.h): New rule.
1288 (lib/aliases_osf1_sysosf1.h): New rule.
1289 * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
1290 lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1291 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1293 2008-04-06 Bruno Haible <bruno@clisp.org>
1295 * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
1296 * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
1298 2007-11-11 Bruno Haible <bruno@clisp.org>
1300 * Version 1.12 released.
1302 2007-11-11 Bruno Haible <bruno@clisp.org>
1304 * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
1305 (AUTOMAKE, ACLOCAL): Require version 1.10.
1306 (srclib/Makefile.in): Avoid error from automake.
1308 2007-10-26 Bruno Haible <bruno@clisp.org>
1310 * m4/libtool.m4: Update, based on libtool-1.5.24.
1311 * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
1313 2007-10-23 Bruno Haible <bruno@clisp.org>
1315 * build-aux/config.guess: Update to GNU version 2007-07-22.
1316 * build-aux/config.sub: Likewise.
1318 2007-10-23 Bruno Haible <bruno@clisp.org>
1320 * configure.ac: Bump version number to 1.12.
1323 2007-10-23 Bruno Haible <bruno@clisp.org>
1325 Move relocatability infrastructure to gnulib.
1326 * gnulib-local/lib/relocatable.h: Remove file.
1327 * gnulib-local/lib/relocatable.c: Remove file.
1329 2007-10-23 Bruno Haible <bruno@clisp.org>
1331 Update from GNU gettext.
1332 2006-11-26 Bruno Haible <bruno@clisp.org>
1333 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
1335 Based on a patch from Paul Eggert in gnulib.
1336 2006-11-06 Bruno Haible <bruno@clisp.org>
1337 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
1338 (xmemdup): New declaration.
1339 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
1340 2006-11-03 Bruno Haible <bruno@clisp.org>
1341 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
1342 XCALLOC): New macros.
1343 (xnboundedmalloc): New inline function.
1344 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
1346 2006-11-02 Bruno Haible <bruno@clisp.org>
1347 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
1349 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
1350 (xnmalloc): New function.
1352 2007-10-23 Bruno Haible <bruno@clisp.org>
1354 Moved module xreadlink to gnulib.
1355 * gnulib-local/modules/xreadlink: Remove file.
1356 * gnulib-local/lib/xreadlink.h: Remove file.
1357 * gnulib-local/lib/xreadlink.c: Remove file.
1358 * gnulib-local/m4/xreadlink.m4: Remove file.
1360 2007-10-07 Bruno Haible <bruno@clisp.org>
1362 Update program license to GPLv3.
1363 * COPYING: Replace with GPL 3.
1364 * windows/iconv.rc (Comments): Update.
1366 2007-10-07 Bruno Haible <bruno@clisp.org>
1368 * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
1370 2007-03-30 Bruno Haible <bruno@clisp.org>
1372 * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
1375 2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
1377 * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
1380 2007-09-29 Bruno Haible <bruno@clisp.org>
1382 * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
1383 valid since 2007-09-19.
1385 2007-07-07 Bruno Haible <bruno@clisp.org>
1387 * autogen.sh: Add an option --skip-gnulib.
1389 2007-07-07 Bruno Haible <bruno@clisp.org>
1391 * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
1392 * gnulib-local/lib/width.c: Remove file, moved to gnulib.
1393 * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
1394 * gnulib-local/modules/uniwidth: Remove file.
1395 * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
1396 * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
1398 2007-06-30 Bruno Haible <bruno@clisp.org>
1400 * src/iconv.c (print_version): Use the standard --version output, see
1401 <https://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
1403 2007-06-30 Bruno Haible <bruno@clisp.org>
1405 * autogen.sh: New file.
1406 * DEPENDENCIES: New file.
1407 * HACKING: New file.
1409 2007-06-30 Bruno Haible <bruno@clisp.org>
1411 * src/iconv.c: Provide translator comments for many messages.
1412 (conversion_error_EILSEQ, conversion_error_EINVAL,
1413 conversion_error_other): New functions, extracted from convert.
1414 (convert): Use them.
1415 Reported by Tim Van Holder <tim.van.holder@telenet.be>.
1417 2007-06-09 Bruno Haible <bruno@clisp.org>
1419 * gnulib-local/lib/relocwrapper.c: Remove file.
1421 2007-05-27 Bruno Haible <bruno@clisp.org>
1423 * windows/libiconv.rc: New file.
1424 * windows/iconv.rc: New file.
1425 * windows/windres-options: New file.
1426 * configure.ac (WOE32): New variable.
1427 (WINDRES) [WOE32]: New variable.
1428 * lib/Makefile.in (WINDRES): New variable.
1429 (PACKAGE_VERSION): New variable.
1430 (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
1431 (OBJECTS_EXP_no): Renamed from OBJECTS_no.
1432 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1433 (OBJECTS): Add one of them.
1434 (libiconv.res): New rule.
1435 (clean): Remove also libiconv.res.
1436 * src/Makefile.in (WINDRES): New variable.
1437 (PACKAGE_VERSION): New variable.
1438 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
1439 (all, iconv_no_i18n, install): Use them.
1440 (iconv.res): New rule.
1441 (clean): Remove also iconv.res.
1442 Suggested and inspired by work by Perry Rapp.
1444 2007-05-27 Bruno Haible <bruno@clisp.org>
1446 Follow broken iconv() prototype in POSIX.
1447 * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
1448 * lib/config.h.in (ICONV_CONST): Change default value to an empty
1450 * src/iconv.c (ICONV_CONST): Change default value to empty.
1451 Reported by Andreas Krennmair <ak@synflood.at>.
1453 2007-05-25 Bruno Haible <bruno@clisp.org>
1455 * tools/Makefile (ALL): Add rk1048.h.
1456 (rk1048.h): New rule.
1457 * lib/encodings.def: Add RK1048.
1458 * lib/rk1048.h: New file.
1459 * lib/converters.h: Include it.
1460 * README, man/iconv_open.3: Add RK1048.
1461 * NOTES: Mention RK1048.
1462 * tests/RK1048.TXT: New file.
1463 * tests/Makefile.in (check): Also test RK1048.
1464 Suggested by Timur Birsh <team9@host.kz>.
1466 2007-04-24 Bruno Haible <bruno@clisp.org>
1468 * man/iconv_open.3: Tweak explanation of TRANSLIT.
1469 Reported by Perry Rapp.
1471 2007-04-23 Bruno Haible <bruno@clisp.org>
1473 * tests/check-subst: Use the output of 'printf' only if it didn't
1474 crash. Needed to work around a buffer overflow in Solaris /bin/printf.
1475 Reported by Arto C. Nirkko <anirkko@insel.ch>.
1477 2007-04-23 Bruno Haible <bruno@clisp.org>
1479 * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
1480 systems like those which define __STDC_ISO_10646__.
1481 Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
1483 2007-03-31 Bruno Haible <bruno@clisp.org>
1485 * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
1487 * man/iconv_open.3: Likewise.
1488 * man/iconv.3: Likewise.
1489 * man/iconv_close.3: Likewise.
1490 * man/iconvctl.3: Likewise.
1492 2007-03-31 Bruno Haible <bruno@clisp.org>
1494 * man/iconv.1: Mark as POSIX compliant.
1495 * man/iconv_open.3: Likewise.
1496 * man/iconv.3: Likewise.
1497 * man/iconv_close.3: Likewise.
1499 * man/*.[13]: Syntactic simplifications.
1501 2007-03-19 Bruno Haible <bruno@clisp.org>
1503 Assume that mkinstalldirs also creates the necessary parent directories.
1504 * Makefile.in (install, installdirs): Don't explicitly create the
1506 * lib/Makefile.in (install, installdirs): Likewise.
1507 * src/Makefile.in (install, installdirs): Likewise.
1508 * man/Makefile.in (install, installdirs): Likewise.
1509 Reported by Thomas Klausner <tk@giga.or.at>.
1511 2007-03-04 Bruno Haible <bruno@clisp.org>
1513 * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
1514 relocatable, relocwrapper.
1515 * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
1516 * gnulib-local/modules/progreloc: Remove file.
1517 * gnulib-local/modules/relocatable: Remove file.
1518 * gnulib-local/modules/relocwrapper: Remove file.
1519 * gnulib-local/m4/relocatable.m4: Remove file.
1520 * gnulib-local/lib/strerror.c.diff: Remove file.
1521 * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
1522 RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
1524 2007-02-19 Bruno Haible <bruno@clisp.org>
1526 * gnulib-local/lib/xmalloc.c: Don't include exit.h.
1527 * src/iconv.c: Likewise.
1529 2007-02-16 Juan Manuel Guerrero <juan.guerrero@gmx.de>
1533 2007-02-03 Bruno Haible <bruno@clisp.org>
1535 * tools/Makefile (ksc5601.h): Add one extra character.
1536 * lib/ksc5601.h: Regenerated.
1537 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
1538 * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
1539 * tests/JOHAB.TXT: Likewise.
1540 Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
1542 * lib/euc_kr.h: Update comments.
1543 * lib/johab.h: Likewise.
1545 2007-02-03 Bruno Haible <bruno@clisp.org>
1547 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
1549 2007-01-26 Bruno Haible <bruno@clisp.org>
1551 Moved streq.h to gnulib.
1552 * gnulib-local/lib/streq.h: Remove file.
1553 * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
1554 (Depends-on): Add streq.
1555 (lib_SOURCES): Remove streq.h.
1557 2007-01-26 Bruno Haible <bruno@clisp.org>
1559 Moved unitypes.h to gnulib.
1560 * gnulib-local/lib/unitypes.h: Remove file.
1561 * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
1562 (Depends-on): Add unitypes.
1563 (lib_SOURCES): Remove unitypes.h.
1565 2007-01-26 Bruno Haible <bruno@clisp.org>
1567 Moved canonicalize to gnulib.
1568 * gnulib-local/modules/canonicalize: Remove file.
1569 * gnulib-local/lib/canonicalize.h: Remove file.
1570 * gnulib-local/lib/canonicalize.c: Remove file.
1571 * gnulib-local/m4/canonicalize.m4: Remove file.
1572 * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
1573 with 'canonicalize-lgpl'.
1575 2006-12-20 Bruno Haible <bruno@clisp.org>
1577 * lib/Makefile.in (install): On AIX, add the contents of
1578 /lib/libiconv.a to libiconv.a.
1580 2006-12-20 Bruno Haible <bruno@clisp.org>
1582 * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
1584 (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
1586 (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
1587 option --makefile-name.
1588 (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
1589 * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
1591 2006-10-31 Bruno Haible <bruno@clisp.org>
1593 Update from GNU gettext.
1594 2006-10-29 Bruno Haible <bruno@clisp.org>
1595 Make it compile in C++ mode.
1596 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
1597 with appropriate return type.
1598 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
1599 2006-10-26 Bruno Haible <bruno@clisp.org>
1600 * gnulib-local/modules/canonicalize (Makefile.am): Remove
1601 EXTRA_DIST. Now done by gnulib-tool.
1602 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1603 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
1604 2006-10-25 Bruno Haible <bruno@clisp.org>
1605 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
1606 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
1607 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
1608 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
1609 AC_RELOCATABLE instead of requiring it.
1610 2006-10-12 Bruno Haible <bruno@clisp.org>
1611 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
1612 all files in lib/ through EXTRA_DIST.
1613 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
1614 2006-09-14 Bruno Haible <bruno@clisp.org>
1615 * gnulib-local/lib/canonicalize.c: Include <config.h>
1617 * gnulib-local/lib/relocatable.c: Likewise.
1618 * lib/relocatable.c: Likewise.
1619 * gnulib-local/lib/relocwrapper.c: Likewise.
1620 * gnulib-local/lib/xmalloc.c: Likewise.
1621 * gnulib-local/lib/xreadlink.c: Likewise.
1622 * gnulib-local/lib/xstrdup.c: Likewise.
1623 2006-08-02 Bruno Haible <bruno@clisp.org>
1624 * gnulib-local/modules/canonicalize: Put under LGPL.
1625 * gnulib-local/modules/relocatable: Likewise.
1626 2006-07-18 Bruno Haible <bruno@clisp.org>
1627 * gnulib-local/xalloc.h (xzalloc): New declaration.
1628 * gnulib-local/xmalloc.c (xzalloc): New function.
1630 2006-10-24 Bruno Haible <bruno@clisp.org>
1632 * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
1633 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1635 2006-10-14 Bruno Haible <bruno@clisp.org>
1637 * COPYING: New file.
1638 * README: Clarify copyright of the iconv program.
1639 Reported by Charles Wilson <cwilson@fastmail.fm>.
1641 2006-08-08 Bruno Haible <bruno@clisp.org>
1643 * INSTALL.generic: Add a recommendation for Tru64.
1644 Reported by Gary V. Vaughan <gary@gnu.org>.
1646 2006-07-29 Bruno Haible <bruno@clisp.org>
1648 * tests/check-subst: Set CHARSETALIASDIR.
1649 Needed so that "make check" works before "make install" on systems
1652 2006-07-29 Bruno Haible <bruno@clisp.org>
1654 * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
1655 (AUTOCONF_FILES): Add the existing *.m4 files.
1657 2006-07-29 Bruno Haible <bruno@clisp.org>
1659 * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
1660 * src/iconv.c: Assume <locale.h> exists.
1661 * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
1664 2006-07-29 Bruno Haible <bruno@clisp.org>
1666 * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
1667 AC_ISC_POSIX, AC_HEADER_STDC.
1669 2006-07-29 Bruno Haible <bruno@clisp.org>
1671 * configure.ac: Remove macro invocations that are redundant through
1672 gl_EARLY and gl_INIT.
1674 2006-07-29 Bruno Haible <bruno@clisp.org>
1676 * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
1677 Avoids a sh syntax error.
1679 2006-07-29 Bruno Haible <bruno@clisp.org>
1681 * gnulib-local/m4/relocatable.m4: Add comments.
1683 2006-07-29 Bruno Haible <bruno@clisp.org>
1685 * gnulib-local/modules/libiconv-misc: New file.
1686 * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
1688 * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
1690 2006-07-29 Bruno Haible <bruno@clisp.org>
1692 Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
1693 AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
1694 because we now assume that the system defines size_t and ptrdiff_t.
1696 2006-07-29 Bruno Haible <bruno@clisp.org>
1698 Switch to using gnulib.
1699 * configure.ac (AC_PREREQ): Require autoconf-2.60.
1700 Invoke gl_EARLY and gl_INIT.
1701 * Makefile.devel (all): Depend on srclib/Makefile.am.
1702 (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
1704 (GNULIB_MODULES): New variable.
1705 (srclib/Makefile.am): New rule.
1706 * gnulib-local: New directory.
1707 * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
1708 * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
1709 * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
1710 * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
1711 * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
1712 * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
1713 * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
1714 * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
1715 * gnulib-local/lib/error.h.diff: New file.
1716 * gnulib-local/lib/progname.h.diff: New file.
1717 * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
1718 * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
1719 * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
1720 * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
1721 * gnulib-local/lib/strerror.c.diff: New file.
1722 * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
1723 * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
1724 * gnulib-local/lib/width.c: Moved here from srclib/width.c.
1725 * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
1726 * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
1727 * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
1728 * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
1729 * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
1730 * gnulib-local/modules/canonicalize: New file.
1731 * gnulib-local/modules/progreloc: New file.
1732 * gnulib-local/modules/relocatable: New file.
1733 * gnulib-local/modules/relocwrapper: New file.
1734 * gnulib-local/modules/uniwidth: New file.
1735 * gnulib-local/modules/xalloc: New file.
1736 * gnulib-local/modules/xreadlink: New file.
1738 * m4/allocsa.m4: Remove file. Now taken from gnulib.
1739 * m4/codeset.m4: Likewise.
1740 * m4/eealloc.m4: Likewise.
1741 * m4/error.m4: Likewise.
1742 * m4/extensions.m4: Likewise.
1743 * m4/full-header-path.m4: Likewise.
1744 * m4/gettext.m4: Likewise.
1745 * m4/glibc21.m4: Likewise.
1746 * m4/iconv.m4: Likewise.
1747 * m4/intmax.m4: Likewise.
1748 * m4/inttypes-h.m4: Likewise.
1749 * m4/inttypes_h.m4: Likewise.
1750 * m4/isc-posix.m4: Likewise.
1751 * m4/lcmessage.m4: Likewise.
1752 * m4/lib-ld.m4: Likewise.
1753 * m4/lib-link.m4: Likewise.
1754 * m4/lib-prefix.m4: Likewise.
1755 * m4/longdouble.m4: Likewise.
1756 * m4/longlong.m4: Likewise.
1757 * m4/mbstate_t.m4: Likewise.
1758 * m4/nls.m4: Likewise.
1759 * m4/onceonly.m4: Likewise.
1760 * m4/pathmax.m4: Likewise.
1761 * m4/po.m4: Likewise.
1762 * m4/printf-posix.m4: Likewise.
1763 * m4/progtest.m4: Likewise.
1764 * m4/readlink.m4: Likewise.
1765 * m4/setenv.m4: Likewise.
1766 * m4/signed.m4: Likewise.
1767 * m4/size_max.m4: Likewise.
1768 * m4/ssize_t.m4: Likewise.
1769 * m4/stdbool.m4: Likewise.
1770 * m4/stdint.m4: Likewise.
1771 * m4/stdint_h.m4: Likewise.
1772 * m4/strerror.m4: Likewise.
1773 * m4/strerror_r.m4: Likewise.
1774 * m4/unistd_h.m4: Likewise.
1775 * m4/unlocked-io.m4: Likewise.
1776 * m4/visibility.m4: Likewise.
1777 * m4/wchar_t.m4: Likewise.
1778 * m4/wint_t.m4: Likewise.
1780 * srclib/allocsa.h: Remove file. Now taken from gnulib.
1781 * srclib/allocsa.c: Likewise.
1782 * srclib/binary-io.h: Likewise.
1783 * srclib/error.h: Likewise.
1784 * srclib/error.c: Likewise.
1785 * srclib/exit.h: Likewise.
1786 * srclib/gettext.h: Likewise.
1787 * srclib/memmove.c: Likewise.
1788 * srclib/pathmax.h: Likewise.
1789 * srclib/progname.h: Likewise.
1790 * srclib/progname.c: Likewise.
1791 * srclib/progreloc.c: Likewise.
1792 * srclib/readlink.c: Likewise.
1793 * srclib/setenv.h: Likewise.
1794 * srclib/setenv.c: Likewise.
1795 * srclib/stdbool_.h: Likewise.
1796 * srclib/stdint_.h: Likewise.
1797 * srclib/strerror.c: Likewise.
1798 * srclib/unlocked-io.h: Likewise.
1799 * srclib/unsetenv.c: Likewise.
1800 * srclib/Makefile.am: Remove file.
1802 2006-07-27 Bruno Haible <bruno@clisp.org>
1804 Remove OS/2 build support that doesn't assume GNU make and GNU bash.
1805 * README.os2: Remove file.
1806 * Makefile.os2: Remove file.
1807 * lib/Makefile.os2: Remove file.
1808 * src/Makefile.os2: Remove file.
1809 * man/Makefile.os2: Remove file.
1810 * tests/Makefile.os2: Remove file.
1811 * tests/check-stateful.cmd: Remove file.
1812 * tests/check-stateless.cmd: Remove file.
1813 * tests/check-translit.cmd: Remove file.
1815 2006-07-25 Bruno Haible <bruno@clisp.org>
1817 Remove MSVC/nmake build support.
1818 * windows: Remove directory.
1819 * Makefile.msvc: Remove file.
1820 * lib/Makefile.msvc: Remove file.
1821 * srclib/Makefile.msvc: Remove file.
1822 * src/Makefile.msvc: Remove file.
1823 * tests/Makefile.msvc: Remove file.
1824 * man/Makefile.msvc: Remove file.
1825 * po/Rules-msvc: Remove file.
1826 * po/Makefile.msvc.sh: Remove file.
1827 * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
1828 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
1830 (po/Makefile.msvc): Remove rule.
1833 2006-07-25 Bruno Haible <bruno@clisp.org>
1836 * vms: Remove directory.
1837 * Makefile.vms: Remove file.
1838 * lib/Makefile.vms: Remove file.
1839 * srclib/Makefile.vms: Remove file.
1840 * src/Makefile.vms: Remove file.
1841 * tests/Makefile.vms: Remove file.
1842 * man/Makefile.vms: Remove file.
1843 * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
1844 (include/iconv.h_vms): Remove rule.
1847 2006-07-23 Bruno Haible <bruno@clisp.org>
1849 * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
1850 * src/Makefile.in (iconv_no_i18n): Likewise.
1851 (install): Likewise.
1852 * tests/Makefile.in (table-from, table-to): Likewise.
1853 Needed because the CFLAGS can e.g. trigger profiling.
1854 Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
1856 2006-07-19 Bruno Haible <bruno@clisp.org>
1858 * Version 1.11 released.
1860 2006-07-19 Bruno Haible <bruno@clisp.org>
1862 * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
1863 (LIBADD_SOURCE): Add them here.
1865 2006-07-19 Bruno Haible <bruno@clisp.org>
1867 * build-aux/config.guess: Update to GNU version 2006-07-02.
1868 * build-aux/config.sub: Likewise.
1870 2006-07-14 Bruno Haible <bruno@clisp.org>
1872 * lib/Makefile.in (clean): Remove also *.stackdump.
1873 * src/Makefile.in (clean): Likewise.
1874 * tests/Makefile.in (clean): Likewise.
1876 2006-07-14 Bruno Haible <bruno@clisp.org>
1878 * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
1880 * tests/Makefile.in (clean): Remove also the programs, without
1881 EXEEXT. Needed for cygwin or mingw.
1882 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
1883 Remove also bin directory. Needed for cygwin and mingw.
1885 2006-07-03 Bruno Haible <bruno@clisp.org>
1887 * src/iconv.c (check_subst_formatstring): Use ngettext.
1888 (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
1889 after 2006-01-22 change.
1890 * configure.ac: Require a gettext version with ngettext.
1892 2006-06-28 Bruno Haible <bruno@clisp.org>
1894 * m4/gettext.m4: Update from GNU gettext.
1895 * m4/po.m4: Update from GNU gettext.
1897 2006-06-27 Bruno Haible <bruno@clisp.org>
1899 * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
1900 * Makefile.in (datarootdir): New variable.
1901 (install, installdirs, uninstall): Also pass datarootdir.
1902 * configure.ac (mandir): Remove customization.
1903 * man/Makefile.in (datarootdir): New variable.
1904 (docdir, htmldir): Use autoconf-substituted value.
1905 * src/Makefile.in (datarootdir): New variable.
1906 (localedir): Use autoconf-substituted value.
1908 2006-06-27 Bruno Haible <bruno@clisp.org>
1910 * m4/stdint.m4: Update from gnulib.
1911 * srclib/stdint_.h: Update from gnulib.
1912 * srclib/Makefile.am: Update.
1914 2006-06-17 Bruno Haible <bruno@clisp.org>
1916 * srclib/unsetenv.c: Update from GNU gettext.
1917 * srclib/xreadlink.c: Likewise.
1919 2006-06-16 Bruno Haible <bruno@clisp.org>
1921 * m4/full-header-path.m4: New file, from gnulib.
1922 * m4/size_max.m4: New file, from gnulib.
1923 * m4/stdint.m4: Update from gnulib.
1924 * srclib/stdint_.h: Update from gnulib.
1925 * srclib/Makefile.am (stdint.h): Likewise.
1926 * Makefile.devel (aclocal.m4): Update dependencies.
1928 2006-06-16 Bruno Haible <bruno@clisp.org>
1930 * m4/ssize_t.m4: Update from GNU gettext.
1932 2006-06-12 Bruno Haible <bruno@clisp.org>
1934 * m4/gettext.m4: Update from GNU gettext.
1935 * m4/inttypes-h.m4: New file, from GNU gettext.
1936 * m4/inttypes.m4: Remove file.
1937 * m4/stdint.m4 (gl_STDINT_H): Update.
1938 * Makefile.devel (aclocal.m4): Update dependencies.
1940 2006-06-10 Bruno Haible <bruno@clisp.org>
1942 * src/iconv.c (error) [NO_I18N]: Define here instead of including
1943 error.h. Fixes link failure introduced on 2006-01-22.
1945 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1947 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
1948 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
1950 2006-05-20 Bruno Haible <bruno@clisp.org>
1952 * tests/BIG5-HKSCS-1999-snippet: New file.
1953 * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
1954 * tests/BIG5-HKSCS-2001-snippet: New file.
1955 * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
1956 * tests/BIG5-HKSCS-2004-snippet: New file.
1957 * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
1958 * tests/Makefile.in (check): Test also the stateful parts of
1959 BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
1961 2006-05-17 Bruno Haible <bruno@clisp.org>
1963 Implement newer releases of BIG5-HKSCS.
1964 * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
1966 (hkscs.h): Remove rule.
1967 (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
1968 * tools/cjk_tab_to_h.c (output_title): Update year.
1969 (main): Recognize hkscs1999, hkscs2001, hkscs2004.
1970 * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
1971 BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
1972 * lib/hkscs.h: Remove file.
1973 * lib/hkscs1999.h: New file.
1974 * lib/hkscs2001.h: New file.
1975 * lib/hkscs2004.h: New file.
1976 * lib/big5hkscs.h: Remove file.
1977 * lib/big5hkscs1999.h: New file.
1978 * lib/big5hkscs2001.h: New file.
1979 * lib/big5hkscs2004.h: New file.
1980 * lib/converters.h: Include the new files.
1981 * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
1982 * tests/BIG5-HKSCS.TXT: Remove file.
1983 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
1984 * tests/BIG5-HKSCS-1999.TXT: New file.
1985 * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
1986 * tests/BIG5-HKSCS-2001.TXT: New file.
1987 * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
1988 * tests/BIG5-HKSCS-2004.TXT: New file.
1989 * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
1990 * tests/check-stateless: Convert colon in the charset name to a dash in
1992 * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
1993 BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
1994 * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
1995 * tests/Makefile.os2 (check): Likewise.
1997 2006-05-17 Bruno Haible <bruno@clisp.org>
1999 * srclib/progreloc.c: Update from GNU gettext.
2001 2006-05-16 Bruno Haible <bruno@clisp.org>
2003 * src/Makefile.in (clean): Use EXEEXT.
2004 * tests/Makefile.in (check, clean): Likewise.
2006 2006-05-15 Bruno Haible <bruno@clisp.org>
2008 * configure.ac: Move some checks before AC_RELOCATABLE.
2010 2006-05-15 Bruno Haible <bruno@clisp.org>
2012 Support for building shared libraries on mingw and Cygwin.
2013 * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
2014 * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
2015 * woe32dll/export.h: New file, from GNU gettext.
2016 * woe32dll/iconv-exports.h: New file.
2017 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2018 include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
2019 * lib/Makefile.in (INCLUDES): Add -I for parent directory.
2020 (LDFLAGS): Add WOE32DLL dependent flags.
2021 (LDFLAGS_yes, LDFLAGS_no): New variables.
2022 (OBJECTS): Add WOE32DLL dependent objects.
2023 (OBJECTS_yes, OBJECTS_no): New variables.
2024 (iconv-exports.lo): New rule.
2026 2006-05-15 Bruno Haible <bruno@clisp.org>
2028 * srclib/gettext.h: Update from GNU gettext.
2029 * srclib/pathmax.h: Update from GNU gettext.
2030 * srclib/progreloc.c: Update from GNU gettext.
2031 * srclib/unsetenv.c: Update from GNU gettext.
2032 * srclib/Makefile.am: Add snippet for creation of unistd.h.
2033 * m4/extensions.m4: Update from GNU gettext.
2034 * m4/gettext.m4: Update from GNU gettext.
2035 * m4/lib-ld.m4: Update from GNU gettext.
2036 * m4/lib-link.m4: Update from GNU gettext.
2037 * m4/lib-prefix.m4: Update from GNU gettext.
2038 * m4/longdouble.m4: Update from GNU gettext.
2039 * m4/nls.m4: Update from GNU gettext.
2040 * m4/onceonly.m4: Update from GNU gettext.
2041 * m4/po.m4: Update from GNU gettext.
2042 * m4/relocatable.m4: Update from GNU gettext.
2043 * m4/unistd_h.m4: New file, from GNU gettext.
2044 * Makefile.devel (aclocal.m4): Depend on it.
2045 * configure.ac: Invoke gl_HEADER_UNISTD.
2047 2006-05-14 Bruno Haible <bruno@clisp.org>,
2048 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2050 * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
2051 (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
2052 (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
2053 Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
2055 2006-05-06 Charles Wilson <cygwin@cwilson.fastmail.fm>
2057 * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
2058 compiling a shared library object.
2060 2006-05-15 Bruno Haible <bruno@clisp.org>
2062 * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
2064 2006-03-31 Juan Manuel Guerrero <juan.guerrero@gmx.de>
2068 2006-01-23 Bruno Haible <bruno@clisp.org>
2070 * configure.ac: Invoke gl_ALLOCSA.
2072 * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
2074 2006-01-22 Bruno Haible <bruno@clisp.org>
2076 * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
2079 2006-01-22 Bruno Haible <bruno@clisp.org>
2081 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
2083 2006-01-22 Bruno Haible <bruno@clisp.org>
2085 * src/iconv.c: Include error.h, exit.h.
2086 (print_version): Use EXIT_SUCCESS.
2087 (check_subst_formatstring, subst_mb_to_uc_fallback,
2088 subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
2089 subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
2090 error() instead of fprintf to stderr.
2092 2006-01-22 Bruno Haible <bruno@clisp.org>
2094 New feature: character-dependent substitutions.
2095 * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
2096 iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
2097 iconv_wchar_wc_to_mb_fallback): New types.
2098 (struct iconv_fallbacks): New structure type.
2099 (ICONV_SET_FALLBACKS): New macro.
2100 * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
2101 * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
2102 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2103 include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
2104 * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
2105 * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
2106 (uc_to_mb_write_replacement): New function.
2107 (struct mb_to_uc_fallback_locals): New type.
2108 (mb_to_uc_write_replacement): New function.
2109 (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
2110 (unicode_loop_reset): Call uc_to_mb_fallback.
2111 * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
2112 (wc_to_mb_write_replacement): New function.
2113 (wchar_from_loop_convert): Call wc_to_mb_fallback.
2114 (struct mb_to_wc_fallback_locals): New type.
2115 (mb_to_wc_write_replacement): New function.
2116 (wchar_to_loop_convert): Call mb_to_wc_fallback.
2117 * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
2118 (iconvctl): Handle ICONV_SET_FALLBACKS.
2119 * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
2120 * src/iconv.c: Include limits.h.
2121 (isdigit, c_isprint): New macros.
2122 (usage): Document long options and new options.
2123 (check_subst_formatstring): New function.
2124 (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
2126 (ilseq_byte_subst_size, ilseq_wchar_subst_size,
2127 ilseq_unicode_subst_size): New variables.
2128 (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
2129 ilseq_unicode_subst_buffer): New variables.
2130 (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
2131 (subst_mb_to_uc_fallback): New function.
2132 (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
2133 (subst_uc_to_mb_fallback): New function.
2134 (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
2135 (subst_mb_to_wc_fallback): New function.
2136 (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
2137 (subst_wc_to_mb_fallback): New function.
2138 (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
2139 (subst_mb_to_mb_fallback): New function.
2140 (convert): Enlarge the outbuf when the conversion failed with E2BIG.
2141 (main): Handle new options --byte-subst, --widechar-subst,
2143 * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
2145 * tests/check-subst: New file.
2146 * tests/Makefile.in (check): Also invoke check-subst.
2147 Suggested by James Taylor <james@oakseed.demon.co.uk>.
2149 2006-01-21 Bruno Haible <bruno@clisp.org>
2151 * src/iconv.c (print_version): Bump copyright year.
2152 (main): Accept long options --from-code, --to-code, --list, --silent.
2153 Accept abbreviated long options, like getopt() does.
2154 * man/iconv.1: Document long options.
2156 2005-12-29 Bruno Haible <bruno@clisp.org>
2158 * src/iconv.c (print_version): Update copyright year.
2160 2005-12-29 Bruno Haible <bruno@clisp.org>
2162 * configure.ac: Renamed from configure.in.
2163 * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
2165 2005-12-29 Bruno Haible <bruno@clisp.org>
2167 * configure.in: Bump version number.
2168 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2169 * windows/iconv.rc: Likewise.
2170 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
2172 2005-12-29 Bruno Haible <bruno@clisp.org>
2174 * build-aux/config.guess: Update to GNU version 2005-12-23.
2175 * build-aux/config.sub: Likewise.
2176 * build-aux/config.libpath: Update from GNU gettext.
2177 * build-aux/install-sh: Upgrade to automake-1.9.5.
2178 * build-aux/missing: Upgrade to automake-1.9.5.
2179 * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
2181 2005-12-29 Bruno Haible <bruno@clisp.org>
2183 * m4/alloca.m4: Update from GNU gettext.
2184 * m4/allocsa.m4: Update from GNU gettext.
2185 * m4/canonicalize.m4: Update from GNU gettext.
2186 * m4/codeset.m4: Update from GNU gettext.
2187 * m4/eealloc.m4: Update from GNU gettext.
2188 * m4/error.m4: Update from GNU gettext.
2189 * m4/extensions.m4: Update from GNU gettext.
2190 * m4/gettext.m4: Update from GNU gettext.
2191 * m4/glibc21.m4: Update from GNU gettext.
2192 * m4/iconv.m4: Update from GNU gettext.
2193 * m4/intmax.m4: Update from GNU gettext.
2194 * m4/inttypes_h.m4: New file, from GNU gettext.
2195 * m4/isc-posix.m4: Update from GNU gettext.
2196 * m4/lcmessage.m4: Update from GNU gettext.
2197 * m4/longdouble.m4: Update from GNU gettext.
2198 * m4/longlong.m4: Update from GNU gettext.
2199 * m4/mbstate_t.m4: Update from GNU gettext.
2200 * m4/nls.m4: Update from GNU gettext.
2201 * m4/onceonly.m4: Update from GNU gettext.
2202 * m4/pathmax.m4: Update from GNU gettext.
2203 * m4/po.m4: Update from GNU gettext.
2204 * m4/printf-posix.m4: Update from GNU gettext.
2205 * m4/progtest.m4: Update from GNU gettext.
2206 * m4/readlink.m4: Update from GNU gettext.
2207 * m4/relocatable.m4: Update from GNU gettext.
2208 * m4/setenv.m4: Update from GNU gettext.
2209 * m4/signed.m4: Update from GNU gettext.
2210 * m4/ssize_t.m4: Update from GNU gettext.
2211 * m4/stdbool.m4: Update from GNU gettext.
2212 * m4/stdint_h.m4: New file, from GNU gettext.
2213 * m4/strerror.m4: Update from GNU gettext.
2214 * m4/strerror_r.m4: Update from GNU gettext.
2215 * m4/unlocked-io.m4: Update from GNU gettext.
2216 * m4/wchar_t.m4: Update from GNU gettext.
2217 * m4/wint_t.m4: Update from GNU gettext.
2218 * m4/xreadlink.m4: Update from GNU gettext.
2219 * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
2220 m4/stdint_h.m4 as well.
2221 * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
2222 Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
2223 Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
2224 Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
2225 Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
2226 SRCLIBOBJS instead of LIBOBJS.
2227 * srclib/alloca_.h: Update from GNU gettext.
2228 * srclib/allocsa.h: Update from GNU gettext.
2229 * srclib/canonicalize.c: Update from GNU gettext.
2230 * srclib/error.h: Update from GNU gettext.
2231 * srclib/error.c: Update from GNU gettext.
2232 * srclib/gettext.h: Update from GNU gettext.
2233 * srclib/memmove.c: Update from GNU gettext.
2234 * srclib/progname.h: Update from GNU gettext.
2235 * srclib/progname.c: Update from GNU gettext.
2236 * srclib/progreloc.c: Update from GNU gettext.
2237 * srclib/readlink.c: Update from GNU gettext.
2238 * srclib/relocatable.c: Update from GNU gettext.
2239 * srclib/relocwrapper.c: Update from GNU gettext.
2240 * srclib/setenv.h: Update from GNU gettext.
2241 * srclib/setenv.c: Update from GNU gettext.
2242 * srclib/stdbool_.h: Update from GNU gettext.
2243 * srclib/stdint_.h: Update from gnulib.
2244 * srclib/strerror.c: Update from GNU gettext.
2245 * srclib/unlocked-io.h: Update from GNU gettext.
2246 * srclib/unsetenv.c: Update from GNU gettext.
2247 * srclib/xalloc.h: Update from GNU gettext.
2248 * srclib/xmalloc.c: Update from GNU gettext.
2249 * srclib/xreadlink.c: Update from GNU gettext.
2250 * srclib/xstrdup.c: Update from GNU gettext.
2251 * srclib/Makefile.am (DEFS): Also define EXEEXT.
2252 (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
2253 (libicrt_a_DEPENDENCIES): New variable.
2254 * src/Makefile.in (EXEEXT): New variable.
2255 * build-aux/install-reloc: Update from GNU gettext.
2256 * build-aux/reloc-ldflags: Update from GNU gettext.
2257 * build-aux/config.rpath: Update from GNU gettext.
2259 2005-12-29 Bruno Haible <bruno@clisp.org>
2261 * m4/libtool.m4: Update, based on libtool-1.5.22.
2262 * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
2264 2005-12-24 Bruno Haible <bruno@clisp.org>
2266 Check the whole range of GB18030.
2267 * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
2268 * tests/gengb18030z.c: New file.
2269 * tests/table-from.c (main): For GB18030, don't stop at U+10000.
2270 * tests/table-to.c (main): Likewise.
2271 * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
2273 (clean): Remove also gengb18030z and GB18030.TXT.
2274 * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
2276 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2277 * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
2278 GB18030.TXT on the fly from GB18030-BMP.TXT.
2279 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2281 2005-12-20 Bruno Haible <bruno@clisp.org>
2283 * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
2284 up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
2287 2005-12-22 Bruno Haible <bruno@clisp.org>
2289 Extend GB18030 converter to cover the entire Unicode PUA.
2290 * lib/gb18030.h: Update comments, based on second printing.
2291 (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
2292 (gb18030_pua2charset): New array.
2293 (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
2294 part of range U+E766..U+E864.
2295 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
2297 (gb18030ext_mbtowc): Add mapping for the two-byte part of range
2299 * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
2300 gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
2302 (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
2303 * tests/GB18030.TXT: Complete mappings to private area.
2305 2005-12-22 Bruno Haible <bruno@clisp.org>
2307 * lib/gbk.h: Update comments.
2309 2005-12-20 Bruno Haible <bruno@clisp.org>
2311 Add private area mappings to CP949.
2312 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
2314 * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
2316 2005-12-15 Bruno Haible <bruno@clisp.org>
2318 Add private area mappings to CP950.
2319 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
2321 * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
2323 2005-12-15 Bruno Haible <bruno@clisp.org>
2325 Make CP936 follow what Microsoft does.
2326 In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
2327 added a 0x80 - U+20AC mapping to the code chart, but not to the
2328 tooltips and not to the list of mappings.
2329 * lib/cp936.h: New file.
2330 * lib/gbk.h: Update comments.
2331 * lib/ces_gbk.h: Update comments.
2332 * lib/converters.h: Include cp936.h.
2333 * lib/encodings.def (CP936): New encoding.
2334 (GBK): Remove CP936 aliases.
2335 * README, man/iconv_open.3: Add CP936.
2336 * tests/Makefile.in (check): Check CP936.
2337 * tests/Makefile.msvc (check): Likewise.
2338 * tests/Makefile.os2 (check): Likewise.
2339 * tests/CP936.TXT: New file.
2341 2005-12-14 Bruno Haible <bruno@clisp.org>
2343 * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
2344 U+FFE1 like Microsoft does it.
2345 * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
2346 Reported by Lei Wang <lwang@qilinsoft.com>.
2348 2005-12-14 Bruno Haible <bruno@clisp.org>
2350 Follow Euro sign addition done in 1999 in
2351 http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
2352 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
2353 * tests/CP950.TXT: Add mapping for 0xA3E1.
2355 2005-11-11 Bruno Haible <bruno@clisp.org>
2357 * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
2358 and only two bytes are available in the output buffer, return
2359 RET_TOOSMALL instead of overrunning the output buffer.
2360 * lib/isoir165.h (isoir165_wctomb): When only one byte is available
2361 in the output buffer, don't overrun the output buffer.
2362 Reported by William Bardwell <bardwell@curl.com>.
2364 2005-09-18 Bruno Haible <bruno@clisp.org>
2366 * m4/libtool.m4: Update, based on libtool-1.5.20.
2367 * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
2369 2005-08-12 Bruno Haible <bruno@clisp.org>
2371 * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
2372 * tests/BIG5-2003.TXT: Likewise.
2373 * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
2374 Reported by Ping Yeh <ping@pingyeh.net>.
2376 2005-07-24 Bruno Haible <bruno@clisp.org>
2378 Tidy up exported symbols.
2379 * m4/visibility.m4: New file.
2380 * include/export.h: New file.
2381 * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
2382 create also include/iconv.h.inst.
2383 * Makefile.devel (all): Depend on include/iconv.h.build.in.
2384 (aclocal.m4): Depend on m4/visibility.m4.
2385 (include/iconv.h.build.in): New rule.
2386 * Makefile.in (install-lib, install): Install include/iconv.h.inst,
2387 not the include/iconv.h that was used for building.
2388 (distclean, maintainer-clean): Remove also include/iconv.h.inst.
2389 * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
2390 (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
2391 * lib/config.h.in (HAVE_VISIBILITY): New macro.
2392 * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2393 Define to the gcc visibility attribute.
2394 * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
2397 2005-07-25 Bruno Haible <bruno@clisp.org>
2399 2003-08-24 Bruno Haible <bruno@clisp.org>
2400 * lib/relocatable.h: Make this file includable in C++ mode: add extern
2403 2005-07-08 Bruno Haible <bruno@clisp.org>
2405 * Version 1.10 released.
2407 2005-07-08 Bruno Haible <bruno@clisp.org>
2409 * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
2410 executable after installing it.
2412 2005-07-08 Bruno Haible <bruno@clisp.org>
2414 * configure.in: Bump version number.
2415 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2416 * windows/iconv.rc: Likewise.
2417 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
2419 2005-07-05 Bruno Haible <bruno@clisp.org>
2421 * Makefile.devel (ACLOCAL): New variable.
2422 (aclocal.m4): Use it.
2424 2005-07-05 Bruno Haible <bruno@clisp.org>
2426 * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
2427 SET_RELOCATABLE to a trivial value.
2429 2004-08-08 Bruno Haible <bruno@clisp.org>
2431 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2434 2004-04-28 Bruno Haible <bruno@clisp.org>
2436 * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
2437 Treat Cygwin like Windows, since it now accepts Windows pathnames.
2439 2005-06-09 Bruno Haible <bruno@clisp.org>
2441 * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
2442 * lib/Makefile.in (mkinstalldirs): Likewise.
2443 * src/Makefile.in (mkinstalldirs): Likewise.
2444 * man/Makefile.in (mkinstalldirs): Likewise.
2446 2005-06-08 Bruno Haible <bruno@clisp.org>
2448 * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
2449 that don't support symbolic links.
2451 2005-06-08 Bruno Haible <bruno@clisp.org>
2453 * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
2454 gcc warning on mingw.
2456 2005-05-22 Bruno Haible <bruno@clisp.org>
2458 Implement and document BIG5-2003.
2459 * lib/big5_2003.h: New file.
2460 * lib/converters.h: Include it.
2461 * lib/encodings_extra.def (BIG5-2003): New encoding.
2462 * README, man/iconv_open.3: Add BIG5-2003.
2463 * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
2464 * tests/BIG5-2003.TXT: New file.
2466 2005-05-21 Bruno Haible <bruno@clisp.org>
2468 Add EURO SIGN to EUC-TW converter.
2469 * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
2470 (cns11643_1_mbtowc): Update.
2471 * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
2472 (cns11643_inv_uni2indx_page*): Update.
2473 * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
2475 * tests/EUC-TW.TXT: Add entry for 0x20AC.
2476 * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
2478 2005-05-03 Bruno Haible <bruno@clisp.org>
2480 * tools/Makefile (ALL): Add pt154.h.
2481 (pt154.h): New rule.
2482 * lib/encodings.def: Add PT154.
2483 * lib/pt154.h: New file.
2484 * lib/converters.h: Include it.
2485 * README, man/iconv_open.3: Add PT154.
2486 * NOTES: Mention PT154.
2487 * tests/PT154.TXT: New file.
2488 * tests/Makefile.in (check): Also test PT154.
2489 * tests/Makefile.msvc (check): Likewise.
2490 * tests/Makefile.os2 (check): Likewise.
2492 2005-03-29 Bruno Haible <bruno@clisp.org>
2494 Rename libiconv_plug.so to preloadable_libiconv.so.
2495 * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
2497 * lib/Makefile.in (preloadable_libiconv.so): Renamed from
2499 (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
2500 (preloadable_libiconv_solaris.so): Renamed from
2501 libiconv_plug_solaris.so.
2502 (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
2506 2005-03-29 Bruno Haible <bruno@clisp.org>
2508 Implement and document ATARIST.
2509 * tools/Makefile (ALL): Add atarist.h.
2510 (atarist.h): New rule.
2511 * lib/atarist.h: New file.
2512 * lib/converters.h: Include it.
2513 * lib/encodings_extra.def (ATARIST): New encoding.
2514 * README, man/iconv_open.3: Add ATARIST.
2515 * tests/Makefile.in (check-extra-yes): Check ATARIST.
2516 * tests/ATARIST.TXT: New file.
2518 2005-03-22 Bruno Haible <bruno@clisp.org>
2520 * build-aux: New directory, renamed from autoconf.
2521 * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2523 2005-03-16 Bruno Haible <bruno@clisp.org>
2525 * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
2526 HAVE_LONGLONG_64BIT.
2527 * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
2528 HAVE_LONGLONG_64BIT.
2529 * srclib/Makefile.am (stdint.h): Likewise.
2531 2005-03-14 Bruno Haible <bruno@clisp.org>
2533 * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
2534 extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
2535 printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
2536 wchar_t.m4, wint_t.m4.
2538 2005-03-13 Bruno Haible <bruno@clisp.org>
2540 Make stdout error checking reliable, also when writing to a NFS file.
2541 * src/iconv.c (main): Check the return value of fclose(stdout).
2542 * lib/genaliases.c (main): Likewise.
2543 * lib/genaliases2.c (main): Likewise.
2544 * lib/genflags.c (main): Likewise.
2545 * lib/gentranslit.c (main): Likewise.
2546 * tests/genutf8.c (main): Likewise.
2547 * tests/table-from.c (main): Likewise.
2548 * tests/table-to.c (main): Likewise.
2550 2005-03-13 Bruno Haible <bruno@clisp.org>
2552 * src/iconv.c (convert): Before outputting an error message, flush
2553 stdout and output a newline if suitable.
2555 2005-03-13 Bruno Haible <bruno@clisp.org>
2557 Improved error messages.
2558 * srclib/width.c: New file, from GNU clisp.
2559 * srclib/uniwidth.h: New file, from GNU clisp with modifications.
2560 * srclib/unitypes.h: New file, from GNU clisp with modifications.
2561 * srclib/cjk.h: New file, from GNU clisp.
2562 * srclib/streq.h: New file, from GNU clisp.
2563 * srclib/stdint_.h: New file, from gnulib.
2564 * m4/stdint.m4: New file, from gnulib.
2565 * m4/inttypes.m4: New file, from gnulib.
2566 * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
2567 (BUILT_SOURCES): New variable.
2568 (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
2570 * configure.in: Invoke gl_STDINT_H.
2571 * src/iconv.c: Include cjk.h, uniwidth.h.
2572 (line, column, cjkcode): New variables.
2573 (update_line_column): New function.
2574 (convert): Initialize line and column. In all error message, show also
2575 the line and column number.
2576 (main): Initialize cjkcode. Set up hooks to call update_line_column.
2578 2005-03-13 Bruno Haible <bruno@clisp.org>
2580 * include/iconv.h.in (iconv_canonicalize): New declaration.
2581 * lib/genaliases.c (emit_encoding): Take two output streams as
2582 arguments. To the second stream, emit a shell command for extracting
2583 offsets into the gperf generated string pool.
2584 (main): Write the shell commands into file descriptors 3 and 4.
2585 * lib/genaliases2.c (emit_encoding): Take two output streams as
2586 arguments. To the second stream, emit an expression for the offset
2587 into the string pool.
2588 (main): Write the offsets into file descriptor 3.
2589 * Makefile.devel (lib/aliases.gperf): Remove target.
2590 (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
2591 lib/canonical.h and lib/canonical_local.h.
2592 (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
2593 (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
2594 (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
2595 (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
2596 * lib/iconv.c (stringpool2): Provide default definition when it doesn't
2598 (all_canonical): New array.
2599 (iconv_canonicalize): New function.
2601 2005-03-13 Bruno Haible <bruno@clisp.org>
2603 * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
2604 iconv_hooks): New types.
2605 (ICONV_SET_HOOKS): New macro.
2606 * lib/converters.h (struct conv_struct): Add field 'hooks'.
2607 * lib/iconv.c (iconv_open): Initialize hooks to NULL.
2608 (iconvctl): Handle ICONV_SET_HOOKS.
2609 * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
2610 conversion of a character, call the uc_hook.
2611 * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
2613 * lib/genflags.c (iconv_hooks): Provide a dummy definition.
2615 2005-02-05 Bruno Haible <bruno@clisp.org>
2617 * src/iconv.c (main): In case of unsupported encodings, show a hint
2620 2005-01-06 Bruno Haible <bruno@clisp.org>
2622 * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
2623 * lib/Makefile.vms (DEFS): Likewise.
2624 Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2626 2005-01-05 Bruno Haible <bruno@clisp.org>
2628 * autoconf/config.rpath: Update from GNU gettext.
2630 2005-01-05 Bruno Haible <bruno@clisp.org>
2632 Assume automake-1.9.
2633 * Makefile.devel (AUTOMAKE): Assume automake-1.9.
2635 2005-01-05 Bruno Haible <bruno@clisp.org>
2637 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
2638 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2640 2004-11-11 Bruno Haible <bruno@clisp.org>
2642 * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
2644 Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2646 2004-09-21 Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>
2648 * djgpp/config.bat: Update.
2649 * djgpp/config.sed: Update.
2650 * djgpp/config.site: Update.
2651 * djgpp/edtest.bat: Update.
2652 * djgpp/fnchange.in: Update.
2653 * djgpp/Makefile.maint: Update.
2654 * djgpp/makefile.sed: Update.
2655 * djgpp/README.in: Update.
2656 * djgpp/sources.sed: Update.
2657 * djgpp/translit-check.sed: Update.
2659 2004-08-25 Bruno Haible <bruno@clisp.org>
2661 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
2662 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2664 2004-07-31 Bruno Haible <bruno@clisp.org>
2666 Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
2667 * tools/Makefile (jisx0213.h): Bump version number.
2668 * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
2669 U+2299 -> U+29BF, and add 10 new characters.
2670 * tools/cjk_tab_to_h.c (output_title): Bump year.
2671 (do_jisx0213): Update comments. Emit a conditional 'inline'.
2672 * lib/jisx0213.h: Regenerated.
2673 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
2674 ESC $ ( Q as a synonym of ESC $ ( O.
2675 (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
2676 * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
2677 U+2299 -> U+29BF, and add 10 new characters.
2678 * tests/SHIFT_JISX0213.TXT: Likewise.
2679 * tests/ISO-2022-JP-3-snippet: Update.
2680 * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2682 2004-07-22 Bruno Haible <bruno@clisp.org>
2684 * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
2685 * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
2686 * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
2687 * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2689 2004-07-22 Bruno Haible <bruno@clisp.org>
2691 * tools/Makefile (ALL): Add iso8859_11.h.
2692 (iso8859_11.h): New rule.
2693 * lib/encodings.def: Add ISO-8859-11.
2694 * lib/iso8859_11.h: New file.
2695 * lib/converters.h: Include it.
2696 * tests/ISO-8859-11.TXT: New file.
2697 * tests/Makefile.in (check): Also test ISO-8859-11.
2698 * tests/Makefile.msvc (check): Likewise.
2699 * tests/Makefile.os2 (check): Likewise.
2701 2004-07-17 Bruno Haible <bruno@clisp.org>
2703 * src/iconv.c (main): Terminate option parsing when option -- is seen.
2704 Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2706 2004-03-05 Bruno Haible <bruno@clisp.org>
2708 * src/Makefile.in (install): Make DESTDIR work on HP-UX.
2709 Reported by Bob Proulx <box@proulx.com>.
2711 2004-02-19 Bruno Haible <bruno@clisp.org>
2713 * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
2714 0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
2715 (viet_comp_table0301_len): Increment by 4.
2717 * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
2718 which are not entries in cp1255_comp_table_data.
2719 * lib/cp1258.h (cp1258_comp_bases): New array.
2720 (cp1258_mbtowc): Don't delay the handling of characters which are not
2721 relevant entries in viet_comp_table_data.
2722 * lib/tcvn.h (tcvn_comp_bases): New array.
2723 (tcvn_mbtowc): Don't delay the handling of characters which are not
2724 relevant entries in viet_comp_table_data.
2725 Reported by Alain Bench <veronatif@free.fr>.
2727 2004-02-02 Perry Rapp <lifelines_3_0_18@hotmail.com>
2728 Bruno Haible <bruno@clisp.org>
2730 * man/iconvctl.3: New file.
2731 * man/iconv.3: Refer to it in "See also".
2732 * man/iconv_open.3: Likewise.
2734 2004-01-24 Bruno Haible <bruno@clisp.org>
2736 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
2739 2004-01-20 Bruno Haible <bruno@clisp.org>
2741 Upgrade from gettext-0.14.
2743 * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
2744 instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
2745 * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
2746 xalloc.h. Remove xmalloc.h.
2747 (libicrt_a_LIBADD): Remove @ALLOCA@.
2748 * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
2749 (allocsa.obj): New rule.
2750 * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
2751 (allocsa.obj): New rule.
2752 * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
2753 (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
2757 2003-10-09 Bruno Haible <bruno@clisp.org>
2758 * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2760 2003-08-01 Bruno Haible <bruno@clisp.org>
2761 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2762 Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2764 2003-06-22 Bruno Haible <bruno@clisp.org>
2765 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
2766 the case when it is not used.
2767 Reported by Pavel Roskin <proski@gnu.org>.
2771 * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
2772 * m4/po.m4: Likewise.
2774 * m4/readlink.m4: New file, from GNU gettext.
2776 2003-11-30 Bruno Haible <bruno@clisp.org>
2777 * m4/allocsa.m4: New file.
2778 * m4/eealloc.m4: New file.
2779 * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
2782 2003-10-21 Bruno Haible <bruno@clisp.org>
2783 * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
2786 2003-08-24 Bruno Haible <bruno@clisp.org>
2787 * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
2788 since the substitution of @host@ may occur before the substitution of
2791 2003-08-23 Bruno Haible <bruno@clisp.org>
2792 * stdbool.m4: Replace with the version from gnulib, without
2795 2003-08-08 Paul Eggert <eggert@twinsun.com>
2796 * m4/extensions.m4: New file.
2797 * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
2798 Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
2800 2003-07-01 Bruno Haible <bruno@clisp.org>
2801 * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
2802 <sys/types.h> should be sufficient.
2803 Reported by Paul Eggert.
2805 2003-07-01 Bruno Haible <bruno@clisp.org>
2806 * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
2807 from aclocal-1.4-p4.
2808 Reported by Luke Schierer <lschiere@rackspace.com> and
2809 Michael C. Toren <mct@toren.net>.
2811 2003-07-01 Paul Eggert <eggert@twinsun.com>
2812 * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
2813 xreadlink.c now includes it unconditionally.
2815 2003-06-17 Paul Eggert <eggert@twinsun.com>
2816 * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
2817 for portability to POSIX 1003.1-2001. Backported from libtool-1.5.
2819 2003-05-28 Paul Eggert <eggert@twinsun.com>
2820 * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
2821 * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
2823 2002-12-24 Bruno Haible <bruno@clisp.org>
2824 * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
2825 (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
2827 (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
2832 2003-11-30 Bruno Haible <bruno@clisp.org>
2833 * srclib/alloca.c: Remove file.
2835 2003-11-30 Bruno Haible <bruno@clisp.org>
2836 Safer stack allocation.
2837 * srclib/allocsa.h: New file.
2838 * srclib/allocsa.c: New file.
2839 * canonicalize.c: Include allocsa.h.
2840 (__realpath): Use allocsa instead of alloca. Don't clobber errno right
2841 before returning NULL.
2842 * srclib/relocwrapper.c: Indirectly depends on allocsa.
2843 * srclib/setenv.c: Include allocsa.h.
2844 (alloca): Remove fallback definition.
2845 (freea): Remove macro.
2846 (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
2849 2003-11-17 Bruno Haible <bruno@clisp.org>
2850 * srclib/canonicalize.c: #undef realpath after <config.h> but before
2851 the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
2852 Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2854 2003-10-21 Bruno Haible <bruno@clisp.org>
2855 * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
2856 systems without symbolic links.
2858 2003-10-17 Bruno Haible <bruno@clisp.org>
2859 * srclib/binary-io.h: Avoid warnings on Cygwin.
2861 2003-10-09 Bruno Haible <bruno@clisp.org>
2862 * srclib/xalloc.h: Renamed from xmalloc.h.
2863 * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
2864 * srclib/relocatable.c: Likewise.
2865 * srclib/xmalloc.c: Likewise.
2866 * srclib/xreadlink.c: Likewise.
2867 * srclib/xstrdup.c: Likewise.
2869 2003-09-12 Paul Eggert <eggert@twinsun.com>
2870 * srclib/progreloc.c (get_full_program_name): Define via prototype.
2872 2003-09-12 Paul Eggert <eggert@twinsun.com>
2873 * srclib/setenv.c (clearenv): Define via prototype.
2875 2003-09-10 Bruno Haible <bruno@clisp.org>
2876 * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
2877 * srclib/unsetenv.c: Likewise.
2879 2003-08-28 Bruno Haible <bruno@clisp.org>
2880 * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
2881 a warning on QNX, which defines O_BINARY to 000000.
2883 2003-08-24 Bruno Haible <bruno@clisp.org>
2884 * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
2885 when MSVC7 <stdio.h> is included later.
2887 2003-08-24 Bruno Haible <bruno@clisp.org>
2888 * srclib/error.h: Use ANSI C "..." declarations when compiling with
2889 MSVC, even though it doesn't define __STDC__ by default.
2890 * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
2891 it doesn't define __STDC__ by default.
2893 2003-08-24 Bruno Haible <bruno@clisp.org>
2894 Support for building DLLs on Windows.
2895 * srclib/error.h (error_print_progname, error_message_count,
2896 error_one_per_line): Add DLL_VARIABLE attribute.
2897 * srclib/progname.h (program_name): Likewise.
2899 2003-08-24 Bruno Haible <bruno@clisp.org>
2900 * srclib/progname.h: Make this file includable in C++ mode: add extern
2902 * srclib/relocatable.h: Likewise.
2903 * srclib/xmalloc.h: Likewise.
2905 2003-08-22 Bruno Haible <bruno@clisp.org>
2906 * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
2908 * srclib/progname.c (error_with_progname): Remove variable.
2909 (maybe_print_progname): Remove function.
2911 2003-08-01 Bruno Haible <bruno@clisp.org>
2912 * srclib/relocatable.c (find_shared_library_fullname): Disable the code
2913 on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2915 2003-07-01 Paul Eggert <eggert@twinsun.com>
2916 * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
2917 having it depend on HAVE_SYS_TYPES_H.
2919 2003-06-23 Bruno Haible <bruno@clisp.org>
2920 Avoid compilation units that are empty after preprocessing.
2921 * srclib/canonicalize.c: Add dummy declaration.
2922 * srclib/strerror.c: Likewise.
2923 * srclib/error.c: Include <stdio.h> even if there's nothing to be
2926 2003-06-22 Bruno Haible <bruno@clisp.org>
2927 * srclib/relocatable.c (compute_curr_prefix): Comment out this function
2928 in the case when it is not used.
2929 Reported by Pavel Roskin <proski@gnu.org>.
2931 2003-05-28 Paul Eggert <eggert@twinsun.com>
2932 * srclib/pathmax.h: Include <limits.h> without checking for
2934 * srclib/xreadlink.c: Likewise.
2936 2004-01-20 Bruno Haible <bruno@clisp.org>
2938 Assume automake-1.8.
2939 * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
2940 (AUTOMAKE): Assume automake-1.8.
2941 * Makefile.in (am--refresh): New target.
2943 2004-01-23 Bruno Haible <bruno@clisp.org>
2945 * Version 1.9.2 released.
2947 2004-01-23 Bruno Haible <bruno@clisp.org>
2949 * tests/table-from.c: Include binary-io.h.
2950 (main): Switch stdout to binary mode.
2951 * tests/table-to.c: Include binary-io.h.
2952 (main): Switch stdout to binary mode.
2953 * tests/genutf8.c: Include binary-io.h.
2954 (main): Switch stdout to binary mode.
2955 * tests/Makefile.in (INCLUDES): Also look in srclib.
2956 (check): Pass INCLUDES when compiling genutf8.c.
2957 * tests/Makefile.os2 (INCLUDES): Also look in srclib.
2958 (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
2959 * tests/Makefile.msvc (INCLUDES): Also look in srclib.
2960 (check): Pass INCLUDES when compiling genutf8.c.
2962 2004-01-21 Bruno Haible <bruno@clisp.org>
2964 * src/iconv.c (force_binary): Remove variable.
2965 (usage): Don't document --binary any more.
2966 (convert, main): Always switch to binary mode.
2967 * tests/check-stateful.bat: Remove --binary option.
2968 * tests/check-translit.bat: Likewise.
2969 * tests/check-stateful.cmd: Likewise.
2970 * tests/check-translit.cmd: Likewise.
2971 * djgpp/stateful-check.sed: Remove MODE variable.
2972 * djgpp/translit-check.sed: Likewise.
2974 2004-01-21 Bruno Haible <bruno@clisp.org>
2976 * man/iconv.3: Fix description of return value in case of error.
2977 Reported by Jonathan Wakely <redi@users.sf.net>.
2979 2003-09-12 Paul Eggert <eggert@twinsun.com>
2981 * srclib/progreloc.c (get_full_program_name): Define via prototype.
2983 2003-08-15 Bruno Haible <bruno@clisp.org>
2985 * Makefile.devel (lib/translit.h): Add ulimit command so that the
2986 gentranslit program gets the stack it needs. Many Linux distributions
2987 allow only 8 MB of stack by default.
2989 2003-08-01 Bruno Haible <bruno@clisp.org>
2991 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
2993 * srclib/relocatable.c (find_shared_library_fullname): Likewise.
2994 Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2996 2003-07-02 Bruno Haible <bruno@clisp.org>
2998 * m4/lib-ld.m4: Update from GNU gettext.
2999 * m4/lib-prefix.m4: Update from GNU gettext.
3000 * m4/gettext.m4: Update from GNU gettext.
3001 * m4/intmax.m4: New file, from GNU gettext.
3002 * m4/longdouble.m4: New file, from GNU gettext.
3003 * m4/longlong.m4: New file, from GNU gettext.
3004 * m4/printf-posix.m4: New file, from GNU gettext.
3005 * m4/signed.m4: New file, from GNU gettext.
3006 * m4/wchar_t.m4: New file, from GNU gettext.
3007 * m4/wint_t.m4: New file, from GNU gettext.
3008 * m4/pathmax.m4: Update from GNU gettext and gnulib.
3009 * m4/ssize_t.m4: Update from GNU gettext and gnulib.
3010 * m4/xreadlink.m4: Update from GNU gettext and gnulib.
3011 * m4/readlink.m4: New file, from gnulib.
3012 * autoconf/install-reloc: Update from GNU gettext.
3013 * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
3014 * srclib/readlink.c: New file, from GNU gettext and gnulib.
3015 * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
3016 (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
3017 * configure.in: Invoke gl_FUNC_READLINK.
3019 2003-06-22 Bruno Haible <bruno@clisp.org>
3021 * src/Makefile.in (install): Link with the already installed library.
3022 This fixes a link error on Solaris.
3023 Reported by Paul Eggert.
3025 2003-06-08 Bruno Haible <bruno@clisp.org>
3027 * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
3029 2003-05-02 Bruno Haible <bruno@clisp.org>
3031 Support for libtool-1.5.
3032 * srclib/progname.c (set_program_name): Remove a leading
3033 "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
3035 2003-06-23 Bruno Haible <bruno@clisp.org>
3037 Avoid compilation units that are empty after preprocessing.
3038 * srclib/canonicalize.c: Add dummy declaration.
3039 * srclib/strerror.c: Likewise.
3040 * srclib/error.c: Include <stdio.h> even if there's nothing to be
3043 2003-06-22 Bruno Haible <bruno@clisp.org>
3045 Portability to mingw32.
3046 * m4/ssize_t.m4: New file, from GNU gettext.
3047 * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
3048 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3050 2003-06-22 Bruno Haible <bruno@clisp.org>
3052 Portability to mingw32.
3053 * lib/relocatable.c [WIN32]: Include <windows.h>.
3054 * srclib/relocatable.c: Likewise.
3055 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3057 2003-06-22 Bruno Haible <bruno@clisp.org>
3059 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3060 the case when it is not used.
3061 * srclib/relocatable.c (compute_curr_prefix): Likewise.
3062 Reported by Pavel Roskin <proski@gnu.org>.
3064 2003-06-18 Bruno Haible <bruno@clisp.org>
3066 * config/install-sh: Update from automake-1.7.5.
3068 2003-06-16 Bruno Haible <bruno@clisp.org>
3070 * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
3071 (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
3073 (GBK): Add aliases MS936, WINDOWS-936.
3074 Reported by Guido Flohr <guido@imperia.net>.
3076 2003-05-09 Bruno Haible <bruno@clisp.org>
3078 * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
3079 "extraneous semicolon" warning from Tru64 cc.
3081 2003-06-07 Bruno Haible <bruno@clisp.org>
3083 * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
3084 * Makefile.vms (config.h): New rule.
3085 (all, install): Depend on it.
3086 (all, install, installdirs, uninstall, check): Fix typo.
3087 (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
3089 * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
3090 (OBJECTS): Use libiconv.obj instead of iconv.obj.
3091 (libiconv.obj): Renamed from iconv.obj.
3092 * srclib/Makefile.vms (INCLUDES): Add parent directory.
3093 (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
3094 (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
3095 (alloca.h): New rule.
3096 (canonicalize.obj): Depend on it.
3097 (clean): Remove alloca.h.
3098 * src/Makefile.vms (datadir, localedir): New variables.
3099 (DEFS): Also define LOCALEDIR.
3100 (iconv.obj): Add flags for relocatability,
3101 (iconv.exe): Link with libicrt. Use link_options.
3102 * vms/link_options.opt: New file.
3103 Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
3105 2003-06-07 Bruno Haible <bruno@clisp.org>
3107 Support for relocatable data files even on Woe32.
3108 * lib/Makefile.msvc (PICFLAGS): Also define PIC.
3110 2003-05-22 Bruno Haible <bruno@clisp.org>
3112 * Version 1.9.1 released.
3114 2003-05-22 Bruno Haible <bruno@clisp.org>
3116 * lib/genaliases.c (main): Emit %pic instead of %null-strings.
3117 Change type of 'name' field to 'int'.
3118 * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
3119 invocation of macro S(), including the tag and a counter.
3120 (main): Use the command-line argument as tag.
3121 * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
3122 lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
3123 * lib/iconv.c (stringpool2_t): New type.
3124 (stringpool2_contents): New data table.
3125 (stringpool2): New macro.
3126 (sysdep_aliases): Make position-independent. Move #includes out to
3128 (aliases2_lookup): Update.
3130 (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
3131 (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
3132 * lib/aliases2.h: New file, extracted from lib/iconv.c.
3134 2003-05-20 Bruno Haible <bruno@clisp.org>
3136 * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
3137 Reported by Muraoka Taro <koron@tka.att.ne.jp>.
3139 2003-05-19 Bruno Haible <bruno@clisp.org>
3141 * windows/iconv.rc: Include <winver.h>.
3142 Reported by Perry Rapp.
3144 2003-05-18 Bruno Haible <bruno@clisp.org>
3146 * Version 1.9 released.
3148 2003-05-18 Bruno Haible <bruno@clisp.org>
3150 * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
3152 2003-05-18 Bruno Haible <bruno@clisp.org>
3154 * lib/Makefile.msvc (DEBUGFLAGS): New variable.
3155 (iconv.lib): Use it.
3156 * src/Makefile.msvc (DEBUGFLAGS): New variable.
3157 * tests/Makefile.msvc (DEBUGFLAGS): New variable.
3159 2003-05-17 Bruno Haible <bruno@clisp.org>
3161 * src/Makefile.msvc (libdir, datadir, localedir): New variables.
3162 (IIlibdir, IIdatadir, IIlocaledir): New variables.
3163 (CFLAGS): Define LOCALEDIR.
3164 (iconv_no_i18n.exe): New rule.
3165 (all): Depend on it.
3166 * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
3167 * tests/check-translit.bat: Likewise.
3169 2003-05-16 Bruno Haible <bruno@clisp.org>
3171 * lib/genaliases.c (main): Emit declarations for gperf-3.0.
3172 * Makefile.devel (lib/aliases.h): Remove gperf command line options;
3173 add new option "-m 10" for gperf-3.0.
3175 2003-05-12 Bruno Haible <bruno@clisp.org>
3177 * m4/error.m4: Update from gettext.
3179 2003-05-12 Bruno Haible <bruno@clisp.org>
3181 * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
3183 2003-05-12 Bruno Haible <bruno@clisp.org>
3185 * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
3188 2003-05-09 Bruno Haible <bruno@clisp.org>
3190 * srclib/error.c: Update from gnulib with modifications.
3191 * srclib/unlocked-io.h: New file, from gnulib.
3192 * m4/strerror_r.m4: New file, from gnulib.
3193 * m4/unlocked-io.m4: New file, from gnulib.
3194 * Makefile.devel (aclocal.m4): Depend on them.
3196 2003-05-08 Bruno Haible <bruno@clisp.org>
3198 * Makefile.msvc (IIPREFIX): New variable.
3199 * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
3200 * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
3201 IIincludedir): New variables.
3202 (INCLUDES): Add -I..\windows.
3203 (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
3205 Patches by Perry Rapp.
3207 2003-05-07 Bruno Haible <bruno@clisp.org>
3209 * README.woe32: Fix instructions for step 1.
3210 * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
3211 (strtoul.obj): Remove rule.
3212 Reported by Perry Rapp.
3214 2003-05-07 Bruno Haible <bruno@clisp.org>
3216 * Makefile.vms: New file.
3217 * lib/Makefile.vms: New file.
3218 * srclib/Makefile.vms: New file.
3219 * src/Makefile.vms: New file.
3220 * man/Makefile.vms: New file.
3221 * tests/Makefile.vms: New file.
3222 * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
3224 (all): Depend on them.
3226 2003-05-07 Bruno Haible <bruno@clisp.org>
3228 * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
3229 (findprog.obj): Remove rule.
3230 * src/Makefile.msvc (includedir): New variable.
3232 2003-05-06 Bruno Haible <bruno@clisp.org>
3234 * lib/translit.def: Upgrade to Unicode 4.0.
3236 2003-05-06 Bruno Haible <bruno@clisp.org>
3238 * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
3239 * srclib/Makefile.msvc (CFLAGS): Likewise.
3241 * srclib/Makefile.msvc (INCLUDES): Add -I.. .
3242 Reported by Perry Rapp.
3244 * Makefile.msvc (config.h): New rule.
3245 (all): Depend on it.
3246 (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
3247 Reported by Perry Rapp.
3249 2003-05-06 Bruno Haible <bruno@clisp.org>
3251 * autoconf/config.guess: Update to GNU version 2003-02-22.
3252 * autoconf/config.sub: Likewise.
3254 2003-05-06 Bruno Haible <bruno@clisp.org>
3256 * m4/lib-link.m4: Update from GNU gettext.
3257 * autoconf/config.rpath: Update from GNU gettext.
3259 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
3260 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
3262 * m4/gettext.m4: Update from GNU gettext.
3263 * m4/nls.m4: Update from GNU gettext.
3264 * m4/po.m4: Update from GNU gettext.
3265 * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
3267 2003-04-12 Bruno Haible <bruno@clisp.org>
3269 Support for OpenVMS 7.3.
3270 * lib/iconv.c (USE_OSF1): Define also on VMS.
3272 2003-04-12 Bruno Haible <bruno@clisp.org>
3274 Better support for FreeBSD.
3275 * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
3276 aliases, for compatibility with earlier FreeBSD iconv implementation
3277 by Konstantin Chuguev.
3278 * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
3280 * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
3282 2003-04-12 Bruno Haible <bruno@clisp.org>
3284 * configure.in (mandir): Change default value.
3285 * Makefile.in (datadir): New variable.
3286 (install, installdirs, uninstall): Pass datadir to po and man
3288 * Makefile.os2 (datadir): New variable.
3289 (mandir): Use it instead of prefix.
3290 (install, uninstall): Pass datadir to man directory.
3291 * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
3292 * man/Makefile.in (datadir): New variable.
3293 (docdir): Use it instead of prefix.
3294 (install, installdirs): Update.
3295 * man/Makefile.os2 (datadir): New variable.
3296 (mandir): Use it instead of prefix.
3297 * man/Makefile.msvc (datadir): New variable.
3298 (mandir, docdir): Use it instead of prefix.
3299 (install, installdirs): Update.
3301 2003-04-06 Bruno Haible <bruno@clisp.org>
3303 Make it possible to build with or without libintl support on Woe32.
3304 * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
3305 * Makefile.msvc (NO_NLS): New variable.
3306 * srclib/Makefile.msvc (NO_NLS): New variable.
3307 (CFLAGS, INCLUDES): Use them.
3308 * src/Makefile.msvc (NO_NLS): New variable.
3309 (NLSFLAGS, INCINTL, LIBINTL): New variables.
3310 (CFLAGS, INCLUDES, iconv.exe): Use them.
3312 2003-04-12 Bruno Haible <bruno@clisp.org>
3314 * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
3315 variants transliteration failed with RET_ILUNI, don't return
3317 Reported by the FreeBSD porters.
3319 2003-04-06 Bruno Haible <bruno@clisp.org>
3321 * srclib/binary-io.h: New file, from GNU gettext.
3322 * src/iconv.c: Include it.
3323 (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
3325 2003-04-05 Bruno Haible <bruno@clisp.org>
3327 Support for relocatable installation.
3328 * m4/alloca.m4: New file, from GNU gettext.
3329 * m4/canonicalize.m4: New file, from GNU gettext.
3330 * m4/error.m4: New file, from GNU gettext.
3331 * m4/onceonly.m4: New file, from GNU gettext.
3332 * m4/pathmax.m4: New file, from GNU gettext.
3333 * m4/relocatable.m4: New file, from GNU gettext.
3334 * m4/setenv.m4: New file, from GNU gettext.
3335 * m4/stdbool.m4: New file, from GNU gettext.
3336 * m4/strerror.m4: New file, from GNU gettext.
3337 * m4/xreadlink.m4: New file, from GNU gettext.
3338 * autoconf/config.libpath: New file, from GNU gettext.
3339 * autoconf/install-reloc: New file, from GNU gettext.
3340 * autoconf/reloc-ldflags: New file, from GNU gettext.
3341 * autoconf/missing: New file, from GNU automake 1.7.3.
3342 * lib/relocatable.h: New file, from GNU gettext.
3343 * lib/relocatable.c: New file, from GNU gettext.
3344 * srclib/alloca.c: New file, from GNU gettext.
3345 * srclib/alloca_.h: New file, from GNU gettext.
3346 * srclib/canonicalize.c: New file, from GNU gettext.
3347 * srclib/canonicalize.h: New file, from GNU gettext.
3348 * srclib/error.c: New file, from GNU gettext.
3349 * srclib/error.h: New file, from GNU gettext.
3350 * srclib/exit.h: New file, from GNU gettext.
3351 * srclib/gettext.h: New file, from GNU gettext.
3352 * srclib/memmove.c: New file, from GNU gettext.
3353 * srclib/pathmax.h: New file, from GNU gettext.
3354 * srclib/progname.c: New file, from GNU gettext.
3355 * srclib/progname.h: New file, from GNU gettext.
3356 * srclib/progreloc.c: New file, from GNU gettext.
3357 * srclib/relocatable.c: New file, from GNU gettext.
3358 * srclib/relocatable.h: New file, from GNU gettext.
3359 * srclib/relocwrapper.c: New file, from GNU gettext.
3360 * srclib/setenv.c: New file, from GNU gettext.
3361 * srclib/setenv.h: New file, from GNU gettext.
3362 * srclib/stdbool.h.in: New file, from GNU gettext.
3363 * srclib/strerror.c: New file, from GNU gettext.
3364 * srclib/unsetenv.c: New file, from GNU gettext.
3365 * srclib/xmalloc.c: New file, from GNU gettext.
3366 * srclib/xmalloc.h: New file, from GNU gettext.
3367 * srclib/xreadlink.c: New file, from GNU gettext.
3368 * srclib/xreadlink.h: New file, from GNU gettext.
3369 * srclib/xstrdup.c: New file, from GNU gettext.
3370 * srclib/Makefile.am: New file.
3371 * srclib/Makefile.msvc: New file.
3372 * windows/alloca.h: New file, from GNU gettext.
3373 * windows/stdbool.h: New file, from GNU gettext.
3374 * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
3375 Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
3376 string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
3377 AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
3378 gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
3379 gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
3380 * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
3381 HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
3382 localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
3384 * lib/Makefile.in (DEFS): New variable.
3385 (SOURCES): Add localcharset.c and relocatable.c.
3386 (OBJECTS): Add localcharset.lo and relocatable.lo.
3387 (LIBCHARSET_OBJECTS): Remove variable.
3388 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3389 libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
3390 (iconv.lo): Use $(DEFS).
3391 (localcharset.lo, relocatable.lo): New rules.
3392 * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
3393 ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
3394 set_relocation_prefix, relocate. Remove $(PICFLAGS).
3395 (INCLUDES): Simplify.
3396 (SOURCES): Remove variable.
3397 (OBJECTS): Add localcharset.obj and relocatable.obj.
3398 (LIBCHARSET_OBJECTS): Remove variable.
3399 (iconv.obj): Add $(PICFLAGS).
3400 (localcharset.obj, relocatable.obj): New rules.
3401 (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
3402 * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
3403 * src/gettext.h: Remove file.
3404 * src/iconv.c: Include progname.h and relocatable.h.
3405 (ICONV_CONST): Define to const if the system has no iconv.
3406 (main): Invoke set_program_name. Relocate LOCALEDIR.
3407 * src/Makefile.in (top_srcdir): New variable.
3408 (INCLUDES): Add .. and ../srclib.
3409 (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
3410 (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
3411 (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
3412 RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
3414 (iconv): Use $(iconv_LDFLAGS).
3415 (install): Use $(INSTALL_PROGRAM_ENV).
3416 (distclean): Drop removing config.h.
3417 * src/Makefile.msvc (INCLUDES): Add .., simplify.
3418 * tests/Makefile.msvc (INCLUDES): Simplify.
3419 * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
3420 (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
3421 (all): Depend on them.
3422 (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
3423 m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
3424 m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
3425 (lib/config.h.msvc): Additional processing.
3426 * Makefile.in (all, install, installdirs, uninstall, check): Recurse
3428 (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
3430 (distclean, maintainerclean): Remove also config.h and some stamps.
3431 * Makefile.msvc (all, install, installdirs, uninstall, check,
3432 mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
3433 * INSTALL.generic: Document --enable-relocatable and
3434 --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
3435 LDFLAGS. The lib-link.m4 macros make this unnecessary.
3437 2003-04-05 Bruno Haible <bruno@clisp.org>
3439 * configure.in: Bump version number to 1.9.
3440 * include/iconv.h.in (_LIBICONV_VERSION): Bump.
3441 * windows/iconv.rc: Bump version number.
3442 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
3444 2003-04-05 Bruno Haible <bruno@clisp.org>
3446 * Makefile.msvc (PREFIX): New variable.
3448 (distclean, maintainer-clean): Drop Unix specific removals.
3449 * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
3451 (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
3452 (clean): Drop Unix specific removal.
3453 * src/Makefile.msvc (PREFIX): New variable.
3455 (clean): Drop Unix specific removal.
3456 (distclean): Likewise.
3457 * tests/Makefile.msvc (clean): Drop Unix specific removal.
3458 (distclean): Likewise.
3460 2003-04-05 Bruno Haible <bruno@clisp.org>
3462 * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
3464 2003-04-05 Bruno Haible <bruno@clisp.org>
3466 * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
3467 CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
3469 * m4/gettext.m4: Update from GNU gettext.
3470 * m4/iconv.m4: Update from GNU gettext.
3471 * m4/lcmessage.m4: Update from GNU gettext.
3472 * m4/progtest.m4: Update from GNU gettext.
3473 * m4/libtool.m4: Update from GNU gettext.
3474 2003-02-16 Bruno Haible <bruno@clisp.org>
3475 Workaround autoconf >= 2.52 breakage.
3476 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
3477 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
3478 * autoconf/ltmain.sh: Update from GNU gettext.
3479 2003-02-18 Bruno Haible <bruno@clisp.org>
3480 Fix the 2002-09-16 fix.
3481 * ltmain.sh (install): If "ln -s -f" fails (this is the case
3482 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
3484 2003-04-05 Bruno Haible <bruno@clisp.org>
3486 Start using automake.
3487 * configure.in: Add AM_INIT_AUTOMAKE invocation.
3488 (PACKAGE, VERSION): Remove.
3489 Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
3490 Use AC_PROG_LN_S instead of CL_PROG_LN_S.
3491 Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
3492 Reorder so that AC_CANONICAL_HOST comes early but still after
3494 * m4/ranlib.m4: Remove file.
3495 * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
3496 * Makefile.devel (CLISP_DIR): Comment out.
3497 (AUTOCONF_FILES): Change to aclocal.m4.
3498 (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
3499 (configure.in): Drop --include option.
3501 2003-03-17 Bruno Haible <bruno@clisp.org>
3503 Improved MSVC support.
3504 * Makefile.msvc (prefix): Use less Unixy value.
3505 (local_prefix): Remove variable.
3506 (libdir, includedir, mandir): Use backslashes.
3507 (bindir, datadir, localedir, docdir): New variables.
3508 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3509 (all): Recurse into po/ and man/.
3510 (install, installdirs, uninstall): Rewritten.
3511 (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
3513 * lib/Makefile.msvc (prefix): Use less Unixy value.
3514 (local_prefix): Remove variable.
3515 (libdir): Use backslashes.
3516 (bindir): New variable.
3517 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
3518 (RESOURCES): Enable iconv.res.
3519 (install, installdirs, uninstall): New rules.
3520 (clean): Remove config.h.
3521 (distclean): Don't remove config.h here.
3522 * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
3523 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
3524 (install, installdirs, uninstall): New rules.
3525 * man/Makefile.msvc: New file.
3526 * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
3527 * Makefile.devel (all): Depend on po/Makefile.msvc.
3528 (po/Makefile.msvc): New rule.
3529 * windows/iconv.rc: Update.
3530 * README.woe32: Mention automatic installation command.
3532 Rename libcharset.h to localcharset.h.
3533 * lib/iconv.c: Include localcharset.h, not libcharset.h.
3534 * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
3535 (all, install): Update dependencies.
3536 (all): Create lib/localcharset.h, not lib/libcharset.h.
3537 (mostlyclean, clean, distclean, maintainer-clean): Remove
3538 lib/localcharset.h, not lib/libcharset.h.
3539 * djgpp/README.in, djgpp/README: Update.
3540 * djgpp/config.bat: Update.
3541 * djgpp/config.sed: Update.
3542 * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
3544 2003-01-31 Bruno Haible <bruno@clisp.org>
3546 * src/Makefile.in (all): Don't do the chmod if it has already been
3549 2003-01-31 Bruno Haible <bruno@clisp.org>
3551 * lib/loop_unicode.h (unicode_transliterate): Enable recursive
3552 transliteration. Idea from Perry Rapp.
3553 * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
3554 Change element type of translit_data to 'unsigned int'.
3555 * lib/translit.def: Many new transliterations, mostly taken from glibc.
3556 * lib/translit.h: Regenerated.
3557 * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
3558 * tests/Makefile.in (check): Add Translit1 check.
3559 * tests/Makefile.msvc (check): Likewise.
3560 * tests/Makefile.os2 (check): Likewise.
3561 * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
3562 improved transliteration cannot do.
3564 2003-02-14 Bruno Haible <bruno@clisp.org>
3566 * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
3567 (configure): Update rule.
3569 2003-01-03 Albert Chin <libtool@thewrittenword.com>
3571 * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
3572 dependency_libs variable directly down to the linker.
3573 Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
3575 2003-01-01 Bruno Haible <bruno@clisp.org>
3577 * src/Makefile.in (install): Use libiconv.la in ../lib, not in
3578 $(libdir), so that installing with DESTDIR works.
3579 Reported by Michael Adams <michael@michaeladams.org>.
3581 2003-01-01 Bruno Haible <bruno@clisp.org>
3583 * Makefile.in (mkinstalldirs): New variable.
3584 (install-lib, install, installdirs): Use it instead of mkdir.
3585 * lib/Makefile.in (mkinstalldirs): New variable.
3586 (install-lib, install, installdirs): Use it instead of mkdir.
3587 * man/Makefile.in (mkinstalldirs): New variable.
3588 (install, installdirs): Use it instead of mkdir.
3589 * src/Makefile.in (mkinstalldirs): New variable.
3590 (install, installdirs): Use it instead of mkdir.
3592 2002-09-27 Bruno Haible <bruno@clisp.org>
3594 * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
3596 2002-11-07 Bruno Haible <bruno@clisp.org>
3598 * m4/libtool.m4: Upgrade to libtool-1.4.3.
3599 * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
3601 2002-07-14 Bruno Haible <bruno@clisp.org>
3603 * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
3605 2002-06-12 Bruno Haible <bruno@clisp.org>
3607 * configure.in: Use new AC_* names of libtool macros. Invoke
3608 AC_LIBTOOL_WIN32_DLL.
3610 2002-12-19 Bruno Haible <bruno@clisp.org>
3612 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
3613 Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
3615 2002-11-07 Bruno Haible <bruno@clisp.org>
3617 Make "make install" without prior "make" work.
3618 * Makefile.in (lib/libcharset.h): New rule.
3619 (all, install): Depend on it.
3620 Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
3622 2002-10-28 Bruno Haible <bruno@clisp.org>
3624 * man/Makefile.in (install): Change directory back to the working
3625 directory, so that install-sh (which may be a relative pathname) is
3626 found in the right place.
3628 2002-09-16 Bruno Haible <bruno@clisp.org>
3630 * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
3631 "rm -f && ln -s" to make a symlink for a shared library.
3632 Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3634 2002-09-02 Bruno Haible <bruno@clisp.org>
3636 * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
3638 2002-08-16 Bruno Haible <bruno@clisp.org>
3640 * src/iconv.c (main): Perform fflush before testing ferror(stdout).
3642 2002-05-29 Bruno Haible <bruno@clisp.org>
3644 * Version 1.8 released.
3646 2002-05-26 Bruno Haible <bruno@clisp.org>
3648 * lib/c99.h: New file.
3649 * lib/converters.h: Include it.
3650 * lib/encodings.def (C99): New encoding.
3651 * README, man/iconv_open.3: Document C99 encoding.
3653 2002-05-26 Bruno Haible <bruno@clisp.org>
3655 * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
3657 (java_wctomb): Produce 12-byte sequences for non-BMP characters.
3659 2002-05-29 Bruno Haible <bruno@clisp.org>
3661 Fix installation of iconv program when linked with a libintl that was
3662 built against an earlier libiconv.
3663 * src/iconv.c: Conditionally disable NLS.
3664 * src/iconv_no_i18n.c: New file.
3665 * src/Makefile.in (libdir): New variable.
3666 (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
3667 directory writable, so iconv executable can be created during "make
3669 (iconv): Remove rule.
3670 (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
3671 (install): Link iconv now, after the new libiconv.so is installed.
3672 (clean): Also remove iconv_no_i18n.
3673 * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
3675 * tests/check-stateful: Use iconv_no_i18n, not iconv.
3676 * tests/check-translit: LIkewise.
3677 * tests/check-translitfailure: Likewise.
3679 2002-05-29 Bruno Haible <bruno@clisp.org>
3681 * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
3682 * m4/install.m4: Remove file.
3683 * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
3685 2002-05-24 Bruno Haible <bruno@clisp.org>
3687 * lib/jisx0213.h: Use 'inline' only conditionally.
3689 2002-05-18 Bruno Haible <bruno@clisp.org>
3691 * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
3692 README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
3693 Bump version number.
3694 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
3696 2002-02-06 Bruno Haible <bruno@clisp.org>
3698 * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
3700 2002-02-02 Bruno Haible <bruno@clisp.org>
3702 * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
3704 2001-11-03 Bruno Haible <haible@clisp.cons.org>
3706 * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
3707 "make install" succeeds.
3709 2002-05-18 Bruno Haible <bruno@clisp.org>
3711 * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
3712 from the command line. Needed to ensure that the new libiconv version
3715 2002-05-14 Bruno Haible <bruno@clisp.org>
3717 Implement and document CP853, TDS565, RISCOS-LATIN1.
3718 * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
3719 (cp853.h, tds565.h, riscos1.h): New rules.
3720 * lib/cp853.h: New file.
3721 * lib/tds565.h: New file.
3722 * lib/riscos1.h: New file.
3723 * lib/converters.h: Include them.
3724 * lib/encodings_dos.def (CP853): New encoding.
3725 * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
3726 * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
3727 * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
3729 * tests/Makefile.msvc (check): Check CP853.
3730 * tests/CP853.TXT: New file.
3731 * tests/TDS565.TXT: New file.
3732 * tests/RISCOS-LATIN1.TXT: New file.
3734 * lib/cp860.h (cp860_wctomb): Optimize.
3736 2002-05-12 Bruno Haible <bruno@clisp.org>
3738 * tools/Makefile (ksc5601.h): Add two extra characters.
3739 * lib/ksc5601.h: Regenerated.
3740 * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
3741 * tests/CP949.TXT: Likewise.
3742 * tests/JOHAB.TXT: Likewise.
3744 2002-05-12 Bruno Haible <bruno@clisp.org>
3746 * README: Mention extra encodings.
3747 * man/iconv_open.3: Likewise. Improve formatting in text and html
3750 2002-05-12 Bruno Haible <bruno@clisp.org>
3752 * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
3754 2002-05-12 Bruno Haible <bruno@clisp.org>
3756 * Makefile.devel (AUTOCONF): New variable.
3757 (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
3758 (configure): Use the AUTOCONF variable.
3759 * autoconf/autoconf: Remove file.
3760 * autoconf/autoconf.m4: Remove file.
3761 * autoconf/autoconf.m4f: Remove file.
3763 2002-05-12 Bruno Haible <bruno@clisp.org>
3765 * tools/JISX0213.TXT: New file.
3766 * tools/cjk_tab_to_h.c (do_jisx0213): New function.
3767 (main): Accept "jisx0213".
3768 * tools/Makefile (all): Add jisx0213.h.
3769 (jisx0213.h): New rule.
3770 * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
3771 * lib/euc_jisx0213.h: New file.
3772 * lib/shift_jisx0213.h: New file.
3773 * lib/iso2022_jp3.h: New file.
3774 * lib/converters.h: Include them.
3775 * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
3776 ISO-2022-JP-3): New encodings.
3777 * tests/EUC-JISX0213.TXT: New file.
3778 * tests/SHIFT_JISX0213.TXT: New file.
3779 * tests/ISO-2022-JP-3-snippet: New file.
3780 * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
3781 * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
3782 SHIFT_JISX0213, ISO-2022-JP-3.
3783 * tests/check-stateless: Add support for encodings which contain
3784 precomposed Unicode characters, by eliminating precomposed characters
3785 before the comparison.
3786 * tests/table-from.c (main): Fix usage message.
3787 * tests/table-to.c (main): Make it work for encodings for which the
3788 "to" direction is stateful.
3790 2002-05-09 Bruno Haible <bruno@clisp.org>
3792 New configure option --enable-extra-encodings.
3793 * lib/encodings_extra.def: New file.
3794 * lib/converters.h: Handle USE_EXTRA.
3795 * lib/genaliases2.c (main): Handle USE_EXTRA.
3796 * lib/genflags.c: Define USE_EXTRA.
3797 (main): Include encodings_extra.def.
3798 * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
3800 * lib/config.h.in (ENABLE_EXTRA): New macro.
3801 * configure.in: Accept option --enable-extra-encodings.
3802 * Makefile.devel (all): Depend on lib/aliases_extra.h.
3803 (lib/aliases_extra.h): New rule.
3804 (lib/flags.h): Depend on lib/encodings_extra.def.
3805 * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
3807 (check): Invoke check-extra.
3808 * tests/Makefile.msvc (check): Also check the DOS encodings.
3810 Support for testing the AIX encodings.
3811 * tests/CP856.TXT: New file.
3812 * tests/CP922.TXT: New file.
3813 * tests/CP1046.TXT: New file.
3814 * tests/CP1124.TXT: New file.
3815 * tests/CP1129.TXT: New file.
3816 * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
3817 * tests/CP1162.TXT: New file.
3818 * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
3820 Support for testing the OSF/1 encodings.
3821 * tests/DEC-KANJI.TXT: New file.
3822 * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
3824 Support for testing the DOS encodings.
3825 * tests/CP437.TXT: New file.
3826 * tests/CP737.TXT: New file.
3827 * tests/CP775.TXT: New file.
3828 * tests/CP852.TXT: New file.
3829 * tests/CP855.TXT: New file.
3830 * tests/CP857.TXT: New file.
3831 * tests/CP858.TXT: New file.
3832 * tests/CP860.TXT: New file.
3833 * tests/CP861.TXT: New file.
3834 * tests/CP863.TXT: New file.
3835 * tests/CP864.TXT: New file.
3836 * tests/CP865.TXT: New file.
3837 * tests/CP869.TXT: New file.
3838 * tests/CP1125.TXT: New file.
3840 2002-05-09 Bruno Haible <bruno@clisp.org>
3842 Implement more ASCII compatible DOS encodings.
3843 * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
3844 (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
3845 * lib/cp737.h: New file.
3846 * lib/cp858.h: New file.
3847 * lib/cp860.h: New file.
3848 * lib/cp863.h: New file.
3849 * lib/converters.h: Include them.
3850 * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
3852 2002-05-09 Bruno Haible <bruno@clisp.org>
3854 Implement new ASCII compatible encodings from IBM.
3855 * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
3856 (cp1161.h, cp1162.h, cp1163.h): New rules.
3857 * lib/cp1161.h: New file.
3858 * lib/cp1162.h: New file.
3859 * lib/cp1163.h: New file.
3860 * lib/converters.h: Include them.
3861 * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
3863 2002-05-09 Bruno Haible <bruno@clisp.org>
3865 Implement and document KOI8-T.
3866 * tools/Makefile (ALL): Add koi8_t.h.
3867 (koi8_t.h): New rule.
3868 * lib/koi8_t.h: New file.
3869 * lib/converters.h: Include it.
3870 * lib/encodings.def (KOI8-T): New encoding.
3871 * README, man/iconv_open.3: Add KOI8-T.
3872 * tests/Makefile.in (tests): Check KOI8-T.
3873 * tests/Makefile.os2 (tests): Likewise.
3874 * tests/Makefile.msvc (tests): Likewise.
3875 * tests/KOI8-T.TXT: New file.
3877 2002-05-09 Bruno Haible <bruno@clisp.org>
3879 * tools/8bit_tab_to_h.c (main): Update copyright year.
3880 * tools/cjk_variants.c (main): Likewise.
3882 2002-05-08 Bruno Haible <bruno@clisp.org>
3884 * README.woe32: Renamed from README.win32.
3886 2002-05-08 Bruno Haible <bruno@clisp.org>
3888 * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
3889 because the Woe32 consoles use them.
3891 2002-05-04 Bruno Haible <bruno@clisp.org>
3893 * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
3894 without writing an output character, restore cd->istate to its value
3895 before the xxx_mbtowc call. Otherwise we lose some characters during
3896 CP1255/CP1258/TCVN to Unicode conversion.
3897 (unicode_loop_reset): Likewise for the xxx_flushwc call.
3898 * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
3899 files large enough to test against the bug.
3900 * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
3901 * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
3903 2002-04-28 Bruno Haible <bruno@clisp.org>
3905 * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
3906 * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
3907 * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
3908 * lib/armscii_8.h: Regenerated.
3910 2002-04-28 Bruno Haible <bruno@clisp.org>
3912 * src/iconv.c: Include gettext.h.
3914 (usage, print_version, convert, main): Internationalize.
3915 (main): Call setlocale, bindtextdomain, textdomain.
3916 * src/gettext.h: New file, from GNU gettext 0.11.2.
3917 * src/config.h.in: New file, needed for ENABLE_NLS.
3918 * src/Makefile.in (datadir, localedir): New variables.
3919 (iconv): Link with @LTLIBINTL@.
3920 (iconv.@OBJEXT@): Define LOCALEDIR.
3921 (distclean): Remove config.h.
3922 * po: New directory.
3923 * Makefile.in (all, install, installdirs, uninstall, check,
3924 mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
3926 * autoconf/mkinstalldirs: New file, from automake-1.5.
3927 * ABOUT-NLS: New file, from GNU gettext 0.11.2.
3928 * m4/codeset.m4: New file, from GNU gettext 0.11.2.
3929 * m4/gettext.m4: New file, from GNU gettext 0.11.2.
3930 * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
3931 * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
3932 * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
3933 * m4/progtest.m4: New file, from GNU gettext 0.11.2.
3934 * configure.in: Require autoconf-2.52, needed for multiple config.h.in
3935 files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
3936 (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
3937 * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
3939 2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
3941 * configure.in (AC_OUTPUT): Add po/Makefile.in.
3943 2002-04-28 Bruno Haible <bruno@clisp.org>
3945 * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
3946 * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
3947 * m4/general.m4: New file, from GNU clisp.
3948 * m4/proto.m4: New file, from GNU clisp.
3949 * m4/ranlib.m4: New file, from GNU clisp.
3950 * m4/install.m4: New file, from GNU clisp.
3951 * m4/cp.m4: New file, from GNU clisp.
3952 * m4/ln.m4: New file, from GNU clisp.
3953 * m4/endian.m4: New file, from GNU clisp.
3954 * m4/iconv.m4: New file, from GNU gettext 0.11.2.
3955 * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
3956 * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
3957 * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
3958 * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
3959 * m4/libtool.m4: New file, based on libtool-1.4.2.
3960 * Makefile.devel (ACLOCAL): Remove variable.
3961 (ACSELECT): Remove variable.
3962 (OTHERMACROS): Remove variable.
3963 (m4/*.m4): New rules.
3964 (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
3965 * configure.in: Invoke AM_ICONV instead of CL_ICONV.
3967 2002-04-06 Bruno Haible <bruno@clisp.org>
3969 Upgrade to Unicode 3.2.
3970 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
3971 (compact_large_charset2uni): Add an argument. Determine optimal shift.
3972 Copy modified enc->charset2uni table.
3973 (output_charset2uni): Deal with shift other than 8. Copy encoding, so
3974 as to not disturb subsequent output_uni2charset[_sparse] call.
3975 * lib/hkscs.h: Regenerated.
3976 * tests/BIG5-HKSCS.TXT: Update.
3977 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
3979 2002-04-06 Bruno Haible <bruno@clisp.org>
3981 Upgrade to Unicode 3.2.
3982 * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
3983 cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
3984 cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
3985 CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
3986 * lib/cns11643_3.h: Regenerated.
3987 * lib/cns11643_4a.h: Regenerated.
3988 * lib/cns11643_4b.h: Regenerated.
3989 * lib/cns11643_5.h: Regenerated.
3990 * lib/cns11643_6.h: Regenerated.
3991 * lib/cns11643_7.h: Regenerated.
3992 * lib/cns11643_15.h: Regenerated.
3993 * lib/cns11643_inv.h: Regenerated.
3994 * tests/EUC-TW.TXT: Update.
3996 2002-01-17 Bruno Haible <bruno@clisp.org>
3998 * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
3999 (tcvn_mbtowc): Small optimization.
4001 2002-01-13 Bruno Haible <bruno@clisp.org>
4003 New options -l, -c, -s.
4004 * src/iconv.c (discard_unconvertible, silent): New variables.
4005 (usage): Document options -l, -c, -s.
4006 (print_one): New function.
4007 (convert): If silent is true, don't print error messages about the
4008 conversion to stderr. If discard_unconvertible is true, set the
4009 iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
4010 return the same return code as when discard_unconvertible is false.
4011 (main): Accept options -l, -c, -s. Implement option -l.
4012 * man/iconv.1: Document options -l, -c, -s.
4014 2002-01-13 Bruno Haible <bruno@clisp.org>
4016 Support for "iconv -c".
4017 * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
4018 (ICONV_SET_DISCARD_ILSEQ): Likewise.
4019 * lib/converters.h (struct conv_struct): New field discard_ilseq.
4020 * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
4021 has an "//IGNORE" suffix, and to false otherwise.
4022 (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
4023 * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
4024 true, skip one input character instead of returning EILSEQ.
4025 (unicode_loop_reset): Likewise.
4026 * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
4027 (wchar_to_loop_convert): Likewise.
4029 2002-01-13 Bruno Haible <bruno@clisp.org>
4031 Support for "iconv -l".
4032 * include/iconv.h.in (iconvlist): New declaration.
4033 * Makefile.devel (lib/aliases.h): Change gperf options.
4034 * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
4037 2002-01-06 Bruno Haible <bruno@clisp.org>
4039 * lib/loop_unicode.h (unicode_transliterate): If the transliteration
4040 fails due to limited output encoding, return RET_ILUNI, not
4041 RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4042 * tests/check-translitfailure: New file.
4043 * tests/TranslitFail1.ISO-8859-1: New file.
4044 * tests/Makefile.in (check): Call check-translitfailure.
4046 2001-12-15 Bruno Haible <bruno@clisp.org>
4048 * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
4049 Shift_JIS characters 0x5C and 0x7E.
4050 * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
4052 2001-12-05 Bruno Haible <bruno@clisp.org>
4054 * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
4055 endless loop if locale_charset() returns the empty string.
4056 * README, man/iconv_open.3: Add the empty encoding name.
4058 2001-11-10 Bruno Haible <haible@clisp.cons.org>
4060 * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
4063 2001-10-23 Bruno Haible <haible@clisp.cons.org>
4065 * tools/Makefile (cp1125.h): New target.
4067 * lib/cp1125.h: New file.
4068 * lib/converters.h: Include it.
4069 * lib/encodings_dos.def (CP1125): New encoding.
4071 2001-09-08 Bruno Haible <haible@clisp.cons.org>
4073 * autoconf/eilseq.m4: New file.
4074 * Makefile.devel (OTHERMACROS): Add it.
4075 * configure.in: Call AC_EILSEQ.
4076 * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
4078 2001-08-25 Bruno Haible <haible@clisp.cons.org>
4080 Upgrade to autoconf-2.52.
4081 * autoconf/autoconf: Upgrade to autoconf-2.52.
4082 * autoconf/acgeneral.m4: Remove file.
4083 * autoconf/acspecific.m4: Remove file.
4084 * autoconf/autoconf.m4f: New file, from autoconf-2.52.
4085 * autoconf/aclocal.m4: Require autoconf-2.52.
4086 (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
4087 AC_CANONICAL_HOST does it itself. Add $SHELL in front of
4088 $ac_config_guess and $ac_config_sub.
4089 * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
4091 (configure): Use autoconf options -A, -l instead of -m.
4092 * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
4094 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4096 * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
4097 (AC_LANG_EXTERN): Move to aclocal.m4.
4098 * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
4099 (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
4100 (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
4102 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4104 Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
4105 * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
4107 * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
4108 between sources and libs.
4109 (libiconv_plug_solaris.so) [GCC]: Likewise.
4110 (libiconv_plug_osf.so) [GCC]: Likewise.
4111 * src/Makefile.in (iconv.@OBJEXT@): New rule.
4112 (iconv): Depend on it.
4113 (clean): Erase *.@OBJEXT@, not *.o.
4114 * tests/Makefile.in (table-from.@OBJEXT@): New rule.
4115 (table-from): Depend on it.
4116 (table-to.@OBJEXT@): New rule.
4117 (table-to): Depend on it.
4118 (clean): Erase *.@OBJEXT@, not *.o.
4120 2001-07-28 Bruno Haible <haible@clisp.cons.org>
4122 * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
4123 * lib/iso8859_16.h: Regenerated.
4124 * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
4126 2001-07-17 Bruno Haible <haible@clisp.cons.org>
4128 * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
4130 2001-07-03 Bruno Haible <haible@clisp.cons.org>
4132 * configure.in: Also check for mbsinit.
4133 * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
4134 Needed for SCO 3.2v5.0.2.
4136 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4138 * Version 1.7 released.
4140 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4142 * INSTALL.generic (Particular Systems): Generalize section about
4143 /usr/local to "most systems".
4145 * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
4146 Solaris cc destroys iconv.o and iconv.lo while building
4147 libiconv_plug_solaris.so.
4148 (clean): Remove so_locations, left there by the OSF/1 linker.
4150 * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
4152 * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
4155 * tests/table-from.c: Include string.h.
4156 * tests/table-to.c: Likewise.
4158 2001-06-26 Bruno Haible <haible@clisp.cons.org>
4160 * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
4161 (jisx0212.h): Replace U+007E with U+FF5E.
4162 * lib/jisx0208.h: Regenerated.
4163 * lib/jisx0212.h: Regenerated.
4164 * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
4165 * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
4166 * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
4167 * tests/CP932.TXT: Likewise.
4168 * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
4170 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4172 * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
4174 * src/Makefile.msvc (iconv.exe): Likewise.
4175 * src/Makefile.os2 (iconv.exe): Likewise.
4176 * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
4177 (libiconv_plug_solaris.so): Likewise.
4178 (libiconv_plug_osf.so): Likewise.
4179 (iconv.lo): Likewise.
4180 * lib/Makefile.msvc (iconv.obj): Likewise.
4181 * lib/Makefile.os2 (iconv.obj): Likewise.
4182 * tests/Makefile.in (table-from, table-to): Likewise.
4183 * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
4184 * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
4185 (genutf8.exe): Don't use $(INCLUDES).
4187 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4189 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4190 Bump version number.
4191 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
4193 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4195 * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
4197 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4199 * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
4201 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4203 * autoconf/ltmain.sh: Upgrade to libtool-1.4.
4204 * autoconf/ltconfig: Remove file.
4206 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4208 * autoconf/config.guess: Update to GNU version 2001-05-11.
4209 * autoconf/config.sub: Likewise.
4211 2001-06-03 Bruno Haible <haible@clisp.cons.org>
4213 * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
4214 characters if they cannot be converted.
4215 (unicode_loop_reset): Likewise.
4216 * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
4217 STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
4218 STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
4220 (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
4222 (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
4223 If "ja", prefer conversion to Japanese character sets. If "zh",
4224 prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
4226 * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
4227 (RET_TOOSMALL): Change value from -1 to -2.
4228 * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
4229 return 0 written bytes.
4231 2001-06-06 Bruno Haible <haible@clisp.cons.org>
4233 * lib/encodings.def: Align with IANA character-set registry.
4234 (US-ASCII): Add alias "ANSI_X3.4-1986".
4235 (ISO-8859-14): Add alias "ISO-CELTIC".
4236 (JIS_X0208): Add alias "JIS_C6226-1983".
4237 (BIG5HKSCS): Add alias "BIG5-HKSCS".
4238 * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
4239 * tests/Makefile.in (check): Likewise.
4240 * tests/Makefile.os2 (check): Likewise.
4241 * tests/Makefile.msvc (check): Likewise.
4242 * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
4243 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
4244 BIG5HKSCS.IRREVERSIBLE.TXT.
4246 2001-06-02 Bruno Haible <haible@clisp.cons.org>
4248 * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
4249 (is_charset2uni_large, compact_large_charset2uni): New functions.
4250 (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
4251 (output_charset2uni): If mapping to more than the Unicode BMP,
4252 use an extra indirection to keep each value in 16 bits.
4253 (invert): Bump limit from U+10000 to U+30000.
4254 (output_uni2charset_dense): Likewise.
4255 (output_uni2charset_sparse): Likewise. If mapping to more than one
4256 CJK plane, use three bytes per value instead of two bytes.
4257 (byte_row_cns11643): Allow more than 3 CJK planes.
4258 (do_cns11643_only_uni2charset): Increase number of rows, to include
4259 plane 15. Remove plane bits hack.
4260 (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
4261 * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
4262 cns11643_6.h, cns11643_7.h, cns11643_15.h.
4263 (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
4265 (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4266 cns11643_7.h, cns11643_15.h): New rules.
4267 (cns11643_inv.h): Change title.
4268 * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
4269 * lib/cns11643_3.h: Likewise.
4270 * lib/cns11643_4a.h: New file.
4271 * lib/cns11643_4b.h: New file.
4272 * lib/cns11643_4.h: New file.
4273 * lib/cns11643_5.h: New file.
4274 * lib/cns11643_6.h: New file.
4275 * lib/cns11643_7.h: New file.
4276 * lib/cns11643_15.h: New file.
4277 * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
4278 (cns11643_inv_wctomb): Return 3 bytes now.
4279 * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
4280 cns11643_7.h, cns11643_15.h.
4281 (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
4282 plane number starting at 1, not 0.
4283 * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
4285 * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
4287 (euc_tw_wctomb): Update for cns11643_wctomb change.
4288 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4289 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
4291 (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
4292 Try CNS11643 planes 4,5,6,7 as well.
4293 * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
4294 * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
4297 2001-06-01 Bruno Haible <haible@clisp.cons.org>
4299 * tests/table-from.c (bmp_only): New variable.
4300 (ucs4_decode): If bmp_only, don't return characters outside Unicode
4302 (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
4303 a conversion line if ucs4_decode returns NULL.
4304 * tests/table-to.c (main): When testing encodings other than UTF-8 and
4305 GB18030, loop upto U+30000 instead of U+10000.
4307 2001-05-24 Bruno Haible <haible@clisp.cons.org>
4309 * lib/converters.h (mbtowc_funcs): Add flushwc member function.
4310 * lib/flushwc.h: New file.
4311 * lib/cp1255.h: Include flushwc.h.
4312 (cp1255_comp_table_data, cp1255_comp_table): New arrays.
4313 (cp1255_mbtowc): Compose base and combining characters.
4314 (cp1255_flushwc): New macro.
4315 * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
4316 * lib/cp1258.h: Include flushwc.h.
4317 (cp1258_mbtowc): Compose base and combining characters.
4318 (cp1258_flushwc): New macro.
4319 * lib/tcvn.h: Include flushwc.h.
4320 (tcvn_mbtowc): Compose base and combining characters.
4321 (tcvn_flushwc): New macro.
4322 * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
4323 from unicode_loop_convert.
4324 (unicode_loop_convert): Use unicode_transliterate.
4325 (unicode_loop_reset): Call xxx_flushwc and output the resulting
4327 * lib/encodings.def: Add xxx_flushwc member.
4328 * lib/encodings_aix.def: Likewise.
4329 * lib/encodings_dos.def: Likewise.
4330 * lib/encodings_local.def: Likewise.
4331 * lib/encodings_osf1.def: Likewise.
4332 * lib/genaliases.c: Add an argument to the DEFENCODING macro.
4333 * lib/genaliases2.c: Likewise.
4334 * lib/genflags.c: Likewise.
4335 * lib/iconv.c: Likewise.
4336 * tests/table-from.c (try): Reset the iconv descriptor before the main
4337 call, and flush it afterwards.
4338 (ucs4_decode): New function.
4339 (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
4340 * tests/CP1255-snippet: New file.
4341 * tests/CP1255-snippet.UTF-8: New file.
4342 * tests/CP1258-snippet: New file.
4343 * tests/CP1258-snippet.UTF-8: New file.
4344 * tests/TCVN-snippet: New file.
4345 * tests/TCVN-snippet.UTF-8: New file.
4346 * tests/Makefile.in (check): Check combining behaviour of CP1255,
4348 * tests/Makefile.msvc (check): Likewise.
4349 * tests/Makefile.os2 (check): Likewise.
4351 2001-05-22 Bruno Haible <haible@clisp.cons.org>
4353 * lib/converters.h (RET_ILUNI): New macro.
4354 (RET_ILSEQ): Change value to -1.
4355 (RET_TOOFEW): Change value.
4356 * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
4357 of 0. Update handling of xxx_mbtowc return value.
4358 * lib/genflags.c (emit_encoding): Likewise.
4359 * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
4360 * lib/armscii_8.h (armscii_8_wctomb): Likewise.
4361 * lib/big5.h (big5_wctomb): Likewise.
4362 * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
4363 * lib/ces_big5.h (ces_big5_wctomb): Likewise.
4364 * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
4365 * lib/cns11643.h (cns11643_wctomb): Likewise.
4366 * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
4367 * lib/cp437.h (cp437_wctomb): Likewise.
4368 * lib/cp775.h (cp775_wctomb): Likewise.
4369 * lib/cp850.h (cp850_wctomb): Likewise.
4370 * lib/cp852.h (cp852_wctomb): Likewise.
4371 * lib/cp855.h (cp855_wctomb): Likewise.
4372 * lib/cp856.h (cp856_wctomb): Likewise.
4373 * lib/cp857.h (cp857_wctomb): Likewise.
4374 * lib/cp861.h (cp861_wctomb): Likewise.
4375 * lib/cp862.h (cp862_wctomb): Likewise.
4376 * lib/cp864.h (cp864_wctomb): Likewise.
4377 * lib/cp865.h (cp865_wctomb): Likewise.
4378 * lib/cp866.h (cp866_wctomb): Likewise.
4379 * lib/cp869.h (cp869_wctomb): Likewise.
4380 * lib/cp874.h (cp874_wctomb): Likewise.
4381 * lib/cp922.h (cp922_wctomb): Likewise.
4382 * lib/cp932ext.h (cp932ext_wctomb): Likewise.
4383 * lib/cp932.h (cp932_wctomb): Likewise.
4384 * lib/cp936ext.h (cp936ext_wctomb): Likewise.
4385 * lib/cp949.h (cp949_wctomb): Likewise.
4386 * lib/cp950ext.h (cp950ext_wctomb): Likewise.
4387 * lib/cp950.h (cp950_wctomb): Likewise.
4388 * lib/cp1046.h (cp1046_wctomb): Likewise.
4389 * lib/cp1124.h (cp1124_wctomb): Likewise.
4390 * lib/cp1129.h (cp1129_wctomb): Likewise.
4391 * lib/cp1133.h (cp1133_wctomb): Likewise.
4392 * lib/cp1250.h (cp1250_wctomb): Likewise.
4393 * lib/cp1251.h (cp1251_wctomb): Likewise.
4394 * lib/cp1252.h (cp1252_wctomb): Likewise.
4395 * lib/cp1253.h (cp1253_wctomb): Likewise.
4396 * lib/cp1254.h (cp1254_wctomb): Likewise.
4397 * lib/cp1255.h (cp1255_wctomb): Likewise.
4398 * lib/cp1256.h (cp1256_wctomb): Likewise.
4399 * lib/cp1257.h (cp1257_wctomb): Likewise.
4400 * lib/cp1258.h (cp1258_wctomb): Likewise.
4401 * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
4402 * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
4403 * lib/euc_cn.h (euc_cn_wctomb): Likewise.
4404 * lib/euc_jp.h (euc_jp_wctomb): Likewise.
4405 * lib/euc_kr.h (euc_kr_wctomb): Likewise.
4406 * lib/euc_tw.h (euc_tw_wctomb): Likewise.
4407 * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
4408 * lib/gb12345.h (gb12345_wctomb): Likewise.
4409 * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
4410 * lib/gb18030.h (gb18030_wctomb): Likewise.
4411 * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
4412 * lib/gb2312.h (gb2312_wctomb): Likewise.
4413 * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
4414 * lib/gbk.h (gbk_wctomb): Likewise.
4415 * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
4416 * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
4417 * lib/hkscs.h (hkscs_wctomb): Likewise.
4418 * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
4419 * lib/hz.h (hz_wctomb): Likewise.
4420 * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
4421 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4422 * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
4423 * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
4424 * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
4425 * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4426 * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
4427 * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
4428 * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
4429 * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
4430 * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
4431 * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
4432 * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
4433 * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
4434 * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
4435 * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
4436 * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
4437 * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
4438 * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
4439 * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
4440 * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
4441 * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
4442 * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
4443 * lib/isoir165.h (isoir165_wctomb): Likewise.
4444 * lib/jisx0201.h (jisx0201_wctomb): Likewise.
4445 * lib/jisx0208.h (jisx0208_wctomb): Likewise.
4446 * lib/jisx0212.h (jisx0212_wctomb): Likewise.
4447 * lib/johab.h (johab_wctomb): Likewise.
4448 * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
4450 * lib/koi8_r.h (koi8_r_wctomb): Likewise.
4451 * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
4452 * lib/koi8_u.h (koi8_u_wctomb): Likewise.
4453 * lib/ksc5601.h (ksc5601_wctomb): Likewise.
4454 * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
4455 * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
4456 * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
4457 * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
4458 * lib/mac_greek.h (mac_greek_wctomb): Likewise.
4459 * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
4460 * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
4461 * lib/mac_roman.h (mac_roman_wctomb): Likewise.
4462 * lib/mac_romania.h (mac_romania_wctomb): Likewise.
4463 * lib/mac_thai.h (mac_thai_wctomb): Likewise.
4464 * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
4465 * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
4466 * lib/mulelao.h (mulelao_wctomb): Likewise.
4467 * lib/nextstep.h (nextstep_wctomb): Likewise.
4468 * lib/sjis.h (sjis_wctomb): Likewise.
4469 * lib/tcvn.h (tcvn_wctomb): Likewise.
4470 * lib/tis620.h (tis620_wctomb): Likewise.
4471 * lib/ucs2be.h (ucs2be_wctomb): Likewise.
4472 * lib/ucs2.h (ucs2_wctomb): Likewise.
4473 * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
4474 * lib/ucs2le.h (ucs2le_wctomb): Likewise.
4475 * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
4476 * lib/ucs4.h (ucs4_wctomb): Likewise.
4477 * lib/uhc_1.h (uhc_1_wctomb): Likewise.
4478 * lib/uhc_2.h (uhc_2_wctomb): Likewise.
4479 * lib/utf16be.h (utf16be_wctomb): Likewise.
4480 * lib/utf16.h (utf16_wctomb): Likewise.
4481 * lib/utf16le.h (utf16le_wctomb): Likewise.
4482 * lib/utf32be.h (utf32be_wctomb): Likewise.
4483 * lib/utf32.h (utf32_wctomb): Likewise.
4484 * lib/utf32le.h (utf32le_wctomb): Likewise.
4485 * lib/utf7.h (utf7_wctomb): Likewise.
4486 * lib/utf8.h (utf8_wctomb): Likewise.
4487 * lib/viscii.h (viscii_wctomb): Likewise.
4488 * tools/8bit_tab_to_h.c (main): Likewise.
4489 * tools/cjk_tab_to_h.c (output_uni2charset_dense,
4490 output_uni2charset_sparse, do_gb18030uni): Likewise.
4492 2001-05-19 Bruno Haible <haible@clisp.cons.org>
4494 * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
4495 (man/%.html): New rule.
4496 * man/Makefile.in (docdir, htmldir): New variables.
4497 (install, installdirs): Install the HTML formatted man pages in
4499 (uninstall): Uninstall them.
4501 2001-05-20 Bruno Haible <haible@clisp.cons.org>
4503 * lib/cp1255.h (cp1255_decomp_table): New array.
4504 (cp1255_comb_table): New array.
4505 (cp1255_wctomb): Decompose Unicode characters.
4506 * tests/CP1255.IRREVERSIBLE.TXT: New file.
4508 2001-05-13 Bruno Haible <haible@clisp.cons.org>
4510 * lib/vietcomb.h: New file.
4511 * lib/cp1258.h: Include it.
4512 (cp1258_comb_table): New array.
4513 (cp1258_wctomb): Decompose Unicode characters.
4514 * lib/tcvn.h: Include it.
4515 (tcvn_comb_table): New array.
4516 (tcvn_wctomb): Decompose Unicode characters.
4517 * tests/CP1258.IRREVERSIBLE.TXT: New file.
4518 * tests/TCVN.IRREVERSIBLE.TXT: New file.
4520 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4522 * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
4523 (iconv.lib): Likewise.
4525 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4527 * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4528 (CPP): Remove variable.
4529 (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
4530 libiconv_plug_osf.so): Use LDFLAGS.
4531 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4532 libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
4533 * lib/Makefile.msvc (CPP): Remove variable.
4534 * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4535 (CPP): Remove variable.
4536 (iconv): Use CPPFLAGS and LDFLAGS.
4537 * src/Makefile.msvc (CPP): Remove variable.
4538 * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
4539 (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
4540 * tests/Makefile.msvc (CPP): Remove variable.
4542 2001-05-06 Bruno Haible <haible@clisp.cons.org>
4544 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
4545 gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
4547 2001-04-11 Bruno Haible <haible@clisp.cons.org>
4549 Implement and document UTF-32, UTF-32BE, UTF-32LE.
4550 * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
4551 * src/converters.h: Include them.
4552 * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
4553 * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
4554 * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
4555 * tests/Makefile.os2 (check): Likewise.
4556 * tests/Makefile.msvc (check): Likewise.
4557 * tests/UTF-32*snippet*: New files.
4559 * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
4560 (ucs4_wctomb): Allow any 31-bit codepoint.
4562 2001-04-11 Bruno Haible <haible@clisp.cons.org>
4564 * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
4565 unassigned code points.
4566 * tests/table-from.c (main); When dumping GB18030, don't print code
4567 points larger than U+FFFF.
4569 2001-03-30 Bruno Haible <haible@clisp.cons.org>
4571 * tools/Makefile (GB18030uni.TXT): Use a table source which includes
4572 the unassigned Unicode code points.
4573 * lib/gb18030uni.h: Update.
4574 (gb18030uni_ranges): Remove bitmap_offset field.
4575 (gb18030uni_bitmap): Remove array.
4576 (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
4577 (gb18030uni_wctomb): Likewise.
4578 * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
4579 (gb18030_wctomb): Likewise.
4581 2001-03-21 Bruno Haible <haible@clisp.cons.org>
4583 * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
4585 2001-03-21 Bruno Haible <haible@clisp.cons.org>
4587 * src/iconv.c (print_version): Now called GNU libiconv.
4589 2001-03-20 Bruno Haible <haible@clisp.cons.org>
4591 * README: This package is now called GNU libiconv.
4593 * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
4595 * tools/cjk_tab_to_h.c (output_title): Likewise.
4596 * tools/cjk_variants.c (main): Likewise.
4597 * lib/gentranslit.c (main): Likewise.
4599 2001-03-19 Bruno Haible <haible@clisp.cons.org>
4601 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
4602 ac_config_guess and ac_config_sub. Then ignore requests for
4603 AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
4605 2001-03-10 Bruno Haible <haible@clisp.cons.org>
4607 * INSTALL.generic: New section "Particular Systems".
4609 2001-03-10 Bruno Haible <haible@clisp.cons.org>
4611 * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
4612 platforms like BeOS.
4614 * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
4617 2001-03-06 Bruno Haible <haible@clisp.cons.org>
4619 * Version 1.6 released.
4620 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4621 Bump version number.
4622 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
4624 2001-03-05 Bruno Haible <haible@clisp.cons.org>
4626 Provide all encodings used by OSF/1 5.1 locales.
4627 * lib/dec_kanji.h: New file.
4628 * lib/dec_hanyu.h: New file.
4629 * lib/converters.h: Include them if USE_OSF1 is defined.
4630 * lib/encodings_osf1.def: New file.
4631 * lib/genflags.c (main): Include it. Define USE_OSF1.
4632 * lib/genaliases2.c (main): Include it conditionally.
4633 * lib/iconv.c: Define USE_OSF1 on OSF/1.
4634 Include encodings_osf1.def and aliases_osf1.h.
4635 * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
4637 * Makefile.devel (lib/aliases_osf1.h): New target.
4638 (all): Depend on lib/aliases_osf1.h.
4639 (lib/flags.h): Depend on lib/encodings_osf1.def.
4641 2001-03-01 Bruno Haible <haible@clisp.cons.org>
4643 * tools/Makefile (cp775.h): New target.
4645 * lib/cp775.h: New file.
4646 * lib/converters.h: Include it.
4647 * lib/encodings_dos.def (CP775): New encoding.
4649 2001-02-25 Bruno Haible <haible@clisp.cons.org>
4651 * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
4654 2001-02-24 Bruno Haible <haible@clisp.cons.org>
4656 * src/iconv.c (convert): Use ICONV_CONST.
4657 * tests/table-from.c: Include config.h.
4658 (try): Use ICONV_CONST.
4659 * tests/table-to.c: Include config.h.
4660 (main): Use ICONV_CONST.
4661 * tests/Makefile.in (INCLUDES): Add -I../lib.
4662 * tests/Makefile.os2 (INCLUDES): Likewise.
4663 * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
4665 2001-02-24 Bruno Haible <haible@clisp.cons.org>
4667 Provide all encodings used by DOS locales.
4668 * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
4669 cp864.h, cp865.h, cp869.h): New targets.
4671 * lib/cp437.h: New file.
4672 * lib/cp852.h: New file.
4673 * lib/cp855.h: New file.
4674 * lib/cp857.h: New file.
4675 * lib/cp861.h: New file.
4676 * lib/cp864.h: New file.
4677 * lib/cp865.h: New file.
4678 * lib/cp869.h: New file.
4679 * lib/converters.h: Include them if USE_DOS is defined.
4680 * lib/encodings_dos.def: New file.
4681 * lib/genflags.c (main): Include it. Define USE_DOS.
4682 * lib/genaliases2.c (main): Include it conditionally.
4683 * lib/iconv.c: Define USE_DOS on DJGPP.
4684 Include encodings_dos.def and aliases_dos.h.
4685 * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
4687 * Makefile.devel (lib/aliases_dos.h): New target.
4688 (all): Depend on lib/aliases_dos.h.
4689 (lib/flags.h): Depend on lib/encodings_dos.def.
4691 2001-02-23 Bruno Haible <haible@clisp.cons.org>
4693 * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
4694 (SET_BINARY) [O_BINARY]: New macro.
4695 (usage): Mention --binary if available.
4696 (convert): Use SET_BINARY instead of setmode.
4698 Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
4700 2001-02-25 Bruno Haible <haible@clisp.cons.org>
4702 * autoconf/ltconfig:
4703 sed -e 's/reload object files/produce relocatable object files/'.
4705 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4707 * src/iconv.c (usage, main): Make -f and -t options optional.
4708 * man/iconv.1: Mark them as optional.
4710 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4712 * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
4714 * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
4715 0xFE5E -> U+2E97. Shift the entire four-byte range.
4716 * tests/GB18030.TXT: Regenerated.
4718 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4720 Better support for DOS/Windows platforms.
4721 * autoconf/ltconfig: Upgrade to libtool-1.3.5.
4722 * autoconf/ltmain.sh: Likewise.
4723 * autoconf/aclocal.m4: Likewise.
4724 * autoconf/install-sh: New file.
4725 * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
4727 2001-02-20 Bruno Haible <haible@clisp.cons.org>
4729 * Makefile.in (libdir, includedir, mandir): Use the autoconf
4730 determined value, in order to respect the configure arguments.
4731 * lib/Makefile.in (libdir): Likewise.
4732 * src/Makefile.in (bindir): Likewise.
4733 * man/Makefile.in (mandir): Likewise.
4735 2001-02-04 Bruno Haible <haible@clisp.cons.org>
4737 * lib/translit.def: Add all the neutral transliterations from glibc.
4738 * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
4739 UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
4740 Avoid accessing data[-1].
4741 * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
4744 2001-01-05 Bruno Haible <haible@clisp.cons.org>
4746 Implement and document CP862.
4747 * tools/Makefile (ALL): Add cp862.h.
4748 (cp862.h): New target.
4749 * lib/cp862.h: New file.
4750 * lib/converters.h: Include it.
4751 * lib/encodings.def (CP862): New encoding.
4752 * README, man/iconv_open.3: Add CP862.
4753 * tests/Makefile.in (check): Check CP862.
4754 * tests/Makefile.msvc (check): Likewise.
4755 * tests/Makefile.os2 (check): Likewise.
4756 * tests/CP862.TXT: New file.
4758 2000-12-18 Bruno Haible <haible@clisp.cons.org>
4760 * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
4761 * Makefile.devel (OTHERMACROS): Add it.
4762 * configure.in: Call AC_MBSTATE_T.
4763 * lib/config.h.in (mbstate_t): New definition.
4764 * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
4766 2000-12-12 Bruno Haible <haible@clisp.cons.org>
4768 * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
4769 "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
4770 given. Reported by Toshimitsu Fujiwara.
4772 2000-12-08 Bruno Haible <haible@clisp.cons.org>
4774 * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
4775 * lib/Makefile.in (exec_prefix): Likewise.
4776 * src/Makefile.in (exec_prefix): Likewise.
4777 * man/Makefile.in (exec_prefix): Likewise.
4779 2000-12-02 Bruno Haible <haible@clisp.cons.org>
4781 * Version 1.5 released.
4782 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4783 Bump version number.
4784 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
4786 2000-12-02 Bruno Haible <haible@clisp.cons.org>
4788 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
4789 Remove files installed in lib by libcharset.
4790 * Makefile.msvc (mostlyclean): Likewise.
4792 * Makefile.in (check): Depend on target 'all'.
4793 * Makefile.os2 (check): Likewise.
4794 * Makefile.msvc (check): Depend on target 'force' as well.
4796 * src/iconv.c (usage): Take an exitcode argument.
4797 (print_version): New function.
4798 (main): Recognize --help and --version command line options.
4800 2000-12-02 Bruno Haible <haible@clisp.cons.org>
4802 * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
4803 * lib/Makefile.msvc: Likewise.
4804 * src/Makefile.msvc: Likewise.
4805 * tests/Makefile.msvc: Likewise.
4807 2000-12-01 Bruno Haible <haible@clisp.cons.org>
4809 * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
4810 (force_binary): New variable.
4811 (convert): If requested, set the input O_BINARY.
4812 (main): Accept --binary option. If requested, set the output O_BINARY.
4813 * tests/check-stateful.bat: Pass --binary to iconv.
4814 * tests/check-stateful.cmd: Likewise.
4815 * tests/check-translit.bat: Likewise.
4816 * tests/check-translit.cmd: Likewise.
4818 2000-12-01 Bruno Haible <haible@clisp.cons.org>
4820 * include/iconv.h.in (_libiconv_version): New declaration.
4821 * lib/iconv.c (_libiconv_version): New variable.
4823 2000-11-30 Bruno Haible <haible@clisp.cons.org>
4825 * Makefile.msvc (all): File now named lib/libcharset.h.
4826 (clean, distclean, maintainer-clean): Likewise.
4828 2000-11-23 Bruno Haible <haible@clisp.cons.org>
4830 * lib/*: Move here all files from src/*.
4831 * src/*: Move all files to lib.
4832 * lib/Makefile.in (distclean): No need to remove config.status,
4833 config.log, config.cache.
4834 * configure.in: Require lib/iconv.c, not src/iconv.c. Create
4835 lib/config.h, not src/config.h. Also create lib/Makefile.
4836 * Makefile.in (all): Install libcharset into lib, not src. Recurse
4838 (install-lib): Recurse into lib, not src.
4839 (install): Recurse into libcharset, lib and src.
4840 (installdirs, uninstall): Likewise.
4841 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4842 * Makefile.msvc (all): Recurse into lib and src.
4843 (install): Recurse into libcharset, lib and src.
4844 (installdirs, uninstall): Likewise.
4845 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4846 * Makefile.os2 (all): Recurse into lib and src.
4847 (install-lib): Recurse into lib, not src.
4848 (install, uninstall): Recurse into lib and src.
4849 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
4850 * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
4851 (lib/aliases.h): Renamed from src/aliases.h.
4852 (lib/aliases.gperf): Renamed from src/aliases.gperf.
4853 (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
4854 (lib/flags.h): Renamed from src/flags.h.
4855 (lib/translit.h): Renamed from src/translit.h.
4856 * src/iconv.c: Moved here from tests/iconv.c.
4857 * src/Makefile.in: New file.
4858 * src/Makefile.msvc: New file.
4859 * src/Makefile.os2: New file.
4860 * tests/Makefile.in (iconv): Remove target.
4861 (../lib/libiconv.la): Renamed from ../src/libiconv.la.
4862 (clean): No need to remove iconv.
4863 * tests/Makefile.msvc (iconv.exe): Remove target.
4864 * tests/Makefile.os2 (iconv.exe): Likewise.
4865 * tests/check-stateful: iconv is in ../src.
4866 * tests/check-stateful.bat: Likewise.
4867 * tests/check-stateful.cmd: Likewise.
4868 * tests/check-translit: iconv is in ../src.
4869 * tests/check-translit.bat: Likewise.
4870 * tests/check-translit.cmd: Likewise.
4871 * man/iconv.1: New file.
4872 * man/Makefile.in (install, installdirs, uninstall): Also install *.1
4874 * man/Makefile.os2 (MAN3): Renamed from MAN.
4875 (MAN1): New variable.
4876 (install, uninstall): Also install *.1 man pages.
4878 2000-11-21 Bruno Haible <haible@clisp.cons.org>
4880 * Makefile.msvc (all, check, mostlyclean, clean, distclean,
4881 maintainer-clean): Recurse into libcharset.
4882 (clean, distclean, maintainer-clean): Remove src\libcharset.h.
4883 * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
4884 (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
4886 2000-11-18 Bruno Haible <haible@clisp.cons.org>
4888 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
4889 so that it agrees with Microsoft's definition of CP950.
4890 * tests/CP950.TXT: Likewise.
4891 * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
4893 2000-11-18 Bruno Haible <haible@clisp.cons.org>
4895 Add support for locale dependent "char" and "wchar_t" encodings.
4896 * libcharset: New subdirectory.
4897 * src/loop_unicode.h: New file, extracted from src/iconv.c.
4898 * src/loop_wchar.h: New file.
4899 * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
4900 * src/encodings_local.def: New file.
4901 * src/genaliases.c: Also create aliases for encodings_local.def.
4902 * src/converters.h (conv_struct): Add lfuncs field.
4903 * src/genflags.c: Add dummy definitions of struct loop_funcs.
4904 * src/iconv.c: Include libcharset.h.
4905 (loop_funcs): New structure.
4906 Treat encodings_local.def like encodings.def.
4908 (iconv_open): Move the bulk of the code to loop_unicode.h.
4910 (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
4912 * src/Makefile.in (PLUG_SOURCES): Remove variable.
4913 (LIBCHARSET_OBJECTS): New variable.
4914 (libiconv.la): Link in the LIBCHARSET_OBJECTS.
4915 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4916 libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
4918 (iconv.lo): Depend on encodings_local.def.
4919 * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
4920 * src/Makefile.os2 (iconv.obj): Likewise.
4921 * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
4922 Recurse into libcharset.
4923 * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
4924 HAVE_SETLOCALE): New macros.
4925 * tests/iconv.c: Include config.h and locale.h.
4926 (main): Call setlocale.
4927 * tests/Makefile.in (iconv): Search for config.h in ../src.
4928 * tests/Makefile.os2 (iconv.exe): Likewise.
4929 * tests/Makefile.msvc (iconv.exe): Likewise.
4930 * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
4931 * Makefile.in: After "cd", use "&&" not ";".
4932 (all, check, mostlyclean, clean, distclean, maintainer-clean):
4933 Recurse into libcharset.
4934 * Makefile.devel (all): Recurse into libcharset.
4935 (src/aliases.gperf): Depend on src/encodings_local.def.
4937 2000-11-18 Bruno Haible <haible@clisp.cons.org>
4939 * src/converters.h (ucs4_t): New type.
4940 (wchar_t): Remove locally defined override.
4941 (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
4942 * src/iconv.c (iconv): Likewise.
4943 * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
4944 * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
4945 * tools/cjk_tab_to_h.c: Likewise.
4946 * src/armscii_8.h: Use ucs4_t instead of wchar_t.
4947 * src/ascii.h: Likewise.
4948 * src/big5.h: Likewise.
4949 * src/big5hkscs.h: Likewise.
4950 * src/ces_big5.h: Likewise.
4951 * src/ces_gbk.h: Likewise.
4952 * src/cns11643.h: Likewise.
4953 * src/cns11643_1.h: Likewise.
4954 * src/cns11643_2.h: Likewise.
4955 * src/cns11643_3.h: Likewise.
4956 * src/cns11643_inv.h: Likewise.
4957 * src/cp1046.h: Likewise.
4958 * src/cp1124.h: Likewise.
4959 * src/cp1129.h: Likewise.
4960 * src/cp1133.h: Likewise.
4961 * src/cp1250.h: Likewise.
4962 * src/cp1251.h: Likewise.
4963 * src/cp1252.h: Likewise.
4964 * src/cp1253.h: Likewise.
4965 * src/cp1254.h: Likewise.
4966 * src/cp1255.h: Likewise.
4967 * src/cp1256.h: Likewise.
4968 * src/cp1257.h: Likewise.
4969 * src/cp1258.h: Likewise.
4970 * src/cp850.h: Likewise.
4971 * src/cp856.h: Likewise.
4972 * src/cp866.h: Likewise.
4973 * src/cp874.h: Likewise.
4974 * src/cp922.h: Likewise.
4975 * src/cp932.h: Likewise.
4976 * src/cp932ext.h: Likewise.
4977 * src/cp936ext.h: Likewise.
4978 * src/cp949.h: Likewise.
4979 * src/cp950.h: Likewise.
4980 * src/cp950ext.h: Likewise.
4981 * src/euc_cn.h: Likewise.
4982 * src/euc_jp.h: Likewise.
4983 * src/euc_kr.h: Likewise.
4984 * src/euc_tw.h: Likewise.
4985 * src/gb12345.h: Likewise.
4986 * src/gb12345ext.h: Likewise.
4987 * src/gb18030.h: Likewise.
4988 * src/gb18030ext.h: Likewise.
4989 * src/gb18030uni.h: Likewise.
4990 * src/gb2312.h: Likewise.
4991 * src/gbk.h: Likewise.
4992 * src/gbkext1.h: Likewise.
4993 * src/gbkext2.h: Likewise.
4994 * src/gbkext_inv.h: Likewise.
4995 * src/georgian_academy.h: Likewise.
4996 * src/georgian_ps.h: Likewise.
4997 * src/hkscs.h: Likewise.
4998 * src/hp_roman8.h: Likewise.
4999 * src/hz.h: Likewise.
5000 * src/iso2022_cn.h: Likewise.
5001 * src/iso2022_cnext.h: Likewise.
5002 * src/iso2022_jp.h: Likewise.
5003 * src/iso2022_jp1.h: Likewise.
5004 * src/iso2022_jp2.h: Likewise.
5005 * src/iso2022_kr.h: Likewise.
5006 * src/iso646_cn.h: Likewise.
5007 * src/iso646_jp.h: Likewise.
5008 * src/iso8859_1.h: Likewise.
5009 * src/iso8859_10.h: Likewise.
5010 * src/iso8859_13.h: Likewise.
5011 * src/iso8859_14.h: Likewise.
5012 * src/iso8859_15.h: Likewise.
5013 * src/iso8859_16.h: Likewise.
5014 * src/iso8859_2.h: Likewise.
5015 * src/iso8859_3.h: Likewise.
5016 * src/iso8859_4.h: Likewise.
5017 * src/iso8859_5.h: Likewise.
5018 * src/iso8859_6.h: Likewise.
5019 * src/iso8859_7.h: Likewise.
5020 * src/iso8859_8.h: Likewise.
5021 * src/iso8859_9.h: Likewise.
5022 * src/isoir165.h: Likewise.
5023 * src/isoir165ext.h: Likewise.
5024 * src/java.h: Likewise.
5025 * src/jisx0201.h: Likewise.
5026 * src/jisx0208.h: Likewise.
5027 * src/jisx0212.h: Likewise.
5028 * src/johab.h: Likewise.
5029 * src/johab_hangul.h: Likewise.
5030 * src/koi8_r.h: Likewise.
5031 * src/koi8_ru.h: Likewise.
5032 * src/koi8_u.h: Likewise.
5033 * src/ksc5601.h: Likewise.
5034 * src/mac_arabic.h: Likewise.
5035 * src/mac_centraleurope.h: Likewise.
5036 * src/mac_croatian.h: Likewise.
5037 * src/mac_cyrillic.h: Likewise.
5038 * src/mac_greek.h: Likewise.
5039 * src/mac_hebrew.h: Likewise.
5040 * src/mac_iceland.h: Likewise.
5041 * src/mac_roman.h: Likewise.
5042 * src/mac_romania.h: Likewise.
5043 * src/mac_thai.h: Likewise.
5044 * src/mac_turkish.h: Likewise.
5045 * src/mac_ukraine.h: Likewise.
5046 * src/mulelao.h: Likewise.
5047 * src/nextstep.h: Likewise.
5048 * src/sjis.h: Likewise.
5049 * src/tcvn.h: Likewise.
5050 * src/tis620.h: Likewise.
5051 * src/ucs2.h: Likewise.
5052 * src/ucs2be.h: Likewise.
5053 * src/ucs2internal.h: Likewise.
5054 * src/ucs2le.h: Likewise.
5055 * src/ucs2swapped.h: Likewise.
5056 * src/ucs4.h: Likewise.
5057 * src/ucs4be.h: Likewise.
5058 * src/ucs4internal.h: Likewise.
5059 * src/ucs4le.h: Likewise.
5060 * src/ucs4swapped.h: Likewise.
5061 * src/uhc_1.h: Likewise.
5062 * src/uhc_2.h: Likewise.
5063 * src/utf16.h: Likewise.
5064 * src/utf16be.h: Likewise.
5065 * src/utf16le.h: Likewise.
5066 * src/utf7.h: Likewise.
5067 * src/utf8.h: Likewise.
5068 * src/viscii.h: Likewise.
5070 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5072 Make transliteration optional.
5073 * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
5074 Set transliteration on if and only if tocode ends in //TRANSLIT.
5075 * README, man/iconv_open.3: Document how to enable transliteration.
5076 * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
5077 * tests/check-translit.bat: Likewise.
5078 * tests/check-translit.cmd: Likewise.
5080 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5082 * man/iconv.3: Fix typo.
5084 2000-10-31 Bruno Haible <haible@clisp.cons.org>
5086 * README, man/iconv_open.3: Document JOHAB again.
5088 2000-11-15 Bruno Haible <haible@clisp.cons.org>
5090 * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
5091 (STATIC): Change default from 0 to 1.
5092 * src/Makefile.msvc: Likewise.
5093 * tests/Makefile.msvc: Likewise.
5094 * tests/check-stateless.bat: Call 'sort' with no arguments.
5096 2000-11-12 Bruno Haible <haible@clisp.cons.org>
5098 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
5099 version from GNU CVS.
5101 2000-10-24 Bruno Haible <haible@clisp.cons.org>
5103 * Version 1.4 released.
5104 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5105 Bump version number.
5106 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
5108 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5110 Implement and document GB18030 and BIG5HKSCS.
5111 * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
5113 (do_gb18030uni): New function.
5114 (main): Accept gb18030ext, gb18030uni, hkscs.
5115 * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
5116 (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
5117 hkscs.h): New targets.
5118 * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
5119 * src/hkscs.h, src/big5hkscs.h: New files.
5120 * src/converters.h: Include gb18030.h and big5hkscs.h.
5121 * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
5122 * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
5123 * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
5124 * tests/Makefile.msvc (check): Likewise.
5125 * tests/Makefile.os2 (check): Likewise.
5126 * tests/GB18030.TXT: New file.
5127 * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
5129 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5131 * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
5132 UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
5133 * tests/table-to.c (main): Likewise.
5135 2000-10-22 Bruno Haible <haible@clisp.cons.org>
5137 * src/gentranslit.c (main): Read the input in UTF-8 encoding.
5139 2000-10-09 Bruno Haible <haible@clisp.cons.org>
5141 CPU recognition on OpenBSD.
5142 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
5143 __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
5145 2000-10-03 Bruno Haible <haible@clisp.cons.org>
5147 * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
5148 character literals, use the numeric value instead.
5149 Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
5151 2000-09-29 Bruno Haible <haible@clisp.cons.org>
5153 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
5156 2000-09-25 Bruno Haible <haible@clisp.cons.org>
5158 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
5159 as equivalent to __i386. For OpenBSD.
5161 2000-09-21 Bruno Haible <haible@clisp.cons.org>
5163 * src/utf16.h (utf16_wctomb): Reject single surrogates.
5164 * src/utf16be.h (utf16be_wctomb): Likewise.
5165 * src/utf16le.h (utf16le_wctomb): Likewise.
5166 * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
5167 * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
5168 * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
5169 * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
5171 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
5174 2000-09-15 Bruno Haible <haible@clisp.cons.org>
5176 * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
5177 * src/Makefile.in (install, installdirs, uninstall): Likewise.
5178 * man/Makefile.in (install, installdirs, uninstall): Likewise.
5180 2000-09-11 Bruno Haible <haible@clisp.cons.org>
5182 * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
5184 2000-08-26 Bruno Haible <haible@clisp.cons.org>
5186 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
5189 2000-07-04 Akira Hatakeyama <akira@sra.co.jp>
5190 Bruno Haible <haible@clisp.cons.org>
5192 * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
5193 tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
5194 tests/check-stateless.cmd, tests/check-translit.cmd: New files.
5196 2000-06-28 Bruno Haible <haible@clisp.cons.org>
5198 * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
5200 * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
5201 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
5202 sizeof(unsigned short).
5203 * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
5204 sizeof(unsigned int).
5205 Reported by François Pinard <pinard@iro.umontreal.ca>.
5207 2000-05-29 Bruno Haible <haible@clisp.cons.org>
5209 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
5210 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
5212 2000-05-23 Bruno Haible <haible@clisp.cons.org>
5214 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
5215 host_vendor, host_os correctly if $host has more than two hyphens.
5217 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5219 * Version 1.3 released.
5220 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5221 Bump version number.
5222 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
5224 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5227 * INSTALL.generic: New file.
5229 Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5230 * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
5231 * src/converters.h: Include them.
5232 * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
5233 * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
5234 * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
5235 (UCS-2LE): Renamed from UCS-2-LE.
5236 (UCS-4BE): Renamed from UCS-4-BE.
5237 (UCS-4LE): Renamed from UCS-4-LE.
5238 * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
5239 * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5240 * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5241 * tests/Makefile.msvc (check): Likewise.
5242 * tests/UCS-*snippet*: New files.
5244 Allow building as a shared library on Windows.
5245 Allow running the tests on Windows.
5246 * Makefile.devel (include/iconv.h.msvc): Remove rule.
5247 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
5250 * windows/dllexport.h: New file.
5251 * include/iconv.h.msvc: Remove file.
5252 * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
5253 autogenerated files.
5254 * Makefile.msvc (STATIC, DEBUG): Default to 0.
5255 (all): Choose either include\iconv.h.msvc-static or
5256 include\iconv.h.msvc-shared.
5257 (check): Depend on all.
5258 (all, check, mostlyclean, clean, distclean, maintainer-clean):
5259 Recurse into tests directory.
5260 * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
5261 (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
5262 (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
5263 (RESOURCES): New variable.
5264 (iconv.lib): Change rule when building DLL.
5265 (clean, distclean): One filename per line.
5266 * tests/Makefile.msvc: New file.
5267 * tests/check-stateful.bat, tests/check-stateless.bat,
5268 tests/check-translit.bat: New files.
5269 * tests/uniq-u.c: New file, taken from GNU textutils.
5270 * README.win32: Update.
5271 Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
5273 2000-04-14 Bruno Haible <haible@clisp.cons.org>
5275 Fix an OSF/1 problem.
5276 * configure.in: Define GCC variable for substitution.
5277 * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
5280 2000-04-13 Bruno Haible <haible@clisp.cons.org>
5282 Fix a SunOS 4 problem.
5283 * include/iconv.h.in: If EILSEQ is not defined by the system, define
5284 it to ENOENT, not EINVAL.
5286 2000-04-02 Bruno Haible <haible@clisp.cons.org>
5288 Allow building on filesystems lacking symlinks and hard links.
5289 * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
5291 * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
5292 * src/Makefile.in (LN): Use autoconfigured value @LN@.
5293 (LN_S): Use autoconfigured value @LN_S@.
5295 2000-03-15 Bruno Haible <haible@clisp.cons.org>
5297 * Version 1.2 released.
5298 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5299 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
5301 2000-03-14 Bruno Haible <haible@clisp.cons.org>
5303 Implement and document UTF-16BE and UTF16LE.
5304 * src/utf16be.h, src/utf16le.h: New files.
5305 * src/converters.h: Include them.
5306 * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
5307 * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
5308 * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
5309 * tests/UTF-16*snippet*: New files.
5311 * src/utf16.h (utf16_wctomb): Output a byte order mark.
5313 2000-03-13 Bruno Haible <haible@clisp.cons.org>
5315 Provide all encodings used by AIX locales.
5316 * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
5318 (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
5319 * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
5320 src/cp1129.h: New files.
5321 * src/converters.h: Include them if USE_AIX is defined.
5322 * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
5324 * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
5325 * src/genaliases2.c: New file.
5326 * src/iconv.c: Define USE_AIX on AIX.
5327 Include encodings_aix.def and aliases_aix.h.
5328 (aliases2_lookup): New function.
5329 (iconv_open): Call aliases2_lookup.
5330 * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
5332 * Makefile.devel (all): Add src/aliases_aix.h.
5333 (src/aliases_aix.h): New rule.
5334 (src/flags.h): Depend on src/encodings_aix.def.
5336 2000-02-24 Bruno Haible <haible@clisp.cons.org>
5338 * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
5339 Reported by Edmund Grimley Evans <edmundo@rano.org>.
5341 2000-02-22 Bruno Haible <haible@clisp.cons.org>
5343 * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
5345 2000-02-15 Bruno Haible <haible@clisp.cons.org>
5347 * src/iconv.c (iconv): Add cast in xxx_reset call.
5349 2000-02-05 Bruno Haible <haible@clisp.cons.org>
5351 * src/tis620.h: Simplify.
5353 2000-01-27 Bruno Haible <haible@clisp.cons.org>
5355 * Makefile.devel (CLISP_DIR): Change to "..".
5357 2000-01-24 Bruno Haible <haible@clisp.cons.org>
5359 * Version 1.1 released.
5360 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5361 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
5363 2000-01-23 Bruno Haible <haible@clisp.cons.org>
5365 * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
5368 2000-01-22 Bruno Haible <haible@clisp.cons.org>
5370 * include/iconv.h.in (iconvctl): New declaration.
5371 (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
5373 * src/iconv.c (iconvctl): New function.
5375 * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
5377 Solve a build problem.
5378 * include/iconv.h.in: Renamed from include/libiconv.h.in.
5379 * Makefile.devel: libiconv.h -> iconv.h.
5380 * Makefile.in: Likewise.
5381 * configure.in: Likewise. Remove check for <iconv.h>.
5382 * src/iconv.c: Include iconv.h instead of libiconv.h.
5383 * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
5385 * README, man/iconv_open.3: Don't document JOHAB any more.
5387 * man/iconv.3: Clarify return value again.
5389 2000-01-16 Bruno Haible <haible@clisp.cons.org>
5392 * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
5393 (ISO-8859-15): Add alias ISO-IR-203.
5394 (EUC-CN): Add alias CN-GB, from RFC 1922.
5395 (BIG5): Add alias CN-BIG5, from RFC 1922.
5396 * Makefile.devel (src/aliases.h): Add 8th character to key set.
5399 * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
5400 (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
5401 (KSC_5601): Drop KSC5601.1987-0 alias.
5403 Improve GB/T 12345 (not used yet).
5404 * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
5405 * src/gb12345ext.h: Regenerated.
5407 Improve and document CP949.
5408 * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
5409 (uhc_1.h, uhc_2.h): New rules.
5410 * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
5412 (output_uni2charset_sparse): Take an additional boolean argument.
5413 All callers changed.
5414 (*_uhc_1, *_uhc_2): New functions.
5415 (main): Treat uhc_1 and uhc_2.
5416 * src/uhc_1.h, src/uhc_2.h: New files.
5417 * src/cp949.h: New file, include them.
5418 * src/converters.h: Include it.
5419 * src/encodings.def (KSC_5601): Remove alias CP949.
5420 (CP949): New encoding.
5421 * README, man/iconv_open.3: Add CP949.
5422 * tests/Makefile.in (check): Check CP949.
5423 * tests/CP949.TXT: New file.
5426 * README, man/iconv_open.3: Add CP932.
5427 * tests/Makefile.in (check): Check CP932.
5428 * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
5430 * Makefile.devel (src/flags.h): Depend on src/converters.h.
5432 * tests/Makefile.in (check): Check JIS_X0201.
5433 * tests/JIS_X0201.TXT: New file.
5435 * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
5436 * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
5438 * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
5439 (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
5441 Add ISO-IR-165 (undocumented).
5442 * tools/Makefile (all): Add isoir165ext.h.
5443 (isoir165ext.h): New rule.
5444 * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
5445 * src/isoir165.h, src/isoir165ext.h: New files.
5446 * src/converters.h: Include it.
5447 * src/encodings.def: Add ISO-IR-165.
5448 * tests/Makefile.in (check): Check ISO-IR-165.
5449 * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
5451 Add ISO646-CN (undocumented).
5452 * src/iso646_cn.h: New file.
5453 * src/converters.h: Include it.
5454 * src/encodings.def: Add ISO646-CN.
5455 * tests/Makefile.in (check): Check ISO646-CN.
5456 * tests/ISO646-CN.TXT: New file.
5458 Add ISO646-JP (undocumented).
5459 * src/iso646_jp.h: New file.
5460 * src/converters.h: Include it.
5461 * src/encodings.def: Add ISO646-JP.
5462 * tests/Makefile.in (check): Check ISO646-JP.
5463 * tests/ISO646-JP.TXT: New file.
5465 2000-01-05 Bruno Haible <haible@clisp.cons.org>
5468 * tools/Makefile (all): Add iso8859_16.h.
5469 (iso8859_16.h): New rule.
5470 * src/iso8859_16.h: New file.
5471 * src/converters.h: Include it.
5472 * src/encodings.def: Add ISO-8859-16.
5473 * README, man/iconv_open.3: Add ISO-8859-16.
5474 * tests/Makefile.in (check): Check ISO-8859-16.
5475 * tests/ISO-8859-16.TXT: New file.
5477 * man/iconv.3: Clarify what happens *inbuf in case 3.
5479 * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
5480 * tests/ISO-8859-8.TXT: Likewise.
5482 2000-01-04 Bruno Haible <haible@clisp.cons.org>
5484 * Version 1.0 released.
5485 * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
5486 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
5487 (libiconv.la): Use LIBICONV_VERSION_INFO.
5489 2000-01-03 Bruno Haible <haible@clisp.cons.org>
5491 * tests/Makefile.in: New file.
5492 tests/check-stateless, tests/table-from.c, tests/table-to.c,
5493 tests/*.TXT, tests/genutf8.c: New files, checks for stateless
5495 tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
5496 checks for stateful encodings.
5497 * Makefile.in (all, check, mostlyclean, clean, distclean,
5498 maintainer-clean): Descend into tests directory.
5499 * configure.in: Add tests/Makefile to AC_OUTPUT duties.
5501 * src/gentranslit.c: New file.
5502 * Makefile.devel (src/translit.h): New rule.
5503 * src/translit.def, src/translit.h: New files.
5504 * src/iconv.c: Include it.
5505 (iconv): Transliterate using translit.h table.
5507 * src/genflags.c: New file.
5508 * Makefile.devel (src/flags.h): New rule.
5509 * src/flags.h: New file.
5510 * src/iconv.c: Include it.
5511 (encoding): Add field 'oflags'.
5512 (all_encodings): Initialize the field 'oflags'.
5513 (iconv_open): Copy field 'oflags'.
5514 (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
5515 * src/Makefile.in (iconv.lo): Update dependencies.
5517 * src/converters.h: New file, extracted from src/iconv.c.
5518 * src/iconv.c: Include it.
5519 * src/Makefile.in (iconv.lo): Update dependencies.
5521 * tools/cjk_variants.c: New file.
5522 * tools/Makefile (ALL): Add cjk_variants.h.
5523 (cjk_variants.h, cjk_variants): New rules.
5524 * src/cjk_variants.h: New file.
5525 * src/iconv.c: Include it.
5526 (iconv): Use cjk_variants for transliteration.
5528 * man/iconv.3: Fix description of return value.
5529 * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
5530 * iso2022_kr.h (iso2022kr_wctomb): Likewise.
5531 * src/iconv.c (iconv): Do Hangul transliteration here and increment
5532 result once for every transliterated character.
5533 * src/johab_hangul.h (johab_hangul_decompose): Change result array
5534 from 'unsigned char*' to 'wchar_t*'.
5536 * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
5539 * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
5541 * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
5544 * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
5546 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
5549 * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
5550 not being excluded. Fix that.
5551 * src/ksc5601.h: Regenerated.
5552 * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
5553 valid in KSC5601/KSX1001 but not in JOHAB.
5555 * src/iconv.c (conv_struct): Add fields iindex, oindex.
5556 (iconv_open): Fill in iindex, oindex.
5558 * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
5559 "csUnicode11", from IANA charset list.
5560 (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
5561 from IANA charset list.
5562 (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
5563 from IANA charset list.
5564 (GB_2312-80): New encoding, from IANA charset list.
5566 * README, man/iconv_open.3: Add MacIceland and MacUkraine.
5568 * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
5569 (all): Depend on src/aliases.h.
5570 * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
5571 $(srcdir)/aliases.gperf.
5574 * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
5576 1999-12-31 Bruno Haible <haible@clisp.cons.org>
5578 * Version 0.3 released.