1 2024-09-26 Bruno Haible <bruno@clisp.org>
3 Update after gnulib changed.
4 * autogen.sh: Copy also build-to-host.m4 and host-cpu-c-abi.m4.
6 2024-08-24 Bruno Haible <bruno@clisp.org>
8 Fix shared library support in 32-bit mode on FreeBSD/powerpc64.
9 Patch from <https://savannah.gnu.org/patch/index.php?10469>.
10 * m4/libtool.m4: On FreeBSD, fix shlibpath_var.
12 2024-08-14 Collin Funk <collin.funk1@gmail.com> (tiny change)
14 Prefer #include <...> for system headers.
15 See <https://www.gnu.org/software/gnulib/manual/html_node/Style-of-_0023include-statements.html>.
16 * gnulib-local/lib/xmalloc.c: Include <error.h>.
17 * src/iconv.c: Likewise.
19 2024-07-12 Bruno Haible <bruno@clisp.org>
21 Switch to automake 1.17.
22 * autogen.sh: Update comment.
24 2024-07-12 Bruno Haible <bruno@clisp.org>
27 * include/iconv.h.in (iconv_wchar_mb_to_wc_fallback,
28 iconv_wchar_wc_to_mb_fallback): Assume HAVE_WCHAR_T is 1.
29 * src/iconv.c (ilseq_wchar_subst_buffer, subst_mb_to_wc_fallback,
30 subst_wc_to_mb_fallback, main): Likewise.
31 * configure.ac (HAVE_WCHAR_T): Remove variable.
32 (gt_TYPE_WCHAR_T): Remove invocation.
34 2024-06-11 Bruno Haible <bruno@clisp.org>
36 POSIX compliance: Interpret '-' file name as standard input.
37 Reported by Brian Inglis at <https://savannah.gnu.org/bugs/?65874>.
38 * src/iconv.c (main): Recognize the argument '-' as denoting standard
41 2024-05-23 Bruno Haible <bruno@clisp.org>
43 INSTALL.windows: Fix MSVC instructions.
44 * INSTALL.windows: Mention the tools needed for 'windres'.
46 2024-04-04 Bruno Haible <bruno@clisp.org>
48 Fix macro file 'serial' numbers for 'aclocal --install'.
49 * gnulib-local/m4/alloca.m4: Make 'serial' effective. Set value to 100,
50 in order to override gnulib's alloca.m4.
52 2023-12-30 Bruno Haible <bruno@clisp.org>
54 Switch to autoconf 2.72.
55 * autogen.sh: Update comment.
57 2023-09-18 Bruno Haible <bruno@clisp.org>
59 Fix shared library support on Android.
60 Patch from <https://savannah.gnu.org/patch/index.php?10393>.
61 * m4/libtool.m4: On Android, fix library_names_spec and
62 hardcode_libdir_flag_spec.
64 2023-09-16 Bruno Haible <bruno@clisp.org>
67 * include/export.h (LIBICONV_SHLIB_EXPORTED): Renamed from
68 LIBICONV_DLL_EXPORTED. Prefer the term "shared library", since the term
69 "DLL" applies only to Windows.
70 * Makefile.devel (include/iconv.h.build.in): Insert
71 LIBICONV_SHLIB_EXPORTED instead of LIBICONV_DLL_EXPORTED.
72 * configure.ac (DLL_VARIABLE): Update comment.
73 * lib/Makefile.in (DEFS): Update comment.
74 * woe32dll/export.h: Update comment.
76 2023-09-13 Bruno Haible <bruno@clisp.org>
78 Simplify the library: Don't compile relocatable.c any more.
79 The library does not need relocatable.h any more since 2018-09-22.
80 * lib/relocatable.h: Remove file.
81 * lib/relocatable.c: Remove file.
82 * lib/compat.c: New file.
83 * lib/Makefile.in (DEFS): Don't define LIBDIR, BUILDING_DLL,
84 ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
85 set_relocation_prefix, relocate, relocate2.
86 (SOURCES): Remove relocatable.c. Add compat.c.
87 (OBJECTS): Remove relocatable.lo. Add compat.lo.
88 (localcharset.lo): Update dependencies.
89 (relocatable.lo): Remove rule.
90 (compat.lo): Add rule.
91 (SOURCE_FILES): Remove relocatable.h, relocatable.c. Add compat.c.
93 2023-09-07 Bruno Haible <bruno@clisp.org>
95 Sync woe32dll/export.h with GNU libunistring and GNU gettext.
96 * woe32dll/export.h: Update comments.
97 (IMP): Define correctly for 64-bit Windows platforms.
99 2023-09-06 Bruno Haible <bruno@clisp.org>
101 Don't export symbols from static MSVC .obj files.
102 Suggested by Dmitry Bely <dmitry.bely@gmail.com> in
103 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-08/msg00002.html>.
104 * include/export.h: Add a copyright notice. Set LIBICONV_DLL_EXPORTED to
105 empty on MSVC when DLL_EXPORT is not defined.
106 * Makefile.devel (include/iconv.h.build.in): Filter out the second
108 * configure.ac (DLL_VARIABLE): Test DLL_EXPORT, not _DLL.
109 * lib/relocatable.h: From gnulib:
110 (RELOCATABLE_DLL_EXPORTED): Don't use __declspec(dllexport) when
111 creating static .obj files with MSVC.
113 2023-08-30 Bruno Haible <bruno@clisp.org>
115 Recognize the *-*-windows* config triplets introduced on 2023-06-26.
116 * configure.ac: Treat windows* as equivalent to mingw*.
118 2023-06-29 Bruno Haible <bruno@clisp.org>
120 Update the installation instructions for Windows.
121 * INSTALL.windows: Add a note about MSYS2.
123 2023-05-29 Bruno Haible <bruno@clisp.org>
125 GB18030: Help transitioning away from PUA code points.
126 * lib/gb18030ext.h (gb18030_2005_ext_wctomb): Remove function.
127 (gb18030ext_wctomb): Renamed from gb18030_2022_ext_wctomb.
128 * lib/gb18030uni.h (gb18030_2005_uni_wctomb): Map 6 Ext-B code points to
130 (gb18030_2022_uni_wctomb): Small refactoring.
131 * lib/gb18030_2005.h (gb18030_2005_pua2charset): Map 6 PUA code points
132 to 4-bytes sequences instead of 2-bytes sequences.
133 (gb18030_2005_wctomb): Update accordingly. Invoke gb18030ext_wctomb
134 instead of gb18030_2005_ext_wctomb.
135 * lib/gb18030_2022.h (gb18030_2022_wctomb): Invoke gb18030ext_wctomb
136 instead of gb18030_2022_ext_wctomb.
137 * tests/GB18030-2005.IRREVERSIBLE.TXT: Update the inverse mappings of 6
138 Ext-B code points and 6 PUA code points.
141 2023-05-24 Bruno Haible <bruno@clisp.org>
143 man pages: List a fifth condition when iconv(3) may stop.
144 Based on the patch to the man-pages project
145 <https://marc.info/?l=linux-man&m=168496625522371&w=2> =
146 <https://lore.kernel.org/linux-man/2f9c4dbd-7aa6-fc7a-f126-453603ef695e@gmail.com/T/#m25e33d4defa1118e5c84951790f0319360abf9d4>
147 * man/iconv.3: List a fifth condition.
149 2023-05-24 Bruno Haible <bruno@clisp.org>
151 man pages: Use man page section title from groff or the distro.
152 Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
153 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00027.html>.
154 * man/*.[13]: Remove section title "Linux Programmer's Manual".
156 2023-05-21 Bruno Haible <bruno@clisp.org>
158 Support creating shared libraries on Hurd/x86_64.
160 <https://lists.gnu.org/archive/html/bug-hurd/2023-05/msg00086.html>.
161 * m4/libtool.m4 (_LT_ENABLE_LOCK): Treat Hurd/x86_64 like
164 2023-05-21 Bruno Haible <bruno@clisp.org>
166 Fix link error regarding _libiconv_version on MSVC in C++ mode.
167 Reported at <https://savannah.gnu.org/bugs/?64227>.
168 * include/iconv.h.in (_libiconv_version): Enclose in an extern "C"
171 2023-05-20 Bruno Haible <bruno@clisp.org>
173 Implement GB18030 version 2022.
174 * lib/encodings.def (GB18030): Add alias GB18030:2005.
175 (GB18030:2022): New encoding.
176 * lib/gb18030ext.h (gb18030_2005_ext_2uni_pagefe): Renamed from
177 gb18030ext_2uni_pagefe.
178 (gb18030_2022_ext_2uni_pagefe): New array.
179 (gb18030_2005_ext_mbtowc): Renamed from gb18030ext_mbtowc.
180 (gb18030_2022_ext_mbtowc): New function.
181 (gb18030_2005_ext_wctomb): Renamed from gb18030ext_wctomb.
182 (gb18030_2022_ext_wctomb): New function.
183 * lib/gb18030uni.h (gb18030_2022_charset2uni_pua1,
184 gb18030_2022_charset2uni_pua2): New arrays.
185 (gb18030_2005_uni_mbtowc): Renamed from gb18030uni_mbtowc.
186 (gb18030_2022_uni_mbtowc): New function.
187 (gb18030_2022_uni2charset_pua1, gb18030_2022_uni2charset_pua2): New
189 (gb18030_2005_uni_wctomb): Renamed from gb18030uni_wctomb.
190 (gb18030_2022_uni_wctomb): New function.
191 * lib/gb18030_2005.h: Renamed from lib/gb18030.h. Update comments.
192 (gb18030_2005_mbtowc): Renamed from gb18030_mbtowc.
193 (gb18030_2005_pua2charset): Renamed from gb18030_pua2charset.
194 (gb18030_2005_wctomb): Renamed from gb18030_wctomb.
195 * lib/gb18030_2022.h: New file, based on lib/gb18030_2005.h.
196 * lib/converters.h: Don't include gb18030.h. Include gb18030_2005.h,
198 * lib/Makefile.in (SOURCE_FILES): Remove gb18030.h. Add gb18030_2005.h,
200 * tests/GB18030-2005-BMP.TXT: Renamed from tests/GB18030-BMP.TXT.
201 * tests/GB18030-2005.IRREVERSIBLE.TXT: Renamed from
202 tests/GB18030.IRREVERSIBLE.TXT.
203 * tests/GB18030-2022-BMP.TXT: New file.
204 * tests/Makefile.in (check): Test GB18030:2005 instead of GB18030. Also
206 (clean): Don't remove GB18030.TXT. Instead, remove GB18030-2005.TXT and
208 (SOURCE_FILES): Update. Add GB18030-2022-BMP.TXT.
209 * README: Mention the new encoding.
210 * man/iconv_open.3: Likewise.
213 2023-05-19 Bruno Haible <bruno@clisp.org>
215 Make the compiler used by Makefile.devel customizable.
216 Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
217 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-05/msg00006.html>.
218 * Makefile.devel: Require GNU make.
219 (CC): Use value from the environment, if set and non-empty.
220 (CFLAGS): Use value from the environment, if set.
221 * autogen.sh (GMAKE): New variable.
222 Use it for executing Makefile.devel.
224 2023-05-17 Bruno Haible <bruno@clisp.org>
226 On z/OS, allow charset tagging of temporary shell scripts.
227 Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
228 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-05/msg00002.html>.
229 * lib/genaliases.c (BINARY_MODE): New macro.
230 (main): Use it instead of "b".
232 2023-05-12 Bruno Haible <bruno@clisp.org>
234 Integrate the last change.
235 * src/Makefile.in (SOURCE_FILES): Add zos-tag.h.
236 * tests/Makefile.in (SOURCE_FILES): Add check-tag.
237 * NEWS: Mention the new functionality.
239 2023-05-12 Mike Fulton <mikefultonpersonal@gmail.com>
241 On z/OS, set a charset tag on iconv's output file.
242 For the concept of charset tags as external metadata on z/OS files, see
243 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00021.html>.
244 * src/zos-tag.h: New file.
245 * src/iconv.c: Include zos-tag.h.
246 (convert): Add a 'tocode' parameter. On z/OS, turn off auto-conversion
247 and tag the output file.
248 (main): Update callers.
249 * tests/check-ebcdic: On z/OS, make all test files initially untagged.
250 * tests/check-tag: New file.
251 * tests/Makefile.in (check): Pass the host_os to check-ebcdic. Invoke
254 2023-04-03 Bruno Haible <bruno@clisp.org>
256 Fix genflags compilation error.
257 * lib/genflags.c (ICONV_SURFACE_EBCDIC_ZOS_UNIX): New macro, copied from
260 Allow overriding the newline conversion for EBCDIC encodings.
261 Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
262 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00009.html>.
263 * include/iconv.h.in (ICONV_SURFACE_NONE,
264 ICONV_SURFACE_EBCDIC_ZOS_UNIX): New macros.
265 (ICONV_GET_FROM_SURFACE, ICONV_SET_FROM_SURFACE, ICONV_GET_TO_SURFACE,
266 ICONV_SET_TO_SURFACE): New macros.
267 * lib/converters.h (struct conv_struct): Add the fields isurface,
269 (swap_x15_x25): New macro.
270 * lib/iconv.c (iconv_open, iconv_open_into): Add local variables
271 from_surface, to_surface.
272 (ALL_SURFACES): New macro.
273 (iconvctl): Adjust ICONV_TRIVIALP implementation. Implement the
274 ICONV_{GET,SET}_{FROM,TO}_SURFACE requests.
275 * lib/iconv_open1.h: Parse a /ZOS_UNIX surface specifier. Set
276 from_surface, to_surface.
277 * lib/iconv_open2.h: Copy the values of from_surface, to_surface into
278 the conversion descriptor.
279 * lib/ebcdic*.h (*_mbtowc): Test the isurface. If requested, call
280 swap_x15_x25 right after fetching an input byte.
281 (*_wctomb): Test the osurface. If requested, call swap_x15_x25 right
282 before storing an output byte.
283 * man/iconvctl.3 (REQUEST VALUES): Document the
284 ICONV_{GET,SET}_{FROM,TO}_SURFACE requests.
285 * src/iconv.c (main): If ICONV_EBCDIC_ZOS_UNIX is set, set the from/to
286 surfaces accordingly.
287 * man/iconv.1 (ENVIRONMENT): New section.
288 * tests/check-ebcdic: New file.
289 * tests/Makefile.in (check): Invoke it.
290 (SOURCE_FILES): Add it.
291 * NEWS: Mention the new functionality.
293 2023-03-31 Bruno Haible <bruno@clisp.org>
295 Add some transliterations for mathematical symbols.
296 Based on <https://sourceware.org/bugzilla/show_bug.cgi?id=23132>
297 and the translit_neutral change in
298 <https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=513aaa0d782f8fae36732d06ca59d658149f0139>.
299 Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
300 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-03/msg00002.html>.
301 * lib/translit.def: Add a couple of transliterations in the range
305 2023-03-31 Bruno Haible <bruno@clisp.org>
307 Upgrade transliterations to Unicode 15.0.0.
308 * tools/gen-translit-def-part.lisp: Update comments.
309 * lib/translit.def: Include differences between the generated files
310 translit-part-4.0.0.def and translit-part-15.0.0.def.
312 2023-03-31 Bruno Haible <bruno@clisp.org>
314 Make table of transliterations more maintainable.
315 * tools/gen-translit-def-part.lisp: New file.
316 * Makefile.in (SOURCE_FILES): Add it.
318 2023-03-31 Bruno Haible <bruno@clisp.org>
320 Fix table of transliterations.
321 * lib/translit.def: Sort according to Unicode code point.
323 2023-02-13 Bruno Haible <bruno@clisp.org>
325 Fix iconv link command for Cygwin.
326 Inspired by https://www.cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/libiconv.git;a=blob;f=1.16-cross-install.patch;h=7b3c5c0d761497a20abf0e4cc38d74f2755445fb;hb=HEAD .
327 Rationale: libintl may depends on libiconv.
328 * src/Makefile.in (install): On the link command line, mention libintl
331 2023-01-29 Bruno Haible <bruno@clisp.org>
333 Fix a clang warning "a function declaration without a prototype...".
334 * lib/loop_wchar.h (mbrtowc): Don't declare. Drop portability to BeOS.
336 2022-07-18 Bruno Haible <bruno@clisp.org>
338 Make autopull.sh more suited for continuous integration.
339 * autopull.sh: Support option --one-time.
341 2022-07-18 Bruno Haible <bruno@clisp.org>
343 Move gnulib-tool invocation back from autopull.sh to autogen.sh.
344 * autogen.sh: Revert last change. Improve comments.
345 * autopull.sh: Only call 'gitsub.sh pull'.
346 * HACKING: Mention autopull.sh.
348 2022-07-17 Bruno Haible <bruno@clisp.org>
350 Split autogen.sh into autopull.sh and autogen.sh.
351 * autopull.sh: New file, based on autogen.sh.
352 * autogen.sh: Remove code that was moved to autopull.sh. Remove
353 --skip-gnulib option.
354 * Makefile.devel (all): Remove srclib/Makefile.gnulib.
355 * Makefile.in (SOURCE_FILES): Add autogen.sh.
356 * HACKING: Mention autopull.sh.
358 2022-05-22 Bruno Haible <bruno@clisp.org>
360 Add GNU Project notice.
361 * JOIN-GNU: New file. Inspired by a suggestion from José E. Marchesi
362 on the gnu-prog-discuss mailing list.
363 * README: Refer to it.
364 * Makefile.in (SOURCE_FILES): Add it.
366 2022-05-15 Bruno Haible <bruno@clisp.org>
368 Switch to libtool 2.4.7.
369 * m4/libtool.m4: Update from libtool-2.4.7, with modifications:
370 2008-04-06 Bruno Haible <bruno@clisp.org>
371 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
372 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
374 * m4/ltoptions.m4: Likewise.
375 * m4/ltsugar.m4: Likewise.
376 * m4/ltversion.m4: Likewise.
377 * m4/lt~obsolete.m4: Likewise.
378 * build-aux/ltmain.sh: Update from libtool-2.4.7, with modifications:
379 2017-07-15 Bruno Haible <bruno@clisp.org>
380 Allow building statically linked binaries, through
381 LDFLAGS="-static". Apply patch from
382 <https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
383 * build-aux/ltmain.sh (func_mode_help, func_mode_link): In the
384 link mode, accept option '-static-uninstalled-libs' in place of
385 '-static', and make '-static' an equivalent of '-all-static'.
387 2022-04-13 Bruno Haible <bruno@clisp.org>
389 Fix undefined behaviour.
390 * tests/test-shiftseq.c (main2): Make input array larger.
392 2022-02-12 Bruno Haible <bruno@clisp.org>
395 * po/ro.po: Update Romanian translations.
396 * po/wa.po: Update Walloon translations.
398 2022-02-12 Bruno Haible <bruno@clisp.org>
400 Prepare for version 1.17.
401 * configure.ac: Bump version number to 1.17.
402 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
403 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 9:0:7.
404 * src/iconv.c (print_version): Update copyright year.
405 * windows/iconv.rc: Likewise.
406 * windows/libiconv.rc: Likewise.
407 * README: Update download link.
409 2022-02-12 Bruno Haible <bruno@clisp.org>
411 Update source file list (regression 2022-01-23).
412 * lib/Makefile.in (SOURCE_FILES): Add encodings_zos.def, ebcdic*.h.
413 (GENERATED_FILES): Add aliases_zos.h, canonical_zos.h.
414 * tests/Makefile.in (SOURCE_FILES): Add IBM-*.TXT.
416 2022-01-23 Bruno Haible <bruno@clisp.org>
419 * NEWS: Mention the EBCDIC encodings.
421 2022-01-23 Bruno Haible <bruno@clisp.org>
423 Optimize the EBCDIC table sizes.
424 * lib/converters.h (DEDUPLICATE_TABLES): New macro.
425 * lib/ebcdic1025.h: Deduplicate tables with ebcdic880.h.
426 * lib/ebcdic1123.h: Deduplicate tables with ebcdic1025.h.
427 * lib/ebcdic1132.h: Deduplicate tables with ebcdic838.h.
428 * lib/ebcdic1153.h: Deduplicate tables with ebcdic870.h.
429 * lib/ebcdic1154.h: Deduplicate tables with ebcdic880.h.
430 * lib/ebcdic1155.h: Deduplicate tables with ebcdic1026.h.
431 * lib/ebcdic1156.h: Deduplicate tables with ebcdic1112.h.
432 * lib/ebcdic1157.h: Deduplicate tables with ebcdic1122.h.
433 * lib/ebcdic1158.h: Deduplicate tables with ebcdic1154.h, ebcdic1123.h.
434 * lib/ebcdic1160.h: Deduplicate tables with ebcdic838.h.
435 * lib/ebcdic1164.h: Deduplicate tables with ebcdic1130.h.
436 * lib/ebcdic1165.h: Deduplicate tables with ebcdic870.h.
437 * lib/ebcdic1166.h: Deduplicate tables with ebcdic1154.h.
438 * lib/ebcdic4971.h: Deduplicate tables with ebcdic875.h.
439 * lib/ebcdic12712.h: Deduplicate tables with ebcdic424.h.
441 2022-01-23 Bruno Haible <bruno@clisp.org>
443 New EBCDIC encodings.
444 Reported by Ulrich Schwab and Calvin Buckley via Jack Woehr.
445 * NOTES: Mention how to enable EBCDIC encodings.
446 * tests/IBM-*.TXT: New files.
447 * tools/8bit_tab_to_h.c (main): Emit copyright header with year 2022.
448 * tools/Makefile: Add rules for generating ebcdic*.h.
449 * lib/ebcdic*.h: New files, automatically generated by tools/Makefile.
450 * lib/ebcdic838.h: Tweak reverse mapping manually.
451 * lib/ebcdic1160.h: Likewise.
452 * lib/converters.h: Include all ebcdic*.h.
453 * lib/encodings_zos.def: New file.
454 * lib/genaliases2.c: Include encodings_zos.def.
455 * lib/genflags.c: Likewise.
456 * Makefile.devel (lib/aliases_zos.h lib/canonical_zos.h): New rule.
457 (lib/flags.h, totally-clean): Update.
458 * lib/aliases2.h: Include aliases_zos.h.
459 * lib/iconv.c (USE_ZOS): New macro.
460 Include encodings_zos.def, canonical_zos.h.
461 * README, man/iconv_open.3: Document the IBM-* encodings.
462 * tests/Makefile.in (check-extra-yes): Also test the EBCDIC encodings.
464 2022-01-04 Bruno Haible <bruno@clisp.org>
466 Update after gnulib changed.
467 * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Set GL_GENERATE_ALLOCA_H
468 instead of ALLOCA_H. Drop AC_SUBST and AM_CONDITIONAL invocations.
470 2021-09-19 Bruno Haible <bruno@clisp.org>
472 tests: Avoid check-subst failures in QEMU user-mode environments.
473 * Makefile.devel (GNULIB_MODULES): Add stdbool.
474 (gnulib-imported-files): Copy also tests/qemu.h.
475 * tests/is-native.c: New file.
476 * tests/Makefile.in (is-native, is-native.@OBJEXT@): New targets.
477 (clean): Remove the 'is-native' program.
478 (SOURCE_FILES): Add is-native.c.
479 (IMPORTED_FILES): Add qemu.h.
480 * tests/check-subst: Invoke 'locale charmap' only in native
483 2021-06-27 Bruno Haible <bruno@clisp.org>
486 Reported at <https://savannah.gnu.org/bugs/?60837>.
487 * README: Overhaul the paragraph that mentions iconv.m4.
489 2021-06-06 Bruno Haible <bruno@clisp.org>
491 gnulib-local: Put real license notice into the source files.
492 * gnulib-local/lib/alloca.in.h: Use an LGPLv2+ notice.
494 2021-02-28 Bruno Haible <bruno@clisp.org>
497 * DEPENDENCIES: List the normal dependencies of a package with an
498 Autoconf-generated configure file.
500 2021-02-07 Bruno Haible <bruno@clisp.org>
502 Support creating shared libraries on MidnightBSD.
503 Patch from <https://savannah.gnu.org/patch/?10007>.
504 * m4/libtool.m4: Treat MidnightBSD like FreeBSD.
505 * build-aux/ltmain.sh: Likewise.
507 2021-01-31 Bruno Haible <bruno@clisp.org>
509 Update after gnulib changed on 2020-08-26.
510 * configure.ac: Test $iconv_arg1, not $am_cv_proto_iconv_arg1.
512 2021-01-31 Bruno Haible <bruno@clisp.org>
514 Switch to autoconf 2.71.
515 * autogen.sh: Update comment.
516 * configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING. Invoke
517 AC_C_BIGENDIAN instead of CL_WORDS_LITTLEENDIAN.
518 * m4/eilseq.m4: Require Autoconf >= 2.61.
519 (AC_EILSEQ): Improve quoting. Use AC_COMPUTE_INT instead of
521 * m4/endian.m4: Remove file.
522 * Makefile.in (SOURCE_FILES): Remove it.
524 2020-12-08 Bruno Haible <bruno@clisp.org>
526 Switch to autoconf 2.70.
527 * Makefile.devel (AUTOCONF, AUTOHEADER): Remove '-2.69' suffix.
528 * HACKING: Remove sentence about symbolic links.
529 * autogen.sh: Update comment.
531 2020-08-31 Bruno Haible <bruno@clisp.org>
533 Fix some -Wcast-qual warning, reported by clang.
534 * lib/iconv.c (compare_by_name): Add more 'const'.
535 (iconv_canonicalize): Cast value to 'unsigned char', not pointer to 'unsigned char *'.
536 * lib/iconv_open1.h: Likewise.
538 2020-08-30 Bruno Haible <bruno@clisp.org>
540 Make sure that build-aux/compile is in the tarball.
541 * autogen.sh: Fetch also 'build-aux/compile' through gnulib-tool.
542 * Makefile.devel (srclib/Makefile.in): Don't fetch nor delete
544 * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/compile.
545 (IMPORTED_FILES): Add build-aux/compile.
547 2020-08-29 Bruno Haible <bruno@clisp.org>
549 Update after gnulib changed.
550 * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.64.
552 2020-08-06 Bruno Haible <bruno@clisp.org>
554 Avoid a GCC warning with GCC >= 7.
555 Reported by Reini Urban <rurban@cpan.org>
556 in <https://savannah.gnu.org/bugs/?58903>.
557 * lib/gentranslit.c (main): Reset i to 0 each time p gets a new value.
558 Add assertion about i's possible values.
560 2020-04-05 Bruno Haible <bruno@clisp.org>
562 Fix an autogen.sh failure (regression from 2016-12-04).
563 Reported by Petr Ovtchenkov <ptr@void-ptr.info> in
564 <https://lists.gnu.org/archive/html/bug-gnu-libiconv/2020-04/msg00003.html>.
565 * autogen.sh: Invoke also the Makefile target srclib/Makefile.in, so as
566 to get build-aux/install-sh. Finish the "copy files" phase before recursing
567 through the subpackages tree through Makefile.devel.
568 * Makefile.devel: Reorder targets.
570 2020-04-04 Bruno Haible <bruno@clisp.org>
573 * gnulib-local/modules/mbstate (License): Set to LGPLv2+.
575 2020-04-04 Bruno Haible <bruno@clisp.org>
577 Change the license of the library from LGPL 2.0 to LGPL 2.1.
578 * COPYING.LIB: Upgrade to LGPL 2.1.
580 2019-12-23 Bruno Haible <bruno@clisp.org>
582 Do export the symbol 'locale_charset' (needed by GNU bash).
583 * lib/Makefile.in (DEFS): Define also BUILDING_LIBCHARSET.
585 2019-09-01 Bruno Haible <bruno@clisp.org>
587 build: Add support for shallow-cloning of subdirectories.
588 * gitsub.sh (func_usage): Document allowed git options with 'git pull'.
589 (func_pull): Accept GIT_OPTIONS argument.
590 (pull): Parse git options before complaining about too many arguments.
591 Pass the git options to func_pull.
593 2019-07-05 Bruno Haible <bruno@clisp.org>
595 Don't export the symbol 'aliases_lookup' on non-ELF platforms.
596 * Makefile.devel (lib/aliases.h, lib/aliases_sysaix.h,
597 lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h):
598 Add a 'static' keyword in front of the declaration of aliases_lookup.
600 2019-07-02 Bruno Haible <bruno@clisp.org>
602 Update to current gnulib.
603 * Makefile.devel (GNULIB_MODULES): Add lib-symbol-visibility.
604 (srclib/Makefile.gnulib): Copy codeset.m4.
605 * srclib/Makefile.am (AM_CFLAGS): Initialize.
607 2019-07-02 Bruno Haible <bruno@clisp.org>
609 Drop unused macro gl_GLIBC21.
610 * autogen.sh: Don't copy glibc21.m4.
612 2019-05-22 Bruno Haible <bruno@clisp.org>
615 Reported by Paul Hardy <unifoundry@gmail.com>.
616 * lib/jisx0213.h: Fix comment about the underlying standard version.
618 2019-05-11 Bruno Haible <bruno@clisp.org>
620 Update bug reporting instructions.
621 * README: Tell users to report bugs in the bug tracker or by email.
622 * src/iconv.c (usage): Likewise.
623 (print_version): Move URL out of translatable string.
625 2019-04-26 Bruno Haible <bruno@clisp.org>
628 $ rsync -Lrtvz translationproject.org::tp/latest/libiconv/ po/new
630 $ for f in *.po; do \
631 msgmerge --update --lang=${f%.po} --previous $f ../libiconv.pot; \
636 2019-04-26 Bruno Haible <bruno@clisp.org>
639 $ cd po; make update-po
641 2019-04-26 Bruno Haible <bruno@clisp.org>
643 Prepare for version 1.16.
644 * configure.ac: Bump version number to 1.16.
645 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
646 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:1:6.
647 * src/iconv.c (print_version): Update copyright year.
648 * windows/iconv.rc: Likewise.
649 * windows/libiconv.rc: Likewise.
650 * README: Update download link.
652 2019-04-26 Bruno Haible <bruno@clisp.org>
654 Tweak exported symbols when --enable-relocatable is used.
655 * lib/Makefile.in (DEFS): Map 'relocate2' to a different symbol.
657 2019-04-01 Bruno Haible <bruno@clisp.org>
659 build: Separate git operations from build operations.
660 * gitsub.sh: New file, from gnulib.
661 * .gitmodules: New file.
662 * autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
663 environment variable. Ignore the GNULIB_TOOL environment variable.
664 * HACKING: Explain when to use gitsub.sh.
666 2019-03-07 Bruno Haible <bruno@clisp.org>
668 Avoid signed integer overflow during shifts.
669 Reported by Jeffrey Walton <noloader@gmail.com>.
670 * lib/tcvn.h (tcvn_wctomb): Use unsigned integer type for bit mask
672 * lib/viscii.h (viscii_wctomb): Likewise.
674 2019-03-04 Bruno Haible <bruno@clisp.org>
676 Add support for --enable-relocatable to libcharset.
677 * autogen.sh: Copy some more files to libcharset/build-aux/ and
680 2019-03-04 Bruno Haible <bruno@clisp.org>
682 Update --enable-relocatable support after gnulib changed.
683 * configure.ac: Move the LT_INIT invocation before the gl_RELOCATABLE
684 invocation. Remove unused argument to gl_RELOCATABLE.
686 2019-01-27 Bruno Haible <bruno@clisp.org>
688 Accommodate a shell that is not in /bin/sh.
689 * Makefile.in (SHELL): Use the value found by configure.
690 * lib/Makefile.in (SHELL): Likewise.
691 * man/Makefile.in (SHELL): Likewise.
692 * src/Makefile.in (SHELL): Likewise.
693 * tests/Makefile.in (SHELL): Likewise.
694 (check, check-extra-yes): Use SHELL to run the check-* scripts.
696 2019-01-27 Bruno Haible <bruno@clisp.org>
698 Update after gnulib changed.
699 * Makefile.in (GNULIB_IMPORTED_FILES): Remove build-aux/snippet/*.
701 2019-01-27 Bruno Haible <bruno@clisp.org>
703 Update support for building with MSVC. Automake does not install ar-lib.
704 * autogen.sh: Fetch build-aux/ar-lib here.
705 * Makefile.devel (srclib/Makefile.in): Don't fetch build-aux/ar-lib
707 * Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/ar-lib.
708 (IMPORTED_FILES): Add build-aux/ar-lib.
710 2019-01-06 Bruno Haible <bruno@clisp.org>
712 Revisit handling of file descriptors closed by the parent process.
713 * src/iconv.c (main): Add comment.
715 2018-10-23 Bruno Haible <bruno@clisp.org>
717 Remove outdated DJGPP build infrastructure.
718 Approved by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
719 * djgpp: Remove directory.
720 * INSTALL.djgpp: Remove file.
721 * Makefile.in (SOURCE_FILES): Remove them.
723 2018-10-23 Bruno Haible <bruno@clisp.org>
725 Update after gnulib changed.
726 * configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.63.
728 2018-09-22 Bruno Haible <bruno@clisp.org>
730 Avoid some warnings in MSVC build.
731 * include/export.h: Handle MSVC compiler as well.
733 2018-09-22 Bruno Haible <bruno@clisp.org>
735 Update from gnulib. Move mapping tables into the code.
736 * autogen.sh: Don't create libcharset/m4/relocatable-lib.m4.
737 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean): Don't
738 remove lib/charset.alias.
739 * tests/check-subst: Don't set CHARSETALIASDIR.
741 2018-05-04 Bruno Haible <bruno@clisp.org>
743 Drop special instructions for OSF/1.
744 * INSTALL.generic: Remove the recommendation for OSF/1.
746 2018-05-04 Bruno Haible <bruno@clisp.org>
748 Simplify: Remove the ability to install a preloadable library.
749 * preload/*: Remove directory.
750 * Makefile.devel: Don't recurse into 'preload'.
751 * Makefile.in: Likewise.
752 * configure.ac: Don't declare 'preload' as a subdirectory.
753 * README, NEWS: Update.
755 2018-05-04 Bruno Haible <bruno@clisp.org>
757 Simplify code. Drop support for Borland C++ on Windows.
758 * lib/iconv.c: Simplify 'defined _WIN32 || defined __WIN32__' to just
760 * lib/iconv_open1.h: Likewise.
762 2018-05-04 Bruno Haible <bruno@clisp.org>
764 * lib/relocatable.c: Update from gnulib.
766 2018-05-04 Bruno Haible <bruno@clisp.org>
768 Switch to automake 1.16.
769 * autogen.sh: Update comment.
770 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.16.
771 * libcharset/Makefile.devel (ACLOCAL): Likewise.
772 * preload/Makefile.devel (ACLOCAL): Likewise.
774 2018-03-27 Bruno Haible <bruno@clisp.org>
777 * README: Don't recommend to use --prefix=/usr/local, as it produces
778 problems with GCC (since GCC's treatment of /usr/local/include and
779 /usr/local/lib is inconsistent by default). Don't recommend to use
780 the iconv.m4 installed by GNU gettext, because it won't work when
781 GNU automake and GNU gettext are installed with different --prefix
782 options; instead recommend the 'iconv' module from gnulib.
784 2018-01-27 Bruno Haible <bruno@clisp.org>
787 * INSTALL.windows: Renamed from README.windows.
788 * INSTALL.djgpp: Renamed from README.djgpp.
789 * Makefile.in (SOURCE_FILES): Update.
791 2018-01-03 Bruno Haible <bruno@clisp.org>
793 Fix installation in 64-bit mode on AIX.
794 * lib/Makefile.in (AR): New variable.
795 (install): Use it instead of hardcoding 'ar'.
797 2017-11-26 Bruno Haible <bruno@clisp.org>
799 Avoid end-of-lines problem in generated shell scripts on Cygwin.
800 Patch by Feiyun Wang <feiyunw@yahoo.com>.
801 * lib/genaliases.c (main): Create canonical.sh and canonical_local.sh
802 with Unix end-of-line characters, regardless of Cygwin choice of
803 text mode vs. binary mode.
805 2017-07-15 Bruno Haible <bruno@clisp.org>
807 Allow building statically linked binaries, through LDFLAGS="-static".
809 <https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
810 * build-aux/ltmain.sh (func_mode_help, func_mode_link): In the link
811 mode, accept option '-static-uninstalled-libs' in place of '-static',
812 and make '-static' an equivalent of '-all-static'.
814 2017-07-15 Bruno Haible <bruno@clisp.org>
816 Don't attempt to build preloadable_libiconv.so when linking statically.
817 * preload/configure.ac (enable_shared, enable_static): Don't force
818 shared libraries when LDFLAGS indicates static linking.
819 (PLUGLIB): Set to empty when is not configured for building shared
822 2017-07-15 Bruno Haible <bruno@clisp.org>
824 Get rid of autom4te.cache directories, as far as possible.
825 * Makefile.devel (srclib/Makefile.in, aclocal.m4, configure,
826 config.h.in): Remove autom4te.cache after invoking aclocal, autoconf,
827 autoheader, automake.
828 * preload/Makefile.devel (aclocal, configure): Likewise.
830 2017-05-18 Bruno Haible <bruno@clisp.org>
832 * lib/relocatable.h: Update from gnulib.
833 * lib/relocatable.c: Update from gnulib.
835 2017-01-30 Bruno Haible <bruno@clisp.org>
837 Prepare for version 1.15.
838 * src/iconv.c (print_version): Update copyright year.
839 * windows/iconv.rc: Likewise.
840 * windows/libiconv.rc: Likewise.
842 2016-12-29 Bruno Haible <bruno@clisp.org>
844 Make Makefile.devel consistent with .gitignore.
845 * Makefile.devel (srclib/Makefile.in): Depend on aclocal.m4.
846 (totally-clean): Remove also aclocal.m4.
848 2016-12-25 Bruno Haible <bruno@clisp.org>
851 * autogen.sh: Emit a "done" diagnostic when autogen.sh completed
854 2016-12-25 Bruno Haible <bruno@clisp.org>
856 Reorder Makefile.devel.
857 * Makefile.devel: Reorder: put gnulib targets before autotools targets.
859 2016-12-14 Bruno Haible <bruno@clisp.org>
861 Cleanup useless removals.
862 * lib/Makefile.in (distclean): No need to remove 'libtool'.
864 2016-12-04 Bruno Haible <bruno@clisp.org>
867 * Makefile.devel: Update comments about release process.
869 2016-12-04 Bruno Haible <bruno@clisp.org>
871 Create tarballs through an Automake-like "make dist" command.
872 * Makefile.in (SOURCE_FILES, LIBTOOL_IMPORTED_FILES,
873 AUTOMAKE_OLD_IMPORTED_FILES, AUTOMAKE_IMPORTED_FILES, IMPORTED_FILES,
874 GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
875 (distdir): New target.
876 (PACKAGE, VERSION, TAR, GZIP): New macros.
878 * lib/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
879 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
880 (distdir): New target.
881 * man/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
882 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
883 (distdir): New target.
884 * preload/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
885 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
886 (distdir): New target.
887 * src/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
888 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
889 (distdir): New target.
890 * tests/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
891 DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
892 (distdir): New target.
894 2016-12-04 Bruno Haible <bruno@clisp.org>
896 Remove duplicates of imported files from version control.
897 * autogen.sh: Copy imported files to libcharset.
899 2016-12-04 Bruno Haible <bruno@clisp.org>
901 Always use the newest released copies of files brought in from Automake.
902 * Makefile.devel (srclib/Makefile.in): Make sure to get new versions of
903 files brought in by automake.
904 * build-aux/install-sh: Remove from version control.
905 * build-aux/missing: Likewise.
907 2016-12-04 Bruno Haible <bruno@clisp.org>
909 Always use the newest copies of config.guess, config.sub.
910 * Makefile.devel (gnulib-imported-files): New target.
911 * autogen.sh: Invoke it.
912 * build-aux/config.guess: Remove from version control.
913 * build-aux/config.sub: Likewise.
915 2016-12-04 Bruno Haible <bruno@clisp.org>
917 Always use the newest copy of fcntl-o.m4.
918 * m4/fcntl-o.m4: Remove file. Rely on srcm4/fcntl-o.m4 instead.
920 2016-12-04 Bruno Haible <bruno@clisp.org>
922 Remove obsolete documentation.
923 * PORTS: Remove file.
925 2016-12-03 Bruno Haible <bruno@clisp.org>
927 Make Makefile.devel more useful for the users of the released tarball.
928 * Makefile.devel (srclib/Makefile.gnulib): Don't force this target.
929 (gnulib-clean): New target.
930 (totally-clean): New target. Do the removals from autogen.sh. Also,
931 remove lib/aliases*.gperf, lib/canonical*.h, man/iconvctl.3.html,
932 man/iconv_open_into.3.html.
933 * autogen.sh: Invoke target gnulib-clean before srclib/Makefile.gnulib.
934 Invoke target totally-clean before all.
935 * preload/Makefile.devel (totally-clean): New target.
937 2016-12-03 Bruno Haible <bruno@clisp.org>
939 Modernize configure.ac.
940 * configure.ac: Use 2-argument AC_INIT. Avoid an AM_INIT_AUTOMAKE
942 * preload/configure.ac: Use 2-argument AC_INIT. Use AC_CONFIG_SRCDIR.
944 2016-12-03 Bruno Haible <bruno@clisp.org>
946 Towards reproducible builds.
947 * Makefile.devel (man/%.html): Remove the CreationDate comment line
950 2016-12-04 Bruno Haible <bruno@clisp.org>
952 Update to gettext-0.19.8.1.
953 * ABOUT-NLS: Update through 'gettextize'.
955 2016-12-03 Bruno Haible <bruno@clisp.org>
957 Update documentation.
958 * HACKING: Refer to the Git repository.
960 2016-12-03 Bruno Haible <bruno@clisp.org>
962 Avoid compilation warnings in 'genflags' program.
963 * lib/genflags.c: Avoid warnings from GCC's -Wunused-function option.
965 2016-12-02 Bruno Haible <bruno@clisp.org>
967 * relocatable.c: Update from gnulib.
969 2016-11-25 Bruno Haible <bruno@clisp.org>
971 Prepare for version 1.15.
972 * configure.ac: Bump version number to 1.15.
974 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
975 * windows/iconv.rc: Update.
976 * windows/libiconv.rc: Update.
977 * Makefile.devel: Update comments.
978 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:0:6.
979 * src/iconv.c (print_version): Update copyright year.
981 2016-11-23 Bruno Haible <bruno@clisp.org>
983 Update installation instructions for Windows.
984 * README.windows: Assume a 64-bit Windows. Explain both 32-bit and
985 64-bit builds. Add instructions for the MS Visual C/C++ tool chain.
986 Revamp instructions for Cygwin.
988 2016-11-23 Bruno Haible <bruno@clisp.org>
990 Drop the nickname "woe32".
991 * README.windows: Renamed from README.woe32.
993 2016-11-22 Bruno Haible <bruno@clisp.org>
995 Update support for building with MSVC.
996 * Makefile.devel (srclib/Makefile.in): Import 'ar-lib' and 'compile'
998 * lib/Makefile.in (install-lib, install): Install the .la file with
999 $(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets
1000 installed without execution permissions, and programs linked to it fail:
1001 in a Cygwin shell with exit code 127, or from a cmd.exe window with a
1002 dialog "The application was unable to start correctly (0xc0000022)."
1004 2016-11-19 Bruno Haible <bruno@clisp.org>
1006 Fix link error when compiling with gcc -O0.
1007 * lib/iconv.c (aliases2_lookup): Make static.
1008 Reported by Chung-Lin Tang <chunglin.tang@gmail.com>
1009 at https://savannah.gnu.org/bugs/?47953 .
1011 2016-11-17 Bruno Haible <bruno@clisp.org>
1013 UTF-8: Reject surrogates and out-of-range code points.
1014 * lib/utf8.h (utf8_mbtowc, utf8_wctomb): Reject code points in the
1015 range 0xD800..0xDFFF and >= 0x110000.
1016 * tests/genutf8.c (main): Don't emit mappings for 0xD800..0xDFFF.
1018 2016-10-22 Bruno Haible <bruno@clisp.org>
1020 Switch to libtool 2.4.6.
1021 * m4/libtool.m4: Update from libtool-2.4.6, with modifications:
1022 2008-04-06 Bruno Haible <bruno@clisp.org>
1023 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1024 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1025 to ${CONFIG_SHELL}..
1026 * m4/ltoptions.m4: Likewise.
1027 * m4/ltversion.m4: Likewise.
1028 * build-aux/ltmain.sh: Likewise.
1030 2016-10-14 Bruno Haible <bruno@clisp.org>
1032 Use 'size_t', not 'int', for the length of a string.
1033 * lib/iconv.c: Include <limits.h>.
1034 * lib/genflags.c: Likewise.
1035 * lib/converters.h (struct mbtowc_funcs, struct wctomb_funcs): Change
1036 'int n' parameter to 'size_t n'.
1037 (RET_COUNT_MAX): New macro.
1038 * lib/*.h: Use 'size_t n' instead of 'int n'.
1039 * lib/ucs2.h (ucs2_mbtowc): Make sure 'count' does not cause an 'int'
1041 * lib/ucs4.h (ucs4_mbtowc): Likewise.
1042 * lib/utf16.h (utf16_mbtowc): Likewise.
1043 * lib/utf32.h (utf32_mbtowc): Likewise.
1044 * tools/8bit_tab_to_h.c: Generate function signatures with 'size_t n'.
1045 * tools/cjk_tab_to_h.c: Likewise.
1046 * NEWS: Mention the change.
1048 2016-10-04 Bruno Haible <bruno@clisp.org>
1050 Extend CP1255 mapping.
1051 * lib/cp1255.h (cp1255_2uni, cp1255_page05): Map 0xCA to U+05BA.
1052 * tests/CP1255.TXT: Likewise.
1053 This matches https://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1255.txt
1054 and what the native Windows converter does since at least Windows XP.
1056 2016-10-01 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
1057 Bruno Haible <bruno@clisp.org>
1059 Remove large stack requirement from gentranslit.
1060 * lib/gentranslit.c (main): Heap-allocate large arrays.
1061 * Makefile.devel (lib/translit.h): Remove 'ulimit -s unlimited' command.
1063 2015-12-10 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
1065 Remove unused array from gentranslit.
1066 * lib/gentranslit.c (main): Remove unused array.
1067 * Makefile.devel (CC): Add -Wall option.
1068 Reported in https://savannah.gnu.org/bugs/?46663 .
1070 2016-10-01 Bruno Haible <bruno@clisp.org>
1073 * src/iconv.c (main): Increment i after parsing the --silent option.
1074 Reported in https://savannah.gnu.org/bugs/?41187 .
1076 2016-10-01 Bruno Haible <bruno@clisp.org>
1078 Update to current gnulib.
1079 * Makefile.devel (GNULIB_MODULES): Remove memmove.
1080 * tests/Makefile.in (INCLUDES): Make sure to include the top-level
1081 "config.h". Needed for the 'binary-io' module.
1083 2016-10-01 Bruno Haible <bruno@clisp.org>
1085 Switch to automake 1.15.
1086 * autogen.sh: Update comment.
1087 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
1088 (srclib/Makefile.in): Don't remove auxiliary files brought in by
1090 * preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
1091 * srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
1092 * build-aux/missing: Update from automake-1.15.
1094 2016-10-01 Bruno Haible <bruno@clisp.org>
1096 Remove autogenerated doc files from version control.
1097 * man/iconvctl.3.html: Remove file.
1098 * man/iconv_open_into.3.html: Remove file.
1100 2012-12-06 Bruno Haible <bruno@clisp.org>
1102 Change copyright holder of man pages.
1103 * man/*.[13]: Replace myself with FSF.
1105 2012-06-30 Bruno Haible <bruno@clisp.org>
1107 Make it possible to run 'genaliases2' on native Windows.
1108 * lib/genaliases2.c (main): Expect 3 arguments. Open the output files
1109 explicitly. Complain if they don't exist.
1110 * Makefile.devel (lib/aliases_*.h): Pass the output filenames as
1111 arguments to genaliases.
1112 Reported at <https://savannah.gnu.org/bugs/?36748>.
1114 Make it possible to run 'genaliases' on native Windows.
1115 * lib/genaliases.c (main): Expect 3 arguments. Open the output files
1116 explicitly. Complain if they don't exist. Improve error checking.
1117 * Makefile.devel (lib/aliases*.h): Pass the output filenames as
1118 arguments to genaliases.
1119 Reported at <https://savannah.gnu.org/bugs/?36748>.
1121 2012-05-13 Bruno Haible <bruno@clisp.org>
1123 Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
1124 * lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
1125 from U+E7C7 to 0xA8BC.
1126 * lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
1128 (gb18030uni_wctomb): Treat U+E7C7 as a special case.
1129 * tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
1130 * tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
1131 0x8135F437 and U+E7C7.
1133 2012-04-28 Bruno Haible <bruno@clisp.org>
1135 Switch to autoconf 2.69 and automake 1.12.
1136 * autogen.sh: Update comment.
1137 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
1138 (AUTOMAKE, ACLOCAL): Switch to version 1.12.
1139 * preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
1140 (ACLOCAL): Switch to version 1.12.
1142 2012-03-24 Bruno Haible <bruno@clisp.org>
1144 Avoid a GCC warning.
1145 * lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
1147 2012-01-26 Bruno Haible <bruno@clisp.org>
1150 * README: Quote 'like this', not `like this', as per the recent change
1151 to the GNU coding standards.
1153 * gnulib-local/lib/xmalloc.c: Likewise.
1154 * lib/config.h.in: Likewise.
1155 * src/iconv.c (usage): Likewise.
1156 * tests/uniq-u.c: Likewise.
1157 * tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
1159 * lib/big5.h: Update accordingly.
1160 * lib/cns11643_inv.h: Likewise.
1161 * lib/cp932ext.h: Likewise.
1162 * lib/cp950ext.h: Likewise.
1163 * lib/gb12345ext.h: Likewise.
1164 * lib/gb2312.h: Likewise.
1165 * lib/gbkext_inv.h: Likewise.
1166 * lib/hkscs1999.h: Likewise.
1167 * lib/hkscs2001.h: Likewise.
1168 * lib/hkscs2004.h: Likewise.
1169 * lib/hkscs2008.h: Likewise.
1170 * lib/isoir165ext.h: Likewise.
1171 * lib/jisx0208.h: Likewise.
1172 * lib/jisx0212.h: Likewise.
1173 * lib/jisx0213.h: Likewise.
1174 * lib/ksc5601.h: Likewise.
1175 * lib/uhc_1.h: Likewise.
1176 * lib/uhc_2.h: Likewise.
1178 2012-01-15 Bruno Haible <bruno@clisp.org>
1181 * lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
1183 * tests/genutf8.c: Include config.h.
1184 * tests/gengb18030z.c: Likewise.
1185 * woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
1187 2011-01-28 Bruno Haible <bruno@clisp.org>
1190 * woe32dll/export.h: Add a reference to the woe32dll writeup.
1192 2012-01-06 Bruno Haible <bruno@clisp.org>
1194 Update after gnulib changed.
1195 * gnulib-local/lib/error.h.diff: Update.
1197 2012-01-06 Bruno Haible <bruno@clisp.org>
1199 Talk about "native Windows API", not "Woe32".
1200 * lib/relocatable.c: Update comments to mention native Windows.
1202 2012-01-04 Bruno Haible <bruno@clisp.org>
1204 Talk about "native Windows API", not "Win32".
1205 * lib/relocatable.c: Update comments to mention native Windows.
1206 (WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
1208 2011-10-27 Bruno Haible <bruno@clisp.org>
1210 Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
1211 * lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
1212 * lib/ucs4.h (ucs4_mbtowc): Likewise.
1213 * lib/utf32.h (utf32_mbtowc): Likewise.
1214 Reported at <https://savannah.gnu.org/bugs/?34916>.
1216 2012-06-30 Bruno Haible <bruno@clisp.org>
1218 Improve ISO-2022-CP-MS versus CP932.
1219 * lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
1220 the rows 0x79..0x7C as rows from CP932.
1221 * tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
1222 tests/ISO-2022-JP-MS-snippet.
1223 * tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
1224 to ESC $ B 0x79..0x7C.
1225 * tests/ISO-2022-JP-MS-snippet: Likewise.
1226 * tests/check-stateful: Also test the *-snippet.alt file if it exists.
1227 * tests/check-stateful.bat: Likewise.
1229 2012-06-30 Bruno Haible <bruno@clisp.org>
1231 Improve ISO-2022-CP-MS versus CP932.
1232 * lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
1234 * lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
1235 0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
1236 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
1238 2011-10-23 Bruno Haible <bruno@clisp.org>
1240 New encoding ISO-2022-CP-MS.
1241 * NOTES: Mention ISO-2022-JP-MS.
1242 * tools/CP50221-0208-EXT.TXT: New file.
1243 * tools/CP50221-0212-EXT.TXT: New file.
1244 * tools/8bit_tab_to_h.c: Add comments about how to generate
1245 cp50221_0208_ext.h, cp50221_0212_ext.h.
1246 * tools/Makefile: Add rules for generating cp50221_0208_ext.h,
1248 * lib/cp50221_0208_ext.h: New file, mostly generated.
1249 * lib/cp50221_0212_ext.h: New file, mostly generated.
1250 * lib/iso2022_jpms.h: New file.
1251 * lib/converters.h: Include it.
1252 * lib/encodings.def: Add ISO-2022-JP-MS.
1253 * README, man/iconv_open.3: Add ISO-2022-JP-MS.
1254 * tests/ISO-2022-JP-MS-snippet: New file.
1255 * tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
1256 * tests/Makefile.in (check): Also test ISO-2022-JP-MS.
1257 Reported by Jeff Diehl <diehl.jeff@gmail.com>.
1259 2011-10-23 Bruno Haible <bruno@clisp.org>
1261 * lib/encodings.def: Add comments about Windows names of encodings.
1263 2011-10-18 Bruno Haible <bruno@clisp.org>
1265 * m4/libtool.m4: Update from libtool-2.4.2, with modifications:
1266 2008-04-06 Bruno Haible <bruno@clisp.org>
1267 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1268 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1269 to ${CONFIG_SHELL}..
1270 * m4/ltoptions.m4: Likewise.
1271 * m4/ltversion.m4: Likewise.
1272 * build-aux/ltmain.sh: Likewise.
1274 2011-10-03 Bruno Haible <bruno@clisp.org>
1276 * lib/relocatable.c: Update from gnulib.
1278 2011-09-02 Bruno Haible <bruno@clisp.org>
1280 Fix "make check" failure when $(srcdir) != $(builddir).
1281 * tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
1282 GB18030.IRREVERSIBLE.TXT into the build directory.
1283 Reported by Christian Weisgerber <naddy@mips.inka.de>.
1285 2011-08-07 Bruno Haible <bruno@clisp.org>
1287 Ensure all HTML-formatted man pages are up-to-date.
1288 * Makefile.devel (all): Depend on man/iconvctl.3.html and
1289 man/iconv_open_into.3.html.
1291 2011-08-07 Bruno Haible <bruno@clisp.org>
1293 * Version 1.14 released.
1295 2011-08-07 Bruno Haible <bruno@clisp.org>
1297 * configure.ac: Bump version number to 1.14.
1299 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1300 * windows/iconv.rc: Update.
1301 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
1302 * src/iconv.c (print_version): Update copyright year.
1304 2011-08-07 Bruno Haible <bruno@clisp.org>
1306 Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
1307 * tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
1310 2011-08-07 Bruno Haible <bruno@clisp.org>
1312 * tests/check-subst: Add comments about OSF/1.
1314 2011-08-07 Bruno Haible <bruno@clisp.org>
1316 * lib/relocatable.c: Update from gnulib.
1318 2011-08-06 Bruno Haible <bruno@clisp.org>
1320 Upgrade the GB18030 converter to the version from 2005.
1321 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
1322 'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
1323 0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
1324 (gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
1325 for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
1326 (gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
1327 (gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
1328 U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
1329 * tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
1330 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
1331 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
1332 to now-assigned Unicode codepoints.
1333 * tests/GB18030.IRREVERSIBLE.TXT: New file.
1335 2011-08-06 Bruno Haible <bruno@clisp.org>
1337 Fix conversion bug in CP1258 converter.
1338 * lib/vietcomb.h (viet_comp_table_data): Remove entry for
1339 U+00A5 U+0301. Fix entry for U+00A8 U+0301.
1340 (viet_decomp_table): Fix entry for U+0385.
1341 * tests/CP1258.IRREVERSIBLE.TXT: Update.
1342 Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
1344 2011-07-03 Bruno Haible <bruno@clisp.org>
1346 Improve interactive behaviour of iconv program.
1347 * src/iconv.c (convert): Flush the output before starting a possibly
1348 blocking safe_read call.
1350 2011-07-03 Bruno Haible <bruno@clisp.org>
1352 Fix interactive behaviour of iconv program.
1353 * Makefile.devel (GNULIB_MODULES): Add safe-read.
1354 * src/iconv.c: Include safe-read.h.
1355 (convert): Take the infile as a file descriptor, not as a FILE stream.
1356 Use safe_read() instead of fread().
1358 Reported by Xavier Pucel <xpucel@hotmail.com>.
1360 2011-05-02 Bruno Haible <bruno@clisp.org>
1362 Update after gnulib changed.
1363 * autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
1365 2011-06-02 Bruno Haible <bruno@clisp.org>
1367 Update after gnulib changed.
1368 * gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
1370 2011-06-04 Bruno Haible <bruno@clisp.org>
1372 Work around <wchar.h> bug on OSF/1 5.1.
1373 * lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
1374 some other includes.
1376 2011-03-27 KO Myung-Hun <komh@chollian.net>
1378 Fix installation on OS/2.
1379 * src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
1380 iconv_no_i18n. This is the recommended way to use libtool, see
1381 <https://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
1383 2011-03-31 Bruno Haible <bruno@clisp.org>
1385 gentranslit: Fix buffer overrun.
1386 * lib/gentranslit.c (main): Allocate more room for the suffix strings
1387 of the translit pages.
1388 Reported by Ben Noordhuis <info@bnoordhuis.nl>.
1390 2011-02-28 Bruno Haible <bruno@clisp.org>
1392 * lib/relocatable.h: Update from gnulib.
1393 * lib/relocatable.c: Likewise.
1395 2011-01-29 Corinna Vinschen <corinna-cygwin@cygwin.com>
1396 Bruno Haible <bruno@clisp.org>
1398 Simplify "wchar_t" handling on Cygwin 1.7.x.
1399 * lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
1400 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
1401 * lib/iconv_open1.h: Likewise.
1402 Rationale: <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
1404 2011-01-29 Bruno Haible <bruno@clisp.org>
1406 Adjust the meaning of "wchar_t" on native Windows systems.
1407 * lib/iconv.c (iconv_canonicalize): On native Windows, map
1408 ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
1409 * lib/iconv_open1.h: Likewise.
1410 Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
1411 in <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
1413 2010-11-23 Bruno Haible <bruno@clisp.org>
1415 Implement newer release of BIG5-HKSCS.
1416 * tools/Makefile (ALL): Add hkscs2008.h.
1417 (hkscs2008.h): New rule.
1418 * tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
1419 * lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
1420 equivalent to BIG5-HKSCS:2008.
1421 * lib/hkscs2008.h: New file, autogenerated.
1422 * lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
1423 * lib/converters.h: Include the new file.
1424 * README, man/iconv_open.3: Add BIG5-HKSCS:2004.
1425 * tests/BIG5-HKSCS-2008.TXT: New file, based on
1426 tests/BIG5-HKSCS-2004.TXT.
1427 * tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
1428 tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
1429 * tests/BIG5-HKSCS-2008-snippet: New file, based on
1430 tests/BIG5-HKSCS-2004-snippet.
1431 * tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
1432 tests/BIG5-HKSCS-2004-snippet.UTF-8.
1433 * tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
1434 Reported by oCameLo <camel322@gmail.com>.
1436 2010-11-23 Bruno Haible <bruno@clisp.org>
1438 Make cjk_tab_to_h 64-bit clean.
1439 * tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
1440 (output_title): Update copyright year.
1442 2010-09-23 Bruno Haible <bruno@clisp.org>
1444 Switch to autoconf 2.68.
1445 * autogen.sh: Update comment.
1446 * configure.ac: Fix AC_COMPILE_IFELSE invocation.
1447 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
1448 * preload/Makefile.devel (AUTOCONF): Likewise.
1450 2010-09-23 Bruno Haible <bruno@clisp.org>
1452 * m4/libtool.m4: Update from libtool-2.4, with modifications:
1453 2008-04-06 Bruno Haible <bruno@clisp.org>
1454 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1455 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1457 * m4/ltversion.m4: Update from libtool-2.4.
1458 * build-aux/ltmain.sh: Likewise.
1460 2010-09-23 Bruno Haible <bruno@clisp.org>
1462 Simplify use of gnulib-tool now that gnulib-tool --import works better.
1463 * autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
1464 * Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
1466 2010-07-31 Bruno Haible <bruno@clisp.org>
1468 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
1469 * preload/Makefile.devel (AUTOCONF): Likewise.
1471 2010-07-03 Bruno Haible <bruno@clisp.org>
1473 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
1474 * preload/Makefile.devel (AUTOCONF): Likewise.
1476 2010-06-04 Bruno Haible <bruno@clisp.org>
1478 Addendum to 2009-10-18 commit.
1479 * m4/fcntl-o.m4: New file, from gnulib.
1480 * configure.ac: Invoke gl_FCNTL_O_FLAGS.
1481 * lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
1483 2010-06-04 Bruno Haible <bruno@clisp.org>
1485 * m4/libtool.m4: Update from libtool-2.2.8, with modifications:
1486 2008-04-06 Bruno Haible <bruno@clisp.org>
1487 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1488 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1490 * m4/ltoptions.m4: Update from libtool-2.2.8.
1491 * m4/ltversion.m4: Likewise.
1492 * m4/lt~obsolete.m4: Likewise.
1493 * build-aux/ltmain.sh: Likewise.
1495 2010-04-06 Bruno Haible <bruno@clisp.org>
1497 Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
1498 * include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
1499 doesn't contains #include directives.
1501 2010-03-30 Bruno Haible <bruno@clisp.org>
1503 * README.woe32: Update for Cygwin 1.7.x.
1505 2009-12-26 Bruno Haible <bruno@clisp.org>
1507 * windows/libiconv.rc: Update.
1508 * windows/iconv.rc: Update.
1510 2009-12-11 Bruno Haible <bruno@clisp.org>
1512 * include/iconv.h.in: Untabify.
1513 * gnulib-local/lib/xalloc.h: Untabify.
1514 * woe32dll/export.h: Untabify.
1515 * tests/uniq-u.c: Untabify.
1517 2009-12-11 Bruno Haible <bruno@clisp.org>
1519 * srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
1521 2009-12-11 Bruno Haible <bruno@clisp.org>
1523 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
1524 * preload/Makefile.devel (AUTOCONF): Likewise.
1526 2009-11-22 Bruno Haible <bruno@clisp.org>
1528 * tests/check-subst: Add reference to the Solaris printf bug.
1529 Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
1531 2009-09-01 Bruno Haible <bruno@clisp.org>
1533 * README.woe32: Put the -mno-cygwin option into CC and CXX.
1534 Recommended by Paolo Bonzini and Eric Blake.
1536 2009-08-15 Bruno Haible <bruno@clisp.org>
1538 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
1539 * preload/Makefile.devel (AUTOCONF): Likewise.
1541 2009-08-15 Bruno Haible <bruno@clisp.org>
1543 Use .git/info/exclude, not .gitignore, for imported or generated files.
1544 * Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
1547 2009-07-07 Bruno Haible <bruno@clisp.org>
1549 Fix an endless loop.
1550 * lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
1551 incomplete input correctly.
1552 * tests/test-to-wchar.c: New file.
1553 * tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
1554 (check): Depend on and run tests-to-wchar.
1555 (clean): Add tests-to-wchar.
1556 Reported by Tristan Gingold <gingold@adacore.com>.
1558 2009-06-30 Bruno Haible <bruno@clisp.org>
1560 * Version 1.13.1 released.
1562 2009-06-30 Bruno Haible <bruno@clisp.org>
1564 * configure.ac: Bump version number to 1.13.1.
1567 2009-06-04 Bruno Haible <bruno@clisp.org>
1569 * preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
1570 (ACLOCAL): Switch to version 1.11.
1572 2009-05-19 Bruno Haible <bruno@clisp.org>
1574 * Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
1575 * autogen.sh: Update comments.
1577 2009-04-24 Bruno Haible <bruno@clisp.org>
1579 Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
1580 * src/iconv_open2.h: Don't initialize nonexistent field if
1581 !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1582 Patch by Joel Brobecker <brobecker@adacore.com>.
1584 2009-04-15 Bruno Haible <bruno@clisp.org>
1586 * src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
1587 explicitly. Needed on Cygwin.
1589 2009-04-11 Bruno Haible <bruno@clisp.org>
1591 * configure.ac: Move the statements for WOE32 and WINDRES.
1593 2009-03-26 Bruno Haible <bruno@clisp.org>
1595 * Version 1.13 released.
1597 2009-03-26 Bruno Haible <bruno@clisp.org>
1599 * src/iconv.c: Update copyright header to GPLv3+.
1600 (print_version): Update license info.
1602 2009-03-26 Bruno Haible <bruno@clisp.org>
1604 * src/iconv.c (print_version): Bump year.
1606 2009-03-25 Bruno Haible <bruno@clisp.org>
1608 * build-aux/config.guess: Update to GNU version 2009-02-03.
1609 * build-aux/config.sub: Likewise.
1611 2009-03-25 Bruno Haible <bruno@clisp.org>
1613 * configure.ac: Bump version number to 1.13.
1615 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1616 * windows/iconv.rc: Update.
1617 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
1619 2009-03-25 Bruno Haible <bruno@clisp.org>
1621 Fix the handling of Windows resources in shared libraries.
1622 * configure.ac: Invoke LT_LANG for 'Windows Resource'.
1623 * lib/Makefile.in (RC): New variable.
1624 (WINDRES): Remove variable.
1625 (OBJECTS_RES_yes): Add .lo suffix.
1626 (libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
1628 Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
1630 2009-03-14 Bruno Haible <bruno@clisp.org>
1632 * autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
1634 2009-01-24 Bruno Haible <bruno@clisp.org>
1636 * tools/Makefile (ALL): Add cp1131.h.
1637 (cp1131.h): New rule.
1638 * lib/encodings.def: Add CP1131.
1639 * lib/cp1131.h: New file.
1640 * lib/converters.h: Include it.
1641 * README, man/iconv_open.3: Add CP1131.
1642 * NOTES: Mention CP1131.
1643 * tests/CP1131.TXT: New file.
1644 * tests/Makefile.in (check): Also test CP1131.
1646 2009-01-17 Bruno Haible <bruno@clisp.org>
1648 Add support for "make install-strip".
1649 * configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
1650 * Makefile.in (install-strip): New rule.
1651 * src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
1653 (install-strip): New rule.
1654 * lib/Makefile.in (install-strip): New target.
1655 * preload/Makefile.in (install-strip): Likewise.
1656 * man/Makefile.in (install-strip): Likewise.
1657 Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
1659 2009-01-17 Bruno Haible <bruno@clisp.org>
1661 Update after gnulib changed.
1662 * src/Makefile.in (RELOCATABLE_STRIP): New variable.
1664 2009-01-17 Bruno Haible <bruno@clisp.org>
1666 Make --enable-relocatable work on glibc systems.
1667 * src/Makefile.in (host): New variable.
1669 2009-01-17 Bruno Haible <bruno@clisp.org>
1671 * lib/genflags.c: Include <string.h>.
1673 2009-01-14 Bruno Haible <bruno@clisp.org>
1675 * configure.ac: More consistent m4 quoting.
1676 * preload/configure.ac: Likewise.
1678 2008-09-28 Bruno Haible <bruno@clisp.org>
1680 * build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
1681 preprocess the argument vector through prepare_spawn.
1683 2008-09-27 Bruno Haible <bruno@clisp.org>
1685 * build-aux/config.guess: Update to GNU version 2008-09-08.
1686 * build-aux/config.sub: Likewise.
1688 2008-09-26 Bruno Haible <bruno@clisp.org>
1690 * tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
1692 2008-09-26 Bruno Haible <bruno@clisp.org>
1694 * Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
1695 * tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
1696 all programs against libicrt.a. Needed for the stdio function
1697 replacements on mingw.
1699 2008-09-21 Tadamasa Teranishi <yw3t-trns@asahi-net.or.jp>
1701 * lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
1702 ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
1704 2008-09-20 Bruno Haible <bruno@clisp.org>
1706 * man/iconv_open_into.3: New file.
1708 2008-09-16 Bruno Haible <bruno@clisp.org>
1710 New function iconv_open_into.
1711 * include/iconv.h.in: Include <wchar.h> and its prerequisites.
1712 (iconv_allocation_t): New type.
1713 (iconv_open_into): New declaration.
1714 * lib/iconv_open1.h: New file, extracted from lib/iconv.c.
1715 * lib/iconv_open2.h: New file, extracted from lib/iconv.c.
1716 * lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
1717 Verify size of iconv_allocation_t.
1718 (iconv_open_into): New function.
1719 * lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
1720 field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
1721 * configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
1722 Reported by Roman Rybalko <romanr@romanr.info>.
1724 2008-09-16 Bruno Haible <bruno@clisp.org>
1726 * Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
1728 2008-09-16 Bruno Haible <bruno@clisp.org>
1730 * include/iconv.h.in: Use Unicode single-quotes in comments.
1732 2008-09-14 Bruno Haible <bruno@clisp.org>
1734 * Makefile.devel (GNULIB_MODULES): Add strerror.
1736 2008-09-07 Bruno Haible <bruno@clisp.org>
1738 Make behaviour when encountering invalid input after a shift sequence
1740 * lib/converters.h (RET_SHIFT_ILSEQ): New macro.
1741 (RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
1742 (RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
1743 (DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
1744 * lib/loop_unicode.h (unicode_loop_convert): Take into account the
1745 shift count contained in the negative return values.
1746 * lib/hz.h (hz_mbtowc): When encountering invalid input, store the
1747 modified state and return RET_SHIFT_ILSEQ.
1748 * lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
1749 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
1750 * lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
1751 * lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
1752 * lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
1753 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
1754 * lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
1755 * lib/ucs2.h (ucs2_mbtowc): Likewise.
1756 * lib/ucs4.h (ucs4_mbtowc): Likewise.
1757 * lib/utf16.h (utf16_mbtowc): Likewise.
1758 * lib/utf32.h (utf32_mbtowc): Likewise.
1759 * lib/utf7.h (utf7_mbtowc): Likewise.
1760 * lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
1761 invalid input, return RET_SHIFT_ILSEQ.
1762 * lib/utf16le.h (utf16le_mbtowc): Likewise.
1763 * tests/test-shiftseq.c: New file.
1764 * tests/Makefile.in (check): Run test-shiftseq.
1765 (test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
1766 (clean): Remove test-shiftseq executable.
1767 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1768 at <https://savannah.gnu.org/bugs/?24216>.
1770 2008-09-07 Bruno Haible <bruno@clisp.org>
1772 * man/iconv.3: Clarify the processing of shift-sequences.
1774 2008-09-07 Bruno Haible <bruno@clisp.org>
1776 * m4/libtool.m4: Update from libtool-2.2.6, with modifications:
1777 2008-04-06 Bruno Haible <bruno@clisp.org>
1778 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1779 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1781 * m4/ltoptions.m4: Update from libtool-2.2.6.
1782 * m4/ltsugar.m4: Likewise.
1783 * m4/ltversion.m4: Likewise.
1784 * build-aux/ltmain.sh: Likewise.
1786 2008-09-06 Bruno Haible <bruno@clisp.org>
1788 * lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
1789 Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
1790 at <https://savannah.gnu.org/bugs/?24214>.
1792 2008-06-30 Bruno Haible <bruno@clisp.org>
1794 Fix sed expressions to work with the old sed-3.02 on MSYS.
1795 * windows/windres-options (sed_extract_major, sed_extract_minor,
1796 sed_extract_subminor): Put a semicolon before the closing brace. Use
1797 an i\ command instead of an a\ command.
1798 Reported by Sunil Negi <sunil.negi@morningstar.com>
1799 in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
1800 via Keith Marshall <keithmarshall@users.sourceforge.net>.
1802 2008-05-22 Bruno Haible <bruno@clisp.org>
1804 * README.woe32: Update with info from GNU gettext's README.woe32.
1806 2008-05-18 Bruno Haible <bruno@clisp.org>
1808 * m4/libtool.m4: Update from libtool-2.2.4, with modifications:
1809 2008-04-06 Bruno Haible <bruno@clisp.org>
1810 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1811 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1813 * m4/ltoptions.m4: Update from libtool-2.2.4.
1814 * m4/ltversion.m4: Likewise.
1815 * m4/lt~obsolete.m4: Likewise.
1816 * build-aux/ltmain.sh: Likewise.
1818 2008-04-14 Bruno Haible <bruno@clisp.org>
1820 * tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
1823 2008-04-14 Bruno Haible <bruno@clisp.org>
1825 * preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
1826 AC_AIX and AC_MINIX.
1827 * Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
1828 * preload/Makefile.devel (AUTOCONF): Likewise.
1829 * autogen.sh: Likewise.
1831 2008-04-06 Bruno Haible <bruno@clisp.org>
1833 * m4/libtool.m4: Update from libtool-2.2.2, with modifications:
1834 2008-04-06 Bruno Haible <bruno@clisp.org>
1835 * m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
1836 CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
1838 * m4/ltoptions.m4: New file, from libtool-2.2.2.
1839 * m4/ltsugar.m4: New file, from libtool-2.2.2.
1840 * m4/ltversion.m4: New file, from libtool-2.2.2.
1841 * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
1842 * build-aux/ltmain.sh: New file, from libtool-2.2.2.
1843 * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
1844 * preload/configure.ac: Likewise.
1846 2008-04-06 Bruno Haible <bruno@clisp.org>
1848 More portable way of building the preloadable library.
1849 * preload/Makefile.devel: New file.
1850 * preload/Makefile.in: New file, based on lib/Makefile.in.
1851 * preload/configure.ac: New file, based on configure.ac.
1852 * Makefile.devel (all): Recurse into preload directory.
1853 * Makefile.in (all, install, installdirs, uninstall, check,
1854 mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
1856 * configure.ac: Likewise.
1857 (OS, GCC, PLUGLIB): Remove definitions.
1858 * lib/Makefile.in (all): Don't depend on PLUGLIB.
1859 (preloadable_libiconv.so, preloadable_libiconv_linux.so,
1860 preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
1862 (install, uninstall, clean): Don't handle the preloadable library here.
1864 2008-04-06 Bruno Haible <bruno@clisp.org>
1866 Avoid a gcc warning.
1867 * lib/loop_unicode.h (unicode_loop_convert): Add a cast.
1869 2008-04-06 Bruno Haible <bruno@clisp.org>
1871 * src/iconv.c (print_version): Bump year.
1873 2008-04-06 Bruno Haible <bruno@clisp.org>
1875 Support all possible nl_langinfo(CODESET) results on the respective
1876 platforms, according to libcharset/lib/config.charset.
1877 * lib/encodings.def: Add DEFALIAS statements, conditional on
1878 USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
1879 USE_SOLARIS_ALIASES.
1880 * lib/encodings_aix.def: Add DEFALIAS statements, conditional on
1882 * lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
1884 * lib/genaliases.c (emit_alias): New function, extracted from
1886 (emit_encoding): Use it.
1887 (main): Define DEFALIAS.
1888 * lib/genaliases2.c (counter): New variable, extracted from
1890 (emit_alias): New function, extracted from emit_encoding.
1891 (emit_encoding): Use it.
1892 (main): Define DEFALIAS.
1893 * lib/genflags.c (main): Define DEFALIAS.
1894 * lib/iconv.c (all_encodings): Define DEFALIAS.
1895 Include the system dependent variant of aliases.h on the appropriate
1897 (all_canonical): Include the system dependent variant of canonical.h,
1898 canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
1900 * lib/aliases2.h: Include the system dependent variant of
1901 aliases_aix.h or aliases_osf1.h on the appropriate systems.
1902 * lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
1903 aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
1904 aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
1905 aliases_extra.h, translit.h.
1906 * Makefile.devel (all): Depend on lib/aliases_sysaix.h,
1907 lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1908 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1909 (lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
1910 lib/aliases_syssolaris.h): New rules.
1911 (lib/aliases_aix_sysaix.h): New rule.
1912 (lib/aliases_osf1_sysosf1.h): New rule.
1913 * autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
1914 lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
1915 lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
1917 2008-04-06 Bruno Haible <bruno@clisp.org>
1919 * build-aux/config.libpath: Remove file, brought in by gnulib-tool.
1920 * build-aux/config.rpath: Remove file, brought in by gnulib-tool.
1922 2007-11-11 Bruno Haible <bruno@clisp.org>
1924 * Version 1.12 released.
1926 2007-11-11 Bruno Haible <bruno@clisp.org>
1928 * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
1929 (AUTOMAKE, ACLOCAL): Require version 1.10.
1930 (srclib/Makefile.in): Avoid error from automake.
1932 2007-10-26 Bruno Haible <bruno@clisp.org>
1934 * m4/libtool.m4: Update, based on libtool-1.5.24.
1935 * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
1937 2007-10-23 Bruno Haible <bruno@clisp.org>
1939 * build-aux/config.guess: Update to GNU version 2007-07-22.
1940 * build-aux/config.sub: Likewise.
1942 2007-10-23 Bruno Haible <bruno@clisp.org>
1944 * configure.ac: Bump version number to 1.12.
1947 2007-10-23 Bruno Haible <bruno@clisp.org>
1949 Move relocatability infrastructure to gnulib.
1950 * gnulib-local/lib/relocatable.h: Remove file.
1951 * gnulib-local/lib/relocatable.c: Remove file.
1953 2007-10-23 Bruno Haible <bruno@clisp.org>
1955 Update from GNU gettext.
1956 2006-11-26 Bruno Haible <bruno@clisp.org>
1957 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
1959 Based on a patch from Paul Eggert in gnulib.
1960 2006-11-06 Bruno Haible <bruno@clisp.org>
1961 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
1962 (xmemdup): New declaration.
1963 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
1964 2006-11-03 Bruno Haible <bruno@clisp.org>
1965 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
1966 XCALLOC): New macros.
1967 (xnboundedmalloc): New inline function.
1968 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
1970 2006-11-02 Bruno Haible <bruno@clisp.org>
1971 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
1973 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
1974 (xnmalloc): New function.
1976 2007-10-23 Bruno Haible <bruno@clisp.org>
1978 Moved module xreadlink to gnulib.
1979 * gnulib-local/modules/xreadlink: Remove file.
1980 * gnulib-local/lib/xreadlink.h: Remove file.
1981 * gnulib-local/lib/xreadlink.c: Remove file.
1982 * gnulib-local/m4/xreadlink.m4: Remove file.
1984 2007-10-07 Bruno Haible <bruno@clisp.org>
1986 Update program license to GPLv3.
1987 * COPYING: Replace with GPL 3.
1988 * windows/iconv.rc (Comments): Update.
1990 2007-10-07 Bruno Haible <bruno@clisp.org>
1992 * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
1994 2007-03-30 Bruno Haible <bruno@clisp.org>
1996 * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
1999 2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
2001 * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
2004 2007-09-29 Bruno Haible <bruno@clisp.org>
2006 * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
2007 valid since 2007-09-19.
2009 2007-07-07 Bruno Haible <bruno@clisp.org>
2011 * autogen.sh: Add an option --skip-gnulib.
2013 2007-07-07 Bruno Haible <bruno@clisp.org>
2015 * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
2016 * gnulib-local/lib/width.c: Remove file, moved to gnulib.
2017 * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
2018 * gnulib-local/modules/uniwidth: Remove file.
2019 * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
2020 * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
2022 2007-06-30 Bruno Haible <bruno@clisp.org>
2024 * src/iconv.c (print_version): Use the standard --version output, see
2025 <https://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
2027 2007-06-30 Bruno Haible <bruno@clisp.org>
2029 * autogen.sh: New file.
2030 * DEPENDENCIES: New file.
2031 * HACKING: New file.
2033 2007-06-30 Bruno Haible <bruno@clisp.org>
2035 * src/iconv.c: Provide translator comments for many messages.
2036 (conversion_error_EILSEQ, conversion_error_EINVAL,
2037 conversion_error_other): New functions, extracted from convert.
2038 (convert): Use them.
2039 Reported by Tim Van Holder <tim.van.holder@telenet.be>.
2041 2007-06-09 Bruno Haible <bruno@clisp.org>
2043 * gnulib-local/lib/relocwrapper.c: Remove file.
2045 2007-05-27 Bruno Haible <bruno@clisp.org>
2047 * windows/libiconv.rc: New file.
2048 * windows/iconv.rc: New file.
2049 * windows/windres-options: New file.
2050 * configure.ac (WOE32): New variable.
2051 (WINDRES) [WOE32]: New variable.
2052 * lib/Makefile.in (WINDRES): New variable.
2053 (PACKAGE_VERSION): New variable.
2054 (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
2055 (OBJECTS_EXP_no): Renamed from OBJECTS_no.
2056 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
2057 (OBJECTS): Add one of them.
2058 (libiconv.res): New rule.
2059 (clean): Remove also libiconv.res.
2060 * src/Makefile.in (WINDRES): New variable.
2061 (PACKAGE_VERSION): New variable.
2062 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
2063 (all, iconv_no_i18n, install): Use them.
2064 (iconv.res): New rule.
2065 (clean): Remove also iconv.res.
2066 Suggested and inspired by work by Perry Rapp.
2068 2007-05-27 Bruno Haible <bruno@clisp.org>
2070 Follow broken iconv() prototype in POSIX.
2071 * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
2072 * lib/config.h.in (ICONV_CONST): Change default value to an empty
2074 * src/iconv.c (ICONV_CONST): Change default value to empty.
2075 Reported by Andreas Krennmair <ak@synflood.at>.
2077 2007-05-25 Bruno Haible <bruno@clisp.org>
2079 * tools/Makefile (ALL): Add rk1048.h.
2080 (rk1048.h): New rule.
2081 * lib/encodings.def: Add RK1048.
2082 * lib/rk1048.h: New file.
2083 * lib/converters.h: Include it.
2084 * README, man/iconv_open.3: Add RK1048.
2085 * NOTES: Mention RK1048.
2086 * tests/RK1048.TXT: New file.
2087 * tests/Makefile.in (check): Also test RK1048.
2088 Suggested by Timur Birsh <team9@host.kz>.
2090 2007-04-24 Bruno Haible <bruno@clisp.org>
2092 * man/iconv_open.3: Tweak explanation of TRANSLIT.
2093 Reported by Perry Rapp.
2095 2007-04-23 Bruno Haible <bruno@clisp.org>
2097 * tests/check-subst: Use the output of 'printf' only if it didn't
2098 crash. Needed to work around a buffer overflow in Solaris /bin/printf.
2099 Reported by Arto C. Nirkko <anirkko@insel.ch>.
2101 2007-04-23 Bruno Haible <bruno@clisp.org>
2103 * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
2104 systems like those which define __STDC_ISO_10646__.
2105 Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
2107 2007-03-31 Bruno Haible <bruno@clisp.org>
2109 * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
2111 * man/iconv_open.3: Likewise.
2112 * man/iconv.3: Likewise.
2113 * man/iconv_close.3: Likewise.
2114 * man/iconvctl.3: Likewise.
2116 2007-03-31 Bruno Haible <bruno@clisp.org>
2118 * man/iconv.1: Mark as POSIX compliant.
2119 * man/iconv_open.3: Likewise.
2120 * man/iconv.3: Likewise.
2121 * man/iconv_close.3: Likewise.
2123 * man/*.[13]: Syntactic simplifications.
2125 2007-03-19 Bruno Haible <bruno@clisp.org>
2127 Assume that mkinstalldirs also creates the necessary parent directories.
2128 * Makefile.in (install, installdirs): Don't explicitly create the
2130 * lib/Makefile.in (install, installdirs): Likewise.
2131 * src/Makefile.in (install, installdirs): Likewise.
2132 * man/Makefile.in (install, installdirs): Likewise.
2133 Reported by Thomas Klausner <tk@giga.or.at>.
2135 2007-03-04 Bruno Haible <bruno@clisp.org>
2137 * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
2138 relocatable, relocwrapper.
2139 * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
2140 * gnulib-local/modules/progreloc: Remove file.
2141 * gnulib-local/modules/relocatable: Remove file.
2142 * gnulib-local/modules/relocwrapper: Remove file.
2143 * gnulib-local/m4/relocatable.m4: Remove file.
2144 * gnulib-local/lib/strerror.c.diff: Remove file.
2145 * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
2146 RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
2148 2007-02-19 Bruno Haible <bruno@clisp.org>
2150 * gnulib-local/lib/xmalloc.c: Don't include exit.h.
2151 * src/iconv.c: Likewise.
2153 2007-02-16 Juan Manuel Guerrero <juan.guerrero@gmx.de>
2157 2007-02-03 Bruno Haible <bruno@clisp.org>
2159 * tools/Makefile (ksc5601.h): Add one extra character.
2160 * lib/ksc5601.h: Regenerated.
2161 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
2162 * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
2163 * tests/JOHAB.TXT: Likewise.
2164 Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
2166 * lib/euc_kr.h: Update comments.
2167 * lib/johab.h: Likewise.
2169 2007-02-03 Bruno Haible <bruno@clisp.org>
2171 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
2173 2007-01-26 Bruno Haible <bruno@clisp.org>
2175 Moved streq.h to gnulib.
2176 * gnulib-local/lib/streq.h: Remove file.
2177 * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
2178 (Depends-on): Add streq.
2179 (lib_SOURCES): Remove streq.h.
2181 2007-01-26 Bruno Haible <bruno@clisp.org>
2183 Moved unitypes.h to gnulib.
2184 * gnulib-local/lib/unitypes.h: Remove file.
2185 * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
2186 (Depends-on): Add unitypes.
2187 (lib_SOURCES): Remove unitypes.h.
2189 2007-01-26 Bruno Haible <bruno@clisp.org>
2191 Moved canonicalize to gnulib.
2192 * gnulib-local/modules/canonicalize: Remove file.
2193 * gnulib-local/lib/canonicalize.h: Remove file.
2194 * gnulib-local/lib/canonicalize.c: Remove file.
2195 * gnulib-local/m4/canonicalize.m4: Remove file.
2196 * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
2197 with 'canonicalize-lgpl'.
2199 2006-12-20 Bruno Haible <bruno@clisp.org>
2201 * lib/Makefile.in (install): On AIX, add the contents of
2202 /lib/libiconv.a to libiconv.a.
2204 2006-12-20 Bruno Haible <bruno@clisp.org>
2206 * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
2208 (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
2210 (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
2211 option --makefile-name.
2212 (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
2213 * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
2215 2006-10-31 Bruno Haible <bruno@clisp.org>
2217 Update from GNU gettext.
2218 2006-10-29 Bruno Haible <bruno@clisp.org>
2219 Make it compile in C++ mode.
2220 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
2221 with appropriate return type.
2222 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
2223 2006-10-26 Bruno Haible <bruno@clisp.org>
2224 * gnulib-local/modules/canonicalize (Makefile.am): Remove
2225 EXTRA_DIST. Now done by gnulib-tool.
2226 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
2227 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
2228 2006-10-25 Bruno Haible <bruno@clisp.org>
2229 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
2230 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
2231 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
2232 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
2233 AC_RELOCATABLE instead of requiring it.
2234 2006-10-12 Bruno Haible <bruno@clisp.org>
2235 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
2236 all files in lib/ through EXTRA_DIST.
2237 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
2238 2006-09-14 Bruno Haible <bruno@clisp.org>
2239 * gnulib-local/lib/canonicalize.c: Include <config.h>
2241 * gnulib-local/lib/relocatable.c: Likewise.
2242 * lib/relocatable.c: Likewise.
2243 * gnulib-local/lib/relocwrapper.c: Likewise.
2244 * gnulib-local/lib/xmalloc.c: Likewise.
2245 * gnulib-local/lib/xreadlink.c: Likewise.
2246 * gnulib-local/lib/xstrdup.c: Likewise.
2247 2006-08-02 Bruno Haible <bruno@clisp.org>
2248 * gnulib-local/modules/canonicalize: Put under LGPL.
2249 * gnulib-local/modules/relocatable: Likewise.
2250 2006-07-18 Bruno Haible <bruno@clisp.org>
2251 * gnulib-local/xalloc.h (xzalloc): New declaration.
2252 * gnulib-local/xmalloc.c (xzalloc): New function.
2254 2006-10-24 Bruno Haible <bruno@clisp.org>
2256 * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
2257 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2259 2006-10-14 Bruno Haible <bruno@clisp.org>
2261 * COPYING: New file.
2262 * README: Clarify copyright of the iconv program.
2263 Reported by Charles Wilson <cwilson@fastmail.fm>.
2265 2006-08-08 Bruno Haible <bruno@clisp.org>
2267 * INSTALL.generic: Add a recommendation for Tru64.
2268 Reported by Gary V. Vaughan <gary@gnu.org>.
2270 2006-07-29 Bruno Haible <bruno@clisp.org>
2272 * tests/check-subst: Set CHARSETALIASDIR.
2273 Needed so that "make check" works before "make install" on systems
2276 2006-07-29 Bruno Haible <bruno@clisp.org>
2278 * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
2279 (AUTOCONF_FILES): Add the existing *.m4 files.
2281 2006-07-29 Bruno Haible <bruno@clisp.org>
2283 * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
2284 * src/iconv.c: Assume <locale.h> exists.
2285 * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
2288 2006-07-29 Bruno Haible <bruno@clisp.org>
2290 * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
2291 AC_ISC_POSIX, AC_HEADER_STDC.
2293 2006-07-29 Bruno Haible <bruno@clisp.org>
2295 * configure.ac: Remove macro invocations that are redundant through
2296 gl_EARLY and gl_INIT.
2298 2006-07-29 Bruno Haible <bruno@clisp.org>
2300 * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
2301 Avoids a sh syntax error.
2303 2006-07-29 Bruno Haible <bruno@clisp.org>
2305 * gnulib-local/m4/relocatable.m4: Add comments.
2307 2006-07-29 Bruno Haible <bruno@clisp.org>
2309 * gnulib-local/modules/libiconv-misc: New file.
2310 * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
2312 * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
2314 2006-07-29 Bruno Haible <bruno@clisp.org>
2316 Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
2317 AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
2318 because we now assume that the system defines size_t and ptrdiff_t.
2320 2006-07-29 Bruno Haible <bruno@clisp.org>
2322 Switch to using gnulib.
2323 * configure.ac (AC_PREREQ): Require autoconf-2.60.
2324 Invoke gl_EARLY and gl_INIT.
2325 * Makefile.devel (all): Depend on srclib/Makefile.am.
2326 (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
2328 (GNULIB_MODULES): New variable.
2329 (srclib/Makefile.am): New rule.
2330 * gnulib-local: New directory.
2331 * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
2332 * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
2333 * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
2334 * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
2335 * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
2336 * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
2337 * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
2338 * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
2339 * gnulib-local/lib/error.h.diff: New file.
2340 * gnulib-local/lib/progname.h.diff: New file.
2341 * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
2342 * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
2343 * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
2344 * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
2345 * gnulib-local/lib/strerror.c.diff: New file.
2346 * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
2347 * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
2348 * gnulib-local/lib/width.c: Moved here from srclib/width.c.
2349 * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
2350 * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
2351 * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
2352 * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
2353 * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
2354 * gnulib-local/modules/canonicalize: New file.
2355 * gnulib-local/modules/progreloc: New file.
2356 * gnulib-local/modules/relocatable: New file.
2357 * gnulib-local/modules/relocwrapper: New file.
2358 * gnulib-local/modules/uniwidth: New file.
2359 * gnulib-local/modules/xalloc: New file.
2360 * gnulib-local/modules/xreadlink: New file.
2362 * m4/allocsa.m4: Remove file. Now taken from gnulib.
2363 * m4/codeset.m4: Likewise.
2364 * m4/eealloc.m4: Likewise.
2365 * m4/error.m4: Likewise.
2366 * m4/extensions.m4: Likewise.
2367 * m4/full-header-path.m4: Likewise.
2368 * m4/gettext.m4: Likewise.
2369 * m4/glibc21.m4: Likewise.
2370 * m4/iconv.m4: Likewise.
2371 * m4/intmax.m4: Likewise.
2372 * m4/inttypes-h.m4: Likewise.
2373 * m4/inttypes_h.m4: Likewise.
2374 * m4/isc-posix.m4: Likewise.
2375 * m4/lcmessage.m4: Likewise.
2376 * m4/lib-ld.m4: Likewise.
2377 * m4/lib-link.m4: Likewise.
2378 * m4/lib-prefix.m4: Likewise.
2379 * m4/longdouble.m4: Likewise.
2380 * m4/longlong.m4: Likewise.
2381 * m4/mbstate_t.m4: Likewise.
2382 * m4/nls.m4: Likewise.
2383 * m4/onceonly.m4: Likewise.
2384 * m4/pathmax.m4: Likewise.
2385 * m4/po.m4: Likewise.
2386 * m4/printf-posix.m4: Likewise.
2387 * m4/progtest.m4: Likewise.
2388 * m4/readlink.m4: Likewise.
2389 * m4/setenv.m4: Likewise.
2390 * m4/signed.m4: Likewise.
2391 * m4/size_max.m4: Likewise.
2392 * m4/ssize_t.m4: Likewise.
2393 * m4/stdbool.m4: Likewise.
2394 * m4/stdint.m4: Likewise.
2395 * m4/stdint_h.m4: Likewise.
2396 * m4/strerror.m4: Likewise.
2397 * m4/strerror_r.m4: Likewise.
2398 * m4/unistd_h.m4: Likewise.
2399 * m4/unlocked-io.m4: Likewise.
2400 * m4/visibility.m4: Likewise.
2401 * m4/wchar_t.m4: Likewise.
2402 * m4/wint_t.m4: Likewise.
2404 * srclib/allocsa.h: Remove file. Now taken from gnulib.
2405 * srclib/allocsa.c: Likewise.
2406 * srclib/binary-io.h: Likewise.
2407 * srclib/error.h: Likewise.
2408 * srclib/error.c: Likewise.
2409 * srclib/exit.h: Likewise.
2410 * srclib/gettext.h: Likewise.
2411 * srclib/memmove.c: Likewise.
2412 * srclib/pathmax.h: Likewise.
2413 * srclib/progname.h: Likewise.
2414 * srclib/progname.c: Likewise.
2415 * srclib/progreloc.c: Likewise.
2416 * srclib/readlink.c: Likewise.
2417 * srclib/setenv.h: Likewise.
2418 * srclib/setenv.c: Likewise.
2419 * srclib/stdbool_.h: Likewise.
2420 * srclib/stdint_.h: Likewise.
2421 * srclib/strerror.c: Likewise.
2422 * srclib/unlocked-io.h: Likewise.
2423 * srclib/unsetenv.c: Likewise.
2424 * srclib/Makefile.am: Remove file.
2426 2006-07-27 Bruno Haible <bruno@clisp.org>
2428 Remove OS/2 build support that doesn't assume GNU make and GNU bash.
2429 * README.os2: Remove file.
2430 * Makefile.os2: Remove file.
2431 * lib/Makefile.os2: Remove file.
2432 * src/Makefile.os2: Remove file.
2433 * man/Makefile.os2: Remove file.
2434 * tests/Makefile.os2: Remove file.
2435 * tests/check-stateful.cmd: Remove file.
2436 * tests/check-stateless.cmd: Remove file.
2437 * tests/check-translit.cmd: Remove file.
2439 2006-07-25 Bruno Haible <bruno@clisp.org>
2441 Remove MSVC/nmake build support.
2442 * windows: Remove directory.
2443 * Makefile.msvc: Remove file.
2444 * lib/Makefile.msvc: Remove file.
2445 * srclib/Makefile.msvc: Remove file.
2446 * src/Makefile.msvc: Remove file.
2447 * tests/Makefile.msvc: Remove file.
2448 * man/Makefile.msvc: Remove file.
2449 * po/Rules-msvc: Remove file.
2450 * po/Makefile.msvc.sh: Remove file.
2451 * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
2452 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
2454 (po/Makefile.msvc): Remove rule.
2457 2006-07-25 Bruno Haible <bruno@clisp.org>
2460 * vms: Remove directory.
2461 * Makefile.vms: Remove file.
2462 * lib/Makefile.vms: Remove file.
2463 * srclib/Makefile.vms: Remove file.
2464 * src/Makefile.vms: Remove file.
2465 * tests/Makefile.vms: Remove file.
2466 * man/Makefile.vms: Remove file.
2467 * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
2468 (include/iconv.h_vms): Remove rule.
2471 2006-07-23 Bruno Haible <bruno@clisp.org>
2473 * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
2474 * src/Makefile.in (iconv_no_i18n): Likewise.
2475 (install): Likewise.
2476 * tests/Makefile.in (table-from, table-to): Likewise.
2477 Needed because the CFLAGS can e.g. trigger profiling.
2478 Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
2480 2006-07-19 Bruno Haible <bruno@clisp.org>
2482 * Version 1.11 released.
2484 2006-07-19 Bruno Haible <bruno@clisp.org>
2486 * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
2487 (LIBADD_SOURCE): Add them here.
2489 2006-07-19 Bruno Haible <bruno@clisp.org>
2491 * build-aux/config.guess: Update to GNU version 2006-07-02.
2492 * build-aux/config.sub: Likewise.
2494 2006-07-14 Bruno Haible <bruno@clisp.org>
2496 * lib/Makefile.in (clean): Remove also *.stackdump.
2497 * src/Makefile.in (clean): Likewise.
2498 * tests/Makefile.in (clean): Likewise.
2500 2006-07-14 Bruno Haible <bruno@clisp.org>
2502 * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
2504 * tests/Makefile.in (clean): Remove also the programs, without
2505 EXEEXT. Needed for cygwin or mingw.
2506 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
2507 Remove also bin directory. Needed for cygwin and mingw.
2509 2006-07-03 Bruno Haible <bruno@clisp.org>
2511 * src/iconv.c (check_subst_formatstring): Use ngettext.
2512 (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
2513 after 2006-01-22 change.
2514 * configure.ac: Require a gettext version with ngettext.
2516 2006-06-28 Bruno Haible <bruno@clisp.org>
2518 * m4/gettext.m4: Update from GNU gettext.
2519 * m4/po.m4: Update from GNU gettext.
2521 2006-06-27 Bruno Haible <bruno@clisp.org>
2523 * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
2524 * Makefile.in (datarootdir): New variable.
2525 (install, installdirs, uninstall): Also pass datarootdir.
2526 * configure.ac (mandir): Remove customization.
2527 * man/Makefile.in (datarootdir): New variable.
2528 (docdir, htmldir): Use autoconf-substituted value.
2529 * src/Makefile.in (datarootdir): New variable.
2530 (localedir): Use autoconf-substituted value.
2532 2006-06-27 Bruno Haible <bruno@clisp.org>
2534 * m4/stdint.m4: Update from gnulib.
2535 * srclib/stdint_.h: Update from gnulib.
2536 * srclib/Makefile.am: Update.
2538 2006-06-17 Bruno Haible <bruno@clisp.org>
2540 * srclib/unsetenv.c: Update from GNU gettext.
2541 * srclib/xreadlink.c: Likewise.
2543 2006-06-16 Bruno Haible <bruno@clisp.org>
2545 * m4/full-header-path.m4: New file, from gnulib.
2546 * m4/size_max.m4: New file, from gnulib.
2547 * m4/stdint.m4: Update from gnulib.
2548 * srclib/stdint_.h: Update from gnulib.
2549 * srclib/Makefile.am (stdint.h): Likewise.
2550 * Makefile.devel (aclocal.m4): Update dependencies.
2552 2006-06-16 Bruno Haible <bruno@clisp.org>
2554 * m4/ssize_t.m4: Update from GNU gettext.
2556 2006-06-12 Bruno Haible <bruno@clisp.org>
2558 * m4/gettext.m4: Update from GNU gettext.
2559 * m4/inttypes-h.m4: New file, from GNU gettext.
2560 * m4/inttypes.m4: Remove file.
2561 * m4/stdint.m4 (gl_STDINT_H): Update.
2562 * Makefile.devel (aclocal.m4): Update dependencies.
2564 2006-06-10 Bruno Haible <bruno@clisp.org>
2566 * src/iconv.c (error) [NO_I18N]: Define here instead of including
2567 error.h. Fixes link failure introduced on 2006-01-22.
2569 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2571 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
2572 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
2574 2006-05-20 Bruno Haible <bruno@clisp.org>
2576 * tests/BIG5-HKSCS-1999-snippet: New file.
2577 * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
2578 * tests/BIG5-HKSCS-2001-snippet: New file.
2579 * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
2580 * tests/BIG5-HKSCS-2004-snippet: New file.
2581 * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
2582 * tests/Makefile.in (check): Test also the stateful parts of
2583 BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
2585 2006-05-17 Bruno Haible <bruno@clisp.org>
2587 Implement newer releases of BIG5-HKSCS.
2588 * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
2590 (hkscs.h): Remove rule.
2591 (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
2592 * tools/cjk_tab_to_h.c (output_title): Update year.
2593 (main): Recognize hkscs1999, hkscs2001, hkscs2004.
2594 * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
2595 BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
2596 * lib/hkscs.h: Remove file.
2597 * lib/hkscs1999.h: New file.
2598 * lib/hkscs2001.h: New file.
2599 * lib/hkscs2004.h: New file.
2600 * lib/big5hkscs.h: Remove file.
2601 * lib/big5hkscs1999.h: New file.
2602 * lib/big5hkscs2001.h: New file.
2603 * lib/big5hkscs2004.h: New file.
2604 * lib/converters.h: Include the new files.
2605 * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
2606 * tests/BIG5-HKSCS.TXT: Remove file.
2607 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
2608 * tests/BIG5-HKSCS-1999.TXT: New file.
2609 * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
2610 * tests/BIG5-HKSCS-2001.TXT: New file.
2611 * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
2612 * tests/BIG5-HKSCS-2004.TXT: New file.
2613 * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
2614 * tests/check-stateless: Convert colon in the charset name to a dash in
2616 * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
2617 BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
2618 * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
2619 * tests/Makefile.os2 (check): Likewise.
2621 2006-05-17 Bruno Haible <bruno@clisp.org>
2623 * srclib/progreloc.c: Update from GNU gettext.
2625 2006-05-16 Bruno Haible <bruno@clisp.org>
2627 * src/Makefile.in (clean): Use EXEEXT.
2628 * tests/Makefile.in (check, clean): Likewise.
2630 2006-05-15 Bruno Haible <bruno@clisp.org>
2632 * configure.ac: Move some checks before AC_RELOCATABLE.
2634 2006-05-15 Bruno Haible <bruno@clisp.org>
2636 Support for building shared libraries on mingw and Cygwin.
2637 * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
2638 * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
2639 * woe32dll/export.h: New file, from GNU gettext.
2640 * woe32dll/iconv-exports.h: New file.
2641 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2642 include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
2643 * lib/Makefile.in (INCLUDES): Add -I for parent directory.
2644 (LDFLAGS): Add WOE32DLL dependent flags.
2645 (LDFLAGS_yes, LDFLAGS_no): New variables.
2646 (OBJECTS): Add WOE32DLL dependent objects.
2647 (OBJECTS_yes, OBJECTS_no): New variables.
2648 (iconv-exports.lo): New rule.
2650 2006-05-15 Bruno Haible <bruno@clisp.org>
2652 * srclib/gettext.h: Update from GNU gettext.
2653 * srclib/pathmax.h: Update from GNU gettext.
2654 * srclib/progreloc.c: Update from GNU gettext.
2655 * srclib/unsetenv.c: Update from GNU gettext.
2656 * srclib/Makefile.am: Add snippet for creation of unistd.h.
2657 * m4/extensions.m4: Update from GNU gettext.
2658 * m4/gettext.m4: Update from GNU gettext.
2659 * m4/lib-ld.m4: Update from GNU gettext.
2660 * m4/lib-link.m4: Update from GNU gettext.
2661 * m4/lib-prefix.m4: Update from GNU gettext.
2662 * m4/longdouble.m4: Update from GNU gettext.
2663 * m4/nls.m4: Update from GNU gettext.
2664 * m4/onceonly.m4: Update from GNU gettext.
2665 * m4/po.m4: Update from GNU gettext.
2666 * m4/relocatable.m4: Update from GNU gettext.
2667 * m4/unistd_h.m4: New file, from GNU gettext.
2668 * Makefile.devel (aclocal.m4): Depend on it.
2669 * configure.ac: Invoke gl_HEADER_UNISTD.
2671 2006-05-14 Bruno Haible <bruno@clisp.org>,
2672 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2674 * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
2675 (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
2676 (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
2677 Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
2679 2006-05-06 Charles Wilson <cygwin@cwilson.fastmail.fm>
2681 * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
2682 compiling a shared library object.
2684 2006-05-15 Bruno Haible <bruno@clisp.org>
2686 * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
2688 2006-03-31 Juan Manuel Guerrero <juan.guerrero@gmx.de>
2692 2006-01-23 Bruno Haible <bruno@clisp.org>
2694 * configure.ac: Invoke gl_ALLOCSA.
2696 * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
2698 2006-01-22 Bruno Haible <bruno@clisp.org>
2700 * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
2703 2006-01-22 Bruno Haible <bruno@clisp.org>
2705 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
2707 2006-01-22 Bruno Haible <bruno@clisp.org>
2709 * src/iconv.c: Include error.h, exit.h.
2710 (print_version): Use EXIT_SUCCESS.
2711 (check_subst_formatstring, subst_mb_to_uc_fallback,
2712 subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
2713 subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
2714 error() instead of fprintf to stderr.
2716 2006-01-22 Bruno Haible <bruno@clisp.org>
2718 New feature: character-dependent substitutions.
2719 * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
2720 iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
2721 iconv_wchar_wc_to_mb_fallback): New types.
2722 (struct iconv_fallbacks): New structure type.
2723 (ICONV_SET_FALLBACKS): New macro.
2724 * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
2725 * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
2726 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
2727 include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
2728 * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
2729 * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
2730 (uc_to_mb_write_replacement): New function.
2731 (struct mb_to_uc_fallback_locals): New type.
2732 (mb_to_uc_write_replacement): New function.
2733 (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
2734 (unicode_loop_reset): Call uc_to_mb_fallback.
2735 * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
2736 (wc_to_mb_write_replacement): New function.
2737 (wchar_from_loop_convert): Call wc_to_mb_fallback.
2738 (struct mb_to_wc_fallback_locals): New type.
2739 (mb_to_wc_write_replacement): New function.
2740 (wchar_to_loop_convert): Call mb_to_wc_fallback.
2741 * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
2742 (iconvctl): Handle ICONV_SET_FALLBACKS.
2743 * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
2744 * src/iconv.c: Include limits.h.
2745 (isdigit, c_isprint): New macros.
2746 (usage): Document long options and new options.
2747 (check_subst_formatstring): New function.
2748 (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
2750 (ilseq_byte_subst_size, ilseq_wchar_subst_size,
2751 ilseq_unicode_subst_size): New variables.
2752 (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
2753 ilseq_unicode_subst_buffer): New variables.
2754 (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
2755 (subst_mb_to_uc_fallback): New function.
2756 (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
2757 (subst_uc_to_mb_fallback): New function.
2758 (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
2759 (subst_mb_to_wc_fallback): New function.
2760 (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
2761 (subst_wc_to_mb_fallback): New function.
2762 (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
2763 (subst_mb_to_mb_fallback): New function.
2764 (convert): Enlarge the outbuf when the conversion failed with E2BIG.
2765 (main): Handle new options --byte-subst, --widechar-subst,
2767 * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
2769 * tests/check-subst: New file.
2770 * tests/Makefile.in (check): Also invoke check-subst.
2771 Suggested by James Taylor <james@oakseed.demon.co.uk>.
2773 2006-01-21 Bruno Haible <bruno@clisp.org>
2775 * src/iconv.c (print_version): Bump copyright year.
2776 (main): Accept long options --from-code, --to-code, --list, --silent.
2777 Accept abbreviated long options, like getopt() does.
2778 * man/iconv.1: Document long options.
2780 2005-12-29 Bruno Haible <bruno@clisp.org>
2782 * src/iconv.c (print_version): Update copyright year.
2784 2005-12-29 Bruno Haible <bruno@clisp.org>
2786 * configure.ac: Renamed from configure.in.
2787 * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
2789 2005-12-29 Bruno Haible <bruno@clisp.org>
2791 * configure.in: Bump version number.
2792 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
2793 * windows/iconv.rc: Likewise.
2794 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
2796 2005-12-29 Bruno Haible <bruno@clisp.org>
2798 * build-aux/config.guess: Update to GNU version 2005-12-23.
2799 * build-aux/config.sub: Likewise.
2800 * build-aux/config.libpath: Update from GNU gettext.
2801 * build-aux/install-sh: Upgrade to automake-1.9.5.
2802 * build-aux/missing: Upgrade to automake-1.9.5.
2803 * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
2805 2005-12-29 Bruno Haible <bruno@clisp.org>
2807 * m4/alloca.m4: Update from GNU gettext.
2808 * m4/allocsa.m4: Update from GNU gettext.
2809 * m4/canonicalize.m4: Update from GNU gettext.
2810 * m4/codeset.m4: Update from GNU gettext.
2811 * m4/eealloc.m4: Update from GNU gettext.
2812 * m4/error.m4: Update from GNU gettext.
2813 * m4/extensions.m4: Update from GNU gettext.
2814 * m4/gettext.m4: Update from GNU gettext.
2815 * m4/glibc21.m4: Update from GNU gettext.
2816 * m4/iconv.m4: Update from GNU gettext.
2817 * m4/intmax.m4: Update from GNU gettext.
2818 * m4/inttypes_h.m4: New file, from GNU gettext.
2819 * m4/isc-posix.m4: Update from GNU gettext.
2820 * m4/lcmessage.m4: Update from GNU gettext.
2821 * m4/longdouble.m4: Update from GNU gettext.
2822 * m4/longlong.m4: Update from GNU gettext.
2823 * m4/mbstate_t.m4: Update from GNU gettext.
2824 * m4/nls.m4: Update from GNU gettext.
2825 * m4/onceonly.m4: Update from GNU gettext.
2826 * m4/pathmax.m4: Update from GNU gettext.
2827 * m4/po.m4: Update from GNU gettext.
2828 * m4/printf-posix.m4: Update from GNU gettext.
2829 * m4/progtest.m4: Update from GNU gettext.
2830 * m4/readlink.m4: Update from GNU gettext.
2831 * m4/relocatable.m4: Update from GNU gettext.
2832 * m4/setenv.m4: Update from GNU gettext.
2833 * m4/signed.m4: Update from GNU gettext.
2834 * m4/ssize_t.m4: Update from GNU gettext.
2835 * m4/stdbool.m4: Update from GNU gettext.
2836 * m4/stdint_h.m4: New file, from GNU gettext.
2837 * m4/strerror.m4: Update from GNU gettext.
2838 * m4/strerror_r.m4: Update from GNU gettext.
2839 * m4/unlocked-io.m4: Update from GNU gettext.
2840 * m4/wchar_t.m4: Update from GNU gettext.
2841 * m4/wint_t.m4: Update from GNU gettext.
2842 * m4/xreadlink.m4: Update from GNU gettext.
2843 * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
2844 m4/stdint_h.m4 as well.
2845 * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
2846 Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
2847 Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
2848 Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
2849 Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
2850 SRCLIBOBJS instead of LIBOBJS.
2851 * srclib/alloca_.h: Update from GNU gettext.
2852 * srclib/allocsa.h: Update from GNU gettext.
2853 * srclib/canonicalize.c: Update from GNU gettext.
2854 * srclib/error.h: Update from GNU gettext.
2855 * srclib/error.c: Update from GNU gettext.
2856 * srclib/gettext.h: Update from GNU gettext.
2857 * srclib/memmove.c: Update from GNU gettext.
2858 * srclib/progname.h: Update from GNU gettext.
2859 * srclib/progname.c: Update from GNU gettext.
2860 * srclib/progreloc.c: Update from GNU gettext.
2861 * srclib/readlink.c: Update from GNU gettext.
2862 * srclib/relocatable.c: Update from GNU gettext.
2863 * srclib/relocwrapper.c: Update from GNU gettext.
2864 * srclib/setenv.h: Update from GNU gettext.
2865 * srclib/setenv.c: Update from GNU gettext.
2866 * srclib/stdbool_.h: Update from GNU gettext.
2867 * srclib/stdint_.h: Update from gnulib.
2868 * srclib/strerror.c: Update from GNU gettext.
2869 * srclib/unlocked-io.h: Update from GNU gettext.
2870 * srclib/unsetenv.c: Update from GNU gettext.
2871 * srclib/xalloc.h: Update from GNU gettext.
2872 * srclib/xmalloc.c: Update from GNU gettext.
2873 * srclib/xreadlink.c: Update from GNU gettext.
2874 * srclib/xstrdup.c: Update from GNU gettext.
2875 * srclib/Makefile.am (DEFS): Also define EXEEXT.
2876 (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
2877 (libicrt_a_DEPENDENCIES): New variable.
2878 * src/Makefile.in (EXEEXT): New variable.
2879 * build-aux/install-reloc: Update from GNU gettext.
2880 * build-aux/reloc-ldflags: Update from GNU gettext.
2881 * build-aux/config.rpath: Update from GNU gettext.
2883 2005-12-29 Bruno Haible <bruno@clisp.org>
2885 * m4/libtool.m4: Update, based on libtool-1.5.22.
2886 * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
2888 2005-12-24 Bruno Haible <bruno@clisp.org>
2890 Check the whole range of GB18030.
2891 * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
2892 * tests/gengb18030z.c: New file.
2893 * tests/table-from.c (main): For GB18030, don't stop at U+10000.
2894 * tests/table-to.c (main): Likewise.
2895 * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
2897 (clean): Remove also gengb18030z and GB18030.TXT.
2898 * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
2900 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2901 * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
2902 GB18030.TXT on the fly from GB18030-BMP.TXT.
2903 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2905 2005-12-20 Bruno Haible <bruno@clisp.org>
2907 * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
2908 up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
2911 2005-12-22 Bruno Haible <bruno@clisp.org>
2913 Extend GB18030 converter to cover the entire Unicode PUA.
2914 * lib/gb18030.h: Update comments, based on second printing.
2915 (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
2916 (gb18030_pua2charset): New array.
2917 (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
2918 part of range U+E766..U+E864.
2919 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
2921 (gb18030ext_mbtowc): Add mapping for the two-byte part of range
2923 * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
2924 gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
2926 (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
2927 * tests/GB18030.TXT: Complete mappings to private area.
2929 2005-12-22 Bruno Haible <bruno@clisp.org>
2931 * lib/gbk.h: Update comments.
2933 2005-12-20 Bruno Haible <bruno@clisp.org>
2935 Add private area mappings to CP949.
2936 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
2938 * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
2940 2005-12-15 Bruno Haible <bruno@clisp.org>
2942 Add private area mappings to CP950.
2943 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
2945 * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
2947 2005-12-15 Bruno Haible <bruno@clisp.org>
2949 Make CP936 follow what Microsoft does.
2950 In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
2951 added a 0x80 - U+20AC mapping to the code chart, but not to the
2952 tooltips and not to the list of mappings.
2953 * lib/cp936.h: New file.
2954 * lib/gbk.h: Update comments.
2955 * lib/ces_gbk.h: Update comments.
2956 * lib/converters.h: Include cp936.h.
2957 * lib/encodings.def (CP936): New encoding.
2958 (GBK): Remove CP936 aliases.
2959 * README, man/iconv_open.3: Add CP936.
2960 * tests/Makefile.in (check): Check CP936.
2961 * tests/Makefile.msvc (check): Likewise.
2962 * tests/Makefile.os2 (check): Likewise.
2963 * tests/CP936.TXT: New file.
2965 2005-12-14 Bruno Haible <bruno@clisp.org>
2967 * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
2968 U+FFE1 like Microsoft does it.
2969 * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
2970 Reported by Lei Wang <lwang@qilinsoft.com>.
2972 2005-12-14 Bruno Haible <bruno@clisp.org>
2974 Follow Euro sign addition done in 1999 in
2975 http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
2976 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
2977 * tests/CP950.TXT: Add mapping for 0xA3E1.
2979 2005-11-11 Bruno Haible <bruno@clisp.org>
2981 * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
2982 and only two bytes are available in the output buffer, return
2983 RET_TOOSMALL instead of overrunning the output buffer.
2984 * lib/isoir165.h (isoir165_wctomb): When only one byte is available
2985 in the output buffer, don't overrun the output buffer.
2986 Reported by William Bardwell <bardwell@curl.com>.
2988 2005-09-18 Bruno Haible <bruno@clisp.org>
2990 * m4/libtool.m4: Update, based on libtool-1.5.20.
2991 * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
2993 2005-08-12 Bruno Haible <bruno@clisp.org>
2995 * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
2996 * tests/BIG5-2003.TXT: Likewise.
2997 * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
2998 Reported by Ping Yeh <ping@pingyeh.net>.
3000 2005-07-24 Bruno Haible <bruno@clisp.org>
3002 Tidy up exported symbols.
3003 * m4/visibility.m4: New file.
3004 * include/export.h: New file.
3005 * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
3006 create also include/iconv.h.inst.
3007 * Makefile.devel (all): Depend on include/iconv.h.build.in.
3008 (aclocal.m4): Depend on m4/visibility.m4.
3009 (include/iconv.h.build.in): New rule.
3010 * Makefile.in (install-lib, install): Install include/iconv.h.inst,
3011 not the include/iconv.h that was used for building.
3012 (distclean, maintainer-clean): Remove also include/iconv.h.inst.
3013 * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
3014 (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
3015 * lib/config.h.in (HAVE_VISIBILITY): New macro.
3016 * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
3017 Define to the gcc visibility attribute.
3018 * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
3021 2005-07-25 Bruno Haible <bruno@clisp.org>
3023 2003-08-24 Bruno Haible <bruno@clisp.org>
3024 * lib/relocatable.h: Make this file includable in C++ mode: add extern
3027 2005-07-08 Bruno Haible <bruno@clisp.org>
3029 * Version 1.10 released.
3031 2005-07-08 Bruno Haible <bruno@clisp.org>
3033 * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
3034 executable after installing it.
3036 2005-07-08 Bruno Haible <bruno@clisp.org>
3038 * configure.in: Bump version number.
3039 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
3040 * windows/iconv.rc: Likewise.
3041 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
3043 2005-07-05 Bruno Haible <bruno@clisp.org>
3045 * Makefile.devel (ACLOCAL): New variable.
3046 (aclocal.m4): Use it.
3048 2005-07-05 Bruno Haible <bruno@clisp.org>
3050 * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
3051 SET_RELOCATABLE to a trivial value.
3053 2004-08-08 Bruno Haible <bruno@clisp.org>
3055 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
3058 2004-04-28 Bruno Haible <bruno@clisp.org>
3060 * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
3061 Treat Cygwin like Windows, since it now accepts Windows pathnames.
3063 2005-06-09 Bruno Haible <bruno@clisp.org>
3065 * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
3066 * lib/Makefile.in (mkinstalldirs): Likewise.
3067 * src/Makefile.in (mkinstalldirs): Likewise.
3068 * man/Makefile.in (mkinstalldirs): Likewise.
3070 2005-06-08 Bruno Haible <bruno@clisp.org>
3072 * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
3073 that don't support symbolic links.
3075 2005-06-08 Bruno Haible <bruno@clisp.org>
3077 * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
3078 gcc warning on mingw.
3080 2005-05-22 Bruno Haible <bruno@clisp.org>
3082 Implement and document BIG5-2003.
3083 * lib/big5_2003.h: New file.
3084 * lib/converters.h: Include it.
3085 * lib/encodings_extra.def (BIG5-2003): New encoding.
3086 * README, man/iconv_open.3: Add BIG5-2003.
3087 * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
3088 * tests/BIG5-2003.TXT: New file.
3090 2005-05-21 Bruno Haible <bruno@clisp.org>
3092 Add EURO SIGN to EUC-TW converter.
3093 * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
3094 (cns11643_1_mbtowc): Update.
3095 * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
3096 (cns11643_inv_uni2indx_page*): Update.
3097 * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
3099 * tests/EUC-TW.TXT: Add entry for 0x20AC.
3100 * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
3102 2005-05-03 Bruno Haible <bruno@clisp.org>
3104 * tools/Makefile (ALL): Add pt154.h.
3105 (pt154.h): New rule.
3106 * lib/encodings.def: Add PT154.
3107 * lib/pt154.h: New file.
3108 * lib/converters.h: Include it.
3109 * README, man/iconv_open.3: Add PT154.
3110 * NOTES: Mention PT154.
3111 * tests/PT154.TXT: New file.
3112 * tests/Makefile.in (check): Also test PT154.
3113 * tests/Makefile.msvc (check): Likewise.
3114 * tests/Makefile.os2 (check): Likewise.
3116 2005-03-29 Bruno Haible <bruno@clisp.org>
3118 Rename libiconv_plug.so to preloadable_libiconv.so.
3119 * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
3121 * lib/Makefile.in (preloadable_libiconv.so): Renamed from
3123 (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
3124 (preloadable_libiconv_solaris.so): Renamed from
3125 libiconv_plug_solaris.so.
3126 (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
3130 2005-03-29 Bruno Haible <bruno@clisp.org>
3132 Implement and document ATARIST.
3133 * tools/Makefile (ALL): Add atarist.h.
3134 (atarist.h): New rule.
3135 * lib/atarist.h: New file.
3136 * lib/converters.h: Include it.
3137 * lib/encodings_extra.def (ATARIST): New encoding.
3138 * README, man/iconv_open.3: Add ATARIST.
3139 * tests/Makefile.in (check-extra-yes): Check ATARIST.
3140 * tests/ATARIST.TXT: New file.
3142 2005-03-22 Bruno Haible <bruno@clisp.org>
3144 * build-aux: New directory, renamed from autoconf.
3145 * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
3147 2005-03-16 Bruno Haible <bruno@clisp.org>
3149 * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
3150 HAVE_LONGLONG_64BIT.
3151 * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
3152 HAVE_LONGLONG_64BIT.
3153 * srclib/Makefile.am (stdint.h): Likewise.
3155 2005-03-14 Bruno Haible <bruno@clisp.org>
3157 * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
3158 extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
3159 printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
3160 wchar_t.m4, wint_t.m4.
3162 2005-03-13 Bruno Haible <bruno@clisp.org>
3164 Make stdout error checking reliable, also when writing to a NFS file.
3165 * src/iconv.c (main): Check the return value of fclose(stdout).
3166 * lib/genaliases.c (main): Likewise.
3167 * lib/genaliases2.c (main): Likewise.
3168 * lib/genflags.c (main): Likewise.
3169 * lib/gentranslit.c (main): Likewise.
3170 * tests/genutf8.c (main): Likewise.
3171 * tests/table-from.c (main): Likewise.
3172 * tests/table-to.c (main): Likewise.
3174 2005-03-13 Bruno Haible <bruno@clisp.org>
3176 * src/iconv.c (convert): Before outputting an error message, flush
3177 stdout and output a newline if suitable.
3179 2005-03-13 Bruno Haible <bruno@clisp.org>
3181 Improved error messages.
3182 * srclib/width.c: New file, from GNU clisp.
3183 * srclib/uniwidth.h: New file, from GNU clisp with modifications.
3184 * srclib/unitypes.h: New file, from GNU clisp with modifications.
3185 * srclib/cjk.h: New file, from GNU clisp.
3186 * srclib/streq.h: New file, from GNU clisp.
3187 * srclib/stdint_.h: New file, from gnulib.
3188 * m4/stdint.m4: New file, from gnulib.
3189 * m4/inttypes.m4: New file, from gnulib.
3190 * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
3191 (BUILT_SOURCES): New variable.
3192 (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
3194 * configure.in: Invoke gl_STDINT_H.
3195 * src/iconv.c: Include cjk.h, uniwidth.h.
3196 (line, column, cjkcode): New variables.
3197 (update_line_column): New function.
3198 (convert): Initialize line and column. In all error message, show also
3199 the line and column number.
3200 (main): Initialize cjkcode. Set up hooks to call update_line_column.
3202 2005-03-13 Bruno Haible <bruno@clisp.org>
3204 * include/iconv.h.in (iconv_canonicalize): New declaration.
3205 * lib/genaliases.c (emit_encoding): Take two output streams as
3206 arguments. To the second stream, emit a shell command for extracting
3207 offsets into the gperf generated string pool.
3208 (main): Write the shell commands into file descriptors 3 and 4.
3209 * lib/genaliases2.c (emit_encoding): Take two output streams as
3210 arguments. To the second stream, emit an expression for the offset
3211 into the string pool.
3212 (main): Write the offsets into file descriptor 3.
3213 * Makefile.devel (lib/aliases.gperf): Remove target.
3214 (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
3215 lib/canonical.h and lib/canonical_local.h.
3216 (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
3217 (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
3218 (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
3219 (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
3220 * lib/iconv.c (stringpool2): Provide default definition when it doesn't
3222 (all_canonical): New array.
3223 (iconv_canonicalize): New function.
3225 2005-03-13 Bruno Haible <bruno@clisp.org>
3227 * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
3228 iconv_hooks): New types.
3229 (ICONV_SET_HOOKS): New macro.
3230 * lib/converters.h (struct conv_struct): Add field 'hooks'.
3231 * lib/iconv.c (iconv_open): Initialize hooks to NULL.
3232 (iconvctl): Handle ICONV_SET_HOOKS.
3233 * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
3234 conversion of a character, call the uc_hook.
3235 * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
3237 * lib/genflags.c (iconv_hooks): Provide a dummy definition.
3239 2005-02-05 Bruno Haible <bruno@clisp.org>
3241 * src/iconv.c (main): In case of unsupported encodings, show a hint
3244 2005-01-06 Bruno Haible <bruno@clisp.org>
3246 * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
3247 * lib/Makefile.vms (DEFS): Likewise.
3248 Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
3250 2005-01-05 Bruno Haible <bruno@clisp.org>
3252 * autoconf/config.rpath: Update from GNU gettext.
3254 2005-01-05 Bruno Haible <bruno@clisp.org>
3256 Assume automake-1.9.
3257 * Makefile.devel (AUTOMAKE): Assume automake-1.9.
3259 2005-01-05 Bruno Haible <bruno@clisp.org>
3261 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
3262 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
3264 2004-11-11 Bruno Haible <bruno@clisp.org>
3266 * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
3268 Reported by Lukas Gebauer <gebauerl@mlp.cz>.
3270 2004-09-21 Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>
3272 * djgpp/config.bat: Update.
3273 * djgpp/config.sed: Update.
3274 * djgpp/config.site: Update.
3275 * djgpp/edtest.bat: Update.
3276 * djgpp/fnchange.in: Update.
3277 * djgpp/Makefile.maint: Update.
3278 * djgpp/makefile.sed: Update.
3279 * djgpp/README.in: Update.
3280 * djgpp/sources.sed: Update.
3281 * djgpp/translit-check.sed: Update.
3283 2004-08-25 Bruno Haible <bruno@clisp.org>
3285 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
3286 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
3288 2004-07-31 Bruno Haible <bruno@clisp.org>
3290 Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
3291 * tools/Makefile (jisx0213.h): Bump version number.
3292 * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
3293 U+2299 -> U+29BF, and add 10 new characters.
3294 * tools/cjk_tab_to_h.c (output_title): Bump year.
3295 (do_jisx0213): Update comments. Emit a conditional 'inline'.
3296 * lib/jisx0213.h: Regenerated.
3297 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
3298 ESC $ ( Q as a synonym of ESC $ ( O.
3299 (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
3300 * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
3301 U+2299 -> U+29BF, and add 10 new characters.
3302 * tests/SHIFT_JISX0213.TXT: Likewise.
3303 * tests/ISO-2022-JP-3-snippet: Update.
3304 * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
3306 2004-07-22 Bruno Haible <bruno@clisp.org>
3308 * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
3309 * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
3310 * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
3311 * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
3313 2004-07-22 Bruno Haible <bruno@clisp.org>
3315 * tools/Makefile (ALL): Add iso8859_11.h.
3316 (iso8859_11.h): New rule.
3317 * lib/encodings.def: Add ISO-8859-11.
3318 * lib/iso8859_11.h: New file.
3319 * lib/converters.h: Include it.
3320 * tests/ISO-8859-11.TXT: New file.
3321 * tests/Makefile.in (check): Also test ISO-8859-11.
3322 * tests/Makefile.msvc (check): Likewise.
3323 * tests/Makefile.os2 (check): Likewise.
3325 2004-07-17 Bruno Haible <bruno@clisp.org>
3327 * src/iconv.c (main): Terminate option parsing when option -- is seen.
3328 Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
3330 2004-03-05 Bruno Haible <bruno@clisp.org>
3332 * src/Makefile.in (install): Make DESTDIR work on HP-UX.
3333 Reported by Bob Proulx <box@proulx.com>.
3335 2004-02-19 Bruno Haible <bruno@clisp.org>
3337 * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
3338 0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
3339 (viet_comp_table0301_len): Increment by 4.
3341 * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
3342 which are not entries in cp1255_comp_table_data.
3343 * lib/cp1258.h (cp1258_comp_bases): New array.
3344 (cp1258_mbtowc): Don't delay the handling of characters which are not
3345 relevant entries in viet_comp_table_data.
3346 * lib/tcvn.h (tcvn_comp_bases): New array.
3347 (tcvn_mbtowc): Don't delay the handling of characters which are not
3348 relevant entries in viet_comp_table_data.
3349 Reported by Alain Bench <veronatif@free.fr>.
3351 2004-02-02 Perry Rapp <lifelines_3_0_18@hotmail.com>
3352 Bruno Haible <bruno@clisp.org>
3354 * man/iconvctl.3: New file.
3355 * man/iconv.3: Refer to it in "See also".
3356 * man/iconv_open.3: Likewise.
3358 2004-01-24 Bruno Haible <bruno@clisp.org>
3360 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
3363 2004-01-20 Bruno Haible <bruno@clisp.org>
3365 Upgrade from gettext-0.14.
3367 * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
3368 instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
3369 * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
3370 xalloc.h. Remove xmalloc.h.
3371 (libicrt_a_LIBADD): Remove @ALLOCA@.
3372 * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
3373 (allocsa.obj): New rule.
3374 * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
3375 (allocsa.obj): New rule.
3376 * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
3377 (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
3381 2003-10-09 Bruno Haible <bruno@clisp.org>
3382 * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
3384 2003-08-01 Bruno Haible <bruno@clisp.org>
3385 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
3386 Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3388 2003-06-22 Bruno Haible <bruno@clisp.org>
3389 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3390 the case when it is not used.
3391 Reported by Pavel Roskin <proski@gnu.org>.
3395 * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
3396 * m4/po.m4: Likewise.
3398 * m4/readlink.m4: New file, from GNU gettext.
3400 2003-11-30 Bruno Haible <bruno@clisp.org>
3401 * m4/allocsa.m4: New file.
3402 * m4/eealloc.m4: New file.
3403 * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
3406 2003-10-21 Bruno Haible <bruno@clisp.org>
3407 * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
3410 2003-08-24 Bruno Haible <bruno@clisp.org>
3411 * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
3412 since the substitution of @host@ may occur before the substitution of
3415 2003-08-23 Bruno Haible <bruno@clisp.org>
3416 * stdbool.m4: Replace with the version from gnulib, without
3419 2003-08-08 Paul Eggert <eggert@twinsun.com>
3420 * m4/extensions.m4: New file.
3421 * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
3422 Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
3424 2003-07-01 Bruno Haible <bruno@clisp.org>
3425 * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
3426 <sys/types.h> should be sufficient.
3427 Reported by Paul Eggert.
3429 2003-07-01 Bruno Haible <bruno@clisp.org>
3430 * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
3431 from aclocal-1.4-p4.
3432 Reported by Luke Schierer <lschiere@rackspace.com> and
3433 Michael C. Toren <mct@toren.net>.
3435 2003-07-01 Paul Eggert <eggert@twinsun.com>
3436 * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
3437 xreadlink.c now includes it unconditionally.
3439 2003-06-17 Paul Eggert <eggert@twinsun.com>
3440 * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
3441 for portability to POSIX 1003.1-2001. Backported from libtool-1.5.
3443 2003-05-28 Paul Eggert <eggert@twinsun.com>
3444 * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
3445 * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
3447 2002-12-24 Bruno Haible <bruno@clisp.org>
3448 * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
3449 (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
3451 (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
3456 2003-11-30 Bruno Haible <bruno@clisp.org>
3457 * srclib/alloca.c: Remove file.
3459 2003-11-30 Bruno Haible <bruno@clisp.org>
3460 Safer stack allocation.
3461 * srclib/allocsa.h: New file.
3462 * srclib/allocsa.c: New file.
3463 * canonicalize.c: Include allocsa.h.
3464 (__realpath): Use allocsa instead of alloca. Don't clobber errno right
3465 before returning NULL.
3466 * srclib/relocwrapper.c: Indirectly depends on allocsa.
3467 * srclib/setenv.c: Include allocsa.h.
3468 (alloca): Remove fallback definition.
3469 (freea): Remove macro.
3470 (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
3473 2003-11-17 Bruno Haible <bruno@clisp.org>
3474 * srclib/canonicalize.c: #undef realpath after <config.h> but before
3475 the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
3476 Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
3478 2003-10-21 Bruno Haible <bruno@clisp.org>
3479 * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
3480 systems without symbolic links.
3482 2003-10-17 Bruno Haible <bruno@clisp.org>
3483 * srclib/binary-io.h: Avoid warnings on Cygwin.
3485 2003-10-09 Bruno Haible <bruno@clisp.org>
3486 * srclib/xalloc.h: Renamed from xmalloc.h.
3487 * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
3488 * srclib/relocatable.c: Likewise.
3489 * srclib/xmalloc.c: Likewise.
3490 * srclib/xreadlink.c: Likewise.
3491 * srclib/xstrdup.c: Likewise.
3493 2003-09-12 Paul Eggert <eggert@twinsun.com>
3494 * srclib/progreloc.c (get_full_program_name): Define via prototype.
3496 2003-09-12 Paul Eggert <eggert@twinsun.com>
3497 * srclib/setenv.c (clearenv): Define via prototype.
3499 2003-09-10 Bruno Haible <bruno@clisp.org>
3500 * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
3501 * srclib/unsetenv.c: Likewise.
3503 2003-08-28 Bruno Haible <bruno@clisp.org>
3504 * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
3505 a warning on QNX, which defines O_BINARY to 000000.
3507 2003-08-24 Bruno Haible <bruno@clisp.org>
3508 * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
3509 when MSVC7 <stdio.h> is included later.
3511 2003-08-24 Bruno Haible <bruno@clisp.org>
3512 * srclib/error.h: Use ANSI C "..." declarations when compiling with
3513 MSVC, even though it doesn't define __STDC__ by default.
3514 * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
3515 it doesn't define __STDC__ by default.
3517 2003-08-24 Bruno Haible <bruno@clisp.org>
3518 Support for building DLLs on Windows.
3519 * srclib/error.h (error_print_progname, error_message_count,
3520 error_one_per_line): Add DLL_VARIABLE attribute.
3521 * srclib/progname.h (program_name): Likewise.
3523 2003-08-24 Bruno Haible <bruno@clisp.org>
3524 * srclib/progname.h: Make this file includable in C++ mode: add extern
3526 * srclib/relocatable.h: Likewise.
3527 * srclib/xmalloc.h: Likewise.
3529 2003-08-22 Bruno Haible <bruno@clisp.org>
3530 * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
3532 * srclib/progname.c (error_with_progname): Remove variable.
3533 (maybe_print_progname): Remove function.
3535 2003-08-01 Bruno Haible <bruno@clisp.org>
3536 * srclib/relocatable.c (find_shared_library_fullname): Disable the code
3537 on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3539 2003-07-01 Paul Eggert <eggert@twinsun.com>
3540 * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
3541 having it depend on HAVE_SYS_TYPES_H.
3543 2003-06-23 Bruno Haible <bruno@clisp.org>
3544 Avoid compilation units that are empty after preprocessing.
3545 * srclib/canonicalize.c: Add dummy declaration.
3546 * srclib/strerror.c: Likewise.
3547 * srclib/error.c: Include <stdio.h> even if there's nothing to be
3550 2003-06-22 Bruno Haible <bruno@clisp.org>
3551 * srclib/relocatable.c (compute_curr_prefix): Comment out this function
3552 in the case when it is not used.
3553 Reported by Pavel Roskin <proski@gnu.org>.
3555 2003-05-28 Paul Eggert <eggert@twinsun.com>
3556 * srclib/pathmax.h: Include <limits.h> without checking for
3558 * srclib/xreadlink.c: Likewise.
3560 2004-01-20 Bruno Haible <bruno@clisp.org>
3562 Assume automake-1.8.
3563 * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
3564 (AUTOMAKE): Assume automake-1.8.
3565 * Makefile.in (am--refresh): New target.
3567 2004-01-23 Bruno Haible <bruno@clisp.org>
3569 * Version 1.9.2 released.
3571 2004-01-23 Bruno Haible <bruno@clisp.org>
3573 * tests/table-from.c: Include binary-io.h.
3574 (main): Switch stdout to binary mode.
3575 * tests/table-to.c: Include binary-io.h.
3576 (main): Switch stdout to binary mode.
3577 * tests/genutf8.c: Include binary-io.h.
3578 (main): Switch stdout to binary mode.
3579 * tests/Makefile.in (INCLUDES): Also look in srclib.
3580 (check): Pass INCLUDES when compiling genutf8.c.
3581 * tests/Makefile.os2 (INCLUDES): Also look in srclib.
3582 (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
3583 * tests/Makefile.msvc (INCLUDES): Also look in srclib.
3584 (check): Pass INCLUDES when compiling genutf8.c.
3586 2004-01-21 Bruno Haible <bruno@clisp.org>
3588 * src/iconv.c (force_binary): Remove variable.
3589 (usage): Don't document --binary any more.
3590 (convert, main): Always switch to binary mode.
3591 * tests/check-stateful.bat: Remove --binary option.
3592 * tests/check-translit.bat: Likewise.
3593 * tests/check-stateful.cmd: Likewise.
3594 * tests/check-translit.cmd: Likewise.
3595 * djgpp/stateful-check.sed: Remove MODE variable.
3596 * djgpp/translit-check.sed: Likewise.
3598 2004-01-21 Bruno Haible <bruno@clisp.org>
3600 * man/iconv.3: Fix description of return value in case of error.
3601 Reported by Jonathan Wakely <redi@users.sf.net>.
3603 2003-09-12 Paul Eggert <eggert@twinsun.com>
3605 * srclib/progreloc.c (get_full_program_name): Define via prototype.
3607 2003-08-15 Bruno Haible <bruno@clisp.org>
3609 * Makefile.devel (lib/translit.h): Add ulimit command so that the
3610 gentranslit program gets the stack it needs. Many Linux distributions
3611 allow only 8 MB of stack by default.
3613 2003-08-01 Bruno Haible <bruno@clisp.org>
3615 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
3617 * srclib/relocatable.c (find_shared_library_fullname): Likewise.
3618 Reported by Alain Guibert <derogaton+bgli@oreka.com>.
3620 2003-07-02 Bruno Haible <bruno@clisp.org>
3622 * m4/lib-ld.m4: Update from GNU gettext.
3623 * m4/lib-prefix.m4: Update from GNU gettext.
3624 * m4/gettext.m4: Update from GNU gettext.
3625 * m4/intmax.m4: New file, from GNU gettext.
3626 * m4/longdouble.m4: New file, from GNU gettext.
3627 * m4/longlong.m4: New file, from GNU gettext.
3628 * m4/printf-posix.m4: New file, from GNU gettext.
3629 * m4/signed.m4: New file, from GNU gettext.
3630 * m4/wchar_t.m4: New file, from GNU gettext.
3631 * m4/wint_t.m4: New file, from GNU gettext.
3632 * m4/pathmax.m4: Update from GNU gettext and gnulib.
3633 * m4/ssize_t.m4: Update from GNU gettext and gnulib.
3634 * m4/xreadlink.m4: Update from GNU gettext and gnulib.
3635 * m4/readlink.m4: New file, from gnulib.
3636 * autoconf/install-reloc: Update from GNU gettext.
3637 * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
3638 * srclib/readlink.c: New file, from GNU gettext and gnulib.
3639 * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
3640 (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
3641 * configure.in: Invoke gl_FUNC_READLINK.
3643 2003-06-22 Bruno Haible <bruno@clisp.org>
3645 * src/Makefile.in (install): Link with the already installed library.
3646 This fixes a link error on Solaris.
3647 Reported by Paul Eggert.
3649 2003-06-08 Bruno Haible <bruno@clisp.org>
3651 * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
3653 2003-05-02 Bruno Haible <bruno@clisp.org>
3655 Support for libtool-1.5.
3656 * srclib/progname.c (set_program_name): Remove a leading
3657 "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
3659 2003-06-23 Bruno Haible <bruno@clisp.org>
3661 Avoid compilation units that are empty after preprocessing.
3662 * srclib/canonicalize.c: Add dummy declaration.
3663 * srclib/strerror.c: Likewise.
3664 * srclib/error.c: Include <stdio.h> even if there's nothing to be
3667 2003-06-22 Bruno Haible <bruno@clisp.org>
3669 Portability to mingw32.
3670 * m4/ssize_t.m4: New file, from GNU gettext.
3671 * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
3672 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3674 2003-06-22 Bruno Haible <bruno@clisp.org>
3676 Portability to mingw32.
3677 * lib/relocatable.c [WIN32]: Include <windows.h>.
3678 * srclib/relocatable.c: Likewise.
3679 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
3681 2003-06-22 Bruno Haible <bruno@clisp.org>
3683 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
3684 the case when it is not used.
3685 * srclib/relocatable.c (compute_curr_prefix): Likewise.
3686 Reported by Pavel Roskin <proski@gnu.org>.
3688 2003-06-18 Bruno Haible <bruno@clisp.org>
3690 * config/install-sh: Update from automake-1.7.5.
3692 2003-06-16 Bruno Haible <bruno@clisp.org>
3694 * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
3695 (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
3697 (GBK): Add aliases MS936, WINDOWS-936.
3698 Reported by Guido Flohr <guido@imperia.net>.
3700 2003-05-09 Bruno Haible <bruno@clisp.org>
3702 * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
3703 "extraneous semicolon" warning from Tru64 cc.
3705 2003-06-07 Bruno Haible <bruno@clisp.org>
3707 * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
3708 * Makefile.vms (config.h): New rule.
3709 (all, install): Depend on it.
3710 (all, install, installdirs, uninstall, check): Fix typo.
3711 (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
3713 * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
3714 (OBJECTS): Use libiconv.obj instead of iconv.obj.
3715 (libiconv.obj): Renamed from iconv.obj.
3716 * srclib/Makefile.vms (INCLUDES): Add parent directory.
3717 (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
3718 (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
3719 (alloca.h): New rule.
3720 (canonicalize.obj): Depend on it.
3721 (clean): Remove alloca.h.
3722 * src/Makefile.vms (datadir, localedir): New variables.
3723 (DEFS): Also define LOCALEDIR.
3724 (iconv.obj): Add flags for relocatability,
3725 (iconv.exe): Link with libicrt. Use link_options.
3726 * vms/link_options.opt: New file.
3727 Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
3729 2003-06-07 Bruno Haible <bruno@clisp.org>
3731 Support for relocatable data files even on Woe32.
3732 * lib/Makefile.msvc (PICFLAGS): Also define PIC.
3734 2003-05-22 Bruno Haible <bruno@clisp.org>
3736 * Version 1.9.1 released.
3738 2003-05-22 Bruno Haible <bruno@clisp.org>
3740 * lib/genaliases.c (main): Emit %pic instead of %null-strings.
3741 Change type of 'name' field to 'int'.
3742 * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
3743 invocation of macro S(), including the tag and a counter.
3744 (main): Use the command-line argument as tag.
3745 * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
3746 lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
3747 * lib/iconv.c (stringpool2_t): New type.
3748 (stringpool2_contents): New data table.
3749 (stringpool2): New macro.
3750 (sysdep_aliases): Make position-independent. Move #includes out to
3752 (aliases2_lookup): Update.
3754 (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
3755 (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
3756 * lib/aliases2.h: New file, extracted from lib/iconv.c.
3758 2003-05-20 Bruno Haible <bruno@clisp.org>
3760 * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
3761 Reported by Muraoka Taro <koron@tka.att.ne.jp>.
3763 2003-05-19 Bruno Haible <bruno@clisp.org>
3765 * windows/iconv.rc: Include <winver.h>.
3766 Reported by Perry Rapp.
3768 2003-05-18 Bruno Haible <bruno@clisp.org>
3770 * Version 1.9 released.
3772 2003-05-18 Bruno Haible <bruno@clisp.org>
3774 * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
3776 2003-05-18 Bruno Haible <bruno@clisp.org>
3778 * lib/Makefile.msvc (DEBUGFLAGS): New variable.
3779 (iconv.lib): Use it.
3780 * src/Makefile.msvc (DEBUGFLAGS): New variable.
3781 * tests/Makefile.msvc (DEBUGFLAGS): New variable.
3783 2003-05-17 Bruno Haible <bruno@clisp.org>
3785 * src/Makefile.msvc (libdir, datadir, localedir): New variables.
3786 (IIlibdir, IIdatadir, IIlocaledir): New variables.
3787 (CFLAGS): Define LOCALEDIR.
3788 (iconv_no_i18n.exe): New rule.
3789 (all): Depend on it.
3790 * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
3791 * tests/check-translit.bat: Likewise.
3793 2003-05-16 Bruno Haible <bruno@clisp.org>
3795 * lib/genaliases.c (main): Emit declarations for gperf-3.0.
3796 * Makefile.devel (lib/aliases.h): Remove gperf command line options;
3797 add new option "-m 10" for gperf-3.0.
3799 2003-05-12 Bruno Haible <bruno@clisp.org>
3801 * m4/error.m4: Update from gettext.
3803 2003-05-12 Bruno Haible <bruno@clisp.org>
3805 * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
3807 2003-05-12 Bruno Haible <bruno@clisp.org>
3809 * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
3812 2003-05-09 Bruno Haible <bruno@clisp.org>
3814 * srclib/error.c: Update from gnulib with modifications.
3815 * srclib/unlocked-io.h: New file, from gnulib.
3816 * m4/strerror_r.m4: New file, from gnulib.
3817 * m4/unlocked-io.m4: New file, from gnulib.
3818 * Makefile.devel (aclocal.m4): Depend on them.
3820 2003-05-08 Bruno Haible <bruno@clisp.org>
3822 * Makefile.msvc (IIPREFIX): New variable.
3823 * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
3824 * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
3825 IIincludedir): New variables.
3826 (INCLUDES): Add -I..\windows.
3827 (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
3829 Patches by Perry Rapp.
3831 2003-05-07 Bruno Haible <bruno@clisp.org>
3833 * README.woe32: Fix instructions for step 1.
3834 * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
3835 (strtoul.obj): Remove rule.
3836 Reported by Perry Rapp.
3838 2003-05-07 Bruno Haible <bruno@clisp.org>
3840 * Makefile.vms: New file.
3841 * lib/Makefile.vms: New file.
3842 * srclib/Makefile.vms: New file.
3843 * src/Makefile.vms: New file.
3844 * man/Makefile.vms: New file.
3845 * tests/Makefile.vms: New file.
3846 * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
3848 (all): Depend on them.
3850 2003-05-07 Bruno Haible <bruno@clisp.org>
3852 * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
3853 (findprog.obj): Remove rule.
3854 * src/Makefile.msvc (includedir): New variable.
3856 2003-05-06 Bruno Haible <bruno@clisp.org>
3858 * lib/translit.def: Upgrade to Unicode 4.0.
3860 2003-05-06 Bruno Haible <bruno@clisp.org>
3862 * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
3863 * srclib/Makefile.msvc (CFLAGS): Likewise.
3865 * srclib/Makefile.msvc (INCLUDES): Add -I.. .
3866 Reported by Perry Rapp.
3868 * Makefile.msvc (config.h): New rule.
3869 (all): Depend on it.
3870 (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
3871 Reported by Perry Rapp.
3873 2003-05-06 Bruno Haible <bruno@clisp.org>
3875 * autoconf/config.guess: Update to GNU version 2003-02-22.
3876 * autoconf/config.sub: Likewise.
3878 2003-05-06 Bruno Haible <bruno@clisp.org>
3880 * m4/lib-link.m4: Update from GNU gettext.
3881 * autoconf/config.rpath: Update from GNU gettext.
3883 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
3884 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
3886 * m4/gettext.m4: Update from GNU gettext.
3887 * m4/nls.m4: Update from GNU gettext.
3888 * m4/po.m4: Update from GNU gettext.
3889 * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
3891 2003-04-12 Bruno Haible <bruno@clisp.org>
3893 Support for OpenVMS 7.3.
3894 * lib/iconv.c (USE_OSF1): Define also on VMS.
3896 2003-04-12 Bruno Haible <bruno@clisp.org>
3898 Better support for FreeBSD.
3899 * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
3900 aliases, for compatibility with earlier FreeBSD iconv implementation
3901 by Konstantin Chuguev.
3902 * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
3904 * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
3906 2003-04-12 Bruno Haible <bruno@clisp.org>
3908 * configure.in (mandir): Change default value.
3909 * Makefile.in (datadir): New variable.
3910 (install, installdirs, uninstall): Pass datadir to po and man
3912 * Makefile.os2 (datadir): New variable.
3913 (mandir): Use it instead of prefix.
3914 (install, uninstall): Pass datadir to man directory.
3915 * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
3916 * man/Makefile.in (datadir): New variable.
3917 (docdir): Use it instead of prefix.
3918 (install, installdirs): Update.
3919 * man/Makefile.os2 (datadir): New variable.
3920 (mandir): Use it instead of prefix.
3921 * man/Makefile.msvc (datadir): New variable.
3922 (mandir, docdir): Use it instead of prefix.
3923 (install, installdirs): Update.
3925 2003-04-06 Bruno Haible <bruno@clisp.org>
3927 Make it possible to build with or without libintl support on Woe32.
3928 * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
3929 * Makefile.msvc (NO_NLS): New variable.
3930 * srclib/Makefile.msvc (NO_NLS): New variable.
3931 (CFLAGS, INCLUDES): Use them.
3932 * src/Makefile.msvc (NO_NLS): New variable.
3933 (NLSFLAGS, INCINTL, LIBINTL): New variables.
3934 (CFLAGS, INCLUDES, iconv.exe): Use them.
3936 2003-04-12 Bruno Haible <bruno@clisp.org>
3938 * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
3939 variants transliteration failed with RET_ILUNI, don't return
3941 Reported by the FreeBSD porters.
3943 2003-04-06 Bruno Haible <bruno@clisp.org>
3945 * srclib/binary-io.h: New file, from GNU gettext.
3946 * src/iconv.c: Include it.
3947 (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
3949 2003-04-05 Bruno Haible <bruno@clisp.org>
3951 Support for relocatable installation.
3952 * m4/alloca.m4: New file, from GNU gettext.
3953 * m4/canonicalize.m4: New file, from GNU gettext.
3954 * m4/error.m4: New file, from GNU gettext.
3955 * m4/onceonly.m4: New file, from GNU gettext.
3956 * m4/pathmax.m4: New file, from GNU gettext.
3957 * m4/relocatable.m4: New file, from GNU gettext.
3958 * m4/setenv.m4: New file, from GNU gettext.
3959 * m4/stdbool.m4: New file, from GNU gettext.
3960 * m4/strerror.m4: New file, from GNU gettext.
3961 * m4/xreadlink.m4: New file, from GNU gettext.
3962 * autoconf/config.libpath: New file, from GNU gettext.
3963 * autoconf/install-reloc: New file, from GNU gettext.
3964 * autoconf/reloc-ldflags: New file, from GNU gettext.
3965 * autoconf/missing: New file, from GNU automake 1.7.3.
3966 * lib/relocatable.h: New file, from GNU gettext.
3967 * lib/relocatable.c: New file, from GNU gettext.
3968 * srclib/alloca.c: New file, from GNU gettext.
3969 * srclib/alloca_.h: New file, from GNU gettext.
3970 * srclib/canonicalize.c: New file, from GNU gettext.
3971 * srclib/canonicalize.h: New file, from GNU gettext.
3972 * srclib/error.c: New file, from GNU gettext.
3973 * srclib/error.h: New file, from GNU gettext.
3974 * srclib/exit.h: New file, from GNU gettext.
3975 * srclib/gettext.h: New file, from GNU gettext.
3976 * srclib/memmove.c: New file, from GNU gettext.
3977 * srclib/pathmax.h: New file, from GNU gettext.
3978 * srclib/progname.c: New file, from GNU gettext.
3979 * srclib/progname.h: New file, from GNU gettext.
3980 * srclib/progreloc.c: New file, from GNU gettext.
3981 * srclib/relocatable.c: New file, from GNU gettext.
3982 * srclib/relocatable.h: New file, from GNU gettext.
3983 * srclib/relocwrapper.c: New file, from GNU gettext.
3984 * srclib/setenv.c: New file, from GNU gettext.
3985 * srclib/setenv.h: New file, from GNU gettext.
3986 * srclib/stdbool.h.in: New file, from GNU gettext.
3987 * srclib/strerror.c: New file, from GNU gettext.
3988 * srclib/unsetenv.c: New file, from GNU gettext.
3989 * srclib/xmalloc.c: New file, from GNU gettext.
3990 * srclib/xmalloc.h: New file, from GNU gettext.
3991 * srclib/xreadlink.c: New file, from GNU gettext.
3992 * srclib/xreadlink.h: New file, from GNU gettext.
3993 * srclib/xstrdup.c: New file, from GNU gettext.
3994 * srclib/Makefile.am: New file.
3995 * srclib/Makefile.msvc: New file.
3996 * windows/alloca.h: New file, from GNU gettext.
3997 * windows/stdbool.h: New file, from GNU gettext.
3998 * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
3999 Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
4000 string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
4001 AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
4002 gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
4003 gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
4004 * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
4005 HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
4006 localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
4008 * lib/Makefile.in (DEFS): New variable.
4009 (SOURCES): Add localcharset.c and relocatable.c.
4010 (OBJECTS): Add localcharset.lo and relocatable.lo.
4011 (LIBCHARSET_OBJECTS): Remove variable.
4012 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
4013 libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
4014 (iconv.lo): Use $(DEFS).
4015 (localcharset.lo, relocatable.lo): New rules.
4016 * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
4017 ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
4018 set_relocation_prefix, relocate. Remove $(PICFLAGS).
4019 (INCLUDES): Simplify.
4020 (SOURCES): Remove variable.
4021 (OBJECTS): Add localcharset.obj and relocatable.obj.
4022 (LIBCHARSET_OBJECTS): Remove variable.
4023 (iconv.obj): Add $(PICFLAGS).
4024 (localcharset.obj, relocatable.obj): New rules.
4025 (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
4026 * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
4027 * src/gettext.h: Remove file.
4028 * src/iconv.c: Include progname.h and relocatable.h.
4029 (ICONV_CONST): Define to const if the system has no iconv.
4030 (main): Invoke set_program_name. Relocate LOCALEDIR.
4031 * src/Makefile.in (top_srcdir): New variable.
4032 (INCLUDES): Add .. and ../srclib.
4033 (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
4034 (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
4035 (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
4036 RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
4038 (iconv): Use $(iconv_LDFLAGS).
4039 (install): Use $(INSTALL_PROGRAM_ENV).
4040 (distclean): Drop removing config.h.
4041 * src/Makefile.msvc (INCLUDES): Add .., simplify.
4042 * tests/Makefile.msvc (INCLUDES): Simplify.
4043 * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
4044 (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
4045 (all): Depend on them.
4046 (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
4047 m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
4048 m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
4049 (lib/config.h.msvc): Additional processing.
4050 * Makefile.in (all, install, installdirs, uninstall, check): Recurse
4052 (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
4054 (distclean, maintainerclean): Remove also config.h and some stamps.
4055 * Makefile.msvc (all, install, installdirs, uninstall, check,
4056 mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
4057 * INSTALL.generic: Document --enable-relocatable and
4058 --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
4059 LDFLAGS. The lib-link.m4 macros make this unnecessary.
4061 2003-04-05 Bruno Haible <bruno@clisp.org>
4063 * configure.in: Bump version number to 1.9.
4064 * include/iconv.h.in (_LIBICONV_VERSION): Bump.
4065 * windows/iconv.rc: Bump version number.
4066 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
4068 2003-04-05 Bruno Haible <bruno@clisp.org>
4070 * Makefile.msvc (PREFIX): New variable.
4072 (distclean, maintainer-clean): Drop Unix specific removals.
4073 * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
4075 (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
4076 (clean): Drop Unix specific removal.
4077 * src/Makefile.msvc (PREFIX): New variable.
4079 (clean): Drop Unix specific removal.
4080 (distclean): Likewise.
4081 * tests/Makefile.msvc (clean): Drop Unix specific removal.
4082 (distclean): Likewise.
4084 2003-04-05 Bruno Haible <bruno@clisp.org>
4086 * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
4088 2003-04-05 Bruno Haible <bruno@clisp.org>
4090 * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
4091 CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
4093 * m4/gettext.m4: Update from GNU gettext.
4094 * m4/iconv.m4: Update from GNU gettext.
4095 * m4/lcmessage.m4: Update from GNU gettext.
4096 * m4/progtest.m4: Update from GNU gettext.
4097 * m4/libtool.m4: Update from GNU gettext.
4098 2003-02-16 Bruno Haible <bruno@clisp.org>
4099 Workaround autoconf >= 2.52 breakage.
4100 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
4101 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
4102 * autoconf/ltmain.sh: Update from GNU gettext.
4103 2003-02-18 Bruno Haible <bruno@clisp.org>
4104 Fix the 2002-09-16 fix.
4105 * ltmain.sh (install): If "ln -s -f" fails (this is the case
4106 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
4108 2003-04-05 Bruno Haible <bruno@clisp.org>
4110 Start using automake.
4111 * configure.in: Add AM_INIT_AUTOMAKE invocation.
4112 (PACKAGE, VERSION): Remove.
4113 Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
4114 Use AC_PROG_LN_S instead of CL_PROG_LN_S.
4115 Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
4116 Reorder so that AC_CANONICAL_HOST comes early but still after
4118 * m4/ranlib.m4: Remove file.
4119 * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
4120 * Makefile.devel (CLISP_DIR): Comment out.
4121 (AUTOCONF_FILES): Change to aclocal.m4.
4122 (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
4123 (configure.in): Drop --include option.
4125 2003-03-17 Bruno Haible <bruno@clisp.org>
4127 Improved MSVC support.
4128 * Makefile.msvc (prefix): Use less Unixy value.
4129 (local_prefix): Remove variable.
4130 (libdir, includedir, mandir): Use backslashes.
4131 (bindir, datadir, localedir, docdir): New variables.
4132 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
4133 (all): Recurse into po/ and man/.
4134 (install, installdirs, uninstall): Rewritten.
4135 (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
4137 * lib/Makefile.msvc (prefix): Use less Unixy value.
4138 (local_prefix): Remove variable.
4139 (libdir): Use backslashes.
4140 (bindir): New variable.
4141 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
4142 (RESOURCES): Enable iconv.res.
4143 (install, installdirs, uninstall): New rules.
4144 (clean): Remove config.h.
4145 (distclean): Don't remove config.h here.
4146 * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
4147 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
4148 (install, installdirs, uninstall): New rules.
4149 * man/Makefile.msvc: New file.
4150 * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
4151 * Makefile.devel (all): Depend on po/Makefile.msvc.
4152 (po/Makefile.msvc): New rule.
4153 * windows/iconv.rc: Update.
4154 * README.woe32: Mention automatic installation command.
4156 Rename libcharset.h to localcharset.h.
4157 * lib/iconv.c: Include localcharset.h, not libcharset.h.
4158 * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
4159 (all, install): Update dependencies.
4160 (all): Create lib/localcharset.h, not lib/libcharset.h.
4161 (mostlyclean, clean, distclean, maintainer-clean): Remove
4162 lib/localcharset.h, not lib/libcharset.h.
4163 * djgpp/README.in, djgpp/README: Update.
4164 * djgpp/config.bat: Update.
4165 * djgpp/config.sed: Update.
4166 * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
4168 2003-01-31 Bruno Haible <bruno@clisp.org>
4170 * src/Makefile.in (all): Don't do the chmod if it has already been
4173 2003-01-31 Bruno Haible <bruno@clisp.org>
4175 * lib/loop_unicode.h (unicode_transliterate): Enable recursive
4176 transliteration. Idea from Perry Rapp.
4177 * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
4178 Change element type of translit_data to 'unsigned int'.
4179 * lib/translit.def: Many new transliterations, mostly taken from glibc.
4180 * lib/translit.h: Regenerated.
4181 * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
4182 * tests/Makefile.in (check): Add Translit1 check.
4183 * tests/Makefile.msvc (check): Likewise.
4184 * tests/Makefile.os2 (check): Likewise.
4185 * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
4186 improved transliteration cannot do.
4188 2003-02-14 Bruno Haible <bruno@clisp.org>
4190 * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
4191 (configure): Update rule.
4193 2003-01-03 Albert Chin <libtool@thewrittenword.com>
4195 * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
4196 dependency_libs variable directly down to the linker.
4197 Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
4199 2003-01-01 Bruno Haible <bruno@clisp.org>
4201 * src/Makefile.in (install): Use libiconv.la in ../lib, not in
4202 $(libdir), so that installing with DESTDIR works.
4203 Reported by Michael Adams <michael@michaeladams.org>.
4205 2003-01-01 Bruno Haible <bruno@clisp.org>
4207 * Makefile.in (mkinstalldirs): New variable.
4208 (install-lib, install, installdirs): Use it instead of mkdir.
4209 * lib/Makefile.in (mkinstalldirs): New variable.
4210 (install-lib, install, installdirs): Use it instead of mkdir.
4211 * man/Makefile.in (mkinstalldirs): New variable.
4212 (install, installdirs): Use it instead of mkdir.
4213 * src/Makefile.in (mkinstalldirs): New variable.
4214 (install, installdirs): Use it instead of mkdir.
4216 2002-09-27 Bruno Haible <bruno@clisp.org>
4218 * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
4220 2002-11-07 Bruno Haible <bruno@clisp.org>
4222 * m4/libtool.m4: Upgrade to libtool-1.4.3.
4223 * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
4225 2002-07-14 Bruno Haible <bruno@clisp.org>
4227 * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
4229 2002-06-12 Bruno Haible <bruno@clisp.org>
4231 * configure.in: Use new AC_* names of libtool macros. Invoke
4232 AC_LIBTOOL_WIN32_DLL.
4234 2002-12-19 Bruno Haible <bruno@clisp.org>
4236 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
4237 Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
4239 2002-11-07 Bruno Haible <bruno@clisp.org>
4241 Make "make install" without prior "make" work.
4242 * Makefile.in (lib/libcharset.h): New rule.
4243 (all, install): Depend on it.
4244 Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
4246 2002-10-28 Bruno Haible <bruno@clisp.org>
4248 * man/Makefile.in (install): Change directory back to the working
4249 directory, so that install-sh (which may be a relative pathname) is
4250 found in the right place.
4252 2002-09-16 Bruno Haible <bruno@clisp.org>
4254 * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
4255 "rm -f && ln -s" to make a symlink for a shared library.
4256 Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4258 2002-09-02 Bruno Haible <bruno@clisp.org>
4260 * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
4262 2002-08-16 Bruno Haible <bruno@clisp.org>
4264 * src/iconv.c (main): Perform fflush before testing ferror(stdout).
4266 2002-05-29 Bruno Haible <bruno@clisp.org>
4268 * Version 1.8 released.
4270 2002-05-26 Bruno Haible <bruno@clisp.org>
4272 * lib/c99.h: New file.
4273 * lib/converters.h: Include it.
4274 * lib/encodings.def (C99): New encoding.
4275 * README, man/iconv_open.3: Document C99 encoding.
4277 2002-05-26 Bruno Haible <bruno@clisp.org>
4279 * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
4281 (java_wctomb): Produce 12-byte sequences for non-BMP characters.
4283 2002-05-29 Bruno Haible <bruno@clisp.org>
4285 Fix installation of iconv program when linked with a libintl that was
4286 built against an earlier libiconv.
4287 * src/iconv.c: Conditionally disable NLS.
4288 * src/iconv_no_i18n.c: New file.
4289 * src/Makefile.in (libdir): New variable.
4290 (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
4291 directory writable, so iconv executable can be created during "make
4293 (iconv): Remove rule.
4294 (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
4295 (install): Link iconv now, after the new libiconv.so is installed.
4296 (clean): Also remove iconv_no_i18n.
4297 * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
4299 * tests/check-stateful: Use iconv_no_i18n, not iconv.
4300 * tests/check-translit: LIkewise.
4301 * tests/check-translitfailure: Likewise.
4303 2002-05-29 Bruno Haible <bruno@clisp.org>
4305 * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
4306 * m4/install.m4: Remove file.
4307 * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
4309 2002-05-24 Bruno Haible <bruno@clisp.org>
4311 * lib/jisx0213.h: Use 'inline' only conditionally.
4313 2002-05-18 Bruno Haible <bruno@clisp.org>
4315 * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
4316 README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
4317 Bump version number.
4318 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
4320 2002-02-06 Bruno Haible <bruno@clisp.org>
4322 * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
4324 2002-02-02 Bruno Haible <bruno@clisp.org>
4326 * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
4328 2001-11-03 Bruno Haible <haible@clisp.cons.org>
4330 * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
4331 "make install" succeeds.
4333 2002-05-18 Bruno Haible <bruno@clisp.org>
4335 * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
4336 from the command line. Needed to ensure that the new libiconv version
4339 2002-05-14 Bruno Haible <bruno@clisp.org>
4341 Implement and document CP853, TDS565, RISCOS-LATIN1.
4342 * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
4343 (cp853.h, tds565.h, riscos1.h): New rules.
4344 * lib/cp853.h: New file.
4345 * lib/tds565.h: New file.
4346 * lib/riscos1.h: New file.
4347 * lib/converters.h: Include them.
4348 * lib/encodings_dos.def (CP853): New encoding.
4349 * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
4350 * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
4351 * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
4353 * tests/Makefile.msvc (check): Check CP853.
4354 * tests/CP853.TXT: New file.
4355 * tests/TDS565.TXT: New file.
4356 * tests/RISCOS-LATIN1.TXT: New file.
4358 * lib/cp860.h (cp860_wctomb): Optimize.
4360 2002-05-12 Bruno Haible <bruno@clisp.org>
4362 * tools/Makefile (ksc5601.h): Add two extra characters.
4363 * lib/ksc5601.h: Regenerated.
4364 * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
4365 * tests/CP949.TXT: Likewise.
4366 * tests/JOHAB.TXT: Likewise.
4368 2002-05-12 Bruno Haible <bruno@clisp.org>
4370 * README: Mention extra encodings.
4371 * man/iconv_open.3: Likewise. Improve formatting in text and html
4374 2002-05-12 Bruno Haible <bruno@clisp.org>
4376 * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
4378 2002-05-12 Bruno Haible <bruno@clisp.org>
4380 * Makefile.devel (AUTOCONF): New variable.
4381 (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
4382 (configure): Use the AUTOCONF variable.
4383 * autoconf/autoconf: Remove file.
4384 * autoconf/autoconf.m4: Remove file.
4385 * autoconf/autoconf.m4f: Remove file.
4387 2002-05-12 Bruno Haible <bruno@clisp.org>
4389 * tools/JISX0213.TXT: New file.
4390 * tools/cjk_tab_to_h.c (do_jisx0213): New function.
4391 (main): Accept "jisx0213".
4392 * tools/Makefile (all): Add jisx0213.h.
4393 (jisx0213.h): New rule.
4394 * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
4395 * lib/euc_jisx0213.h: New file.
4396 * lib/shift_jisx0213.h: New file.
4397 * lib/iso2022_jp3.h: New file.
4398 * lib/converters.h: Include them.
4399 * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
4400 ISO-2022-JP-3): New encodings.
4401 * tests/EUC-JISX0213.TXT: New file.
4402 * tests/SHIFT_JISX0213.TXT: New file.
4403 * tests/ISO-2022-JP-3-snippet: New file.
4404 * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
4405 * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
4406 SHIFT_JISX0213, ISO-2022-JP-3.
4407 * tests/check-stateless: Add support for encodings which contain
4408 precomposed Unicode characters, by eliminating precomposed characters
4409 before the comparison.
4410 * tests/table-from.c (main): Fix usage message.
4411 * tests/table-to.c (main): Make it work for encodings for which the
4412 "to" direction is stateful.
4414 2002-05-09 Bruno Haible <bruno@clisp.org>
4416 New configure option --enable-extra-encodings.
4417 * lib/encodings_extra.def: New file.
4418 * lib/converters.h: Handle USE_EXTRA.
4419 * lib/genaliases2.c (main): Handle USE_EXTRA.
4420 * lib/genflags.c: Define USE_EXTRA.
4421 (main): Include encodings_extra.def.
4422 * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
4424 * lib/config.h.in (ENABLE_EXTRA): New macro.
4425 * configure.in: Accept option --enable-extra-encodings.
4426 * Makefile.devel (all): Depend on lib/aliases_extra.h.
4427 (lib/aliases_extra.h): New rule.
4428 (lib/flags.h): Depend on lib/encodings_extra.def.
4429 * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
4431 (check): Invoke check-extra.
4432 * tests/Makefile.msvc (check): Also check the DOS encodings.
4434 Support for testing the AIX encodings.
4435 * tests/CP856.TXT: New file.
4436 * tests/CP922.TXT: New file.
4437 * tests/CP1046.TXT: New file.
4438 * tests/CP1124.TXT: New file.
4439 * tests/CP1129.TXT: New file.
4440 * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
4441 * tests/CP1162.TXT: New file.
4442 * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
4444 Support for testing the OSF/1 encodings.
4445 * tests/DEC-KANJI.TXT: New file.
4446 * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
4448 Support for testing the DOS encodings.
4449 * tests/CP437.TXT: New file.
4450 * tests/CP737.TXT: New file.
4451 * tests/CP775.TXT: New file.
4452 * tests/CP852.TXT: New file.
4453 * tests/CP855.TXT: New file.
4454 * tests/CP857.TXT: New file.
4455 * tests/CP858.TXT: New file.
4456 * tests/CP860.TXT: New file.
4457 * tests/CP861.TXT: New file.
4458 * tests/CP863.TXT: New file.
4459 * tests/CP864.TXT: New file.
4460 * tests/CP865.TXT: New file.
4461 * tests/CP869.TXT: New file.
4462 * tests/CP1125.TXT: New file.
4464 2002-05-09 Bruno Haible <bruno@clisp.org>
4466 Implement more ASCII compatible DOS encodings.
4467 * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
4468 (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
4469 * lib/cp737.h: New file.
4470 * lib/cp858.h: New file.
4471 * lib/cp860.h: New file.
4472 * lib/cp863.h: New file.
4473 * lib/converters.h: Include them.
4474 * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
4476 2002-05-09 Bruno Haible <bruno@clisp.org>
4478 Implement new ASCII compatible encodings from IBM.
4479 * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
4480 (cp1161.h, cp1162.h, cp1163.h): New rules.
4481 * lib/cp1161.h: New file.
4482 * lib/cp1162.h: New file.
4483 * lib/cp1163.h: New file.
4484 * lib/converters.h: Include them.
4485 * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
4487 2002-05-09 Bruno Haible <bruno@clisp.org>
4489 Implement and document KOI8-T.
4490 * tools/Makefile (ALL): Add koi8_t.h.
4491 (koi8_t.h): New rule.
4492 * lib/koi8_t.h: New file.
4493 * lib/converters.h: Include it.
4494 * lib/encodings.def (KOI8-T): New encoding.
4495 * README, man/iconv_open.3: Add KOI8-T.
4496 * tests/Makefile.in (tests): Check KOI8-T.
4497 * tests/Makefile.os2 (tests): Likewise.
4498 * tests/Makefile.msvc (tests): Likewise.
4499 * tests/KOI8-T.TXT: New file.
4501 2002-05-09 Bruno Haible <bruno@clisp.org>
4503 * tools/8bit_tab_to_h.c (main): Update copyright year.
4504 * tools/cjk_variants.c (main): Likewise.
4506 2002-05-08 Bruno Haible <bruno@clisp.org>
4508 * README.woe32: Renamed from README.win32.
4510 2002-05-08 Bruno Haible <bruno@clisp.org>
4512 * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
4513 because the Woe32 consoles use them.
4515 2002-05-04 Bruno Haible <bruno@clisp.org>
4517 * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
4518 without writing an output character, restore cd->istate to its value
4519 before the xxx_mbtowc call. Otherwise we lose some characters during
4520 CP1255/CP1258/TCVN to Unicode conversion.
4521 (unicode_loop_reset): Likewise for the xxx_flushwc call.
4522 * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
4523 files large enough to test against the bug.
4524 * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
4525 * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
4527 2002-04-28 Bruno Haible <bruno@clisp.org>
4529 * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
4530 * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
4531 * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
4532 * lib/armscii_8.h: Regenerated.
4534 2002-04-28 Bruno Haible <bruno@clisp.org>
4536 * src/iconv.c: Include gettext.h.
4538 (usage, print_version, convert, main): Internationalize.
4539 (main): Call setlocale, bindtextdomain, textdomain.
4540 * src/gettext.h: New file, from GNU gettext 0.11.2.
4541 * src/config.h.in: New file, needed for ENABLE_NLS.
4542 * src/Makefile.in (datadir, localedir): New variables.
4543 (iconv): Link with @LTLIBINTL@.
4544 (iconv.@OBJEXT@): Define LOCALEDIR.
4545 (distclean): Remove config.h.
4546 * po: New directory.
4547 * Makefile.in (all, install, installdirs, uninstall, check,
4548 mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
4550 * autoconf/mkinstalldirs: New file, from automake-1.5.
4551 * ABOUT-NLS: New file, from GNU gettext 0.11.2.
4552 * m4/codeset.m4: New file, from GNU gettext 0.11.2.
4553 * m4/gettext.m4: New file, from GNU gettext 0.11.2.
4554 * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
4555 * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
4556 * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
4557 * m4/progtest.m4: New file, from GNU gettext 0.11.2.
4558 * configure.in: Require autoconf-2.52, needed for multiple config.h.in
4559 files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
4560 (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
4561 * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
4563 2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
4565 * configure.in (AC_OUTPUT): Add po/Makefile.in.
4567 2002-04-28 Bruno Haible <bruno@clisp.org>
4569 * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
4570 * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
4571 * m4/general.m4: New file, from GNU clisp.
4572 * m4/proto.m4: New file, from GNU clisp.
4573 * m4/ranlib.m4: New file, from GNU clisp.
4574 * m4/install.m4: New file, from GNU clisp.
4575 * m4/cp.m4: New file, from GNU clisp.
4576 * m4/ln.m4: New file, from GNU clisp.
4577 * m4/endian.m4: New file, from GNU clisp.
4578 * m4/iconv.m4: New file, from GNU gettext 0.11.2.
4579 * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
4580 * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
4581 * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
4582 * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
4583 * m4/libtool.m4: New file, based on libtool-1.4.2.
4584 * Makefile.devel (ACLOCAL): Remove variable.
4585 (ACSELECT): Remove variable.
4586 (OTHERMACROS): Remove variable.
4587 (m4/*.m4): New rules.
4588 (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
4589 * configure.in: Invoke AM_ICONV instead of CL_ICONV.
4591 2002-04-06 Bruno Haible <bruno@clisp.org>
4593 Upgrade to Unicode 3.2.
4594 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
4595 (compact_large_charset2uni): Add an argument. Determine optimal shift.
4596 Copy modified enc->charset2uni table.
4597 (output_charset2uni): Deal with shift other than 8. Copy encoding, so
4598 as to not disturb subsequent output_uni2charset[_sparse] call.
4599 * lib/hkscs.h: Regenerated.
4600 * tests/BIG5-HKSCS.TXT: Update.
4601 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
4603 2002-04-06 Bruno Haible <bruno@clisp.org>
4605 Upgrade to Unicode 3.2.
4606 * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
4607 cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4608 cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
4609 CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
4610 * lib/cns11643_3.h: Regenerated.
4611 * lib/cns11643_4a.h: Regenerated.
4612 * lib/cns11643_4b.h: Regenerated.
4613 * lib/cns11643_5.h: Regenerated.
4614 * lib/cns11643_6.h: Regenerated.
4615 * lib/cns11643_7.h: Regenerated.
4616 * lib/cns11643_15.h: Regenerated.
4617 * lib/cns11643_inv.h: Regenerated.
4618 * tests/EUC-TW.TXT: Update.
4620 2002-01-17 Bruno Haible <bruno@clisp.org>
4622 * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
4623 (tcvn_mbtowc): Small optimization.
4625 2002-01-13 Bruno Haible <bruno@clisp.org>
4627 New options -l, -c, -s.
4628 * src/iconv.c (discard_unconvertible, silent): New variables.
4629 (usage): Document options -l, -c, -s.
4630 (print_one): New function.
4631 (convert): If silent is true, don't print error messages about the
4632 conversion to stderr. If discard_unconvertible is true, set the
4633 iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
4634 return the same return code as when discard_unconvertible is false.
4635 (main): Accept options -l, -c, -s. Implement option -l.
4636 * man/iconv.1: Document options -l, -c, -s.
4638 2002-01-13 Bruno Haible <bruno@clisp.org>
4640 Support for "iconv -c".
4641 * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
4642 (ICONV_SET_DISCARD_ILSEQ): Likewise.
4643 * lib/converters.h (struct conv_struct): New field discard_ilseq.
4644 * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
4645 has an "//IGNORE" suffix, and to false otherwise.
4646 (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
4647 * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
4648 true, skip one input character instead of returning EILSEQ.
4649 (unicode_loop_reset): Likewise.
4650 * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
4651 (wchar_to_loop_convert): Likewise.
4653 2002-01-13 Bruno Haible <bruno@clisp.org>
4655 Support for "iconv -l".
4656 * include/iconv.h.in (iconvlist): New declaration.
4657 * Makefile.devel (lib/aliases.h): Change gperf options.
4658 * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
4661 2002-01-06 Bruno Haible <bruno@clisp.org>
4663 * lib/loop_unicode.h (unicode_transliterate): If the transliteration
4664 fails due to limited output encoding, return RET_ILUNI, not
4665 RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4666 * tests/check-translitfailure: New file.
4667 * tests/TranslitFail1.ISO-8859-1: New file.
4668 * tests/Makefile.in (check): Call check-translitfailure.
4670 2001-12-15 Bruno Haible <bruno@clisp.org>
4672 * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
4673 Shift_JIS characters 0x5C and 0x7E.
4674 * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
4676 2001-12-05 Bruno Haible <bruno@clisp.org>
4678 * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
4679 endless loop if locale_charset() returns the empty string.
4680 * README, man/iconv_open.3: Add the empty encoding name.
4682 2001-11-10 Bruno Haible <haible@clisp.cons.org>
4684 * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
4687 2001-10-23 Bruno Haible <haible@clisp.cons.org>
4689 * tools/Makefile (cp1125.h): New target.
4691 * lib/cp1125.h: New file.
4692 * lib/converters.h: Include it.
4693 * lib/encodings_dos.def (CP1125): New encoding.
4695 2001-09-08 Bruno Haible <haible@clisp.cons.org>
4697 * autoconf/eilseq.m4: New file.
4698 * Makefile.devel (OTHERMACROS): Add it.
4699 * configure.in: Call AC_EILSEQ.
4700 * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
4702 2001-08-25 Bruno Haible <haible@clisp.cons.org>
4704 Upgrade to autoconf-2.52.
4705 * autoconf/autoconf: Upgrade to autoconf-2.52.
4706 * autoconf/acgeneral.m4: Remove file.
4707 * autoconf/acspecific.m4: Remove file.
4708 * autoconf/autoconf.m4f: New file, from autoconf-2.52.
4709 * autoconf/aclocal.m4: Require autoconf-2.52.
4710 (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
4711 AC_CANONICAL_HOST does it itself. Add $SHELL in front of
4712 $ac_config_guess and $ac_config_sub.
4713 * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
4715 (configure): Use autoconf options -A, -l instead of -m.
4716 * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
4718 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4720 * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
4721 (AC_LANG_EXTERN): Move to aclocal.m4.
4722 * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
4723 (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
4724 (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
4726 2001-08-05 Bruno Haible <haible@clisp.cons.org>
4728 Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
4729 * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
4731 * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
4732 between sources and libs.
4733 (libiconv_plug_solaris.so) [GCC]: Likewise.
4734 (libiconv_plug_osf.so) [GCC]: Likewise.
4735 * src/Makefile.in (iconv.@OBJEXT@): New rule.
4736 (iconv): Depend on it.
4737 (clean): Erase *.@OBJEXT@, not *.o.
4738 * tests/Makefile.in (table-from.@OBJEXT@): New rule.
4739 (table-from): Depend on it.
4740 (table-to.@OBJEXT@): New rule.
4741 (table-to): Depend on it.
4742 (clean): Erase *.@OBJEXT@, not *.o.
4744 2001-07-28 Bruno Haible <haible@clisp.cons.org>
4746 * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
4747 * lib/iso8859_16.h: Regenerated.
4748 * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
4750 2001-07-17 Bruno Haible <haible@clisp.cons.org>
4752 * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
4754 2001-07-03 Bruno Haible <haible@clisp.cons.org>
4756 * configure.in: Also check for mbsinit.
4757 * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
4758 Needed for SCO 3.2v5.0.2.
4760 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4762 * Version 1.7 released.
4764 2001-06-27 Bruno Haible <haible@clisp.cons.org>
4766 * INSTALL.generic (Particular Systems): Generalize section about
4767 /usr/local to "most systems".
4769 * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
4770 Solaris cc destroys iconv.o and iconv.lo while building
4771 libiconv_plug_solaris.so.
4772 (clean): Remove so_locations, left there by the OSF/1 linker.
4774 * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
4776 * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
4779 * tests/table-from.c: Include string.h.
4780 * tests/table-to.c: Likewise.
4782 2001-06-26 Bruno Haible <haible@clisp.cons.org>
4784 * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
4785 (jisx0212.h): Replace U+007E with U+FF5E.
4786 * lib/jisx0208.h: Regenerated.
4787 * lib/jisx0212.h: Regenerated.
4788 * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
4789 * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
4790 * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
4791 * tests/CP932.TXT: Likewise.
4792 * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
4794 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4796 * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
4798 * src/Makefile.msvc (iconv.exe): Likewise.
4799 * src/Makefile.os2 (iconv.exe): Likewise.
4800 * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
4801 (libiconv_plug_solaris.so): Likewise.
4802 (libiconv_plug_osf.so): Likewise.
4803 (iconv.lo): Likewise.
4804 * lib/Makefile.msvc (iconv.obj): Likewise.
4805 * lib/Makefile.os2 (iconv.obj): Likewise.
4806 * tests/Makefile.in (table-from, table-to): Likewise.
4807 * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
4808 * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
4809 (genutf8.exe): Don't use $(INCLUDES).
4811 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4813 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
4814 Bump version number.
4815 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
4817 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4819 * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
4821 2001-06-25 Bruno Haible <haible@clisp.cons.org>
4823 * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
4825 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4827 * autoconf/ltmain.sh: Upgrade to libtool-1.4.
4828 * autoconf/ltconfig: Remove file.
4830 2001-06-08 Bruno Haible <haible@clisp.cons.org>
4832 * autoconf/config.guess: Update to GNU version 2001-05-11.
4833 * autoconf/config.sub: Likewise.
4835 2001-06-03 Bruno Haible <haible@clisp.cons.org>
4837 * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
4838 characters if they cannot be converted.
4839 (unicode_loop_reset): Likewise.
4840 * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
4841 STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
4842 STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
4844 (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
4846 (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
4847 If "ja", prefer conversion to Japanese character sets. If "zh",
4848 prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
4850 * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
4851 (RET_TOOSMALL): Change value from -1 to -2.
4852 * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
4853 return 0 written bytes.
4855 2001-06-06 Bruno Haible <haible@clisp.cons.org>
4857 * lib/encodings.def: Align with IANA character-set registry.
4858 (US-ASCII): Add alias "ANSI_X3.4-1986".
4859 (ISO-8859-14): Add alias "ISO-CELTIC".
4860 (JIS_X0208): Add alias "JIS_C6226-1983".
4861 (BIG5HKSCS): Add alias "BIG5-HKSCS".
4862 * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
4863 * tests/Makefile.in (check): Likewise.
4864 * tests/Makefile.os2 (check): Likewise.
4865 * tests/Makefile.msvc (check): Likewise.
4866 * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
4867 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
4868 BIG5HKSCS.IRREVERSIBLE.TXT.
4870 2001-06-02 Bruno Haible <haible@clisp.cons.org>
4872 * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
4873 (is_charset2uni_large, compact_large_charset2uni): New functions.
4874 (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
4875 (output_charset2uni): If mapping to more than the Unicode BMP,
4876 use an extra indirection to keep each value in 16 bits.
4877 (invert): Bump limit from U+10000 to U+30000.
4878 (output_uni2charset_dense): Likewise.
4879 (output_uni2charset_sparse): Likewise. If mapping to more than one
4880 CJK plane, use three bytes per value instead of two bytes.
4881 (byte_row_cns11643): Allow more than 3 CJK planes.
4882 (do_cns11643_only_uni2charset): Increase number of rows, to include
4883 plane 15. Remove plane bits hack.
4884 (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
4885 * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
4886 cns11643_6.h, cns11643_7.h, cns11643_15.h.
4887 (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
4889 (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
4890 cns11643_7.h, cns11643_15.h): New rules.
4891 (cns11643_inv.h): Change title.
4892 * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
4893 * lib/cns11643_3.h: Likewise.
4894 * lib/cns11643_4a.h: New file.
4895 * lib/cns11643_4b.h: New file.
4896 * lib/cns11643_4.h: New file.
4897 * lib/cns11643_5.h: New file.
4898 * lib/cns11643_6.h: New file.
4899 * lib/cns11643_7.h: New file.
4900 * lib/cns11643_15.h: New file.
4901 * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
4902 (cns11643_inv_wctomb): Return 3 bytes now.
4903 * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
4904 cns11643_7.h, cns11643_15.h.
4905 (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
4906 plane number starting at 1, not 0.
4907 * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
4909 * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
4911 (euc_tw_wctomb): Update for cns11643_wctomb change.
4912 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
4913 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
4915 (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
4916 Try CNS11643 planes 4,5,6,7 as well.
4917 * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
4918 * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
4921 2001-06-01 Bruno Haible <haible@clisp.cons.org>
4923 * tests/table-from.c (bmp_only): New variable.
4924 (ucs4_decode): If bmp_only, don't return characters outside Unicode
4926 (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
4927 a conversion line if ucs4_decode returns NULL.
4928 * tests/table-to.c (main): When testing encodings other than UTF-8 and
4929 GB18030, loop upto U+30000 instead of U+10000.
4931 2001-05-24 Bruno Haible <haible@clisp.cons.org>
4933 * lib/converters.h (mbtowc_funcs): Add flushwc member function.
4934 * lib/flushwc.h: New file.
4935 * lib/cp1255.h: Include flushwc.h.
4936 (cp1255_comp_table_data, cp1255_comp_table): New arrays.
4937 (cp1255_mbtowc): Compose base and combining characters.
4938 (cp1255_flushwc): New macro.
4939 * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
4940 * lib/cp1258.h: Include flushwc.h.
4941 (cp1258_mbtowc): Compose base and combining characters.
4942 (cp1258_flushwc): New macro.
4943 * lib/tcvn.h: Include flushwc.h.
4944 (tcvn_mbtowc): Compose base and combining characters.
4945 (tcvn_flushwc): New macro.
4946 * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
4947 from unicode_loop_convert.
4948 (unicode_loop_convert): Use unicode_transliterate.
4949 (unicode_loop_reset): Call xxx_flushwc and output the resulting
4951 * lib/encodings.def: Add xxx_flushwc member.
4952 * lib/encodings_aix.def: Likewise.
4953 * lib/encodings_dos.def: Likewise.
4954 * lib/encodings_local.def: Likewise.
4955 * lib/encodings_osf1.def: Likewise.
4956 * lib/genaliases.c: Add an argument to the DEFENCODING macro.
4957 * lib/genaliases2.c: Likewise.
4958 * lib/genflags.c: Likewise.
4959 * lib/iconv.c: Likewise.
4960 * tests/table-from.c (try): Reset the iconv descriptor before the main
4961 call, and flush it afterwards.
4962 (ucs4_decode): New function.
4963 (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
4964 * tests/CP1255-snippet: New file.
4965 * tests/CP1255-snippet.UTF-8: New file.
4966 * tests/CP1258-snippet: New file.
4967 * tests/CP1258-snippet.UTF-8: New file.
4968 * tests/TCVN-snippet: New file.
4969 * tests/TCVN-snippet.UTF-8: New file.
4970 * tests/Makefile.in (check): Check combining behaviour of CP1255,
4972 * tests/Makefile.msvc (check): Likewise.
4973 * tests/Makefile.os2 (check): Likewise.
4975 2001-05-22 Bruno Haible <haible@clisp.cons.org>
4977 * lib/converters.h (RET_ILUNI): New macro.
4978 (RET_ILSEQ): Change value to -1.
4979 (RET_TOOFEW): Change value.
4980 * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
4981 of 0. Update handling of xxx_mbtowc return value.
4982 * lib/genflags.c (emit_encoding): Likewise.
4983 * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
4984 * lib/armscii_8.h (armscii_8_wctomb): Likewise.
4985 * lib/big5.h (big5_wctomb): Likewise.
4986 * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
4987 * lib/ces_big5.h (ces_big5_wctomb): Likewise.
4988 * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
4989 * lib/cns11643.h (cns11643_wctomb): Likewise.
4990 * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
4991 * lib/cp437.h (cp437_wctomb): Likewise.
4992 * lib/cp775.h (cp775_wctomb): Likewise.
4993 * lib/cp850.h (cp850_wctomb): Likewise.
4994 * lib/cp852.h (cp852_wctomb): Likewise.
4995 * lib/cp855.h (cp855_wctomb): Likewise.
4996 * lib/cp856.h (cp856_wctomb): Likewise.
4997 * lib/cp857.h (cp857_wctomb): Likewise.
4998 * lib/cp861.h (cp861_wctomb): Likewise.
4999 * lib/cp862.h (cp862_wctomb): Likewise.
5000 * lib/cp864.h (cp864_wctomb): Likewise.
5001 * lib/cp865.h (cp865_wctomb): Likewise.
5002 * lib/cp866.h (cp866_wctomb): Likewise.
5003 * lib/cp869.h (cp869_wctomb): Likewise.
5004 * lib/cp874.h (cp874_wctomb): Likewise.
5005 * lib/cp922.h (cp922_wctomb): Likewise.
5006 * lib/cp932ext.h (cp932ext_wctomb): Likewise.
5007 * lib/cp932.h (cp932_wctomb): Likewise.
5008 * lib/cp936ext.h (cp936ext_wctomb): Likewise.
5009 * lib/cp949.h (cp949_wctomb): Likewise.
5010 * lib/cp950ext.h (cp950ext_wctomb): Likewise.
5011 * lib/cp950.h (cp950_wctomb): Likewise.
5012 * lib/cp1046.h (cp1046_wctomb): Likewise.
5013 * lib/cp1124.h (cp1124_wctomb): Likewise.
5014 * lib/cp1129.h (cp1129_wctomb): Likewise.
5015 * lib/cp1133.h (cp1133_wctomb): Likewise.
5016 * lib/cp1250.h (cp1250_wctomb): Likewise.
5017 * lib/cp1251.h (cp1251_wctomb): Likewise.
5018 * lib/cp1252.h (cp1252_wctomb): Likewise.
5019 * lib/cp1253.h (cp1253_wctomb): Likewise.
5020 * lib/cp1254.h (cp1254_wctomb): Likewise.
5021 * lib/cp1255.h (cp1255_wctomb): Likewise.
5022 * lib/cp1256.h (cp1256_wctomb): Likewise.
5023 * lib/cp1257.h (cp1257_wctomb): Likewise.
5024 * lib/cp1258.h (cp1258_wctomb): Likewise.
5025 * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
5026 * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
5027 * lib/euc_cn.h (euc_cn_wctomb): Likewise.
5028 * lib/euc_jp.h (euc_jp_wctomb): Likewise.
5029 * lib/euc_kr.h (euc_kr_wctomb): Likewise.
5030 * lib/euc_tw.h (euc_tw_wctomb): Likewise.
5031 * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
5032 * lib/gb12345.h (gb12345_wctomb): Likewise.
5033 * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
5034 * lib/gb18030.h (gb18030_wctomb): Likewise.
5035 * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
5036 * lib/gb2312.h (gb2312_wctomb): Likewise.
5037 * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
5038 * lib/gbk.h (gbk_wctomb): Likewise.
5039 * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
5040 * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
5041 * lib/hkscs.h (hkscs_wctomb): Likewise.
5042 * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
5043 * lib/hz.h (hz_wctomb): Likewise.
5044 * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
5045 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
5046 * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
5047 * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
5048 * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
5049 * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
5050 * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
5051 * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
5052 * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
5053 * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
5054 * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
5055 * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
5056 * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
5057 * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
5058 * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
5059 * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
5060 * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
5061 * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
5062 * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
5063 * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
5064 * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
5065 * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
5066 * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
5067 * lib/isoir165.h (isoir165_wctomb): Likewise.
5068 * lib/jisx0201.h (jisx0201_wctomb): Likewise.
5069 * lib/jisx0208.h (jisx0208_wctomb): Likewise.
5070 * lib/jisx0212.h (jisx0212_wctomb): Likewise.
5071 * lib/johab.h (johab_wctomb): Likewise.
5072 * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
5074 * lib/koi8_r.h (koi8_r_wctomb): Likewise.
5075 * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
5076 * lib/koi8_u.h (koi8_u_wctomb): Likewise.
5077 * lib/ksc5601.h (ksc5601_wctomb): Likewise.
5078 * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
5079 * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
5080 * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
5081 * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
5082 * lib/mac_greek.h (mac_greek_wctomb): Likewise.
5083 * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
5084 * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
5085 * lib/mac_roman.h (mac_roman_wctomb): Likewise.
5086 * lib/mac_romania.h (mac_romania_wctomb): Likewise.
5087 * lib/mac_thai.h (mac_thai_wctomb): Likewise.
5088 * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
5089 * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
5090 * lib/mulelao.h (mulelao_wctomb): Likewise.
5091 * lib/nextstep.h (nextstep_wctomb): Likewise.
5092 * lib/sjis.h (sjis_wctomb): Likewise.
5093 * lib/tcvn.h (tcvn_wctomb): Likewise.
5094 * lib/tis620.h (tis620_wctomb): Likewise.
5095 * lib/ucs2be.h (ucs2be_wctomb): Likewise.
5096 * lib/ucs2.h (ucs2_wctomb): Likewise.
5097 * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
5098 * lib/ucs2le.h (ucs2le_wctomb): Likewise.
5099 * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
5100 * lib/ucs4.h (ucs4_wctomb): Likewise.
5101 * lib/uhc_1.h (uhc_1_wctomb): Likewise.
5102 * lib/uhc_2.h (uhc_2_wctomb): Likewise.
5103 * lib/utf16be.h (utf16be_wctomb): Likewise.
5104 * lib/utf16.h (utf16_wctomb): Likewise.
5105 * lib/utf16le.h (utf16le_wctomb): Likewise.
5106 * lib/utf32be.h (utf32be_wctomb): Likewise.
5107 * lib/utf32.h (utf32_wctomb): Likewise.
5108 * lib/utf32le.h (utf32le_wctomb): Likewise.
5109 * lib/utf7.h (utf7_wctomb): Likewise.
5110 * lib/utf8.h (utf8_wctomb): Likewise.
5111 * lib/viscii.h (viscii_wctomb): Likewise.
5112 * tools/8bit_tab_to_h.c (main): Likewise.
5113 * tools/cjk_tab_to_h.c (output_uni2charset_dense,
5114 output_uni2charset_sparse, do_gb18030uni): Likewise.
5116 2001-05-19 Bruno Haible <haible@clisp.cons.org>
5118 * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
5119 (man/%.html): New rule.
5120 * man/Makefile.in (docdir, htmldir): New variables.
5121 (install, installdirs): Install the HTML formatted man pages in
5123 (uninstall): Uninstall them.
5125 2001-05-20 Bruno Haible <haible@clisp.cons.org>
5127 * lib/cp1255.h (cp1255_decomp_table): New array.
5128 (cp1255_comb_table): New array.
5129 (cp1255_wctomb): Decompose Unicode characters.
5130 * tests/CP1255.IRREVERSIBLE.TXT: New file.
5132 2001-05-13 Bruno Haible <haible@clisp.cons.org>
5134 * lib/vietcomb.h: New file.
5135 * lib/cp1258.h: Include it.
5136 (cp1258_comb_table): New array.
5137 (cp1258_wctomb): Decompose Unicode characters.
5138 * lib/tcvn.h: Include it.
5139 (tcvn_comb_table): New array.
5140 (tcvn_wctomb): Decompose Unicode characters.
5141 * tests/CP1258.IRREVERSIBLE.TXT: New file.
5142 * tests/TCVN.IRREVERSIBLE.TXT: New file.
5144 2001-05-06 Bruno Haible <haible@clisp.cons.org>
5146 * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
5147 (iconv.lib): Likewise.
5149 2001-05-06 Bruno Haible <haible@clisp.cons.org>
5151 * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
5152 (CPP): Remove variable.
5153 (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
5154 libiconv_plug_osf.so): Use LDFLAGS.
5155 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
5156 libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
5157 * lib/Makefile.msvc (CPP): Remove variable.
5158 * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
5159 (CPP): Remove variable.
5160 (iconv): Use CPPFLAGS and LDFLAGS.
5161 * src/Makefile.msvc (CPP): Remove variable.
5162 * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
5163 (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
5164 * tests/Makefile.msvc (CPP): Remove variable.
5166 2001-05-06 Bruno Haible <haible@clisp.cons.org>
5168 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
5169 gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
5171 2001-04-11 Bruno Haible <haible@clisp.cons.org>
5173 Implement and document UTF-32, UTF-32BE, UTF-32LE.
5174 * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
5175 * src/converters.h: Include them.
5176 * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
5177 * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
5178 * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
5179 * tests/Makefile.os2 (check): Likewise.
5180 * tests/Makefile.msvc (check): Likewise.
5181 * tests/UTF-32*snippet*: New files.
5183 * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
5184 (ucs4_wctomb): Allow any 31-bit codepoint.
5186 2001-04-11 Bruno Haible <haible@clisp.cons.org>
5188 * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
5189 unassigned code points.
5190 * tests/table-from.c (main); When dumping GB18030, don't print code
5191 points larger than U+FFFF.
5193 2001-03-30 Bruno Haible <haible@clisp.cons.org>
5195 * tools/Makefile (GB18030uni.TXT): Use a table source which includes
5196 the unassigned Unicode code points.
5197 * lib/gb18030uni.h: Update.
5198 (gb18030uni_ranges): Remove bitmap_offset field.
5199 (gb18030uni_bitmap): Remove array.
5200 (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
5201 (gb18030uni_wctomb): Likewise.
5202 * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
5203 (gb18030_wctomb): Likewise.
5205 2001-03-21 Bruno Haible <haible@clisp.cons.org>
5207 * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
5209 2001-03-21 Bruno Haible <haible@clisp.cons.org>
5211 * src/iconv.c (print_version): Now called GNU libiconv.
5213 2001-03-20 Bruno Haible <haible@clisp.cons.org>
5215 * README: This package is now called GNU libiconv.
5217 * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
5219 * tools/cjk_tab_to_h.c (output_title): Likewise.
5220 * tools/cjk_variants.c (main): Likewise.
5221 * lib/gentranslit.c (main): Likewise.
5223 2001-03-19 Bruno Haible <haible@clisp.cons.org>
5225 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
5226 ac_config_guess and ac_config_sub. Then ignore requests for
5227 AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
5229 2001-03-10 Bruno Haible <haible@clisp.cons.org>
5231 * INSTALL.generic: New section "Particular Systems".
5233 2001-03-10 Bruno Haible <haible@clisp.cons.org>
5235 * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
5236 platforms like BeOS.
5238 * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
5241 2001-03-06 Bruno Haible <haible@clisp.cons.org>
5243 * Version 1.6 released.
5244 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5245 Bump version number.
5246 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
5248 2001-03-05 Bruno Haible <haible@clisp.cons.org>
5250 Provide all encodings used by OSF/1 5.1 locales.
5251 * lib/dec_kanji.h: New file.
5252 * lib/dec_hanyu.h: New file.
5253 * lib/converters.h: Include them if USE_OSF1 is defined.
5254 * lib/encodings_osf1.def: New file.
5255 * lib/genflags.c (main): Include it. Define USE_OSF1.
5256 * lib/genaliases2.c (main): Include it conditionally.
5257 * lib/iconv.c: Define USE_OSF1 on OSF/1.
5258 Include encodings_osf1.def and aliases_osf1.h.
5259 * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
5261 * Makefile.devel (lib/aliases_osf1.h): New target.
5262 (all): Depend on lib/aliases_osf1.h.
5263 (lib/flags.h): Depend on lib/encodings_osf1.def.
5265 2001-03-01 Bruno Haible <haible@clisp.cons.org>
5267 * tools/Makefile (cp775.h): New target.
5269 * lib/cp775.h: New file.
5270 * lib/converters.h: Include it.
5271 * lib/encodings_dos.def (CP775): New encoding.
5273 2001-02-25 Bruno Haible <haible@clisp.cons.org>
5275 * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
5278 2001-02-24 Bruno Haible <haible@clisp.cons.org>
5280 * src/iconv.c (convert): Use ICONV_CONST.
5281 * tests/table-from.c: Include config.h.
5282 (try): Use ICONV_CONST.
5283 * tests/table-to.c: Include config.h.
5284 (main): Use ICONV_CONST.
5285 * tests/Makefile.in (INCLUDES): Add -I../lib.
5286 * tests/Makefile.os2 (INCLUDES): Likewise.
5287 * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
5289 2001-02-24 Bruno Haible <haible@clisp.cons.org>
5291 Provide all encodings used by DOS locales.
5292 * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
5293 cp864.h, cp865.h, cp869.h): New targets.
5295 * lib/cp437.h: New file.
5296 * lib/cp852.h: New file.
5297 * lib/cp855.h: New file.
5298 * lib/cp857.h: New file.
5299 * lib/cp861.h: New file.
5300 * lib/cp864.h: New file.
5301 * lib/cp865.h: New file.
5302 * lib/cp869.h: New file.
5303 * lib/converters.h: Include them if USE_DOS is defined.
5304 * lib/encodings_dos.def: New file.
5305 * lib/genflags.c (main): Include it. Define USE_DOS.
5306 * lib/genaliases2.c (main): Include it conditionally.
5307 * lib/iconv.c: Define USE_DOS on DJGPP.
5308 Include encodings_dos.def and aliases_dos.h.
5309 * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
5311 * Makefile.devel (lib/aliases_dos.h): New target.
5312 (all): Depend on lib/aliases_dos.h.
5313 (lib/flags.h): Depend on lib/encodings_dos.def.
5315 2001-02-23 Bruno Haible <haible@clisp.cons.org>
5317 * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
5318 (SET_BINARY) [O_BINARY]: New macro.
5319 (usage): Mention --binary if available.
5320 (convert): Use SET_BINARY instead of setmode.
5322 Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
5324 2001-02-25 Bruno Haible <haible@clisp.cons.org>
5326 * autoconf/ltconfig:
5327 sed -e 's/reload object files/produce relocatable object files/'.
5329 2001-02-20 Bruno Haible <haible@clisp.cons.org>
5331 * src/iconv.c (usage, main): Make -f and -t options optional.
5332 * man/iconv.1: Mark them as optional.
5334 2001-02-20 Bruno Haible <haible@clisp.cons.org>
5336 * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
5338 * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
5339 0xFE5E -> U+2E97. Shift the entire four-byte range.
5340 * tests/GB18030.TXT: Regenerated.
5342 2001-02-20 Bruno Haible <haible@clisp.cons.org>
5344 Better support for DOS/Windows platforms.
5345 * autoconf/ltconfig: Upgrade to libtool-1.3.5.
5346 * autoconf/ltmain.sh: Likewise.
5347 * autoconf/aclocal.m4: Likewise.
5348 * autoconf/install-sh: New file.
5349 * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
5351 2001-02-20 Bruno Haible <haible@clisp.cons.org>
5353 * Makefile.in (libdir, includedir, mandir): Use the autoconf
5354 determined value, in order to respect the configure arguments.
5355 * lib/Makefile.in (libdir): Likewise.
5356 * src/Makefile.in (bindir): Likewise.
5357 * man/Makefile.in (mandir): Likewise.
5359 2001-02-04 Bruno Haible <haible@clisp.cons.org>
5361 * lib/translit.def: Add all the neutral transliterations from glibc.
5362 * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
5363 UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
5364 Avoid accessing data[-1].
5365 * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
5368 2001-01-05 Bruno Haible <haible@clisp.cons.org>
5370 Implement and document CP862.
5371 * tools/Makefile (ALL): Add cp862.h.
5372 (cp862.h): New target.
5373 * lib/cp862.h: New file.
5374 * lib/converters.h: Include it.
5375 * lib/encodings.def (CP862): New encoding.
5376 * README, man/iconv_open.3: Add CP862.
5377 * tests/Makefile.in (check): Check CP862.
5378 * tests/Makefile.msvc (check): Likewise.
5379 * tests/Makefile.os2 (check): Likewise.
5380 * tests/CP862.TXT: New file.
5382 2000-12-18 Bruno Haible <haible@clisp.cons.org>
5384 * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
5385 * Makefile.devel (OTHERMACROS): Add it.
5386 * configure.in: Call AC_MBSTATE_T.
5387 * lib/config.h.in (mbstate_t): New definition.
5388 * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
5390 2000-12-12 Bruno Haible <haible@clisp.cons.org>
5392 * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
5393 "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
5394 given. Reported by Toshimitsu Fujiwara.
5396 2000-12-08 Bruno Haible <haible@clisp.cons.org>
5398 * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
5399 * lib/Makefile.in (exec_prefix): Likewise.
5400 * src/Makefile.in (exec_prefix): Likewise.
5401 * man/Makefile.in (exec_prefix): Likewise.
5403 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5405 * Version 1.5 released.
5406 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5407 Bump version number.
5408 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
5410 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5412 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
5413 Remove files installed in lib by libcharset.
5414 * Makefile.msvc (mostlyclean): Likewise.
5416 * Makefile.in (check): Depend on target 'all'.
5417 * Makefile.os2 (check): Likewise.
5418 * Makefile.msvc (check): Depend on target 'force' as well.
5420 * src/iconv.c (usage): Take an exitcode argument.
5421 (print_version): New function.
5422 (main): Recognize --help and --version command line options.
5424 2000-12-02 Bruno Haible <haible@clisp.cons.org>
5426 * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
5427 * lib/Makefile.msvc: Likewise.
5428 * src/Makefile.msvc: Likewise.
5429 * tests/Makefile.msvc: Likewise.
5431 2000-12-01 Bruno Haible <haible@clisp.cons.org>
5433 * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
5434 (force_binary): New variable.
5435 (convert): If requested, set the input O_BINARY.
5436 (main): Accept --binary option. If requested, set the output O_BINARY.
5437 * tests/check-stateful.bat: Pass --binary to iconv.
5438 * tests/check-stateful.cmd: Likewise.
5439 * tests/check-translit.bat: Likewise.
5440 * tests/check-translit.cmd: Likewise.
5442 2000-12-01 Bruno Haible <haible@clisp.cons.org>
5444 * include/iconv.h.in (_libiconv_version): New declaration.
5445 * lib/iconv.c (_libiconv_version): New variable.
5447 2000-11-30 Bruno Haible <haible@clisp.cons.org>
5449 * Makefile.msvc (all): File now named lib/libcharset.h.
5450 (clean, distclean, maintainer-clean): Likewise.
5452 2000-11-23 Bruno Haible <haible@clisp.cons.org>
5454 * lib/*: Move here all files from src/*.
5455 * src/*: Move all files to lib.
5456 * lib/Makefile.in (distclean): No need to remove config.status,
5457 config.log, config.cache.
5458 * configure.in: Require lib/iconv.c, not src/iconv.c. Create
5459 lib/config.h, not src/config.h. Also create lib/Makefile.
5460 * Makefile.in (all): Install libcharset into lib, not src. Recurse
5462 (install-lib): Recurse into lib, not src.
5463 (install): Recurse into libcharset, lib and src.
5464 (installdirs, uninstall): Likewise.
5465 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5466 * Makefile.msvc (all): Recurse into lib and src.
5467 (install): Recurse into libcharset, lib and src.
5468 (installdirs, uninstall): Likewise.
5469 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5470 * Makefile.os2 (all): Recurse into lib and src.
5471 (install-lib): Recurse into lib, not src.
5472 (install, uninstall): Recurse into lib and src.
5473 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
5474 * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
5475 (lib/aliases.h): Renamed from src/aliases.h.
5476 (lib/aliases.gperf): Renamed from src/aliases.gperf.
5477 (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
5478 (lib/flags.h): Renamed from src/flags.h.
5479 (lib/translit.h): Renamed from src/translit.h.
5480 * src/iconv.c: Moved here from tests/iconv.c.
5481 * src/Makefile.in: New file.
5482 * src/Makefile.msvc: New file.
5483 * src/Makefile.os2: New file.
5484 * tests/Makefile.in (iconv): Remove target.
5485 (../lib/libiconv.la): Renamed from ../src/libiconv.la.
5486 (clean): No need to remove iconv.
5487 * tests/Makefile.msvc (iconv.exe): Remove target.
5488 * tests/Makefile.os2 (iconv.exe): Likewise.
5489 * tests/check-stateful: iconv is in ../src.
5490 * tests/check-stateful.bat: Likewise.
5491 * tests/check-stateful.cmd: Likewise.
5492 * tests/check-translit: iconv is in ../src.
5493 * tests/check-translit.bat: Likewise.
5494 * tests/check-translit.cmd: Likewise.
5495 * man/iconv.1: New file.
5496 * man/Makefile.in (install, installdirs, uninstall): Also install *.1
5498 * man/Makefile.os2 (MAN3): Renamed from MAN.
5499 (MAN1): New variable.
5500 (install, uninstall): Also install *.1 man pages.
5502 2000-11-21 Bruno Haible <haible@clisp.cons.org>
5504 * Makefile.msvc (all, check, mostlyclean, clean, distclean,
5505 maintainer-clean): Recurse into libcharset.
5506 (clean, distclean, maintainer-clean): Remove src\libcharset.h.
5507 * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
5508 (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
5510 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5512 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
5513 so that it agrees with Microsoft's definition of CP950.
5514 * tests/CP950.TXT: Likewise.
5515 * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
5517 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5519 Add support for locale dependent "char" and "wchar_t" encodings.
5520 * libcharset: New subdirectory.
5521 * src/loop_unicode.h: New file, extracted from src/iconv.c.
5522 * src/loop_wchar.h: New file.
5523 * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
5524 * src/encodings_local.def: New file.
5525 * src/genaliases.c: Also create aliases for encodings_local.def.
5526 * src/converters.h (conv_struct): Add lfuncs field.
5527 * src/genflags.c: Add dummy definitions of struct loop_funcs.
5528 * src/iconv.c: Include libcharset.h.
5529 (loop_funcs): New structure.
5530 Treat encodings_local.def like encodings.def.
5532 (iconv_open): Move the bulk of the code to loop_unicode.h.
5534 (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
5536 * src/Makefile.in (PLUG_SOURCES): Remove variable.
5537 (LIBCHARSET_OBJECTS): New variable.
5538 (libiconv.la): Link in the LIBCHARSET_OBJECTS.
5539 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
5540 libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
5542 (iconv.lo): Depend on encodings_local.def.
5543 * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
5544 * src/Makefile.os2 (iconv.obj): Likewise.
5545 * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
5546 Recurse into libcharset.
5547 * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
5548 HAVE_SETLOCALE): New macros.
5549 * tests/iconv.c: Include config.h and locale.h.
5550 (main): Call setlocale.
5551 * tests/Makefile.in (iconv): Search for config.h in ../src.
5552 * tests/Makefile.os2 (iconv.exe): Likewise.
5553 * tests/Makefile.msvc (iconv.exe): Likewise.
5554 * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
5555 * Makefile.in: After "cd", use "&&" not ";".
5556 (all, check, mostlyclean, clean, distclean, maintainer-clean):
5557 Recurse into libcharset.
5558 * Makefile.devel (all): Recurse into libcharset.
5559 (src/aliases.gperf): Depend on src/encodings_local.def.
5561 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5563 * src/converters.h (ucs4_t): New type.
5564 (wchar_t): Remove locally defined override.
5565 (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
5566 * src/iconv.c (iconv): Likewise.
5567 * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
5568 * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
5569 * tools/cjk_tab_to_h.c: Likewise.
5570 * src/armscii_8.h: Use ucs4_t instead of wchar_t.
5571 * src/ascii.h: Likewise.
5572 * src/big5.h: Likewise.
5573 * src/big5hkscs.h: Likewise.
5574 * src/ces_big5.h: Likewise.
5575 * src/ces_gbk.h: Likewise.
5576 * src/cns11643.h: Likewise.
5577 * src/cns11643_1.h: Likewise.
5578 * src/cns11643_2.h: Likewise.
5579 * src/cns11643_3.h: Likewise.
5580 * src/cns11643_inv.h: Likewise.
5581 * src/cp1046.h: Likewise.
5582 * src/cp1124.h: Likewise.
5583 * src/cp1129.h: Likewise.
5584 * src/cp1133.h: Likewise.
5585 * src/cp1250.h: Likewise.
5586 * src/cp1251.h: Likewise.
5587 * src/cp1252.h: Likewise.
5588 * src/cp1253.h: Likewise.
5589 * src/cp1254.h: Likewise.
5590 * src/cp1255.h: Likewise.
5591 * src/cp1256.h: Likewise.
5592 * src/cp1257.h: Likewise.
5593 * src/cp1258.h: Likewise.
5594 * src/cp850.h: Likewise.
5595 * src/cp856.h: Likewise.
5596 * src/cp866.h: Likewise.
5597 * src/cp874.h: Likewise.
5598 * src/cp922.h: Likewise.
5599 * src/cp932.h: Likewise.
5600 * src/cp932ext.h: Likewise.
5601 * src/cp936ext.h: Likewise.
5602 * src/cp949.h: Likewise.
5603 * src/cp950.h: Likewise.
5604 * src/cp950ext.h: Likewise.
5605 * src/euc_cn.h: Likewise.
5606 * src/euc_jp.h: Likewise.
5607 * src/euc_kr.h: Likewise.
5608 * src/euc_tw.h: Likewise.
5609 * src/gb12345.h: Likewise.
5610 * src/gb12345ext.h: Likewise.
5611 * src/gb18030.h: Likewise.
5612 * src/gb18030ext.h: Likewise.
5613 * src/gb18030uni.h: Likewise.
5614 * src/gb2312.h: Likewise.
5615 * src/gbk.h: Likewise.
5616 * src/gbkext1.h: Likewise.
5617 * src/gbkext2.h: Likewise.
5618 * src/gbkext_inv.h: Likewise.
5619 * src/georgian_academy.h: Likewise.
5620 * src/georgian_ps.h: Likewise.
5621 * src/hkscs.h: Likewise.
5622 * src/hp_roman8.h: Likewise.
5623 * src/hz.h: Likewise.
5624 * src/iso2022_cn.h: Likewise.
5625 * src/iso2022_cnext.h: Likewise.
5626 * src/iso2022_jp.h: Likewise.
5627 * src/iso2022_jp1.h: Likewise.
5628 * src/iso2022_jp2.h: Likewise.
5629 * src/iso2022_kr.h: Likewise.
5630 * src/iso646_cn.h: Likewise.
5631 * src/iso646_jp.h: Likewise.
5632 * src/iso8859_1.h: Likewise.
5633 * src/iso8859_10.h: Likewise.
5634 * src/iso8859_13.h: Likewise.
5635 * src/iso8859_14.h: Likewise.
5636 * src/iso8859_15.h: Likewise.
5637 * src/iso8859_16.h: Likewise.
5638 * src/iso8859_2.h: Likewise.
5639 * src/iso8859_3.h: Likewise.
5640 * src/iso8859_4.h: Likewise.
5641 * src/iso8859_5.h: Likewise.
5642 * src/iso8859_6.h: Likewise.
5643 * src/iso8859_7.h: Likewise.
5644 * src/iso8859_8.h: Likewise.
5645 * src/iso8859_9.h: Likewise.
5646 * src/isoir165.h: Likewise.
5647 * src/isoir165ext.h: Likewise.
5648 * src/java.h: Likewise.
5649 * src/jisx0201.h: Likewise.
5650 * src/jisx0208.h: Likewise.
5651 * src/jisx0212.h: Likewise.
5652 * src/johab.h: Likewise.
5653 * src/johab_hangul.h: Likewise.
5654 * src/koi8_r.h: Likewise.
5655 * src/koi8_ru.h: Likewise.
5656 * src/koi8_u.h: Likewise.
5657 * src/ksc5601.h: Likewise.
5658 * src/mac_arabic.h: Likewise.
5659 * src/mac_centraleurope.h: Likewise.
5660 * src/mac_croatian.h: Likewise.
5661 * src/mac_cyrillic.h: Likewise.
5662 * src/mac_greek.h: Likewise.
5663 * src/mac_hebrew.h: Likewise.
5664 * src/mac_iceland.h: Likewise.
5665 * src/mac_roman.h: Likewise.
5666 * src/mac_romania.h: Likewise.
5667 * src/mac_thai.h: Likewise.
5668 * src/mac_turkish.h: Likewise.
5669 * src/mac_ukraine.h: Likewise.
5670 * src/mulelao.h: Likewise.
5671 * src/nextstep.h: Likewise.
5672 * src/sjis.h: Likewise.
5673 * src/tcvn.h: Likewise.
5674 * src/tis620.h: Likewise.
5675 * src/ucs2.h: Likewise.
5676 * src/ucs2be.h: Likewise.
5677 * src/ucs2internal.h: Likewise.
5678 * src/ucs2le.h: Likewise.
5679 * src/ucs2swapped.h: Likewise.
5680 * src/ucs4.h: Likewise.
5681 * src/ucs4be.h: Likewise.
5682 * src/ucs4internal.h: Likewise.
5683 * src/ucs4le.h: Likewise.
5684 * src/ucs4swapped.h: Likewise.
5685 * src/uhc_1.h: Likewise.
5686 * src/uhc_2.h: Likewise.
5687 * src/utf16.h: Likewise.
5688 * src/utf16be.h: Likewise.
5689 * src/utf16le.h: Likewise.
5690 * src/utf7.h: Likewise.
5691 * src/utf8.h: Likewise.
5692 * src/viscii.h: Likewise.
5694 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5696 Make transliteration optional.
5697 * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
5698 Set transliteration on if and only if tocode ends in //TRANSLIT.
5699 * README, man/iconv_open.3: Document how to enable transliteration.
5700 * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
5701 * tests/check-translit.bat: Likewise.
5702 * tests/check-translit.cmd: Likewise.
5704 2000-11-18 Bruno Haible <haible@clisp.cons.org>
5706 * man/iconv.3: Fix typo.
5708 2000-10-31 Bruno Haible <haible@clisp.cons.org>
5710 * README, man/iconv_open.3: Document JOHAB again.
5712 2000-11-15 Bruno Haible <haible@clisp.cons.org>
5714 * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
5715 (STATIC): Change default from 0 to 1.
5716 * src/Makefile.msvc: Likewise.
5717 * tests/Makefile.msvc: Likewise.
5718 * tests/check-stateless.bat: Call 'sort' with no arguments.
5720 2000-11-12 Bruno Haible <haible@clisp.cons.org>
5722 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
5723 version from GNU CVS.
5725 2000-10-24 Bruno Haible <haible@clisp.cons.org>
5727 * Version 1.4 released.
5728 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5729 Bump version number.
5730 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
5732 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5734 Implement and document GB18030 and BIG5HKSCS.
5735 * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
5737 (do_gb18030uni): New function.
5738 (main): Accept gb18030ext, gb18030uni, hkscs.
5739 * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
5740 (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
5741 hkscs.h): New targets.
5742 * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
5743 * src/hkscs.h, src/big5hkscs.h: New files.
5744 * src/converters.h: Include gb18030.h and big5hkscs.h.
5745 * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
5746 * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
5747 * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
5748 * tests/Makefile.msvc (check): Likewise.
5749 * tests/Makefile.os2 (check): Likewise.
5750 * tests/GB18030.TXT: New file.
5751 * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
5753 2000-10-23 Bruno Haible <haible@clisp.cons.org>
5755 * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
5756 UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
5757 * tests/table-to.c (main): Likewise.
5759 2000-10-22 Bruno Haible <haible@clisp.cons.org>
5761 * src/gentranslit.c (main): Read the input in UTF-8 encoding.
5763 2000-10-09 Bruno Haible <haible@clisp.cons.org>
5765 CPU recognition on OpenBSD.
5766 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
5767 __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
5769 2000-10-03 Bruno Haible <haible@clisp.cons.org>
5771 * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
5772 character literals, use the numeric value instead.
5773 Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
5775 2000-09-29 Bruno Haible <haible@clisp.cons.org>
5777 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
5780 2000-09-25 Bruno Haible <haible@clisp.cons.org>
5782 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
5783 as equivalent to __i386. For OpenBSD.
5785 2000-09-21 Bruno Haible <haible@clisp.cons.org>
5787 * src/utf16.h (utf16_wctomb): Reject single surrogates.
5788 * src/utf16be.h (utf16be_wctomb): Likewise.
5789 * src/utf16le.h (utf16le_wctomb): Likewise.
5790 * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
5791 * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
5792 * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
5793 * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
5795 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
5798 2000-09-15 Bruno Haible <haible@clisp.cons.org>
5800 * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
5801 * src/Makefile.in (install, installdirs, uninstall): Likewise.
5802 * man/Makefile.in (install, installdirs, uninstall): Likewise.
5804 2000-09-11 Bruno Haible <haible@clisp.cons.org>
5806 * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
5808 2000-08-26 Bruno Haible <haible@clisp.cons.org>
5810 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
5813 2000-07-04 Akira Hatakeyama <akira@sra.co.jp>
5814 Bruno Haible <haible@clisp.cons.org>
5816 * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
5817 tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
5818 tests/check-stateless.cmd, tests/check-translit.cmd: New files.
5820 2000-06-28 Bruno Haible <haible@clisp.cons.org>
5822 * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
5824 * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
5825 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
5826 sizeof(unsigned short).
5827 * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
5828 sizeof(unsigned int).
5829 Reported by François Pinard <pinard@iro.umontreal.ca>.
5831 2000-05-29 Bruno Haible <haible@clisp.cons.org>
5833 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
5834 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
5836 2000-05-23 Bruno Haible <haible@clisp.cons.org>
5838 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
5839 host_vendor, host_os correctly if $host has more than two hyphens.
5841 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5843 * Version 1.3 released.
5844 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
5845 Bump version number.
5846 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
5848 2000-04-15 Bruno Haible <haible@clisp.cons.org>
5851 * INSTALL.generic: New file.
5853 Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5854 * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
5855 * src/converters.h: Include them.
5856 * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
5857 * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
5858 * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
5859 (UCS-2LE): Renamed from UCS-2-LE.
5860 (UCS-4BE): Renamed from UCS-4-BE.
5861 (UCS-4LE): Renamed from UCS-4-LE.
5862 * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
5863 * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5864 * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
5865 * tests/Makefile.msvc (check): Likewise.
5866 * tests/UCS-*snippet*: New files.
5868 Allow building as a shared library on Windows.
5869 Allow running the tests on Windows.
5870 * Makefile.devel (include/iconv.h.msvc): Remove rule.
5871 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
5874 * windows/dllexport.h: New file.
5875 * include/iconv.h.msvc: Remove file.
5876 * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
5877 autogenerated files.
5878 * Makefile.msvc (STATIC, DEBUG): Default to 0.
5879 (all): Choose either include\iconv.h.msvc-static or
5880 include\iconv.h.msvc-shared.
5881 (check): Depend on all.
5882 (all, check, mostlyclean, clean, distclean, maintainer-clean):
5883 Recurse into tests directory.
5884 * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
5885 (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
5886 (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
5887 (RESOURCES): New variable.
5888 (iconv.lib): Change rule when building DLL.
5889 (clean, distclean): One filename per line.
5890 * tests/Makefile.msvc: New file.
5891 * tests/check-stateful.bat, tests/check-stateless.bat,
5892 tests/check-translit.bat: New files.
5893 * tests/uniq-u.c: New file, taken from GNU textutils.
5894 * README.win32: Update.
5895 Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
5897 2000-04-14 Bruno Haible <haible@clisp.cons.org>
5899 Fix an OSF/1 problem.
5900 * configure.in: Define GCC variable for substitution.
5901 * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
5904 2000-04-13 Bruno Haible <haible@clisp.cons.org>
5906 Fix a SunOS 4 problem.
5907 * include/iconv.h.in: If EILSEQ is not defined by the system, define
5908 it to ENOENT, not EINVAL.
5910 2000-04-02 Bruno Haible <haible@clisp.cons.org>
5912 Allow building on filesystems lacking symlinks and hard links.
5913 * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
5915 * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
5916 * src/Makefile.in (LN): Use autoconfigured value @LN@.
5917 (LN_S): Use autoconfigured value @LN_S@.
5919 2000-03-15 Bruno Haible <haible@clisp.cons.org>
5921 * Version 1.2 released.
5922 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5923 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
5925 2000-03-14 Bruno Haible <haible@clisp.cons.org>
5927 Implement and document UTF-16BE and UTF16LE.
5928 * src/utf16be.h, src/utf16le.h: New files.
5929 * src/converters.h: Include them.
5930 * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
5931 * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
5932 * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
5933 * tests/UTF-16*snippet*: New files.
5935 * src/utf16.h (utf16_wctomb): Output a byte order mark.
5937 2000-03-13 Bruno Haible <haible@clisp.cons.org>
5939 Provide all encodings used by AIX locales.
5940 * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
5942 (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
5943 * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
5944 src/cp1129.h: New files.
5945 * src/converters.h: Include them if USE_AIX is defined.
5946 * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
5948 * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
5949 * src/genaliases2.c: New file.
5950 * src/iconv.c: Define USE_AIX on AIX.
5951 Include encodings_aix.def and aliases_aix.h.
5952 (aliases2_lookup): New function.
5953 (iconv_open): Call aliases2_lookup.
5954 * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
5956 * Makefile.devel (all): Add src/aliases_aix.h.
5957 (src/aliases_aix.h): New rule.
5958 (src/flags.h): Depend on src/encodings_aix.def.
5960 2000-02-24 Bruno Haible <haible@clisp.cons.org>
5962 * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
5963 Reported by Edmund Grimley Evans <edmundo@rano.org>.
5965 2000-02-22 Bruno Haible <haible@clisp.cons.org>
5967 * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
5969 2000-02-15 Bruno Haible <haible@clisp.cons.org>
5971 * src/iconv.c (iconv): Add cast in xxx_reset call.
5973 2000-02-05 Bruno Haible <haible@clisp.cons.org>
5975 * src/tis620.h: Simplify.
5977 2000-01-27 Bruno Haible <haible@clisp.cons.org>
5979 * Makefile.devel (CLISP_DIR): Change to "..".
5981 2000-01-24 Bruno Haible <haible@clisp.cons.org>
5983 * Version 1.1 released.
5984 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
5985 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
5987 2000-01-23 Bruno Haible <haible@clisp.cons.org>
5989 * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
5992 2000-01-22 Bruno Haible <haible@clisp.cons.org>
5994 * include/iconv.h.in (iconvctl): New declaration.
5995 (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
5997 * src/iconv.c (iconvctl): New function.
5999 * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
6001 Solve a build problem.
6002 * include/iconv.h.in: Renamed from include/libiconv.h.in.
6003 * Makefile.devel: libiconv.h -> iconv.h.
6004 * Makefile.in: Likewise.
6005 * configure.in: Likewise. Remove check for <iconv.h>.
6006 * src/iconv.c: Include iconv.h instead of libiconv.h.
6007 * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
6009 * README, man/iconv_open.3: Don't document JOHAB any more.
6011 * man/iconv.3: Clarify return value again.
6013 2000-01-16 Bruno Haible <haible@clisp.cons.org>
6016 * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
6017 (ISO-8859-15): Add alias ISO-IR-203.
6018 (EUC-CN): Add alias CN-GB, from RFC 1922.
6019 (BIG5): Add alias CN-BIG5, from RFC 1922.
6020 * Makefile.devel (src/aliases.h): Add 8th character to key set.
6023 * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
6024 (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
6025 (KSC_5601): Drop KSC5601.1987-0 alias.
6027 Improve GB/T 12345 (not used yet).
6028 * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
6029 * src/gb12345ext.h: Regenerated.
6031 Improve and document CP949.
6032 * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
6033 (uhc_1.h, uhc_2.h): New rules.
6034 * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
6036 (output_uni2charset_sparse): Take an additional boolean argument.
6037 All callers changed.
6038 (*_uhc_1, *_uhc_2): New functions.
6039 (main): Treat uhc_1 and uhc_2.
6040 * src/uhc_1.h, src/uhc_2.h: New files.
6041 * src/cp949.h: New file, include them.
6042 * src/converters.h: Include it.
6043 * src/encodings.def (KSC_5601): Remove alias CP949.
6044 (CP949): New encoding.
6045 * README, man/iconv_open.3: Add CP949.
6046 * tests/Makefile.in (check): Check CP949.
6047 * tests/CP949.TXT: New file.
6050 * README, man/iconv_open.3: Add CP932.
6051 * tests/Makefile.in (check): Check CP932.
6052 * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
6054 * Makefile.devel (src/flags.h): Depend on src/converters.h.
6056 * tests/Makefile.in (check): Check JIS_X0201.
6057 * tests/JIS_X0201.TXT: New file.
6059 * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
6060 * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
6062 * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
6063 (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
6065 Add ISO-IR-165 (undocumented).
6066 * tools/Makefile (all): Add isoir165ext.h.
6067 (isoir165ext.h): New rule.
6068 * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
6069 * src/isoir165.h, src/isoir165ext.h: New files.
6070 * src/converters.h: Include it.
6071 * src/encodings.def: Add ISO-IR-165.
6072 * tests/Makefile.in (check): Check ISO-IR-165.
6073 * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
6075 Add ISO646-CN (undocumented).
6076 * src/iso646_cn.h: New file.
6077 * src/converters.h: Include it.
6078 * src/encodings.def: Add ISO646-CN.
6079 * tests/Makefile.in (check): Check ISO646-CN.
6080 * tests/ISO646-CN.TXT: New file.
6082 Add ISO646-JP (undocumented).
6083 * src/iso646_jp.h: New file.
6084 * src/converters.h: Include it.
6085 * src/encodings.def: Add ISO646-JP.
6086 * tests/Makefile.in (check): Check ISO646-JP.
6087 * tests/ISO646-JP.TXT: New file.
6089 2000-01-05 Bruno Haible <haible@clisp.cons.org>
6092 * tools/Makefile (all): Add iso8859_16.h.
6093 (iso8859_16.h): New rule.
6094 * src/iso8859_16.h: New file.
6095 * src/converters.h: Include it.
6096 * src/encodings.def: Add ISO-8859-16.
6097 * README, man/iconv_open.3: Add ISO-8859-16.
6098 * tests/Makefile.in (check): Check ISO-8859-16.
6099 * tests/ISO-8859-16.TXT: New file.
6101 * man/iconv.3: Clarify what happens *inbuf in case 3.
6103 * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
6104 * tests/ISO-8859-8.TXT: Likewise.
6106 2000-01-04 Bruno Haible <haible@clisp.cons.org>
6108 * Version 1.0 released.
6109 * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
6110 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
6111 (libiconv.la): Use LIBICONV_VERSION_INFO.
6113 2000-01-03 Bruno Haible <haible@clisp.cons.org>
6115 * tests/Makefile.in: New file.
6116 tests/check-stateless, tests/table-from.c, tests/table-to.c,
6117 tests/*.TXT, tests/genutf8.c: New files, checks for stateless
6119 tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
6120 checks for stateful encodings.
6121 * Makefile.in (all, check, mostlyclean, clean, distclean,
6122 maintainer-clean): Descend into tests directory.
6123 * configure.in: Add tests/Makefile to AC_OUTPUT duties.
6125 * src/gentranslit.c: New file.
6126 * Makefile.devel (src/translit.h): New rule.
6127 * src/translit.def, src/translit.h: New files.
6128 * src/iconv.c: Include it.
6129 (iconv): Transliterate using translit.h table.
6131 * src/genflags.c: New file.
6132 * Makefile.devel (src/flags.h): New rule.
6133 * src/flags.h: New file.
6134 * src/iconv.c: Include it.
6135 (encoding): Add field 'oflags'.
6136 (all_encodings): Initialize the field 'oflags'.
6137 (iconv_open): Copy field 'oflags'.
6138 (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
6139 * src/Makefile.in (iconv.lo): Update dependencies.
6141 * src/converters.h: New file, extracted from src/iconv.c.
6142 * src/iconv.c: Include it.
6143 * src/Makefile.in (iconv.lo): Update dependencies.
6145 * tools/cjk_variants.c: New file.
6146 * tools/Makefile (ALL): Add cjk_variants.h.
6147 (cjk_variants.h, cjk_variants): New rules.
6148 * src/cjk_variants.h: New file.
6149 * src/iconv.c: Include it.
6150 (iconv): Use cjk_variants for transliteration.
6152 * man/iconv.3: Fix description of return value.
6153 * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
6154 * iso2022_kr.h (iso2022kr_wctomb): Likewise.
6155 * src/iconv.c (iconv): Do Hangul transliteration here and increment
6156 result once for every transliterated character.
6157 * src/johab_hangul.h (johab_hangul_decompose): Change result array
6158 from 'unsigned char*' to 'wchar_t*'.
6160 * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
6163 * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
6165 * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
6168 * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
6170 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
6173 * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
6174 not being excluded. Fix that.
6175 * src/ksc5601.h: Regenerated.
6176 * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
6177 valid in KSC5601/KSX1001 but not in JOHAB.
6179 * src/iconv.c (conv_struct): Add fields iindex, oindex.
6180 (iconv_open): Fill in iindex, oindex.
6182 * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
6183 "csUnicode11", from IANA charset list.
6184 (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
6185 from IANA charset list.
6186 (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
6187 from IANA charset list.
6188 (GB_2312-80): New encoding, from IANA charset list.
6190 * README, man/iconv_open.3: Add MacIceland and MacUkraine.
6192 * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
6193 (all): Depend on src/aliases.h.
6194 * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
6195 $(srcdir)/aliases.gperf.
6198 * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
6200 1999-12-31 Bruno Haible <haible@clisp.cons.org>
6202 * Version 0.3 released.