1 2007-11-11 Bruno Haible <bruno@clisp.org>
3 * Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
4 (AUTOMAKE, ACLOCAL): Require version 1.10.
5 (srclib/Makefile.in): Avoid error from automake.
7 2007-10-26 Bruno Haible <bruno@clisp.org>
9 * m4/libtool.m4: Update, based on libtool-1.5.24.
10 * build-aux/ltmain.sh: Update, based on libtool-1.5.24.
12 2007-10-23 Bruno Haible <bruno@clisp.org>
14 * build-aux/config.guess: Update to GNU version 2007-07-22.
15 * build-aux/config.sub: Likewise.
17 2007-10-23 Bruno Haible <bruno@clisp.org>
19 * configure.ac: Bump version number to 1.12.
22 2007-10-23 Bruno Haible <bruno@clisp.org>
24 Move relocatability infrastructure to gnulib.
25 * gnulib-local/lib/relocatable.h: Remove file.
26 * gnulib-local/lib/relocatable.c: Remove file.
28 2007-10-23 Bruno Haible <bruno@clisp.org>
30 Update from GNU gettext.
31 2006-11-26 Bruno Haible <bruno@clisp.org>
32 * gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
34 Based on a patch from Paul Eggert in gnulib.
35 2006-11-06 Bruno Haible <bruno@clisp.org>
36 * gnulib-local/lib/xalloc.h (xcharalloc): New macro.
37 (xmemdup): New declaration.
38 * gnulib-local/lib/xstrdup.c (xmemdup): New function.
39 2006-11-03 Bruno Haible <bruno@clisp.org>
40 * gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
42 (xnboundedmalloc): New inline function.
43 * gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
45 2006-11-02 Bruno Haible <bruno@clisp.org>
46 * lib/xalloc.h (xnmalloc): New declaration. From gnulib
48 * lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
49 (xnmalloc): New function.
51 2007-10-23 Bruno Haible <bruno@clisp.org>
53 Moved module xreadlink to gnulib.
54 * gnulib-local/modules/xreadlink: Remove file.
55 * gnulib-local/lib/xreadlink.h: Remove file.
56 * gnulib-local/lib/xreadlink.c: Remove file.
57 * gnulib-local/m4/xreadlink.m4: Remove file.
59 2007-10-07 Bruno Haible <bruno@clisp.org>
61 Update program license to GPLv3.
62 * COPYING: Replace with GPL 3.
63 * windows/iconv.rc (Comments): Update.
65 2007-10-07 Bruno Haible <bruno@clisp.org>
67 * gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
69 2007-03-30 Bruno Haible <bruno@clisp.org>
71 * gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
74 2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
76 * gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
79 2007-09-29 Bruno Haible <bruno@clisp.org>
81 * autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
82 valid since 2007-09-19.
84 2007-07-07 Bruno Haible <bruno@clisp.org>
86 * autogen.sh: Add an option --skip-gnulib.
88 2007-07-07 Bruno Haible <bruno@clisp.org>
90 * gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
91 * gnulib-local/lib/width.c: Remove file, moved to gnulib.
92 * gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
93 * gnulib-local/modules/uniwidth: Remove file.
94 * Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
95 * src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
97 2007-06-30 Bruno Haible <bruno@clisp.org>
99 * src/iconv.c (print_version): Use the standard --version output, see
100 <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
102 2007-06-30 Bruno Haible <bruno@clisp.org>
104 * autogen.sh: New file.
105 * DEPENDENCIES: New file.
108 2007-06-30 Bruno Haible <bruno@clisp.org>
110 * src/iconv.c: Provide translator comments for many messages.
111 (conversion_error_EILSEQ, conversion_error_EINVAL,
112 conversion_error_other): New functions, extracted from convert.
114 Reported by Tim Van Holder <tim.van.holder@telenet.be>.
116 2007-06-09 Bruno Haible <bruno@clisp.org>
118 * gnulib-local/lib/relocwrapper.c: Remove file.
120 2007-05-27 Bruno Haible <bruno@clisp.org>
122 * windows/libiconv.rc: New file.
123 * windows/iconv.rc: New file.
124 * windows/windres-options: New file.
125 * configure.ac (WOE32): New variable.
126 (WINDRES) [WOE32]: New variable.
127 * lib/Makefile.in (WINDRES): New variable.
128 (PACKAGE_VERSION): New variable.
129 (OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
130 (OBJECTS_EXP_no): Renamed from OBJECTS_no.
131 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
132 (OBJECTS): Add one of them.
133 (libiconv.res): New rule.
134 (clean): Remove also libiconv.res.
135 * src/Makefile.in (WINDRES): New variable.
136 (PACKAGE_VERSION): New variable.
137 (OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
138 (all, iconv_no_i18n, install): Use them.
139 (iconv.res): New rule.
140 (clean): Remove also iconv.res.
141 Suggested and inspired by work by Perry Rapp.
143 2007-05-27 Bruno Haible <bruno@clisp.org>
145 Follow broken iconv() prototype in POSIX.
146 * configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
147 * lib/config.h.in (ICONV_CONST): Change default value to an empty
149 * src/iconv.c (ICONV_CONST): Change default value to empty.
150 Reported by Andreas Krennmair <ak@synflood.at>.
152 2007-05-25 Bruno Haible <bruno@clisp.org>
154 * tools/Makefile (ALL): Add rk1048.h.
155 (rk1048.h): New rule.
156 * lib/encodings.def: Add RK1048.
157 * lib/rk1048.h: New file.
158 * lib/converters.h: Include it.
159 * README, man/iconv_open.3: Add RK1048.
160 * NOTES: Mention RK1048.
161 * tests/RK1048.TXT: New file.
162 * tests/Makefile.in (check): Also test RK1048.
163 Suggested by Timur Birsh <team9@host.kz>.
165 2007-04-24 Bruno Haible <bruno@clisp.org>
167 * man/iconv_open.3: Tweak explanation of TRANSLIT.
168 Reported by Perry Rapp.
170 2007-04-23 Bruno Haible <bruno@clisp.org>
172 * tests/check-subst: Use the output of 'printf' only if it didn't
173 crash. Needed to work around a buffer overflow in Solaris /bin/printf.
174 Reported by Arto C. Nirkko <anirkko@insel.ch>.
176 2007-04-23 Bruno Haible <bruno@clisp.org>
178 * lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
179 systems like those which define __STDC_ISO_10646__.
180 Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
182 2007-03-31 Bruno Haible <bruno@clisp.org>
184 * man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
186 * man/iconv_open.3: Likewise.
187 * man/iconv.3: Likewise.
188 * man/iconv_close.3: Likewise.
189 * man/iconvctl.3: Likewise.
191 2007-03-31 Bruno Haible <bruno@clisp.org>
193 * man/iconv.1: Mark as POSIX compliant.
194 * man/iconv_open.3: Likewise.
195 * man/iconv.3: Likewise.
196 * man/iconv_close.3: Likewise.
198 * man/*.[13]: Syntactic simplifications.
200 2007-03-19 Bruno Haible <bruno@clisp.org>
202 Assume that mkinstalldirs also creates the necessary parent directories.
203 * Makefile.in (install, installdirs): Don't explicitly create the
205 * lib/Makefile.in (install, installdirs): Likewise.
206 * src/Makefile.in (install, installdirs): Likewise.
207 * man/Makefile.in (install, installdirs): Likewise.
208 Reported by Thomas Klausner <tk@giga.or.at>.
210 2007-03-04 Bruno Haible <bruno@clisp.org>
212 * Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
213 relocatable, relocwrapper.
214 * configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
215 * gnulib-local/modules/progreloc: Remove file.
216 * gnulib-local/modules/relocatable: Remove file.
217 * gnulib-local/modules/relocwrapper: Remove file.
218 * gnulib-local/m4/relocatable.m4: Remove file.
219 * gnulib-local/lib/strerror.c.diff: Remove file.
220 * src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
221 RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
223 2007-02-19 Bruno Haible <bruno@clisp.org>
225 * gnulib-local/lib/xmalloc.c: Don't include exit.h.
226 * src/iconv.c: Likewise.
228 2007-02-16 Juan Manuel Guerrero <juan.guerrero@gmx.de>
232 2007-02-03 Bruno Haible <bruno@clisp.org>
234 * tools/Makefile (ksc5601.h): Add one extra character.
235 * lib/ksc5601.h: Regenerated.
236 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
237 * tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
238 * tests/JOHAB.TXT: Likewise.
239 Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
241 * lib/euc_kr.h: Update comments.
242 * lib/johab.h: Likewise.
244 2007-02-03 Bruno Haible <bruno@clisp.org>
246 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
248 2007-01-26 Bruno Haible <bruno@clisp.org>
250 Moved streq.h to gnulib.
251 * gnulib-local/lib/streq.h: Remove file.
252 * gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
253 (Depends-on): Add streq.
254 (lib_SOURCES): Remove streq.h.
256 2007-01-26 Bruno Haible <bruno@clisp.org>
258 Moved unitypes.h to gnulib.
259 * gnulib-local/lib/unitypes.h: Remove file.
260 * gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
261 (Depends-on): Add unitypes.
262 (lib_SOURCES): Remove unitypes.h.
264 2007-01-26 Bruno Haible <bruno@clisp.org>
266 Moved canonicalize to gnulib.
267 * gnulib-local/modules/canonicalize: Remove file.
268 * gnulib-local/lib/canonicalize.h: Remove file.
269 * gnulib-local/lib/canonicalize.c: Remove file.
270 * gnulib-local/m4/canonicalize.m4: Remove file.
271 * gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
272 with 'canonicalize-lgpl'.
274 2006-12-20 Bruno Haible <bruno@clisp.org>
276 * lib/Makefile.in (install): On AIX, add the contents of
277 /lib/libiconv.a to libiconv.a.
279 2006-12-20 Bruno Haible <bruno@clisp.org>
281 * Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
283 (aclocal.m4): Likewise. Touch the resulting file, since aclocal not
285 (srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
286 option --makefile-name.
287 (srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
288 * srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
290 2006-10-31 Bruno Haible <bruno@clisp.org>
292 Update from GNU gettext.
293 2006-10-29 Bruno Haible <bruno@clisp.org>
294 Make it compile in C++ mode.
295 * gnulib-local/lib/xalloc.h (xrealloc): Define as template
296 with appropriate return type.
297 * gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
298 2006-10-26 Bruno Haible <bruno@clisp.org>
299 * gnulib-local/modules/canonicalize (Makefile.am): Remove
300 EXTRA_DIST. Now done by gnulib-tool.
301 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
302 * gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
303 2006-10-25 Bruno Haible <bruno@clisp.org>
304 * gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
305 Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
306 (AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
307 * gnulib-local/modules/relocwrapper (configure.ac): Invoke
308 AC_RELOCATABLE instead of requiring it.
309 2006-10-12 Bruno Haible <bruno@clisp.org>
310 * gnulib-local/modules/canonicalize (Makefile.am): Distribute
311 all files in lib/ through EXTRA_DIST.
312 * gnulib-local/modules/relocatable (Makefile.am): Likewise.
313 2006-09-14 Bruno Haible <bruno@clisp.org>
314 * gnulib-local/lib/canonicalize.c: Include <config.h>
316 * gnulib-local/lib/relocatable.c: Likewise.
317 * lib/relocatable.c: Likewise.
318 * gnulib-local/lib/relocwrapper.c: Likewise.
319 * gnulib-local/lib/xmalloc.c: Likewise.
320 * gnulib-local/lib/xreadlink.c: Likewise.
321 * gnulib-local/lib/xstrdup.c: Likewise.
322 2006-08-02 Bruno Haible <bruno@clisp.org>
323 * gnulib-local/modules/canonicalize: Put under LGPL.
324 * gnulib-local/modules/relocatable: Likewise.
325 2006-07-18 Bruno Haible <bruno@clisp.org>
326 * gnulib-local/xalloc.h (xzalloc): New declaration.
327 * gnulib-local/xmalloc.c (xzalloc): New function.
329 2006-10-24 Bruno Haible <bruno@clisp.org>
331 * man/Makefile.in (PACKAGE): New variable. Needed for docdir.
332 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
334 2006-10-14 Bruno Haible <bruno@clisp.org>
337 * README: Clarify copyright of the iconv program.
338 Reported by Charles Wilson <cwilson@fastmail.fm>.
340 2006-08-08 Bruno Haible <bruno@clisp.org>
342 * INSTALL.generic: Add a recommendation for Tru64.
343 Reported by Gary V. Vaughan <gary@gnu.org>.
345 2006-07-29 Bruno Haible <bruno@clisp.org>
347 * tests/check-subst: Set CHARSETALIASDIR.
348 Needed so that "make check" works before "make install" on systems
351 2006-07-29 Bruno Haible <bruno@clisp.org>
353 * Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
354 (AUTOCONF_FILES): Add the existing *.m4 files.
356 2006-07-29 Bruno Haible <bruno@clisp.org>
358 * gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
359 * src/iconv.c: Assume <locale.h> exists.
360 * configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
363 2006-07-29 Bruno Haible <bruno@clisp.org>
365 * configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
366 AC_ISC_POSIX, AC_HEADER_STDC.
368 2006-07-29 Bruno Haible <bruno@clisp.org>
370 * configure.ac: Remove macro invocations that are redundant through
371 gl_EARLY and gl_INIT.
373 2006-07-29 Bruno Haible <bruno@clisp.org>
375 * gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
376 Avoids a sh syntax error.
378 2006-07-29 Bruno Haible <bruno@clisp.org>
380 * gnulib-local/m4/relocatable.m4: Add comments.
382 2006-07-29 Bruno Haible <bruno@clisp.org>
384 * gnulib-local/modules/libiconv-misc: New file.
385 * Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
387 * Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
389 2006-07-29 Bruno Haible <bruno@clisp.org>
391 Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
392 AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
393 because we now assume that the system defines size_t and ptrdiff_t.
395 2006-07-29 Bruno Haible <bruno@clisp.org>
397 Switch to using gnulib.
398 * configure.ac (AC_PREREQ): Require autoconf-2.60.
399 Invoke gl_EARLY and gl_INIT.
400 * Makefile.devel (all): Depend on srclib/Makefile.am.
401 (aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
403 (GNULIB_MODULES): New variable.
404 (srclib/Makefile.am): New rule.
405 * gnulib-local: New directory.
406 * gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
407 * gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
408 * gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
409 * gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
410 * gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
411 * gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
412 * gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
413 * gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
414 * gnulib-local/lib/error.h.diff: New file.
415 * gnulib-local/lib/progname.h.diff: New file.
416 * gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
417 * gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
418 * gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
419 * gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
420 * gnulib-local/lib/strerror.c.diff: New file.
421 * gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
422 * gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
423 * gnulib-local/lib/width.c: Moved here from srclib/width.c.
424 * gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
425 * gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
426 * gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
427 * gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
428 * gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
429 * gnulib-local/modules/canonicalize: New file.
430 * gnulib-local/modules/progreloc: New file.
431 * gnulib-local/modules/relocatable: New file.
432 * gnulib-local/modules/relocwrapper: New file.
433 * gnulib-local/modules/uniwidth: New file.
434 * gnulib-local/modules/xalloc: New file.
435 * gnulib-local/modules/xreadlink: New file.
437 * m4/allocsa.m4: Remove file. Now taken from gnulib.
438 * m4/codeset.m4: Likewise.
439 * m4/eealloc.m4: Likewise.
440 * m4/error.m4: Likewise.
441 * m4/extensions.m4: Likewise.
442 * m4/full-header-path.m4: Likewise.
443 * m4/gettext.m4: Likewise.
444 * m4/glibc21.m4: Likewise.
445 * m4/iconv.m4: Likewise.
446 * m4/intmax.m4: Likewise.
447 * m4/inttypes-h.m4: Likewise.
448 * m4/inttypes_h.m4: Likewise.
449 * m4/isc-posix.m4: Likewise.
450 * m4/lcmessage.m4: Likewise.
451 * m4/lib-ld.m4: Likewise.
452 * m4/lib-link.m4: Likewise.
453 * m4/lib-prefix.m4: Likewise.
454 * m4/longdouble.m4: Likewise.
455 * m4/longlong.m4: Likewise.
456 * m4/mbstate_t.m4: Likewise.
457 * m4/nls.m4: Likewise.
458 * m4/onceonly.m4: Likewise.
459 * m4/pathmax.m4: Likewise.
460 * m4/po.m4: Likewise.
461 * m4/printf-posix.m4: Likewise.
462 * m4/progtest.m4: Likewise.
463 * m4/readlink.m4: Likewise.
464 * m4/setenv.m4: Likewise.
465 * m4/signed.m4: Likewise.
466 * m4/size_max.m4: Likewise.
467 * m4/ssize_t.m4: Likewise.
468 * m4/stdbool.m4: Likewise.
469 * m4/stdint.m4: Likewise.
470 * m4/stdint_h.m4: Likewise.
471 * m4/strerror.m4: Likewise.
472 * m4/strerror_r.m4: Likewise.
473 * m4/unistd_h.m4: Likewise.
474 * m4/unlocked-io.m4: Likewise.
475 * m4/visibility.m4: Likewise.
476 * m4/wchar_t.m4: Likewise.
477 * m4/wint_t.m4: Likewise.
479 * srclib/allocsa.h: Remove file. Now taken from gnulib.
480 * srclib/allocsa.c: Likewise.
481 * srclib/binary-io.h: Likewise.
482 * srclib/error.h: Likewise.
483 * srclib/error.c: Likewise.
484 * srclib/exit.h: Likewise.
485 * srclib/gettext.h: Likewise.
486 * srclib/memmove.c: Likewise.
487 * srclib/pathmax.h: Likewise.
488 * srclib/progname.h: Likewise.
489 * srclib/progname.c: Likewise.
490 * srclib/progreloc.c: Likewise.
491 * srclib/readlink.c: Likewise.
492 * srclib/setenv.h: Likewise.
493 * srclib/setenv.c: Likewise.
494 * srclib/stdbool_.h: Likewise.
495 * srclib/stdint_.h: Likewise.
496 * srclib/strerror.c: Likewise.
497 * srclib/unlocked-io.h: Likewise.
498 * srclib/unsetenv.c: Likewise.
499 * srclib/Makefile.am: Remove file.
501 2006-07-27 Bruno Haible <bruno@clisp.org>
503 Remove OS/2 build support that doesn't assume GNU make and GNU bash.
504 * README.os2: Remove file.
505 * Makefile.os2: Remove file.
506 * lib/Makefile.os2: Remove file.
507 * src/Makefile.os2: Remove file.
508 * man/Makefile.os2: Remove file.
509 * tests/Makefile.os2: Remove file.
510 * tests/check-stateful.cmd: Remove file.
511 * tests/check-stateless.cmd: Remove file.
512 * tests/check-translit.cmd: Remove file.
514 2006-07-25 Bruno Haible <bruno@clisp.org>
516 Remove MSVC/nmake build support.
517 * windows: Remove directory.
518 * Makefile.msvc: Remove file.
519 * lib/Makefile.msvc: Remove file.
520 * srclib/Makefile.msvc: Remove file.
521 * src/Makefile.msvc: Remove file.
522 * tests/Makefile.msvc: Remove file.
523 * man/Makefile.msvc: Remove file.
524 * po/Rules-msvc: Remove file.
525 * po/Makefile.msvc.sh: Remove file.
526 * Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
527 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
529 (po/Makefile.msvc): Remove rule.
532 2006-07-25 Bruno Haible <bruno@clisp.org>
535 * vms: Remove directory.
536 * Makefile.vms: Remove file.
537 * lib/Makefile.vms: Remove file.
538 * srclib/Makefile.vms: Remove file.
539 * src/Makefile.vms: Remove file.
540 * tests/Makefile.vms: Remove file.
541 * man/Makefile.vms: Remove file.
542 * Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
543 (include/iconv.h_vms): Remove rule.
546 2006-07-23 Bruno Haible <bruno@clisp.org>
548 * lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
549 * src/Makefile.in (iconv_no_i18n): Likewise.
551 * tests/Makefile.in (table-from, table-to): Likewise.
552 Needed because the CFLAGS can e.g. trigger profiling.
553 Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
555 2006-07-19 Bruno Haible <bruno@clisp.org>
557 * Version 1.11 released.
559 2006-07-19 Bruno Haible <bruno@clisp.org>
561 * srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
562 (LIBADD_SOURCE): Add them here.
564 2006-07-19 Bruno Haible <bruno@clisp.org>
566 * build-aux/config.guess: Update to GNU version 2006-07-02.
567 * build-aux/config.sub: Likewise.
569 2006-07-14 Bruno Haible <bruno@clisp.org>
571 * lib/Makefile.in (clean): Remove also *.stackdump.
572 * src/Makefile.in (clean): Likewise.
573 * tests/Makefile.in (clean): Likewise.
575 2006-07-14 Bruno Haible <bruno@clisp.org>
577 * src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
579 * tests/Makefile.in (clean): Remove also the programs, without
580 EXEEXT. Needed for cygwin or mingw.
581 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
582 Remove also bin directory. Needed for cygwin and mingw.
584 2006-07-03 Bruno Haible <bruno@clisp.org>
586 * src/iconv.c (check_subst_formatstring): Use ngettext.
587 (subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
588 after 2006-01-22 change.
589 * configure.ac: Require a gettext version with ngettext.
591 2006-06-28 Bruno Haible <bruno@clisp.org>
593 * m4/gettext.m4: Update from GNU gettext.
594 * m4/po.m4: Update from GNU gettext.
596 2006-06-27 Bruno Haible <bruno@clisp.org>
598 * Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
599 * Makefile.in (datarootdir): New variable.
600 (install, installdirs, uninstall): Also pass datarootdir.
601 * configure.ac (mandir): Remove customization.
602 * man/Makefile.in (datarootdir): New variable.
603 (docdir, htmldir): Use autoconf-substituted value.
604 * src/Makefile.in (datarootdir): New variable.
605 (localedir): Use autoconf-substituted value.
607 2006-06-27 Bruno Haible <bruno@clisp.org>
609 * m4/stdint.m4: Update from gnulib.
610 * srclib/stdint_.h: Update from gnulib.
611 * srclib/Makefile.am: Update.
613 2006-06-17 Bruno Haible <bruno@clisp.org>
615 * srclib/unsetenv.c: Update from GNU gettext.
616 * srclib/xreadlink.c: Likewise.
618 2006-06-16 Bruno Haible <bruno@clisp.org>
620 * m4/full-header-path.m4: New file, from gnulib.
621 * m4/size_max.m4: New file, from gnulib.
622 * m4/stdint.m4: Update from gnulib.
623 * srclib/stdint_.h: Update from gnulib.
624 * srclib/Makefile.am (stdint.h): Likewise.
625 * Makefile.devel (aclocal.m4): Update dependencies.
627 2006-06-16 Bruno Haible <bruno@clisp.org>
629 * m4/ssize_t.m4: Update from GNU gettext.
631 2006-06-12 Bruno Haible <bruno@clisp.org>
633 * m4/gettext.m4: Update from GNU gettext.
634 * m4/inttypes-h.m4: New file, from GNU gettext.
635 * m4/inttypes.m4: Remove file.
636 * m4/stdint.m4 (gl_STDINT_H): Update.
637 * Makefile.devel (aclocal.m4): Update dependencies.
639 2006-06-10 Bruno Haible <bruno@clisp.org>
641 * src/iconv.c (error) [NO_I18N]: Define here instead of including
642 error.h. Fixes link failure introduced on 2006-01-22.
644 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
646 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
647 "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
649 2006-05-20 Bruno Haible <bruno@clisp.org>
651 * tests/BIG5-HKSCS-1999-snippet: New file.
652 * tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
653 * tests/BIG5-HKSCS-2001-snippet: New file.
654 * tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
655 * tests/BIG5-HKSCS-2004-snippet: New file.
656 * tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
657 * tests/Makefile.in (check): Test also the stateful parts of
658 BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
660 2006-05-17 Bruno Haible <bruno@clisp.org>
662 Implement newer releases of BIG5-HKSCS.
663 * tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
665 (hkscs.h): Remove rule.
666 (hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
667 * tools/cjk_tab_to_h.c (output_title): Update year.
668 (main): Recognize hkscs1999, hkscs2001, hkscs2004.
669 * lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
670 BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
671 * lib/hkscs.h: Remove file.
672 * lib/hkscs1999.h: New file.
673 * lib/hkscs2001.h: New file.
674 * lib/hkscs2004.h: New file.
675 * lib/big5hkscs.h: Remove file.
676 * lib/big5hkscs1999.h: New file.
677 * lib/big5hkscs2001.h: New file.
678 * lib/big5hkscs2004.h: New file.
679 * lib/converters.h: Include the new files.
680 * README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
681 * tests/BIG5-HKSCS.TXT: Remove file.
682 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
683 * tests/BIG5-HKSCS-1999.TXT: New file.
684 * tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
685 * tests/BIG5-HKSCS-2001.TXT: New file.
686 * tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
687 * tests/BIG5-HKSCS-2004.TXT: New file.
688 * tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
689 * tests/check-stateless: Convert colon in the charset name to a dash in
691 * tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
692 BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
693 * tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
694 * tests/Makefile.os2 (check): Likewise.
696 2006-05-17 Bruno Haible <bruno@clisp.org>
698 * srclib/progreloc.c: Update from GNU gettext.
700 2006-05-16 Bruno Haible <bruno@clisp.org>
702 * src/Makefile.in (clean): Use EXEEXT.
703 * tests/Makefile.in (check, clean): Likewise.
705 2006-05-15 Bruno Haible <bruno@clisp.org>
707 * configure.ac: Move some checks before AC_RELOCATABLE.
709 2006-05-15 Bruno Haible <bruno@clisp.org>
711 Support for building shared libraries on mingw and Cygwin.
712 * configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
713 * include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
714 * woe32dll/export.h: New file, from GNU gettext.
715 * woe32dll/iconv-exports.h: New file.
716 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
717 include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
718 * lib/Makefile.in (INCLUDES): Add -I for parent directory.
719 (LDFLAGS): Add WOE32DLL dependent flags.
720 (LDFLAGS_yes, LDFLAGS_no): New variables.
721 (OBJECTS): Add WOE32DLL dependent objects.
722 (OBJECTS_yes, OBJECTS_no): New variables.
723 (iconv-exports.lo): New rule.
725 2006-05-15 Bruno Haible <bruno@clisp.org>
727 * srclib/gettext.h: Update from GNU gettext.
728 * srclib/pathmax.h: Update from GNU gettext.
729 * srclib/progreloc.c: Update from GNU gettext.
730 * srclib/unsetenv.c: Update from GNU gettext.
731 * srclib/Makefile.am: Add snippet for creation of unistd.h.
732 * m4/extensions.m4: Update from GNU gettext.
733 * m4/gettext.m4: Update from GNU gettext.
734 * m4/lib-ld.m4: Update from GNU gettext.
735 * m4/lib-link.m4: Update from GNU gettext.
736 * m4/lib-prefix.m4: Update from GNU gettext.
737 * m4/longdouble.m4: Update from GNU gettext.
738 * m4/nls.m4: Update from GNU gettext.
739 * m4/onceonly.m4: Update from GNU gettext.
740 * m4/po.m4: Update from GNU gettext.
741 * m4/relocatable.m4: Update from GNU gettext.
742 * m4/unistd_h.m4: New file, from GNU gettext.
743 * Makefile.devel (aclocal.m4): Depend on it.
744 * configure.ac: Invoke gl_HEADER_UNISTD.
746 2006-05-14 Bruno Haible <bruno@clisp.org>,
747 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
749 * m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
750 (AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
751 (AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
752 Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
754 2006-05-06 Charles Wilson <cygwin@cwilson.fastmail.fm>
756 * m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
757 compiling a shared library object.
759 2006-05-15 Bruno Haible <bruno@clisp.org>
761 * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
763 2006-03-31 Juan Manuel Guerrero <juan.guerrero@gmx.de>
767 2006-01-23 Bruno Haible <bruno@clisp.org>
769 * configure.ac: Invoke gl_ALLOCSA.
771 * Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
773 2006-01-22 Bruno Haible <bruno@clisp.org>
775 * src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
778 2006-01-22 Bruno Haible <bruno@clisp.org>
780 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
782 2006-01-22 Bruno Haible <bruno@clisp.org>
784 * src/iconv.c: Include error.h, exit.h.
785 (print_version): Use EXIT_SUCCESS.
786 (check_subst_formatstring, subst_mb_to_uc_fallback,
787 subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
788 subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
789 error() instead of fprintf to stderr.
791 2006-01-22 Bruno Haible <bruno@clisp.org>
793 New feature: character-dependent substitutions.
794 * include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
795 iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
796 iconv_wchar_wc_to_mb_fallback): New types.
797 (struct iconv_fallbacks): New structure type.
798 (ICONV_SET_FALLBACKS): New macro.
799 * configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
800 * Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
801 * Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
802 include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
803 * lib/converters.h (struct conv_struct): Add field 'fallbacks'.
804 * lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
805 (uc_to_mb_write_replacement): New function.
806 (struct mb_to_uc_fallback_locals): New type.
807 (mb_to_uc_write_replacement): New function.
808 (unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
809 (unicode_loop_reset): Call uc_to_mb_fallback.
810 * lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
811 (wc_to_mb_write_replacement): New function.
812 (wchar_from_loop_convert): Call wc_to_mb_fallback.
813 (struct mb_to_wc_fallback_locals): New type.
814 (mb_to_wc_write_replacement): New function.
815 (wchar_to_loop_convert): Call mb_to_wc_fallback.
816 * lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
817 (iconvctl): Handle ICONV_SET_FALLBACKS.
818 * lib/genflags.c (struct iconv_fallbacks): New dummy definition.
819 * src/iconv.c: Include limits.h.
820 (isdigit, c_isprint): New macros.
821 (usage): Document long options and new options.
822 (check_subst_formatstring): New function.
823 (ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
825 (ilseq_byte_subst_size, ilseq_wchar_subst_size,
826 ilseq_unicode_subst_size): New variables.
827 (ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
828 ilseq_unicode_subst_buffer): New variables.
829 (subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
830 (subst_mb_to_uc_fallback): New function.
831 (subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
832 (subst_uc_to_mb_fallback): New function.
833 (subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
834 (subst_mb_to_wc_fallback): New function.
835 (subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
836 (subst_wc_to_mb_fallback): New function.
837 (subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
838 (subst_mb_to_mb_fallback): New function.
839 (convert): Enlarge the outbuf when the conversion failed with E2BIG.
840 (main): Handle new options --byte-subst, --widechar-subst,
842 * man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
844 * tests/check-subst: New file.
845 * tests/Makefile.in (check): Also invoke check-subst.
846 Suggested by James Taylor <james@oakseed.demon.co.uk>.
848 2006-01-21 Bruno Haible <bruno@clisp.org>
850 * src/iconv.c (print_version): Bump copyright year.
851 (main): Accept long options --from-code, --to-code, --list, --silent.
852 Accept abbreviated long options, like getopt() does.
853 * man/iconv.1: Document long options.
855 2005-12-29 Bruno Haible <bruno@clisp.org>
857 * src/iconv.c (print_version): Update copyright year.
859 2005-12-29 Bruno Haible <bruno@clisp.org>
861 * configure.ac: Renamed from configure.in.
862 * Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
864 2005-12-29 Bruno Haible <bruno@clisp.org>
866 * configure.in: Bump version number.
867 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
868 * windows/iconv.rc: Likewise.
869 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
871 2005-12-29 Bruno Haible <bruno@clisp.org>
873 * build-aux/config.guess: Update to GNU version 2005-12-23.
874 * build-aux/config.sub: Likewise.
875 * build-aux/config.libpath: Update from GNU gettext.
876 * build-aux/install-sh: Upgrade to automake-1.9.5.
877 * build-aux/missing: Upgrade to automake-1.9.5.
878 * build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
880 2005-12-29 Bruno Haible <bruno@clisp.org>
882 * m4/alloca.m4: Update from GNU gettext.
883 * m4/allocsa.m4: Update from GNU gettext.
884 * m4/canonicalize.m4: Update from GNU gettext.
885 * m4/codeset.m4: Update from GNU gettext.
886 * m4/eealloc.m4: Update from GNU gettext.
887 * m4/error.m4: Update from GNU gettext.
888 * m4/extensions.m4: Update from GNU gettext.
889 * m4/gettext.m4: Update from GNU gettext.
890 * m4/glibc21.m4: Update from GNU gettext.
891 * m4/iconv.m4: Update from GNU gettext.
892 * m4/intmax.m4: Update from GNU gettext.
893 * m4/inttypes_h.m4: New file, from GNU gettext.
894 * m4/isc-posix.m4: Update from GNU gettext.
895 * m4/lcmessage.m4: Update from GNU gettext.
896 * m4/longdouble.m4: Update from GNU gettext.
897 * m4/longlong.m4: Update from GNU gettext.
898 * m4/mbstate_t.m4: Update from GNU gettext.
899 * m4/nls.m4: Update from GNU gettext.
900 * m4/onceonly.m4: Update from GNU gettext.
901 * m4/pathmax.m4: Update from GNU gettext.
902 * m4/po.m4: Update from GNU gettext.
903 * m4/printf-posix.m4: Update from GNU gettext.
904 * m4/progtest.m4: Update from GNU gettext.
905 * m4/readlink.m4: Update from GNU gettext.
906 * m4/relocatable.m4: Update from GNU gettext.
907 * m4/setenv.m4: Update from GNU gettext.
908 * m4/signed.m4: Update from GNU gettext.
909 * m4/ssize_t.m4: Update from GNU gettext.
910 * m4/stdbool.m4: Update from GNU gettext.
911 * m4/stdint_h.m4: New file, from GNU gettext.
912 * m4/strerror.m4: Update from GNU gettext.
913 * m4/strerror_r.m4: Update from GNU gettext.
914 * m4/unlocked-io.m4: Update from GNU gettext.
915 * m4/wchar_t.m4: Update from GNU gettext.
916 * m4/wint_t.m4: Update from GNU gettext.
917 * m4/xreadlink.m4: Update from GNU gettext.
918 * Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
919 m4/stdint_h.m4 as well.
920 * configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
921 Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
922 Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
923 Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
924 Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
925 SRCLIBOBJS instead of LIBOBJS.
926 * srclib/alloca_.h: Update from GNU gettext.
927 * srclib/allocsa.h: Update from GNU gettext.
928 * srclib/canonicalize.c: Update from GNU gettext.
929 * srclib/error.h: Update from GNU gettext.
930 * srclib/error.c: Update from GNU gettext.
931 * srclib/gettext.h: Update from GNU gettext.
932 * srclib/memmove.c: Update from GNU gettext.
933 * srclib/progname.h: Update from GNU gettext.
934 * srclib/progname.c: Update from GNU gettext.
935 * srclib/progreloc.c: Update from GNU gettext.
936 * srclib/readlink.c: Update from GNU gettext.
937 * srclib/relocatable.c: Update from GNU gettext.
938 * srclib/relocwrapper.c: Update from GNU gettext.
939 * srclib/setenv.h: Update from GNU gettext.
940 * srclib/setenv.c: Update from GNU gettext.
941 * srclib/stdbool_.h: Update from GNU gettext.
942 * srclib/stdint_.h: Update from gnulib.
943 * srclib/strerror.c: Update from GNU gettext.
944 * srclib/unlocked-io.h: Update from GNU gettext.
945 * srclib/unsetenv.c: Update from GNU gettext.
946 * srclib/xalloc.h: Update from GNU gettext.
947 * srclib/xmalloc.c: Update from GNU gettext.
948 * srclib/xreadlink.c: Update from GNU gettext.
949 * srclib/xstrdup.c: Update from GNU gettext.
950 * srclib/Makefile.am (DEFS): Also define EXEEXT.
951 (libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
952 (libicrt_a_DEPENDENCIES): New variable.
953 * src/Makefile.in (EXEEXT): New variable.
954 * build-aux/install-reloc: Update from GNU gettext.
955 * build-aux/reloc-ldflags: Update from GNU gettext.
956 * build-aux/config.rpath: Update from GNU gettext.
958 2005-12-29 Bruno Haible <bruno@clisp.org>
960 * m4/libtool.m4: Update, based on libtool-1.5.22.
961 * build-aux/ltmain.sh: Update, based on libtool-1.5.22.
963 2005-12-24 Bruno Haible <bruno@clisp.org>
965 Check the whole range of GB18030.
966 * tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
967 * tests/gengb18030z.c: New file.
968 * tests/table-from.c (main): For GB18030, don't stop at U+10000.
969 * tests/table-to.c (main): Likewise.
970 * tests/Makefile.in (check): Generate GB18030.TXT on the fly from
972 (clean): Remove also gengb18030z and GB18030.TXT.
973 * tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
975 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
976 * tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
977 GB18030.TXT on the fly from GB18030-BMP.TXT.
978 (clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
980 2005-12-20 Bruno Haible <bruno@clisp.org>
982 * tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
983 up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
986 2005-12-22 Bruno Haible <bruno@clisp.org>
988 Extend GB18030 converter to cover the entire Unicode PUA.
989 * lib/gb18030.h: Update comments, based on second printing.
990 (gb18030_mbtowc): Add mapping for range U+E000..U+E765.
991 (gb18030_pua2charset): New array.
992 (gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
993 part of range U+E766..U+E864.
994 * lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
996 (gb18030ext_mbtowc): Add mapping for the two-byte part of range
998 * lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
999 gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
1001 (gb18030uni_mbtowc, gb18030uni_wctomb): Update.
1002 * tests/GB18030.TXT: Complete mappings to private area.
1004 2005-12-22 Bruno Haible <bruno@clisp.org>
1006 * lib/gbk.h: Update comments.
1008 2005-12-20 Bruno Haible <bruno@clisp.org>
1010 Add private area mappings to CP949.
1011 * lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
1013 * tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
1015 2005-12-15 Bruno Haible <bruno@clisp.org>
1017 Add private area mappings to CP950.
1018 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
1020 * tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
1022 2005-12-15 Bruno Haible <bruno@clisp.org>
1024 Make CP936 follow what Microsoft does.
1025 In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
1026 added a 0x80 - U+20AC mapping to the code chart, but not to the
1027 tooltips and not to the list of mappings.
1028 * lib/cp936.h: New file.
1029 * lib/gbk.h: Update comments.
1030 * lib/ces_gbk.h: Update comments.
1031 * lib/converters.h: Include cp936.h.
1032 * lib/encodings.def (CP936): New encoding.
1033 (GBK): Remove CP936 aliases.
1034 * README, man/iconv_open.3: Add CP936.
1035 * tests/Makefile.in (check): Check CP936.
1036 * tests/Makefile.msvc (check): Likewise.
1037 * tests/Makefile.os2 (check): Likewise.
1038 * tests/CP936.TXT: New file.
1040 2005-12-14 Bruno Haible <bruno@clisp.org>
1042 * lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
1043 U+FFE1 like Microsoft does it.
1044 * lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
1045 Reported by Lei Wang <lwang@qilinsoft.com>.
1047 2005-12-14 Bruno Haible <bruno@clisp.org>
1049 Follow Euro sign addition done in 1999 in
1050 http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
1051 * lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
1052 * tests/CP950.TXT: Add mapping for 0xA3E1.
1054 2005-11-11 Bruno Haible <bruno@clisp.org>
1056 * lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
1057 and only two bytes are available in the output buffer, return
1058 RET_TOOSMALL instead of overrunning the output buffer.
1059 * lib/isoir165.h (isoir165_wctomb): When only one byte is available
1060 in the output buffer, don't overrun the output buffer.
1061 Reported by William Bardwell <bardwell@curl.com>.
1063 2005-09-18 Bruno Haible <bruno@clisp.org>
1065 * m4/libtool.m4: Update, based on libtool-1.5.20.
1066 * build-aux/ltmain.sh: Update, based on libtool-1.5.20.
1068 2005-08-12 Bruno Haible <bruno@clisp.org>
1070 * lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
1071 * tests/BIG5-2003.TXT: Likewise.
1072 * tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
1073 Reported by Ping Yeh <ping@pingyeh.net>.
1075 2005-07-24 Bruno Haible <bruno@clisp.org>
1077 Tidy up exported symbols.
1078 * m4/visibility.m4: New file.
1079 * include/export.h: New file.
1080 * configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
1081 create also include/iconv.h.inst.
1082 * Makefile.devel (all): Depend on include/iconv.h.build.in.
1083 (aclocal.m4): Depend on m4/visibility.m4.
1084 (include/iconv.h.build.in): New rule.
1085 * Makefile.in (install-lib, install): Install include/iconv.h.inst,
1086 not the include/iconv.h that was used for building.
1087 (distclean, maintainer-clean): Remove also include/iconv.h.inst.
1088 * lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
1089 (DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
1090 * lib/config.h.in (HAVE_VISIBILITY): New macro.
1091 * lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1092 Define to the gcc visibility attribute.
1093 * srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
1096 2005-07-25 Bruno Haible <bruno@clisp.org>
1098 2003-08-24 Bruno Haible <bruno@clisp.org>
1099 * lib/relocatable.h: Make this file includable in C++ mode: add extern
1102 2005-07-08 Bruno Haible <bruno@clisp.org>
1104 * Version 1.10 released.
1106 2005-07-08 Bruno Haible <bruno@clisp.org>
1108 * m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
1109 executable after installing it.
1111 2005-07-08 Bruno Haible <bruno@clisp.org>
1113 * configure.in: Bump version number.
1114 * include/iconv.h.in (_LIBICONV_VERSION): Likewise.
1115 * windows/iconv.rc: Likewise.
1116 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
1118 2005-07-05 Bruno Haible <bruno@clisp.org>
1120 * Makefile.devel (ACLOCAL): New variable.
1121 (aclocal.m4): Use it.
1123 2005-07-05 Bruno Haible <bruno@clisp.org>
1125 * m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
1126 SET_RELOCATABLE to a trivial value.
1128 2004-08-08 Bruno Haible <bruno@clisp.org>
1130 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1133 2004-04-28 Bruno Haible <bruno@clisp.org>
1135 * srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
1136 Treat Cygwin like Windows, since it now accepts Windows pathnames.
1138 2005-06-09 Bruno Haible <bruno@clisp.org>
1140 * Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
1141 * lib/Makefile.in (mkinstalldirs): Likewise.
1142 * src/Makefile.in (mkinstalldirs): Likewise.
1143 * man/Makefile.in (mkinstalldirs): Likewise.
1145 2005-06-08 Bruno Haible <bruno@clisp.org>
1147 * srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
1148 that don't support symbolic links.
1150 2005-06-08 Bruno Haible <bruno@clisp.org>
1152 * srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
1153 gcc warning on mingw.
1155 2005-05-22 Bruno Haible <bruno@clisp.org>
1157 Implement and document BIG5-2003.
1158 * lib/big5_2003.h: New file.
1159 * lib/converters.h: Include it.
1160 * lib/encodings_extra.def (BIG5-2003): New encoding.
1161 * README, man/iconv_open.3: Add BIG5-2003.
1162 * tests/Makefile.in (check-extra-yes): Check BIG5-2003.
1163 * tests/BIG5-2003.TXT: New file.
1165 2005-05-21 Bruno Haible <bruno@clisp.org>
1167 Add EURO SIGN to EUC-TW converter.
1168 * lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
1169 (cns11643_1_mbtowc): Update.
1170 * lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
1171 (cns11643_inv_uni2indx_page*): Update.
1172 * lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
1174 * tests/EUC-TW.TXT: Add entry for 0x20AC.
1175 * tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
1177 2005-05-03 Bruno Haible <bruno@clisp.org>
1179 * tools/Makefile (ALL): Add pt154.h.
1180 (pt154.h): New rule.
1181 * lib/encodings.def: Add PT154.
1182 * lib/pt154.h: New file.
1183 * lib/converters.h: Include it.
1184 * README, man/iconv_open.3: Add PT154.
1185 * NOTES: Mention PT154.
1186 * tests/PT154.TXT: New file.
1187 * tests/Makefile.in (check): Also test PT154.
1188 * tests/Makefile.msvc (check): Likewise.
1189 * tests/Makefile.os2 (check): Likewise.
1191 2005-03-29 Bruno Haible <bruno@clisp.org>
1193 Rename libiconv_plug.so to preloadable_libiconv.so.
1194 * configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
1196 * lib/Makefile.in (preloadable_libiconv.so): Renamed from
1198 (preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
1199 (preloadable_libiconv_solaris.so): Renamed from
1200 libiconv_plug_solaris.so.
1201 (preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
1205 2005-03-29 Bruno Haible <bruno@clisp.org>
1207 Implement and document ATARIST.
1208 * tools/Makefile (ALL): Add atarist.h.
1209 (atarist.h): New rule.
1210 * lib/atarist.h: New file.
1211 * lib/converters.h: Include it.
1212 * lib/encodings_extra.def (ATARIST): New encoding.
1213 * README, man/iconv_open.3: Add ATARIST.
1214 * tests/Makefile.in (check-extra-yes): Check ATARIST.
1215 * tests/ATARIST.TXT: New file.
1217 2005-03-22 Bruno Haible <bruno@clisp.org>
1219 * build-aux: New directory, renamed from autoconf.
1220 * configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
1222 2005-03-16 Bruno Haible <bruno@clisp.org>
1224 * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
1225 HAVE_LONGLONG_64BIT.
1226 * srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
1227 HAVE_LONGLONG_64BIT.
1228 * srclib/Makefile.am (stdint.h): Likewise.
1230 2005-03-14 Bruno Haible <bruno@clisp.org>
1232 * Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
1233 extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
1234 printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
1235 wchar_t.m4, wint_t.m4.
1237 2005-03-13 Bruno Haible <bruno@clisp.org>
1239 Make stdout error checking reliable, also when writing to a NFS file.
1240 * src/iconv.c (main): Check the return value of fclose(stdout).
1241 * lib/genaliases.c (main): Likewise.
1242 * lib/genaliases2.c (main): Likewise.
1243 * lib/genflags.c (main): Likewise.
1244 * lib/gentranslit.c (main): Likewise.
1245 * tests/genutf8.c (main): Likewise.
1246 * tests/table-from.c (main): Likewise.
1247 * tests/table-to.c (main): Likewise.
1249 2005-03-13 Bruno Haible <bruno@clisp.org>
1251 * src/iconv.c (convert): Before outputting an error message, flush
1252 stdout and output a newline if suitable.
1254 2005-03-13 Bruno Haible <bruno@clisp.org>
1256 Improved error messages.
1257 * srclib/width.c: New file, from GNU clisp.
1258 * srclib/uniwidth.h: New file, from GNU clisp with modifications.
1259 * srclib/unitypes.h: New file, from GNU clisp with modifications.
1260 * srclib/cjk.h: New file, from GNU clisp.
1261 * srclib/streq.h: New file, from GNU clisp.
1262 * srclib/stdint_.h: New file, from gnulib.
1263 * m4/stdint.m4: New file, from gnulib.
1264 * m4/inttypes.m4: New file, from gnulib.
1265 * srclib/Makefile.am: Add gnulib module 'stdint' snippet.
1266 (BUILT_SOURCES): New variable.
1267 (libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
1269 * configure.in: Invoke gl_STDINT_H.
1270 * src/iconv.c: Include cjk.h, uniwidth.h.
1271 (line, column, cjkcode): New variables.
1272 (update_line_column): New function.
1273 (convert): Initialize line and column. In all error message, show also
1274 the line and column number.
1275 (main): Initialize cjkcode. Set up hooks to call update_line_column.
1277 2005-03-13 Bruno Haible <bruno@clisp.org>
1279 * include/iconv.h.in (iconv_canonicalize): New declaration.
1280 * lib/genaliases.c (emit_encoding): Take two output streams as
1281 arguments. To the second stream, emit a shell command for extracting
1282 offsets into the gperf generated string pool.
1283 (main): Write the shell commands into file descriptors 3 and 4.
1284 * lib/genaliases2.c (emit_encoding): Take two output streams as
1285 arguments. To the second stream, emit an expression for the offset
1286 into the string pool.
1287 (main): Write the offsets into file descriptor 3.
1288 * Makefile.devel (lib/aliases.gperf): Remove target.
1289 (lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
1290 lib/canonical.h and lib/canonical_local.h.
1291 (lib/aliases_aix.h): Generate also lib/canonical_aix.h.
1292 (lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
1293 (lib/aliases_dos.h): Generate also lib/canonical_dos.h.
1294 (lib/aliases_extra.h): Generate also lib/canonical_extra.h.
1295 * lib/iconv.c (stringpool2): Provide default definition when it doesn't
1297 (all_canonical): New array.
1298 (iconv_canonicalize): New function.
1300 2005-03-13 Bruno Haible <bruno@clisp.org>
1302 * include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
1303 iconv_hooks): New types.
1304 (ICONV_SET_HOOKS): New macro.
1305 * lib/converters.h (struct conv_struct): Add field 'hooks'.
1306 * lib/iconv.c (iconv_open): Initialize hooks to NULL.
1307 (iconvctl): Handle ICONV_SET_HOOKS.
1308 * lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
1309 conversion of a character, call the uc_hook.
1310 * lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
1312 * lib/genflags.c (iconv_hooks): Provide a dummy definition.
1314 2005-02-05 Bruno Haible <bruno@clisp.org>
1316 * src/iconv.c (main): In case of unsupported encodings, show a hint
1319 2005-01-06 Bruno Haible <bruno@clisp.org>
1321 * lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
1322 * lib/Makefile.vms (DEFS): Likewise.
1323 Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
1325 2005-01-05 Bruno Haible <bruno@clisp.org>
1327 * autoconf/config.rpath: Update from GNU gettext.
1329 2005-01-05 Bruno Haible <bruno@clisp.org>
1331 Assume automake-1.9.
1332 * Makefile.devel (AUTOMAKE): Assume automake-1.9.
1334 2005-01-05 Bruno Haible <bruno@clisp.org>
1336 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
1337 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
1339 2004-11-11 Bruno Haible <bruno@clisp.org>
1341 * lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
1343 Reported by Lukas Gebauer <gebauerl@mlp.cz>.
1345 2004-09-21 Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>
1347 * djgpp/config.bat: Update.
1348 * djgpp/config.sed: Update.
1349 * djgpp/config.site: Update.
1350 * djgpp/edtest.bat: Update.
1351 * djgpp/fnchange.in: Update.
1352 * djgpp/Makefile.maint: Update.
1353 * djgpp/makefile.sed: Update.
1354 * djgpp/README.in: Update.
1355 * djgpp/sources.sed: Update.
1356 * djgpp/translit-check.sed: Update.
1358 2004-08-25 Bruno Haible <bruno@clisp.org>
1360 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
1361 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
1363 2004-07-31 Bruno Haible <bruno@clisp.org>
1365 Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
1366 * tools/Makefile (jisx0213.h): Bump version number.
1367 * tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
1368 U+2299 -> U+29BF, and add 10 new characters.
1369 * tools/cjk_tab_to_h.c (output_title): Bump year.
1370 (do_jisx0213): Update comments. Emit a conditional 'inline'.
1371 * lib/jisx0213.h: Regenerated.
1372 * lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
1373 ESC $ ( Q as a synonym of ESC $ ( O.
1374 (iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
1375 * tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
1376 U+2299 -> U+29BF, and add 10 new characters.
1377 * tests/SHIFT_JISX0213.TXT: Likewise.
1378 * tests/ISO-2022-JP-3-snippet: Update.
1379 * tests/ISO-2022-JP-3-snippet.UTF-8: Update.
1381 2004-07-22 Bruno Haible <bruno@clisp.org>
1383 * lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
1384 * tools/Makefile (iso8859_7.h): Use conversion table from 2003.
1385 * lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
1386 * tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
1388 2004-07-22 Bruno Haible <bruno@clisp.org>
1390 * tools/Makefile (ALL): Add iso8859_11.h.
1391 (iso8859_11.h): New rule.
1392 * lib/encodings.def: Add ISO-8859-11.
1393 * lib/iso8859_11.h: New file.
1394 * lib/converters.h: Include it.
1395 * tests/ISO-8859-11.TXT: New file.
1396 * tests/Makefile.in (check): Also test ISO-8859-11.
1397 * tests/Makefile.msvc (check): Likewise.
1398 * tests/Makefile.os2 (check): Likewise.
1400 2004-07-17 Bruno Haible <bruno@clisp.org>
1402 * src/iconv.c (main): Terminate option parsing when option -- is seen.
1403 Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
1405 2004-03-05 Bruno Haible <bruno@clisp.org>
1407 * src/Makefile.in (install): Make DESTDIR work on HP-UX.
1408 Reported by Bob Proulx <box@proulx.com>.
1410 2004-02-19 Bruno Haible <bruno@clisp.org>
1412 * lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
1413 0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
1414 (viet_comp_table0301_len): Increment by 4.
1416 * lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
1417 which are not entries in cp1255_comp_table_data.
1418 * lib/cp1258.h (cp1258_comp_bases): New array.
1419 (cp1258_mbtowc): Don't delay the handling of characters which are not
1420 relevant entries in viet_comp_table_data.
1421 * lib/tcvn.h (tcvn_comp_bases): New array.
1422 (tcvn_mbtowc): Don't delay the handling of characters which are not
1423 relevant entries in viet_comp_table_data.
1424 Reported by Alain Bench <veronatif@free.fr>.
1426 2004-02-02 Perry Rapp <lifelines_3_0_18@hotmail.com>
1427 Bruno Haible <bruno@clisp.org>
1429 * man/iconvctl.3: New file.
1430 * man/iconv.3: Refer to it in "See also".
1431 * man/iconv_open.3: Likewise.
1433 2004-01-24 Bruno Haible <bruno@clisp.org>
1435 * srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
1438 2004-01-20 Bruno Haible <bruno@clisp.org>
1440 Upgrade from gettext-0.14.
1442 * configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
1443 instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
1444 * srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
1445 xalloc.h. Remove xmalloc.h.
1446 (libicrt_a_LIBADD): Remove @ALLOCA@.
1447 * srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
1448 (allocsa.obj): New rule.
1449 * srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
1450 (allocsa.obj): New rule.
1451 * Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
1452 (config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
1456 2003-10-09 Bruno Haible <bruno@clisp.org>
1457 * lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
1459 2003-08-01 Bruno Haible <bruno@clisp.org>
1460 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
1461 Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
1463 2003-06-22 Bruno Haible <bruno@clisp.org>
1464 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
1465 the case when it is not used.
1466 Reported by Pavel Roskin <proski@gnu.org>.
1470 * m4/gettext.m4: Upgrade from GNU gettext. Many changes.
1471 * m4/po.m4: Likewise.
1473 * m4/readlink.m4: New file, from GNU gettext.
1475 2003-11-30 Bruno Haible <bruno@clisp.org>
1476 * m4/allocsa.m4: New file.
1477 * m4/eealloc.m4: New file.
1478 * m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
1481 2003-10-21 Bruno Haible <bruno@clisp.org>
1482 * m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
1485 2003-08-24 Bruno Haible <bruno@clisp.org>
1486 * m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
1487 since the substitution of @host@ may occur before the substitution of
1490 2003-08-23 Bruno Haible <bruno@clisp.org>
1491 * stdbool.m4: Replace with the version from gnulib, without
1494 2003-08-08 Paul Eggert <eggert@twinsun.com>
1495 * m4/extensions.m4: New file.
1496 * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
1497 Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
1499 2003-07-01 Bruno Haible <bruno@clisp.org>
1500 * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
1501 <sys/types.h> should be sufficient.
1502 Reported by Paul Eggert.
1504 2003-07-01 Bruno Haible <bruno@clisp.org>
1505 * m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
1506 from aclocal-1.4-p4.
1507 Reported by Luke Schierer <lschiere@rackspace.com> and
1508 Michael C. Toren <mct@toren.net>.
1510 2003-07-01 Paul Eggert <eggert@twinsun.com>
1511 * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
1512 xreadlink.c now includes it unconditionally.
1514 2003-06-17 Paul Eggert <eggert@twinsun.com>
1515 * m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
1516 for portability to POSIX 1003.1-2001. Backported from libtool-1.5.
1518 2003-05-28 Paul Eggert <eggert@twinsun.com>
1519 * m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
1520 * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
1522 2002-12-24 Bruno Haible <bruno@clisp.org>
1523 * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
1524 (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
1526 (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
1531 2003-11-30 Bruno Haible <bruno@clisp.org>
1532 * srclib/alloca.c: Remove file.
1534 2003-11-30 Bruno Haible <bruno@clisp.org>
1535 Safer stack allocation.
1536 * srclib/allocsa.h: New file.
1537 * srclib/allocsa.c: New file.
1538 * canonicalize.c: Include allocsa.h.
1539 (__realpath): Use allocsa instead of alloca. Don't clobber errno right
1540 before returning NULL.
1541 * srclib/relocwrapper.c: Indirectly depends on allocsa.
1542 * srclib/setenv.c: Include allocsa.h.
1543 (alloca): Remove fallback definition.
1544 (freea): Remove macro.
1545 (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
1548 2003-11-17 Bruno Haible <bruno@clisp.org>
1549 * srclib/canonicalize.c: #undef realpath after <config.h> but before
1550 the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
1551 Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
1553 2003-10-21 Bruno Haible <bruno@clisp.org>
1554 * srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
1555 systems without symbolic links.
1557 2003-10-17 Bruno Haible <bruno@clisp.org>
1558 * srclib/binary-io.h: Avoid warnings on Cygwin.
1560 2003-10-09 Bruno Haible <bruno@clisp.org>
1561 * srclib/xalloc.h: Renamed from xmalloc.h.
1562 * srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
1563 * srclib/relocatable.c: Likewise.
1564 * srclib/xmalloc.c: Likewise.
1565 * srclib/xreadlink.c: Likewise.
1566 * srclib/xstrdup.c: Likewise.
1568 2003-09-12 Paul Eggert <eggert@twinsun.com>
1569 * srclib/progreloc.c (get_full_program_name): Define via prototype.
1571 2003-09-12 Paul Eggert <eggert@twinsun.com>
1572 * srclib/setenv.c (clearenv): Define via prototype.
1574 2003-09-10 Bruno Haible <bruno@clisp.org>
1575 * srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
1576 * srclib/unsetenv.c: Likewise.
1578 2003-08-28 Bruno Haible <bruno@clisp.org>
1579 * srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
1580 a warning on QNX, which defines O_BINARY to 000000.
1582 2003-08-24 Bruno Haible <bruno@clisp.org>
1583 * srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
1584 when MSVC7 <stdio.h> is included later.
1586 2003-08-24 Bruno Haible <bruno@clisp.org>
1587 * srclib/error.h: Use ANSI C "..." declarations when compiling with
1588 MSVC, even though it doesn't define __STDC__ by default.
1589 * srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
1590 it doesn't define __STDC__ by default.
1592 2003-08-24 Bruno Haible <bruno@clisp.org>
1593 Support for building DLLs on Windows.
1594 * srclib/error.h (error_print_progname, error_message_count,
1595 error_one_per_line): Add DLL_VARIABLE attribute.
1596 * srclib/progname.h (program_name): Likewise.
1598 2003-08-24 Bruno Haible <bruno@clisp.org>
1599 * srclib/progname.h: Make this file includable in C++ mode: add extern
1601 * srclib/relocatable.h: Likewise.
1602 * srclib/xmalloc.h: Likewise.
1604 2003-08-22 Bruno Haible <bruno@clisp.org>
1605 * srclib/progname.h (error_with_progname, maybe_print_progname): Remove
1607 * srclib/progname.c (error_with_progname): Remove variable.
1608 (maybe_print_progname): Remove function.
1610 2003-08-01 Bruno Haible <bruno@clisp.org>
1611 * srclib/relocatable.c (find_shared_library_fullname): Disable the code
1612 on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
1614 2003-07-01 Paul Eggert <eggert@twinsun.com>
1615 * srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
1616 having it depend on HAVE_SYS_TYPES_H.
1618 2003-06-23 Bruno Haible <bruno@clisp.org>
1619 Avoid compilation units that are empty after preprocessing.
1620 * srclib/canonicalize.c: Add dummy declaration.
1621 * srclib/strerror.c: Likewise.
1622 * srclib/error.c: Include <stdio.h> even if there's nothing to be
1625 2003-06-22 Bruno Haible <bruno@clisp.org>
1626 * srclib/relocatable.c (compute_curr_prefix): Comment out this function
1627 in the case when it is not used.
1628 Reported by Pavel Roskin <proski@gnu.org>.
1630 2003-05-28 Paul Eggert <eggert@twinsun.com>
1631 * srclib/pathmax.h: Include <limits.h> without checking for
1633 * srclib/xreadlink.c: Likewise.
1635 2004-01-20 Bruno Haible <bruno@clisp.org>
1637 Assume automake-1.8.
1638 * Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
1639 (AUTOMAKE): Assume automake-1.8.
1640 * Makefile.in (am--refresh): New target.
1642 2004-01-23 Bruno Haible <bruno@clisp.org>
1644 * Version 1.9.2 released.
1646 2004-01-23 Bruno Haible <bruno@clisp.org>
1648 * tests/table-from.c: Include binary-io.h.
1649 (main): Switch stdout to binary mode.
1650 * tests/table-to.c: Include binary-io.h.
1651 (main): Switch stdout to binary mode.
1652 * tests/genutf8.c: Include binary-io.h.
1653 (main): Switch stdout to binary mode.
1654 * tests/Makefile.in (INCLUDES): Also look in srclib.
1655 (check): Pass INCLUDES when compiling genutf8.c.
1656 * tests/Makefile.os2 (INCLUDES): Also look in srclib.
1657 (genutf8.exe): Pass INCLUDES when compiling genutf8.c.
1658 * tests/Makefile.msvc (INCLUDES): Also look in srclib.
1659 (check): Pass INCLUDES when compiling genutf8.c.
1661 2004-01-21 Bruno Haible <bruno@clisp.org>
1663 * src/iconv.c (force_binary): Remove variable.
1664 (usage): Don't document --binary any more.
1665 (convert, main): Always switch to binary mode.
1666 * tests/check-stateful.bat: Remove --binary option.
1667 * tests/check-translit.bat: Likewise.
1668 * tests/check-stateful.cmd: Likewise.
1669 * tests/check-translit.cmd: Likewise.
1670 * djgpp/stateful-check.sed: Remove MODE variable.
1671 * djgpp/translit-check.sed: Likewise.
1673 2004-01-21 Bruno Haible <bruno@clisp.org>
1675 * man/iconv.3: Fix description of return value in case of error.
1676 Reported by Jonathan Wakely <redi@users.sf.net>.
1678 2003-09-12 Paul Eggert <eggert@twinsun.com>
1680 * srclib/progreloc.c (get_full_program_name): Define via prototype.
1682 2003-08-15 Bruno Haible <bruno@clisp.org>
1684 * Makefile.devel (lib/translit.h): Add ulimit command so that the
1685 gentranslit program gets the stack it needs. Many Linux distributions
1686 allow only 8 MB of stack by default.
1688 2003-08-01 Bruno Haible <bruno@clisp.org>
1690 * lib/relocatable.c (find_shared_library_fullname): Disable the code on
1692 * srclib/relocatable.c (find_shared_library_fullname): Likewise.
1693 Reported by Alain Guibert <derogaton+bgli@oreka.com>.
1695 2003-07-02 Bruno Haible <bruno@clisp.org>
1697 * m4/lib-ld.m4: Update from GNU gettext.
1698 * m4/lib-prefix.m4: Update from GNU gettext.
1699 * m4/gettext.m4: Update from GNU gettext.
1700 * m4/intmax.m4: New file, from GNU gettext.
1701 * m4/longdouble.m4: New file, from GNU gettext.
1702 * m4/longlong.m4: New file, from GNU gettext.
1703 * m4/printf-posix.m4: New file, from GNU gettext.
1704 * m4/signed.m4: New file, from GNU gettext.
1705 * m4/wchar_t.m4: New file, from GNU gettext.
1706 * m4/wint_t.m4: New file, from GNU gettext.
1707 * m4/pathmax.m4: Update from GNU gettext and gnulib.
1708 * m4/ssize_t.m4: Update from GNU gettext and gnulib.
1709 * m4/xreadlink.m4: Update from GNU gettext and gnulib.
1710 * m4/readlink.m4: New file, from gnulib.
1711 * autoconf/install-reloc: Update from GNU gettext.
1712 * srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
1713 * srclib/readlink.c: New file, from GNU gettext and gnulib.
1714 * srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
1715 (EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
1716 * configure.in: Invoke gl_FUNC_READLINK.
1718 2003-06-22 Bruno Haible <bruno@clisp.org>
1720 * src/Makefile.in (install): Link with the already installed library.
1721 This fixes a link error on Solaris.
1722 Reported by Paul Eggert.
1724 2003-06-08 Bruno Haible <bruno@clisp.org>
1726 * srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
1728 2003-05-02 Bruno Haible <bruno@clisp.org>
1730 Support for libtool-1.5.
1731 * srclib/progname.c (set_program_name): Remove a leading
1732 "<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
1734 2003-06-23 Bruno Haible <bruno@clisp.org>
1736 Avoid compilation units that are empty after preprocessing.
1737 * srclib/canonicalize.c: Add dummy declaration.
1738 * srclib/strerror.c: Likewise.
1739 * srclib/error.c: Include <stdio.h> even if there's nothing to be
1742 2003-06-22 Bruno Haible <bruno@clisp.org>
1744 Portability to mingw32.
1745 * m4/ssize_t.m4: New file, from GNU gettext.
1746 * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
1747 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
1749 2003-06-22 Bruno Haible <bruno@clisp.org>
1751 Portability to mingw32.
1752 * lib/relocatable.c [WIN32]: Include <windows.h>.
1753 * srclib/relocatable.c: Likewise.
1754 Reported by Jeff Bonggren <jbon@cfl.rr.com>.
1756 2003-06-22 Bruno Haible <bruno@clisp.org>
1758 * lib/relocatable.c (compute_curr_prefix): Comment out this function in
1759 the case when it is not used.
1760 * srclib/relocatable.c (compute_curr_prefix): Likewise.
1761 Reported by Pavel Roskin <proski@gnu.org>.
1763 2003-06-18 Bruno Haible <bruno@clisp.org>
1765 * config/install-sh: Update from automake-1.7.5.
1767 2003-06-16 Bruno Haible <bruno@clisp.org>
1769 * lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
1770 (ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
1772 (GBK): Add aliases MS936, WINDOWS-936.
1773 Reported by Guido Flohr <guido@imperia.net>.
1775 2003-05-09 Bruno Haible <bruno@clisp.org>
1777 * srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
1778 "extraneous semicolon" warning from Tru64 cc.
1780 2003-06-07 Bruno Haible <bruno@clisp.org>
1782 * Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
1783 * Makefile.vms (config.h): New rule.
1784 (all, install): Depend on it.
1785 (all, install, installdirs, uninstall, check): Fix typo.
1786 (mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
1788 * lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
1789 (OBJECTS): Use libiconv.obj instead of iconv.obj.
1790 (libiconv.obj): Renamed from iconv.obj.
1791 * srclib/Makefile.vms (INCLUDES): Add parent directory.
1792 (OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
1793 (strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
1794 (alloca.h): New rule.
1795 (canonicalize.obj): Depend on it.
1796 (clean): Remove alloca.h.
1797 * src/Makefile.vms (datadir, localedir): New variables.
1798 (DEFS): Also define LOCALEDIR.
1799 (iconv.obj): Add flags for relocatability,
1800 (iconv.exe): Link with libicrt. Use link_options.
1801 * vms/link_options.opt: New file.
1802 Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
1804 2003-06-07 Bruno Haible <bruno@clisp.org>
1806 Support for relocatable data files even on Woe32.
1807 * lib/Makefile.msvc (PICFLAGS): Also define PIC.
1809 2003-05-22 Bruno Haible <bruno@clisp.org>
1811 * Version 1.9.1 released.
1813 2003-05-22 Bruno Haible <bruno@clisp.org>
1815 * lib/genaliases.c (main): Emit %pic instead of %null-strings.
1816 Change type of 'name' field to 'int'.
1817 * lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
1818 invocation of macro S(), including the tag and a counter.
1819 (main): Use the command-line argument as tag.
1820 * Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
1821 lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
1822 * lib/iconv.c (stringpool2_t): New type.
1823 (stringpool2_contents): New data table.
1824 (stringpool2): New macro.
1825 (sysdep_aliases): Make position-independent. Move #includes out to
1827 (aliases2_lookup): Update.
1829 (compare_by_index): Use 'struct nalias' instead of 'struct alias'.
1830 (iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
1831 * lib/aliases2.h: New file, extracted from lib/iconv.c.
1833 2003-05-20 Bruno Haible <bruno@clisp.org>
1835 * lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
1836 Reported by Muraoka Taro <koron@tka.att.ne.jp>.
1838 2003-05-19 Bruno Haible <bruno@clisp.org>
1840 * windows/iconv.rc: Include <winver.h>.
1841 Reported by Perry Rapp.
1843 2003-05-18 Bruno Haible <bruno@clisp.org>
1845 * Version 1.9 released.
1847 2003-05-18 Bruno Haible <bruno@clisp.org>
1849 * lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
1851 2003-05-18 Bruno Haible <bruno@clisp.org>
1853 * lib/Makefile.msvc (DEBUGFLAGS): New variable.
1854 (iconv.lib): Use it.
1855 * src/Makefile.msvc (DEBUGFLAGS): New variable.
1856 * tests/Makefile.msvc (DEBUGFLAGS): New variable.
1858 2003-05-17 Bruno Haible <bruno@clisp.org>
1860 * src/Makefile.msvc (libdir, datadir, localedir): New variables.
1861 (IIlibdir, IIdatadir, IIlocaledir): New variables.
1862 (CFLAGS): Define LOCALEDIR.
1863 (iconv_no_i18n.exe): New rule.
1864 (all): Depend on it.
1865 * tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
1866 * tests/check-translit.bat: Likewise.
1868 2003-05-16 Bruno Haible <bruno@clisp.org>
1870 * lib/genaliases.c (main): Emit declarations for gperf-3.0.
1871 * Makefile.devel (lib/aliases.h): Remove gperf command line options;
1872 add new option "-m 10" for gperf-3.0.
1874 2003-05-12 Bruno Haible <bruno@clisp.org>
1876 * m4/error.m4: Update from gettext.
1878 2003-05-12 Bruno Haible <bruno@clisp.org>
1880 * configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
1882 2003-05-12 Bruno Haible <bruno@clisp.org>
1884 * lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
1887 2003-05-09 Bruno Haible <bruno@clisp.org>
1889 * srclib/error.c: Update from gnulib with modifications.
1890 * srclib/unlocked-io.h: New file, from gnulib.
1891 * m4/strerror_r.m4: New file, from gnulib.
1892 * m4/unlocked-io.m4: New file, from gnulib.
1893 * Makefile.devel (aclocal.m4): Depend on them.
1895 2003-05-08 Bruno Haible <bruno@clisp.org>
1897 * Makefile.msvc (IIPREFIX): New variable.
1898 * srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
1899 * src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
1900 IIincludedir): New variables.
1901 (INCLUDES): Add -I..\windows.
1902 (iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
1904 Patches by Perry Rapp.
1906 2003-05-07 Bruno Haible <bruno@clisp.org>
1908 * README.woe32: Fix instructions for step 1.
1909 * srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
1910 (strtoul.obj): Remove rule.
1911 Reported by Perry Rapp.
1913 2003-05-07 Bruno Haible <bruno@clisp.org>
1915 * Makefile.vms: New file.
1916 * lib/Makefile.vms: New file.
1917 * srclib/Makefile.vms: New file.
1918 * src/Makefile.vms: New file.
1919 * man/Makefile.vms: New file.
1920 * tests/Makefile.vms: New file.
1921 * Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
1923 (all): Depend on them.
1925 2003-05-07 Bruno Haible <bruno@clisp.org>
1927 * srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
1928 (findprog.obj): Remove rule.
1929 * src/Makefile.msvc (includedir): New variable.
1931 2003-05-06 Bruno Haible <bruno@clisp.org>
1933 * lib/translit.def: Upgrade to Unicode 4.0.
1935 2003-05-06 Bruno Haible <bruno@clisp.org>
1937 * srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
1938 * srclib/Makefile.msvc (CFLAGS): Likewise.
1940 * srclib/Makefile.msvc (INCLUDES): Add -I.. .
1941 Reported by Perry Rapp.
1943 * Makefile.msvc (config.h): New rule.
1944 (all): Depend on it.
1945 (mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
1946 Reported by Perry Rapp.
1948 2003-05-06 Bruno Haible <bruno@clisp.org>
1950 * autoconf/config.guess: Update to GNU version 2003-02-22.
1951 * autoconf/config.sub: Likewise.
1953 2003-05-06 Bruno Haible <bruno@clisp.org>
1955 * m4/lib-link.m4: Update from GNU gettext.
1956 * autoconf/config.rpath: Update from GNU gettext.
1958 * m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
1959 * autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
1961 * m4/gettext.m4: Update from GNU gettext.
1962 * m4/nls.m4: Update from GNU gettext.
1963 * m4/po.m4: Update from GNU gettext.
1964 * Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
1966 2003-04-12 Bruno Haible <bruno@clisp.org>
1968 Support for OpenVMS 7.3.
1969 * lib/iconv.c (USE_OSF1): Define also on VMS.
1971 2003-04-12 Bruno Haible <bruno@clisp.org>
1973 Better support for FreeBSD.
1974 * lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
1975 aliases, for compatibility with earlier FreeBSD iconv implementation
1976 by Konstantin Chuguev.
1977 * lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
1979 * src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
1981 2003-04-12 Bruno Haible <bruno@clisp.org>
1983 * configure.in (mandir): Change default value.
1984 * Makefile.in (datadir): New variable.
1985 (install, installdirs, uninstall): Pass datadir to po and man
1987 * Makefile.os2 (datadir): New variable.
1988 (mandir): Use it instead of prefix.
1989 (install, uninstall): Pass datadir to man directory.
1990 * Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
1991 * man/Makefile.in (datadir): New variable.
1992 (docdir): Use it instead of prefix.
1993 (install, installdirs): Update.
1994 * man/Makefile.os2 (datadir): New variable.
1995 (mandir): Use it instead of prefix.
1996 * man/Makefile.msvc (datadir): New variable.
1997 (mandir, docdir): Use it instead of prefix.
1998 (install, installdirs): Update.
2000 2003-04-06 Bruno Haible <bruno@clisp.org>
2002 Make it possible to build with or without libintl support on Woe32.
2003 * Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
2004 * Makefile.msvc (NO_NLS): New variable.
2005 * srclib/Makefile.msvc (NO_NLS): New variable.
2006 (CFLAGS, INCLUDES): Use them.
2007 * src/Makefile.msvc (NO_NLS): New variable.
2008 (NLSFLAGS, INCINTL, LIBINTL): New variables.
2009 (CFLAGS, INCLUDES, iconv.exe): Use them.
2011 2003-04-12 Bruno Haible <bruno@clisp.org>
2013 * lib/loop_unicode.h (unicode_transliterate): When the Hangul or
2014 variants transliteration failed with RET_ILUNI, don't return
2016 Reported by the FreeBSD porters.
2018 2003-04-06 Bruno Haible <bruno@clisp.org>
2020 * srclib/binary-io.h: New file, from GNU gettext.
2021 * src/iconv.c: Include it.
2022 (O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
2024 2003-04-05 Bruno Haible <bruno@clisp.org>
2026 Support for relocatable installation.
2027 * m4/alloca.m4: New file, from GNU gettext.
2028 * m4/canonicalize.m4: New file, from GNU gettext.
2029 * m4/error.m4: New file, from GNU gettext.
2030 * m4/onceonly.m4: New file, from GNU gettext.
2031 * m4/pathmax.m4: New file, from GNU gettext.
2032 * m4/relocatable.m4: New file, from GNU gettext.
2033 * m4/setenv.m4: New file, from GNU gettext.
2034 * m4/stdbool.m4: New file, from GNU gettext.
2035 * m4/strerror.m4: New file, from GNU gettext.
2036 * m4/xreadlink.m4: New file, from GNU gettext.
2037 * autoconf/config.libpath: New file, from GNU gettext.
2038 * autoconf/install-reloc: New file, from GNU gettext.
2039 * autoconf/reloc-ldflags: New file, from GNU gettext.
2040 * autoconf/missing: New file, from GNU automake 1.7.3.
2041 * lib/relocatable.h: New file, from GNU gettext.
2042 * lib/relocatable.c: New file, from GNU gettext.
2043 * srclib/alloca.c: New file, from GNU gettext.
2044 * srclib/alloca_.h: New file, from GNU gettext.
2045 * srclib/canonicalize.c: New file, from GNU gettext.
2046 * srclib/canonicalize.h: New file, from GNU gettext.
2047 * srclib/error.c: New file, from GNU gettext.
2048 * srclib/error.h: New file, from GNU gettext.
2049 * srclib/exit.h: New file, from GNU gettext.
2050 * srclib/gettext.h: New file, from GNU gettext.
2051 * srclib/memmove.c: New file, from GNU gettext.
2052 * srclib/pathmax.h: New file, from GNU gettext.
2053 * srclib/progname.c: New file, from GNU gettext.
2054 * srclib/progname.h: New file, from GNU gettext.
2055 * srclib/progreloc.c: New file, from GNU gettext.
2056 * srclib/relocatable.c: New file, from GNU gettext.
2057 * srclib/relocatable.h: New file, from GNU gettext.
2058 * srclib/relocwrapper.c: New file, from GNU gettext.
2059 * srclib/setenv.c: New file, from GNU gettext.
2060 * srclib/setenv.h: New file, from GNU gettext.
2061 * srclib/stdbool.h.in: New file, from GNU gettext.
2062 * srclib/strerror.c: New file, from GNU gettext.
2063 * srclib/unsetenv.c: New file, from GNU gettext.
2064 * srclib/xmalloc.c: New file, from GNU gettext.
2065 * srclib/xmalloc.h: New file, from GNU gettext.
2066 * srclib/xreadlink.c: New file, from GNU gettext.
2067 * srclib/xreadlink.h: New file, from GNU gettext.
2068 * srclib/xstrdup.c: New file, from GNU gettext.
2069 * srclib/Makefile.am: New file.
2070 * srclib/Makefile.msvc: New file.
2071 * windows/alloca.h: New file, from GNU gettext.
2072 * windows/stdbool.h: New file, from GNU gettext.
2073 * configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
2074 Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
2075 string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
2076 AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
2077 gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
2078 gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
2079 * lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
2080 HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
2081 localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
2083 * lib/Makefile.in (DEFS): New variable.
2084 (SOURCES): Add localcharset.c and relocatable.c.
2085 (OBJECTS): Add localcharset.lo and relocatable.lo.
2086 (LIBCHARSET_OBJECTS): Remove variable.
2087 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
2088 libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
2089 (iconv.lo): Use $(DEFS).
2090 (localcharset.lo, relocatable.lo): New rules.
2091 * lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
2092 ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
2093 set_relocation_prefix, relocate. Remove $(PICFLAGS).
2094 (INCLUDES): Simplify.
2095 (SOURCES): Remove variable.
2096 (OBJECTS): Add localcharset.obj and relocatable.obj.
2097 (LIBCHARSET_OBJECTS): Remove variable.
2098 (iconv.obj): Add $(PICFLAGS).
2099 (localcharset.obj, relocatable.obj): New rules.
2100 (iconv.lib): Drop $(LIBCHARSET_OBJECTS).
2101 * include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
2102 * src/gettext.h: Remove file.
2103 * src/iconv.c: Include progname.h and relocatable.h.
2104 (ICONV_CONST): Define to const if the system has no iconv.
2105 (main): Invoke set_program_name. Relocate LOCALEDIR.
2106 * src/Makefile.in (top_srcdir): New variable.
2107 (INCLUDES): Add .. and ../srclib.
2108 (iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
2109 (iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
2110 (RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
2111 RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
2113 (iconv): Use $(iconv_LDFLAGS).
2114 (install): Use $(INSTALL_PROGRAM_ENV).
2115 (distclean): Drop removing config.h.
2116 * src/Makefile.msvc (INCLUDES): Add .., simplify.
2117 * tests/Makefile.msvc (INCLUDES): Simplify.
2118 * Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
2119 (config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
2120 (all): Depend on them.
2121 (aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
2122 m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
2123 m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
2124 (lib/config.h.msvc): Additional processing.
2125 * Makefile.in (all, install, installdirs, uninstall, check): Recurse
2127 (mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
2129 (distclean, maintainerclean): Remove also config.h and some stamps.
2130 * Makefile.msvc (all, install, installdirs, uninstall, check,
2131 mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
2132 * INSTALL.generic: Document --enable-relocatable and
2133 --with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
2134 LDFLAGS. The lib-link.m4 macros make this unnecessary.
2136 2003-04-05 Bruno Haible <bruno@clisp.org>
2138 * configure.in: Bump version number to 1.9.
2139 * include/iconv.h.in (_LIBICONV_VERSION): Bump.
2140 * windows/iconv.rc: Bump version number.
2141 * lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
2143 2003-04-05 Bruno Haible <bruno@clisp.org>
2145 * Makefile.msvc (PREFIX): New variable.
2147 (distclean, maintainer-clean): Drop Unix specific removals.
2148 * lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
2150 (IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
2151 (clean): Drop Unix specific removal.
2152 * src/Makefile.msvc (PREFIX): New variable.
2154 (clean): Drop Unix specific removal.
2155 (distclean): Likewise.
2156 * tests/Makefile.msvc (clean): Drop Unix specific removal.
2157 (distclean): Likewise.
2159 2003-04-05 Bruno Haible <bruno@clisp.org>
2161 * m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
2163 2003-04-05 Bruno Haible <bruno@clisp.org>
2165 * m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
2166 CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
2168 * m4/gettext.m4: Update from GNU gettext.
2169 * m4/iconv.m4: Update from GNU gettext.
2170 * m4/lcmessage.m4: Update from GNU gettext.
2171 * m4/progtest.m4: Update from GNU gettext.
2172 * m4/libtool.m4: Update from GNU gettext.
2173 2003-02-16 Bruno Haible <bruno@clisp.org>
2174 Workaround autoconf >= 2.52 breakage.
2175 * libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
2176 (_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
2177 * autoconf/ltmain.sh: Update from GNU gettext.
2178 2003-02-18 Bruno Haible <bruno@clisp.org>
2179 Fix the 2002-09-16 fix.
2180 * ltmain.sh (install): If "ln -s -f" fails (this is the case
2181 with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
2183 2003-04-05 Bruno Haible <bruno@clisp.org>
2185 Start using automake.
2186 * configure.in: Add AM_INIT_AUTOMAKE invocation.
2187 (PACKAGE, VERSION): Remove.
2188 Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
2189 Use AC_PROG_LN_S instead of CL_PROG_LN_S.
2190 Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
2191 Reorder so that AC_CANONICAL_HOST comes early but still after
2193 * m4/ranlib.m4: Remove file.
2194 * m4/libtool.m4: Undo AC_ -> CL_ substitutions.
2195 * Makefile.devel (CLISP_DIR): Comment out.
2196 (AUTOCONF_FILES): Change to aclocal.m4.
2197 (aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
2198 (configure.in): Drop --include option.
2200 2003-03-17 Bruno Haible <bruno@clisp.org>
2202 Improved MSVC support.
2203 * Makefile.msvc (prefix): Use less Unixy value.
2204 (local_prefix): Remove variable.
2205 (libdir, includedir, mandir): Use backslashes.
2206 (bindir, datadir, localedir, docdir): New variables.
2207 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
2208 (all): Recurse into po/ and man/.
2209 (install, installdirs, uninstall): Rewritten.
2210 (check, mostlyclean, clean, distclean, maintainer-clean): Recurse
2212 * lib/Makefile.msvc (prefix): Use less Unixy value.
2213 (local_prefix): Remove variable.
2214 (libdir): Use backslashes.
2215 (bindir): New variable.
2216 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
2217 (RESOURCES): Enable iconv.res.
2218 (install, installdirs, uninstall): New rules.
2219 (clean): Remove config.h.
2220 (distclean): Don't remove config.h here.
2221 * src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
2222 (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
2223 (install, installdirs, uninstall): New rules.
2224 * man/Makefile.msvc: New file.
2225 * tests/Makefile.msvc (install, installdirs, uninstall): New rules.
2226 * Makefile.devel (all): Depend on po/Makefile.msvc.
2227 (po/Makefile.msvc): New rule.
2228 * windows/iconv.rc: Update.
2229 * README.woe32: Mention automatic installation command.
2231 Rename libcharset.h to localcharset.h.
2232 * lib/iconv.c: Include localcharset.h, not libcharset.h.
2233 * Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
2234 (all, install): Update dependencies.
2235 (all): Create lib/localcharset.h, not lib/libcharset.h.
2236 (mostlyclean, clean, distclean, maintainer-clean): Remove
2237 lib/localcharset.h, not lib/libcharset.h.
2238 * djgpp/README.in, djgpp/README: Update.
2239 * djgpp/config.bat: Update.
2240 * djgpp/config.sed: Update.
2241 * djgpp/fnchange.in, djgpp/fnchange.lst: Update.
2243 2003-01-31 Bruno Haible <bruno@clisp.org>
2245 * src/Makefile.in (all): Don't do the chmod if it has already been
2248 2003-01-31 Bruno Haible <bruno@clisp.org>
2250 * lib/loop_unicode.h (unicode_transliterate): Enable recursive
2251 transliteration. Idea from Perry Rapp.
2252 * lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
2253 Change element type of translit_data to 'unsigned int'.
2254 * lib/translit.def: Many new transliterations, mostly taken from glibc.
2255 * lib/translit.h: Regenerated.
2256 * tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
2257 * tests/Makefile.in (check): Add Translit1 check.
2258 * tests/Makefile.msvc (check): Likewise.
2259 * tests/Makefile.os2 (check): Likewise.
2260 * tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
2261 improved transliteration cannot do.
2263 2003-02-14 Bruno Haible <bruno@clisp.org>
2265 * Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
2266 (configure): Update rule.
2268 2003-01-03 Albert Chin <libtool@thewrittenword.com>
2270 * autoconf/ltmain.sh: Don't pass -R flags found in a .la's
2271 dependency_libs variable directly down to the linker.
2272 Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
2274 2003-01-01 Bruno Haible <bruno@clisp.org>
2276 * src/Makefile.in (install): Use libiconv.la in ../lib, not in
2277 $(libdir), so that installing with DESTDIR works.
2278 Reported by Michael Adams <michael@michaeladams.org>.
2280 2003-01-01 Bruno Haible <bruno@clisp.org>
2282 * Makefile.in (mkinstalldirs): New variable.
2283 (install-lib, install, installdirs): Use it instead of mkdir.
2284 * lib/Makefile.in (mkinstalldirs): New variable.
2285 (install-lib, install, installdirs): Use it instead of mkdir.
2286 * man/Makefile.in (mkinstalldirs): New variable.
2287 (install, installdirs): Use it instead of mkdir.
2288 * src/Makefile.in (mkinstalldirs): New variable.
2289 (install, installdirs): Use it instead of mkdir.
2291 2002-09-27 Bruno Haible <bruno@clisp.org>
2293 * autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
2295 2002-11-07 Bruno Haible <bruno@clisp.org>
2297 * m4/libtool.m4: Upgrade to libtool-1.4.3.
2298 * autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
2300 2002-07-14 Bruno Haible <bruno@clisp.org>
2302 * m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
2304 2002-06-12 Bruno Haible <bruno@clisp.org>
2306 * configure.in: Use new AC_* names of libtool macros. Invoke
2307 AC_LIBTOOL_WIN32_DLL.
2309 2002-12-19 Bruno Haible <bruno@clisp.org>
2311 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
2312 Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
2314 2002-11-07 Bruno Haible <bruno@clisp.org>
2316 Make "make install" without prior "make" work.
2317 * Makefile.in (lib/libcharset.h): New rule.
2318 (all, install): Depend on it.
2319 Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
2321 2002-10-28 Bruno Haible <bruno@clisp.org>
2323 * man/Makefile.in (install): Change directory back to the working
2324 directory, so that install-sh (which may be a relative pathname) is
2325 found in the right place.
2327 2002-09-16 Bruno Haible <bruno@clisp.org>
2329 * autoconf/ltmain.sh (install): Use "ln -s -f" instead of
2330 "rm -f && ln -s" to make a symlink for a shared library.
2331 Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2333 2002-09-02 Bruno Haible <bruno@clisp.org>
2335 * src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
2337 2002-08-16 Bruno Haible <bruno@clisp.org>
2339 * src/iconv.c (main): Perform fflush before testing ferror(stdout).
2341 2002-05-29 Bruno Haible <bruno@clisp.org>
2343 * Version 1.8 released.
2345 2002-05-26 Bruno Haible <bruno@clisp.org>
2347 * lib/c99.h: New file.
2348 * lib/converters.h: Include it.
2349 * lib/encodings.def (C99): New encoding.
2350 * README, man/iconv_open.3: Document C99 encoding.
2352 2002-05-26 Bruno Haible <bruno@clisp.org>
2354 * lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
2356 (java_wctomb): Produce 12-byte sequences for non-BMP characters.
2358 2002-05-29 Bruno Haible <bruno@clisp.org>
2360 Fix installation of iconv program when linked with a libintl that was
2361 built against an earlier libiconv.
2362 * src/iconv.c: Conditionally disable NLS.
2363 * src/iconv_no_i18n.c: New file.
2364 * src/Makefile.in (libdir): New variable.
2365 (all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
2366 directory writable, so iconv executable can be created during "make
2368 (iconv): Remove rule.
2369 (iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
2370 (install): Link iconv now, after the new libiconv.so is installed.
2371 (clean): Also remove iconv_no_i18n.
2372 * tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
2374 * tests/check-stateful: Use iconv_no_i18n, not iconv.
2375 * tests/check-translit: LIkewise.
2376 * tests/check-translitfailure: Likewise.
2378 2002-05-29 Bruno Haible <bruno@clisp.org>
2380 * configure.in: Call AC_PROG_INSTALL instead of CL_PROG_INSTALL.
2381 * m4/install.m4: Remove file.
2382 * Makefile.devel (autoconf/aclocal.m4): Don't depend on m4/install.m4.
2384 2002-05-24 Bruno Haible <bruno@clisp.org>
2386 * lib/jisx0213.h: Use 'inline' only conditionally.
2388 2002-05-18 Bruno Haible <bruno@clisp.org>
2390 * configure.in (AC_INIT), include/iconv.h.in (_LIBICONV_VERSION),
2391 README, windows/iconv.rc, djgpp/README, djgpp/fnchange.lst:
2392 Bump version number.
2393 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 3:0:1.
2395 2002-02-06 Bruno Haible <bruno@clisp.org>
2397 * autoconf/ltmain.sh: Upgrade from libtool-1.4 to libtool-1.4.2.
2399 2002-02-02 Bruno Haible <bruno@clisp.org>
2401 * autoconf/ltmain.sh: Add DESTDIR support on ELF systems.
2403 2001-11-03 Bruno Haible <haible@clisp.cons.org>
2405 * autoconf/ltmain.sh: chmod 777 the .libs directory, so that
2406 "make install" succeeds.
2408 2002-05-18 Bruno Haible <bruno@clisp.org>
2410 * src/Makefile.in (iconv): Remove the -liconv dependency of -lintl
2411 from the command line. Needed to ensure that the new libiconv version
2414 2002-05-14 Bruno Haible <bruno@clisp.org>
2416 Implement and document CP853, TDS565, RISCOS-LATIN1.
2417 * tools/Makefile (ALL): Add cp853.h, tds565.h, riscos1.h.
2418 (cp853.h, tds565.h, riscos1.h): New rules.
2419 * lib/cp853.h: New file.
2420 * lib/tds565.h: New file.
2421 * lib/riscos1.h: New file.
2422 * lib/converters.h: Include them.
2423 * lib/encodings_dos.def (CP853): New encoding.
2424 * lib/encodings_extra.def (TDS565, RISCOS-LATIN1): New encodings.
2425 * README, man/iconv_open.3: Add CP853, TDS565, RISCOS-LATIN1.
2426 * tests/Makefile.in (check-extra-yes): Check CP853, TDS565,
2428 * tests/Makefile.msvc (check): Check CP853.
2429 * tests/CP853.TXT: New file.
2430 * tests/TDS565.TXT: New file.
2431 * tests/RISCOS-LATIN1.TXT: New file.
2433 * lib/cp860.h (cp860_wctomb): Optimize.
2435 2002-05-12 Bruno Haible <bruno@clisp.org>
2437 * tools/Makefile (ksc5601.h): Add two extra characters.
2438 * lib/ksc5601.h: Regenerated.
2439 * tests/EUC-KR.TXT: Add EURO SIGN and REGISTERED SIGN.
2440 * tests/CP949.TXT: Likewise.
2441 * tests/JOHAB.TXT: Likewise.
2443 2002-05-12 Bruno Haible <bruno@clisp.org>
2445 * README: Mention extra encodings.
2446 * man/iconv_open.3: Likewise. Improve formatting in text and html
2449 2002-05-12 Bruno Haible <bruno@clisp.org>
2451 * tests/SHIFT_JIS.TXT: Renamed from tests/SHIFT-JIS.TXT.
2453 2002-05-12 Bruno Haible <bruno@clisp.org>
2455 * Makefile.devel (AUTOCONF): New variable.
2456 (AUTOCONF_FILES): Remove autoconf/autoconf.m4f.
2457 (configure): Use the AUTOCONF variable.
2458 * autoconf/autoconf: Remove file.
2459 * autoconf/autoconf.m4: Remove file.
2460 * autoconf/autoconf.m4f: Remove file.
2462 2002-05-12 Bruno Haible <bruno@clisp.org>
2464 * tools/JISX0213.TXT: New file.
2465 * tools/cjk_tab_to_h.c (do_jisx0213): New function.
2466 (main): Accept "jisx0213".
2467 * tools/Makefile (all): Add jisx0213.h.
2468 (jisx0213.h): New rule.
2469 * lib/jisx0213.h: New file, generated by cjk_tab_to_h.
2470 * lib/euc_jisx0213.h: New file.
2471 * lib/shift_jisx0213.h: New file.
2472 * lib/iso2022_jp3.h: New file.
2473 * lib/converters.h: Include them.
2474 * lib/encodings_extra.def (EUC-JISX0213, SHIFT_JISX0213,
2475 ISO-2022-JP-3): New encodings.
2476 * tests/EUC-JISX0213.TXT: New file.
2477 * tests/SHIFT_JISX0213.TXT: New file.
2478 * tests/ISO-2022-JP-3-snippet: New file.
2479 * tests/ISO-2022-JP-3-snippet.UTF-8: New file.
2480 * tests/Makefile.in (check-extra): Also check EUC-JISX0213,
2481 SHIFT_JISX0213, ISO-2022-JP-3.
2482 * tests/check-stateless: Add support for encodings which contain
2483 precomposed Unicode characters, by eliminating precomposed characters
2484 before the comparison.
2485 * tests/table-from.c (main): Fix usage message.
2486 * tests/table-to.c (main): Make it work for encodings for which the
2487 "to" direction is stateful.
2489 2002-05-09 Bruno Haible <bruno@clisp.org>
2491 New configure option --enable-extra-encodings.
2492 * lib/encodings_extra.def: New file.
2493 * lib/converters.h: Handle USE_EXTRA.
2494 * lib/genaliases2.c (main): Handle USE_EXTRA.
2495 * lib/genflags.c: Define USE_EXTRA.
2496 (main): Include encodings_extra.def.
2497 * lib/iconv.c: Handle ENABLE_EXTRA, conditionally set USE_EXTRA.
2499 * lib/config.h.in (ENABLE_EXTRA): New macro.
2500 * configure.in: Accept option --enable-extra-encodings.
2501 * Makefile.devel (all): Depend on lib/aliases_extra.h.
2502 (lib/aliases_extra.h): New rule.
2503 (lib/flags.h): Depend on lib/encodings_extra.def.
2504 * tests/Makefile.in (check-extra, check-extra-no, check-extra-yes):
2506 (check): Invoke check-extra.
2507 * tests/Makefile.msvc (check): Also check the DOS encodings.
2509 Support for testing the AIX encodings.
2510 * tests/CP856.TXT: New file.
2511 * tests/CP922.TXT: New file.
2512 * tests/CP1046.TXT: New file.
2513 * tests/CP1124.TXT: New file.
2514 * tests/CP1129.TXT: New file.
2515 * tests/CP1161.TXT, tests/CP1161.IRREVERSIBLE.TXT: New files.
2516 * tests/CP1162.TXT: New file.
2517 * tests/CP1163.TXT, tests/CP1163.IRREVERSIBLE.TXT: New files.
2519 Support for testing the OSF/1 encodings.
2520 * tests/DEC-KANJI.TXT: New file.
2521 * tests/DEC-HANYU.TXT, tests/DEC-HANYU.IRREVERSIBLE.TXT: New files.
2523 Support for testing the DOS encodings.
2524 * tests/CP437.TXT: New file.
2525 * tests/CP737.TXT: New file.
2526 * tests/CP775.TXT: New file.
2527 * tests/CP852.TXT: New file.
2528 * tests/CP855.TXT: New file.
2529 * tests/CP857.TXT: New file.
2530 * tests/CP858.TXT: New file.
2531 * tests/CP860.TXT: New file.
2532 * tests/CP861.TXT: New file.
2533 * tests/CP863.TXT: New file.
2534 * tests/CP864.TXT: New file.
2535 * tests/CP865.TXT: New file.
2536 * tests/CP869.TXT: New file.
2537 * tests/CP1125.TXT: New file.
2539 2002-05-09 Bruno Haible <bruno@clisp.org>
2541 Implement more ASCII compatible DOS encodings.
2542 * tools/Makefile (ALL): Add cp737.h, cp858.h, cp860.h, cp863.h.
2543 (cp737.h, cp858.h, cp860.h, cp863.h): New rules.
2544 * lib/cp737.h: New file.
2545 * lib/cp858.h: New file.
2546 * lib/cp860.h: New file.
2547 * lib/cp863.h: New file.
2548 * lib/converters.h: Include them.
2549 * lib/encodings_dos.def (CP737, CP858, CP860, CP863): New encodings.
2551 2002-05-09 Bruno Haible <bruno@clisp.org>
2553 Implement new ASCII compatible encodings from IBM.
2554 * tools/Makefile (ALL): Add cp1161.h, cp1162.h, cp1163.h.
2555 (cp1161.h, cp1162.h, cp1163.h): New rules.
2556 * lib/cp1161.h: New file.
2557 * lib/cp1162.h: New file.
2558 * lib/cp1163.h: New file.
2559 * lib/converters.h: Include them.
2560 * lib/encodings_aix.def (CP1161, CP1162, CP1163): New encodings.
2562 2002-05-09 Bruno Haible <bruno@clisp.org>
2564 Implement and document KOI8-T.
2565 * tools/Makefile (ALL): Add koi8_t.h.
2566 (koi8_t.h): New rule.
2567 * lib/koi8_t.h: New file.
2568 * lib/converters.h: Include it.
2569 * lib/encodings.def (KOI8-T): New encoding.
2570 * README, man/iconv_open.3: Add KOI8-T.
2571 * tests/Makefile.in (tests): Check KOI8-T.
2572 * tests/Makefile.os2 (tests): Likewise.
2573 * tests/Makefile.msvc (tests): Likewise.
2574 * tests/KOI8-T.TXT: New file.
2576 2002-05-09 Bruno Haible <bruno@clisp.org>
2578 * tools/8bit_tab_to_h.c (main): Update copyright year.
2579 * tools/cjk_variants.c (main): Likewise.
2581 2002-05-08 Bruno Haible <bruno@clisp.org>
2583 * README.woe32: Renamed from README.win32.
2585 2002-05-08 Bruno Haible <bruno@clisp.org>
2587 * lib/iconv.c: Enable DOS encodings also when compiling for Woe32,
2588 because the Woe32 consoles use them.
2590 2002-05-04 Bruno Haible <bruno@clisp.org>
2592 * lib/loop_unicode.h (unicode_loop_convert): When quitting the loop
2593 without writing an output character, restore cd->istate to its value
2594 before the xxx_mbtowc call. Otherwise we lose some characters during
2595 CP1255/CP1258/TCVN to Unicode conversion.
2596 (unicode_loop_reset): Likewise for the xxx_flushwc call.
2597 * tests/CP1255-snippet, tests/CP1255-snippet.UTF-8: Make the test
2598 files large enough to test against the bug.
2599 * tests/CP1258-snippet, tests/CP1258-snippet.UTF-8: Likewise.
2600 * tests/TCVN-snippet, tests/TCVN-snippet.UTF-8: Likewise.
2602 2002-04-28 Bruno Haible <bruno@clisp.org>
2604 * tools/Makefile (armscii_8.h): Use table from glibc-2.2.90.
2605 * tests/ARMSCII-8.TXT: Update to glibc-2.2.90 version.
2606 * tests/ARMSCII-8.IRREVERSIBLE.TXT: Remove 0x0027.
2607 * lib/armscii_8.h: Regenerated.
2609 2002-04-28 Bruno Haible <bruno@clisp.org>
2611 * src/iconv.c: Include gettext.h.
2613 (usage, print_version, convert, main): Internationalize.
2614 (main): Call setlocale, bindtextdomain, textdomain.
2615 * src/gettext.h: New file, from GNU gettext 0.11.2.
2616 * src/config.h.in: New file, needed for ENABLE_NLS.
2617 * src/Makefile.in (datadir, localedir): New variables.
2618 (iconv): Link with @LTLIBINTL@.
2619 (iconv.@OBJEXT@): Define LOCALEDIR.
2620 (distclean): Remove config.h.
2621 * po: New directory.
2622 * Makefile.in (all, install, installdirs, uninstall, check,
2623 mostlyclean, clean, distclean, maintainer-clean): Recurse into the po
2625 * autoconf/mkinstalldirs: New file, from automake-1.5.
2626 * ABOUT-NLS: New file, from GNU gettext 0.11.2.
2627 * m4/codeset.m4: New file, from GNU gettext 0.11.2.
2628 * m4/gettext.m4: New file, from GNU gettext 0.11.2.
2629 * m4/glibc21.m4: New file, from GNU gettext 0.11.2.
2630 * m4/isc-posix.m4: New file, from GNU gettext 0.11.2.
2631 * m4/lcmessage.m4: New file, from GNU gettext 0.11.2.
2632 * m4/progtest.m4: New file, from GNU gettext 0.11.2.
2633 * configure.in: Require autoconf-2.52, needed for multiple config.h.in
2634 files. Use new form of AC_INIT. Invoke AM_GNU_GETTEXT.
2635 (PACKAGE, VERSION): Define, needed for po/Makefile.in.in.
2636 * lib/config.h.in (HAVE_LOCALE_H, HAVE_SETLOCALE): Remove.
2638 2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
2640 * configure.in (AC_OUTPUT): Add po/Makefile.in.
2642 2002-04-28 Bruno Haible <bruno@clisp.org>
2644 * m4/eilseq.m4: Renamed from autoconf/eilseq.m4.
2645 * m4/mbstate_t.m4: Renamed from autoconf/mbstate_t.m4.
2646 * m4/general.m4: New file, from GNU clisp.
2647 * m4/proto.m4: New file, from GNU clisp.
2648 * m4/ranlib.m4: New file, from GNU clisp.
2649 * m4/install.m4: New file, from GNU clisp.
2650 * m4/cp.m4: New file, from GNU clisp.
2651 * m4/ln.m4: New file, from GNU clisp.
2652 * m4/endian.m4: New file, from GNU clisp.
2653 * m4/iconv.m4: New file, from GNU gettext 0.11.2.
2654 * m4/lib-ld.m4: New file, from GNU gettext 0.11.2.
2655 * m4/lib-link.m4: New file, from GNU gettext 0.11.2.
2656 * m4/lib-prefix.m4: New file, from GNU gettext 0.11.2.
2657 * autoconf/config.rpath: New file, from GNU gettext 0.11.2.
2658 * m4/libtool.m4: New file, based on libtool-1.4.2.
2659 * Makefile.devel (ACLOCAL): Remove variable.
2660 (ACSELECT): Remove variable.
2661 (OTHERMACROS): Remove variable.
2662 (m4/*.m4): New rules.
2663 (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
2664 * configure.in: Invoke AM_ICONV instead of CL_ICONV.
2666 2002-04-06 Bruno Haible <bruno@clisp.org>
2668 Upgrade to Unicode 3.2.
2669 * tools/cjk_tab_to_h.c (output_title): Bump copyright year.
2670 (compact_large_charset2uni): Add an argument. Determine optimal shift.
2671 Copy modified enc->charset2uni table.
2672 (output_charset2uni): Deal with shift other than 8. Copy encoding, so
2673 as to not disturb subsequent output_uni2charset[_sparse] call.
2674 * lib/hkscs.h: Regenerated.
2675 * tests/BIG5-HKSCS.TXT: Update.
2676 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Update.
2678 2002-04-06 Bruno Haible <bruno@clisp.org>
2680 Upgrade to Unicode 3.2.
2681 * tools/Makefile (cns11643_1.h, cns11643_2.h, cns11643_3.h,
2682 cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
2683 cns11643_7.h, cns11643_15.h, cns11643_inv.h): Use
2684 CNS11643-Unicode32.TXT instead of CNS11643-Unicode31.TXT.
2685 * lib/cns11643_3.h: Regenerated.
2686 * lib/cns11643_4a.h: Regenerated.
2687 * lib/cns11643_4b.h: Regenerated.
2688 * lib/cns11643_5.h: Regenerated.
2689 * lib/cns11643_6.h: Regenerated.
2690 * lib/cns11643_7.h: Regenerated.
2691 * lib/cns11643_15.h: Regenerated.
2692 * lib/cns11643_inv.h: Regenerated.
2693 * tests/EUC-TW.TXT: Update.
2695 2002-01-17 Bruno Haible <bruno@clisp.org>
2697 * lib/tcvn.h (tcvn_2uni_1): Make it smaller.
2698 (tcvn_mbtowc): Small optimization.
2700 2002-01-13 Bruno Haible <bruno@clisp.org>
2702 New options -l, -c, -s.
2703 * src/iconv.c (discard_unconvertible, silent): New variables.
2704 (usage): Document options -l, -c, -s.
2705 (print_one): New function.
2706 (convert): If silent is true, don't print error messages about the
2707 conversion to stderr. If discard_unconvertible is true, set the
2708 iconv descriptor to DISCARD_ILSEQ the first time, but make sure to
2709 return the same return code as when discard_unconvertible is false.
2710 (main): Accept options -l, -c, -s. Implement option -l.
2711 * man/iconv.1: Document options -l, -c, -s.
2713 2002-01-13 Bruno Haible <bruno@clisp.org>
2715 Support for "iconv -c".
2716 * include/iconv.h.in (ICONV_GET_DISCARD_ILSEQ): New macro.
2717 (ICONV_SET_DISCARD_ILSEQ): Likewise.
2718 * lib/converters.h (struct conv_struct): New field discard_ilseq.
2719 * lib/iconv.c (iconv_open): Set discard_ilseq to true if tocode
2720 has an "//IGNORE" suffix, and to false otherwise.
2721 (iconvctl): Implement ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
2722 * lib/loop_unicode.h (unicode_loop_convert): If discard_ilseq is
2723 true, skip one input character instead of returning EILSEQ.
2724 (unicode_loop_reset): Likewise.
2725 * lib/loop_wchar.h (wchar_from_loop_convert): Likewise.
2726 (wchar_to_loop_convert): Likewise.
2728 2002-01-13 Bruno Haible <bruno@clisp.org>
2730 Support for "iconv -l".
2731 * include/iconv.h.in (iconvlist): New declaration.
2732 * Makefile.devel (lib/aliases.h): Change gperf options.
2733 * lib/iconv.c (compare_by_index, compare_by_name, iconvlist): New
2736 2002-01-06 Bruno Haible <bruno@clisp.org>
2738 * lib/loop_unicode.h (unicode_transliterate): If the transliteration
2739 fails due to limited output encoding, return RET_ILUNI, not
2740 RET_TOOSMALL. Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2741 * tests/check-translitfailure: New file.
2742 * tests/TranslitFail1.ISO-8859-1: New file.
2743 * tests/Makefile.in (check): Call check-translitfailure.
2745 2001-12-15 Bruno Haible <bruno@clisp.org>
2747 * lib/euc_jp.h (euc_jp_wctomb): Add irreversible mappings for
2748 Shift_JIS characters 0x5C and 0x7E.
2749 * tests/EUC-JP.IRREVERSIBLE.TXT: New file.
2751 2001-12-05 Bruno Haible <bruno@clisp.org>
2753 * lib/iconv.c (iconv_open): Recognize the empty encoding name. Avoid
2754 endless loop if locale_charset() returns the empty string.
2755 * README, man/iconv_open.3: Add the empty encoding name.
2757 2001-11-10 Bruno Haible <haible@clisp.cons.org>
2759 * lib/Makefile.in (libiconv_plug_linux.so): Allow building it with a
2762 2001-10-23 Bruno Haible <haible@clisp.cons.org>
2764 * tools/Makefile (cp1125.h): New target.
2766 * lib/cp1125.h: New file.
2767 * lib/converters.h: Include it.
2768 * lib/encodings_dos.def (CP1125): New encoding.
2770 2001-09-08 Bruno Haible <haible@clisp.cons.org>
2772 * autoconf/eilseq.m4: New file.
2773 * Makefile.devel (OTHERMACROS): Add it.
2774 * configure.in: Call AC_EILSEQ.
2775 * include/iconv.h.in (EILSEQ): Define to the autoconf determined value.
2777 2001-08-25 Bruno Haible <haible@clisp.cons.org>
2779 Upgrade to autoconf-2.52.
2780 * autoconf/autoconf: Upgrade to autoconf-2.52.
2781 * autoconf/acgeneral.m4: Remove file.
2782 * autoconf/acspecific.m4: Remove file.
2783 * autoconf/autoconf.m4f: New file, from autoconf-2.52.
2784 * autoconf/aclocal.m4: Require autoconf-2.52.
2785 (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
2786 AC_CANONICAL_HOST does it itself. Add $SHELL in front of
2787 $ac_config_guess and $ac_config_sub.
2788 * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
2790 (configure): Use autoconf options -A, -l instead of -m.
2791 * configure.in: Use AC_CONFIG_SUBDIRS, not AC_OUTPUT_SUBDIRS.
2793 2001-08-05 Bruno Haible <haible@clisp.cons.org>
2795 * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
2796 (AC_LANG_EXTERN): Move to aclocal.m4.
2797 * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
2798 (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
2799 (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
2801 2001-08-05 Bruno Haible <haible@clisp.cons.org>
2803 Make it possible to build libiconv with CC=gcc CFLAGS="-x c++".
2804 * lib/loop_wchar.h (wchar_to_loop_convert): Rename local variable
2806 * lib/Makefile.in (libiconv_plug_linux.so): Add "-x none" option
2807 between sources and libs.
2808 (libiconv_plug_solaris.so) [GCC]: Likewise.
2809 (libiconv_plug_osf.so) [GCC]: Likewise.
2810 * src/Makefile.in (iconv.@OBJEXT@): New rule.
2811 (iconv): Depend on it.
2812 (clean): Erase *.@OBJEXT@, not *.o.
2813 * tests/Makefile.in (table-from.@OBJEXT@): New rule.
2814 (table-from): Depend on it.
2815 (table-to.@OBJEXT@): New rule.
2816 (table-to): Depend on it.
2817 (clean): Erase *.@OBJEXT@, not *.o.
2819 2001-07-28 Bruno Haible <haible@clisp.cons.org>
2821 * tools/Makefile (iso8859_16.h): Generate from the unicode.org table.
2822 * lib/iso8859_16.h: Regenerated.
2823 * tests/ISO-8859-16.TXT: Swap the values of 0xA5 and 0xAB.
2825 2001-07-17 Bruno Haible <haible@clisp.cons.org>
2827 * configure.in (VERSION): Define. Needed by djgpp/Makefile.maint.
2829 2001-07-03 Bruno Haible <haible@clisp.cons.org>
2831 * configure.in: Also check for mbsinit.
2832 * lib/loop_wchar.h (mbsinit): Define to 1 if not defined.
2833 Needed for SCO 3.2v5.0.2.
2835 2001-06-27 Bruno Haible <haible@clisp.cons.org>
2837 * Version 1.7 released.
2839 2001-06-27 Bruno Haible <haible@clisp.cons.org>
2841 * INSTALL.generic (Particular Systems): Generalize section about
2842 /usr/local to "most systems".
2844 * lib/Makefile.in (all): Build @PLUGLIB@ before libiconv.la, because
2845 Solaris cc destroys iconv.o and iconv.lo while building
2846 libiconv_plug_solaris.so.
2847 (clean): Remove so_locations, left there by the OSF/1 linker.
2849 * lib/cp1255.h (cp1255_decomp): Use 'signed int' instead of 'int'.
2851 * lib/vietcomb.h (viet_decomp): Use 'unsigned int' instead of
2854 * tests/table-from.c: Include string.h.
2855 * tests/table-to.c: Likewise.
2857 2001-06-26 Bruno Haible <haible@clisp.cons.org>
2859 * tools/Makefile (jisx0208.h): Replace U+005C with U+FF3C.
2860 (jisx0212.h): Replace U+007E with U+FF5E.
2861 * lib/jisx0208.h: Regenerated.
2862 * lib/jisx0212.h: Regenerated.
2863 * tests/EUC-JP.TXT: Map 0xA1C0 to U+FF3C. Map 0x8FA2B7 to U+FF5E.
2864 * tests/EUC-JP.IRREVERSIBLE.TXT: Remove file.
2865 * tests/SHIFT-JIS.TXT: Map 0x815F to U+FF3C.
2866 * tests/CP932.TXT: Likewise.
2867 * tests/CP932.IRREVERSIBLE.TXT: 0x815F mapping is now reversible.
2869 2001-06-25 Bruno Haible <haible@clisp.cons.org>
2871 * src/Makefile.in (iconv): Mention $(INCLUDES) before $(CFLAGS) and
2873 * src/Makefile.msvc (iconv.exe): Likewise.
2874 * src/Makefile.os2 (iconv.exe): Likewise.
2875 * lib/Makefile.in (libiconv_plug_linux.so): Likewise.
2876 (libiconv_plug_solaris.so): Likewise.
2877 (libiconv_plug_osf.so): Likewise.
2878 (iconv.lo): Likewise.
2879 * lib/Makefile.msvc (iconv.obj): Likewise.
2880 * lib/Makefile.os2 (iconv.obj): Likewise.
2881 * tests/Makefile.in (table-from, table-to): Likewise.
2882 * tests/Makefile.msvc (table-from.exe, table-to.exe): Likewise.
2883 * tests/Makefile.os2 (table-from.exe, table-to.exe): Likewise.
2884 (genutf8.exe): Don't use $(INCLUDES).
2886 2001-06-25 Bruno Haible <haible@clisp.cons.org>
2888 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
2889 Bump version number.
2890 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:4:0.
2892 2001-06-25 Bruno Haible <haible@clisp.cons.org>
2894 * Makefile.devel (OTHERMACROS): Use libtool.m4 in libcharset subdir.
2896 2001-06-25 Bruno Haible <haible@clisp.cons.org>
2898 * lib/encodings.def: Make SHIFT_JIS the primary name of SJIS.
2900 2001-06-08 Bruno Haible <haible@clisp.cons.org>
2902 * autoconf/ltmain.sh: Upgrade to libtool-1.4.
2903 * autoconf/ltconfig: Remove file.
2905 2001-06-08 Bruno Haible <haible@clisp.cons.org>
2907 * autoconf/config.guess: Update to GNU version 2001-05-11.
2908 * autoconf/config.sub: Likewise.
2910 2001-06-03 Bruno Haible <haible@clisp.cons.org>
2912 * lib/loop_unicode.h (unicode_loop_convert): Ignore Unicode 3.1 tag
2913 characters if they cannot be converted.
2914 (unicode_loop_reset): Likewise.
2915 * lib/iso2022_jp2.h (STATE_TAG_NONE, STATE_TAG_LANGUAGE,
2916 STATE_TAG_LANGUAGE_j, STATE_TAG_LANGUAGE_ja, STATE_TAG_LANGUAGE_k,
2917 STATE_TAG_LANGUAGE_ko, STATE_TAG_LANGUAGE_z, STATE_TAG_LANGUAGE_zh):
2919 (SPLIT_STATE, COMBINE_STATE): Different differently for wctomb
2921 (iso2022_jp2_wctomb): Keep track of Unicode 3.1 language tag.
2922 If "ja", prefer conversion to Japanese character sets. If "zh",
2923 prefer conversion to GB2312. If "ko", prefer conversion to KSC5601.
2925 * lib/converters.h (RET_ILUNI): Change value from 0 to -1.
2926 (RET_TOOSMALL): Change value from -1 to -2.
2927 * lib/loop_unicode.h (unicode_transliterate): Allow xxx_wctomb to
2928 return 0 written bytes.
2930 2001-06-06 Bruno Haible <haible@clisp.cons.org>
2932 * lib/encodings.def: Align with IANA character-set registry.
2933 (US-ASCII): Add alias "ANSI_X3.4-1986".
2934 (ISO-8859-14): Add alias "ISO-CELTIC".
2935 (JIS_X0208): Add alias "JIS_C6226-1983".
2936 (BIG5HKSCS): Add alias "BIG5-HKSCS".
2937 * README, man/iconv_open.3: Rename BIG5HKSCS to BIG5-HKSCS.
2938 * tests/Makefile.in (check): Likewise.
2939 * tests/Makefile.os2 (check): Likewise.
2940 * tests/Makefile.msvc (check): Likewise.
2941 * tests/BIG5-HKSCS.TXT: Renamed from BIG5HKSCS.TXT.
2942 * tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Renamed from
2943 BIG5HKSCS.IRREVERSIBLE.TXT.
2945 2001-06-02 Bruno Haible <haible@clisp.cons.org>
2947 * tools/cjk_tab_to_h.c (Encoding): Add fffd field.
2948 (is_charset2uni_large, compact_large_charset2uni): New functions.
2949 (find_charset2uni_pages): Use enc->fffd instead of 0xfffd.
2950 (output_charset2uni): If mapping to more than the Unicode BMP,
2951 use an extra indirection to keep each value in 16 bits.
2952 (invert): Bump limit from U+10000 to U+30000.
2953 (output_uni2charset_dense): Likewise.
2954 (output_uni2charset_sparse): Likewise. If mapping to more than one
2955 CJK plane, use three bytes per value instead of two bytes.
2956 (byte_row_cns11643): Allow more than 3 CJK planes.
2957 (do_cns11643_only_uni2charset): Increase number of rows, to include
2958 plane 15. Remove plane bits hack.
2959 (main): Accept names cns11643_4a,4b,5,6,7,15 as well.
2960 * tools/Makefile (ALL): Add cns11643_4a.h, cns11643_4b.h, cns11643_5.h,
2961 cns11643_6.h, cns11643_7.h, cns11643_15.h.
2962 (cns11643_1.h, cns11643_2.h, cns11643_3.h): Use new Unicode 3.1
2964 (cns11643_4a.h, cns11643_4b.h, cns11643_5.h, cns11643_6.h,
2965 cns11643_7.h, cns11643_15.h): New rules.
2966 (cns11643_inv.h): Change title.
2967 * lib/cns11643_1.h: Regenerated from Unicode 3.1 derived table.
2968 * lib/cns11643_3.h: Likewise.
2969 * lib/cns11643_4a.h: New file.
2970 * lib/cns11643_4b.h: New file.
2971 * lib/cns11643_4.h: New file.
2972 * lib/cns11643_5.h: New file.
2973 * lib/cns11643_6.h: New file.
2974 * lib/cns11643_7.h: New file.
2975 * lib/cns11643_15.h: New file.
2976 * lib/cns11643_inv.h: Regenerated from Unicode 3.1 derived table.
2977 (cns11643_inv_wctomb): Return 3 bytes now.
2978 * lib/cns11643.h: Include cns11643_4.h, cns11643_5.h, cns11643_6.h,
2979 cns11643_7.h, cns11643_15.h.
2980 (cns11643_wctomb): Now a simple alias to cns11643_inv_wctomb. Return
2981 plane number starting at 1, not 0.
2982 * lib/dec_hanyu.h (dec_hanyu_wctomb): Update for cns11643_wctomb
2984 * lib/euc_tw.h (euc_tw_mbtowc): Accept CNS11643 planes 4,5,6,7,15 as
2986 (euc_tw_wctomb): Update for cns11643_wctomb change.
2987 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
2988 * lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Accept CNS11643 planes
2990 (iso2022_cn_ext_wctomb): Update for cns11643_wctomb change.
2991 Try CNS11643 planes 4,5,6,7 as well.
2992 * tests/EUC-TW.TXT: Many additions, mostly in planes 3,4,5,6,7,15.
2993 * tests/EUC-TW.IRREVERSIBLE.TXT: Reflect additions to CNS11643 plane 1.
2996 2001-06-01 Bruno Haible <haible@clisp.cons.org>
2998 * tests/table-from.c (bmp_only): New variable.
2999 (ucs4_decode): If bmp_only, don't return characters outside Unicode
3001 (main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
3002 a conversion line if ucs4_decode returns NULL.
3003 * tests/table-to.c (main): When testing encodings other than UTF-8 and
3004 GB18030, loop upto U+30000 instead of U+10000.
3006 2001-05-24 Bruno Haible <haible@clisp.cons.org>
3008 * lib/converters.h (mbtowc_funcs): Add flushwc member function.
3009 * lib/flushwc.h: New file.
3010 * lib/cp1255.h: Include flushwc.h.
3011 (cp1255_comp_table_data, cp1255_comp_table): New arrays.
3012 (cp1255_mbtowc): Compose base and combining characters.
3013 (cp1255_flushwc): New macro.
3014 * lib/vietcomb.h (viet_comp_table_data, viet_comp_table): New arrays.
3015 * lib/cp1258.h: Include flushwc.h.
3016 (cp1258_mbtowc): Compose base and combining characters.
3017 (cp1258_flushwc): New macro.
3018 * lib/tcvn.h: Include flushwc.h.
3019 (tcvn_mbtowc): Compose base and combining characters.
3020 (tcvn_flushwc): New macro.
3021 * lib/loop_unicode.h: (unicode_transliterate): New function, extracted
3022 from unicode_loop_convert.
3023 (unicode_loop_convert): Use unicode_transliterate.
3024 (unicode_loop_reset): Call xxx_flushwc and output the resulting
3026 * lib/encodings.def: Add xxx_flushwc member.
3027 * lib/encodings_aix.def: Likewise.
3028 * lib/encodings_dos.def: Likewise.
3029 * lib/encodings_local.def: Likewise.
3030 * lib/encodings_osf1.def: Likewise.
3031 * lib/genaliases.c: Add an argument to the DEFENCODING macro.
3032 * lib/genaliases2.c: Likewise.
3033 * lib/genflags.c: Likewise.
3034 * lib/iconv.c: Likewise.
3035 * tests/table-from.c (try): Reset the iconv descriptor before the main
3036 call, and flush it afterwards.
3037 (ucs4_decode): New function.
3038 (main): Allow up to 3 Unicode characters output. Call ucs4_decode.
3039 * tests/CP1255-snippet: New file.
3040 * tests/CP1255-snippet.UTF-8: New file.
3041 * tests/CP1258-snippet: New file.
3042 * tests/CP1258-snippet.UTF-8: New file.
3043 * tests/TCVN-snippet: New file.
3044 * tests/TCVN-snippet.UTF-8: New file.
3045 * tests/Makefile.in (check): Check combining behaviour of CP1255,
3047 * tests/Makefile.msvc (check): Likewise.
3048 * tests/Makefile.os2 (check): Likewise.
3050 2001-05-22 Bruno Haible <haible@clisp.cons.org>
3052 * lib/converters.h (RET_ILUNI): New macro.
3053 (RET_ILSEQ): Change value to -1.
3054 (RET_TOOFEW): Change value.
3055 * lib/loop_unicode.h (unicode_loop_convert): Write RET_ILUNI instead
3056 of 0. Update handling of xxx_mbtowc return value.
3057 * lib/genflags.c (emit_encoding): Likewise.
3058 * lib/ascii.h (ascii_wctomb): Use RET_ILUNI instead of RET_ILSEQ.
3059 * lib/armscii_8.h (armscii_8_wctomb): Likewise.
3060 * lib/big5.h (big5_wctomb): Likewise.
3061 * lib/big5hkscs.h (big5hkscs_wctomb): Likewise.
3062 * lib/ces_big5.h (ces_big5_wctomb): Likewise.
3063 * lib/ces_gbk.h (ces_gbk_wctomb): Likewise.
3064 * lib/cns11643.h (cns11643_wctomb): Likewise.
3065 * lib/cns11643_inv.h (cns11643_inv_wctomb): Likewise.
3066 * lib/cp437.h (cp437_wctomb): Likewise.
3067 * lib/cp775.h (cp775_wctomb): Likewise.
3068 * lib/cp850.h (cp850_wctomb): Likewise.
3069 * lib/cp852.h (cp852_wctomb): Likewise.
3070 * lib/cp855.h (cp855_wctomb): Likewise.
3071 * lib/cp856.h (cp856_wctomb): Likewise.
3072 * lib/cp857.h (cp857_wctomb): Likewise.
3073 * lib/cp861.h (cp861_wctomb): Likewise.
3074 * lib/cp862.h (cp862_wctomb): Likewise.
3075 * lib/cp864.h (cp864_wctomb): Likewise.
3076 * lib/cp865.h (cp865_wctomb): Likewise.
3077 * lib/cp866.h (cp866_wctomb): Likewise.
3078 * lib/cp869.h (cp869_wctomb): Likewise.
3079 * lib/cp874.h (cp874_wctomb): Likewise.
3080 * lib/cp922.h (cp922_wctomb): Likewise.
3081 * lib/cp932ext.h (cp932ext_wctomb): Likewise.
3082 * lib/cp932.h (cp932_wctomb): Likewise.
3083 * lib/cp936ext.h (cp936ext_wctomb): Likewise.
3084 * lib/cp949.h (cp949_wctomb): Likewise.
3085 * lib/cp950ext.h (cp950ext_wctomb): Likewise.
3086 * lib/cp950.h (cp950_wctomb): Likewise.
3087 * lib/cp1046.h (cp1046_wctomb): Likewise.
3088 * lib/cp1124.h (cp1124_wctomb): Likewise.
3089 * lib/cp1129.h (cp1129_wctomb): Likewise.
3090 * lib/cp1133.h (cp1133_wctomb): Likewise.
3091 * lib/cp1250.h (cp1250_wctomb): Likewise.
3092 * lib/cp1251.h (cp1251_wctomb): Likewise.
3093 * lib/cp1252.h (cp1252_wctomb): Likewise.
3094 * lib/cp1253.h (cp1253_wctomb): Likewise.
3095 * lib/cp1254.h (cp1254_wctomb): Likewise.
3096 * lib/cp1255.h (cp1255_wctomb): Likewise.
3097 * lib/cp1256.h (cp1256_wctomb): Likewise.
3098 * lib/cp1257.h (cp1257_wctomb): Likewise.
3099 * lib/cp1258.h (cp1258_wctomb): Likewise.
3100 * lib/dec_hanyu.h (dec_hanyu_wctomb): Likewise.
3101 * lib/dec_kanji.h (dec_kanji_wctomb): Likewise.
3102 * lib/euc_cn.h (euc_cn_wctomb): Likewise.
3103 * lib/euc_jp.h (euc_jp_wctomb): Likewise.
3104 * lib/euc_kr.h (euc_kr_wctomb): Likewise.
3105 * lib/euc_tw.h (euc_tw_wctomb): Likewise.
3106 * lib/gb12345ext.h (gb12345ext_wctomb): Likewise.
3107 * lib/gb12345.h (gb12345_wctomb): Likewise.
3108 * lib/gb18030ext.h (gb18030ext_wctomb): Likewise.
3109 * lib/gb18030.h (gb18030_wctomb): Likewise.
3110 * lib/gb18030uni.h (gb18030uni_wctomb): Likewise.
3111 * lib/gb2312.h (gb2312_wctomb): Likewise.
3112 * lib/gbkext_inv.h (gbkext_inv_wctomb): Likewise.
3113 * lib/gbk.h (gbk_wctomb): Likewise.
3114 * lib/georgian_academy.h (georgian_academy_wctomb): Likewise.
3115 * lib/georgian_ps.h (georgian_ps_wctomb): Likewise.
3116 * lib/hkscs.h (hkscs_wctomb): Likewise.
3117 * lib/hp_roman8.h (hp_roman8_wctomb): Likewise.
3118 * lib/hz.h (hz_wctomb): Likewise.
3119 * lib/iso2022_cnext.h (iso2022_cn_ext_wctomb): Likewise.
3120 * lib/iso2022_cn.h (iso2022_cn_wctomb): Likewise.
3121 * lib/iso2022_jp1.h (iso2022_jp1_wctomb): Likewise.
3122 * lib/iso2022_jp2.h (iso2022_jp2_wctomb): Likewise.
3123 * lib/iso2022_jp.h (iso2022_jp_wctomb): Likewise.
3124 * lib/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
3125 * lib/iso646_cn.h (iso646_cn_wctomb): Likewise.
3126 * lib/iso646_jp.h (iso646_jp_wctomb): Likewise.
3127 * lib/iso8859_1.h (iso8859_1_wctomb): Likewise.
3128 * lib/iso8859_2.h (iso8859_2_wctomb): Likewise.
3129 * lib/iso8859_3.h (iso8859_3_wctomb): Likewise.
3130 * lib/iso8859_4.h (iso8859_4_wctomb): Likewise.
3131 * lib/iso8859_5.h (iso8859_5_wctomb): Likewise.
3132 * lib/iso8859_6.h (iso8859_6_wctomb): Likewise.
3133 * lib/iso8859_7.h (iso8859_7_wctomb): Likewise.
3134 * lib/iso8859_8.h (iso8859_8_wctomb): Likewise.
3135 * lib/iso8859_9.h (iso8859_9_wctomb): Likewise.
3136 * lib/iso8859_10.h (iso8859_10_wctomb): Likewise.
3137 * lib/iso8859_13.h (iso8859_13_wctomb): Likewise.
3138 * lib/iso8859_14.h (iso8859_14_wctomb): Likewise.
3139 * lib/iso8859_15.h (iso8859_15_wctomb): Likewise.
3140 * lib/iso8859_16.h (iso8859_16_wctomb): Likewise.
3141 * lib/isoir165ext.h (isoir165ext_wctomb): Likewise.
3142 * lib/isoir165.h (isoir165_wctomb): Likewise.
3143 * lib/jisx0201.h (jisx0201_wctomb): Likewise.
3144 * lib/jisx0208.h (jisx0208_wctomb): Likewise.
3145 * lib/jisx0212.h (jisx0212_wctomb): Likewise.
3146 * lib/johab.h (johab_wctomb): Likewise.
3147 * lib/johab_hangul.h (johab_hangul_wctomb, johab_hangul_decompose):
3149 * lib/koi8_r.h (koi8_r_wctomb): Likewise.
3150 * lib/koi8_ru.h (koi8_ru_wctomb): Likewise.
3151 * lib/koi8_u.h (koi8_u_wctomb): Likewise.
3152 * lib/ksc5601.h (ksc5601_wctomb): Likewise.
3153 * lib/mac_arabic.h (mac_arabic_wctomb): Likewise.
3154 * lib/mac_centraleurope.h (mac_centraleurope_wctomb): Likewise.
3155 * lib/mac_croatian.h (mac_croatian_wctomb): Likewise.
3156 * lib/mac_cyrillic.h (mac_cyrillic_wctomb): Likewise.
3157 * lib/mac_greek.h (mac_greek_wctomb): Likewise.
3158 * lib/mac_hebrew.h (mac_hebrew_wctomb): Likewise.
3159 * lib/mac_iceland.h (mac_iceland_wctomb): Likewise.
3160 * lib/mac_roman.h (mac_roman_wctomb): Likewise.
3161 * lib/mac_romania.h (mac_romania_wctomb): Likewise.
3162 * lib/mac_thai.h (mac_thai_wctomb): Likewise.
3163 * lib/mac_turkish.h (mac_turkish_wctomb): Likewise.
3164 * lib/mac_ukraine.h (mac_ukraine_wctomb): Likewise.
3165 * lib/mulelao.h (mulelao_wctomb): Likewise.
3166 * lib/nextstep.h (nextstep_wctomb): Likewise.
3167 * lib/sjis.h (sjis_wctomb): Likewise.
3168 * lib/tcvn.h (tcvn_wctomb): Likewise.
3169 * lib/tis620.h (tis620_wctomb): Likewise.
3170 * lib/ucs2be.h (ucs2be_wctomb): Likewise.
3171 * lib/ucs2.h (ucs2_wctomb): Likewise.
3172 * lib/ucs2internal.h (ucs2internal_wctomb): Likewise.
3173 * lib/ucs2le.h (ucs2le_wctomb): Likewise.
3174 * lib/ucs2swapped.h (ucs2swapped_wctomb): Likewise.
3175 * lib/ucs4.h (ucs4_wctomb): Likewise.
3176 * lib/uhc_1.h (uhc_1_wctomb): Likewise.
3177 * lib/uhc_2.h (uhc_2_wctomb): Likewise.
3178 * lib/utf16be.h (utf16be_wctomb): Likewise.
3179 * lib/utf16.h (utf16_wctomb): Likewise.
3180 * lib/utf16le.h (utf16le_wctomb): Likewise.
3181 * lib/utf32be.h (utf32be_wctomb): Likewise.
3182 * lib/utf32.h (utf32_wctomb): Likewise.
3183 * lib/utf32le.h (utf32le_wctomb): Likewise.
3184 * lib/utf7.h (utf7_wctomb): Likewise.
3185 * lib/utf8.h (utf8_wctomb): Likewise.
3186 * lib/viscii.h (viscii_wctomb): Likewise.
3187 * tools/8bit_tab_to_h.c (main): Likewise.
3188 * tools/cjk_tab_to_h.c (output_uni2charset_dense,
3189 output_uni2charset_sparse, do_gb18030uni): Likewise.
3191 2001-05-19 Bruno Haible <haible@clisp.cons.org>
3193 * Makefile.devel (all): Add man/{iconv.1,iconv*.3}.html.
3194 (man/%.html): New rule.
3195 * man/Makefile.in (docdir, htmldir): New variables.
3196 (install, installdirs): Install the HTML formatted man pages in
3198 (uninstall): Uninstall them.
3200 2001-05-20 Bruno Haible <haible@clisp.cons.org>
3202 * lib/cp1255.h (cp1255_decomp_table): New array.
3203 (cp1255_comb_table): New array.
3204 (cp1255_wctomb): Decompose Unicode characters.
3205 * tests/CP1255.IRREVERSIBLE.TXT: New file.
3207 2001-05-13 Bruno Haible <haible@clisp.cons.org>
3209 * lib/vietcomb.h: New file.
3210 * lib/cp1258.h: Include it.
3211 (cp1258_comb_table): New array.
3212 (cp1258_wctomb): Decompose Unicode characters.
3213 * lib/tcvn.h: Include it.
3214 (tcvn_comb_table): New array.
3215 (tcvn_wctomb): Decompose Unicode characters.
3216 * tests/CP1258.IRREVERSIBLE.TXT: New file.
3217 * tests/TCVN.IRREVERSIBLE.TXT: New file.
3219 2001-05-06 Bruno Haible <haible@clisp.cons.org>
3221 * lib/Makefile.msvc (config.h): Allow the 'del' command to fail.
3222 (iconv.lib): Likewise.
3224 2001-05-06 Bruno Haible <haible@clisp.cons.org>
3226 * lib/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3227 (CPP): Remove variable.
3228 (libiconv.la, libiconv_plug_linux.so, libiconv_plug_solaris.so,
3229 libiconv_plug_osf.so): Use LDFLAGS.
3230 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3231 libiconv_plug_osf.so, iconv.lo): Use CPPFLAGS.
3232 * lib/Makefile.msvc (CPP): Remove variable.
3233 * src/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3234 (CPP): Remove variable.
3235 (iconv): Use CPPFLAGS and LDFLAGS.
3236 * src/Makefile.msvc (CPP): Remove variable.
3237 * tests/Makefile.in (CPPFLAGS, LDFLAGS): New variables.
3238 (check, table-from, table-to): Use CPPFLAGS and LDFLAGS.
3239 * tests/Makefile.msvc (CPP): Remove variable.
3241 2001-05-06 Bruno Haible <haible@clisp.cons.org>
3243 * lib/Makefile.in (libiconv_plug_solaris.so): Change rule if not using
3244 gcc. Reported by Paananen Mikko <mikkopa@cs.tut.fi>.
3246 2001-04-11 Bruno Haible <haible@clisp.cons.org>
3248 Implement and document UTF-32, UTF-32BE, UTF-32LE.
3249 * src/utf32.h, src/utf32be.h, src/utf32le.h: New files.
3250 * src/converters.h: Include them.
3251 * src/encodings.def (UTF-32, UTF-32BE, UTF32LE): New encodings.
3252 * README, man/iconv_open.3: Add UTF-32, UTF-32BE, UTF32LE.
3253 * tests/Makefile.in (check): Check UTF-32, UTF-32BE, UTF32LE.
3254 * tests/Makefile.os2 (check): Likewise.
3255 * tests/Makefile.msvc (check): Likewise.
3256 * tests/UTF-32*snippet*: New files.
3258 * lib/ucs4.h (ucs4_mbtowc): Fix value of other-endian byte order.
3259 (ucs4_wctomb): Allow any 31-bit codepoint.
3261 2001-04-11 Bruno Haible <haible@clisp.cons.org>
3263 * tests/GB18030.TXT: Add mappings for all of U+0000..U+FFFF, including
3264 unassigned code points.
3265 * tests/table-from.c (main); When dumping GB18030, don't print code
3266 points larger than U+FFFF.
3268 2001-03-30 Bruno Haible <haible@clisp.cons.org>
3270 * tools/Makefile (GB18030uni.TXT): Use a table source which includes
3271 the unassigned Unicode code points.
3272 * lib/gb18030uni.h: Update.
3273 (gb18030uni_ranges): Remove bitmap_offset field.
3274 (gb18030uni_bitmap): Remove array.
3275 (gb18030uni_mbtowc): Omit gb18030uni_bitmap access.
3276 (gb18030uni_wctomb): Likewise.
3277 * lib/gb18030.h (gb18030_mbtowc): Handle Unicode characters >= 0x10000.
3278 (gb18030_wctomb): Likewise.
3280 2001-03-21 Bruno Haible <haible@clisp.cons.org>
3282 * INSTALL.generic (Particular Systems): Add recommendations for AIX 3.
3284 2001-03-21 Bruno Haible <haible@clisp.cons.org>
3286 * src/iconv.c (print_version): Now called GNU libiconv.
3288 2001-03-20 Bruno Haible <haible@clisp.cons.org>
3290 * README: This package is now called GNU libiconv.
3292 * tools/8bit_tab_to_h.c (main): Emit copyright notice to the output
3294 * tools/cjk_tab_to_h.c (output_title): Likewise.
3295 * tools/cjk_variants.c (main): Likewise.
3296 * lib/gentranslit.c (main): Likewise.
3298 2001-03-19 Bruno Haible <haible@clisp.cons.org>
3300 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
3301 ac_config_guess and ac_config_sub. Then ignore requests for
3302 AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
3304 2001-03-10 Bruno Haible <haible@clisp.cons.org>
3306 * INSTALL.generic: New section "Particular Systems".
3308 2001-03-10 Bruno Haible <haible@clisp.cons.org>
3310 * lib/Makefile.in (libiconv.la): Pass flag -no-undefined. Needed on
3311 platforms like BeOS.
3313 * lib/loop_wchar.h (mbstate_t): Don't typedef if already #defined in
3316 2001-03-06 Bruno Haible <haible@clisp.cons.org>
3318 * Version 1.6 released.
3319 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3320 Bump version number.
3321 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:3:0.
3323 2001-03-05 Bruno Haible <haible@clisp.cons.org>
3325 Provide all encodings used by OSF/1 5.1 locales.
3326 * lib/dec_kanji.h: New file.
3327 * lib/dec_hanyu.h: New file.
3328 * lib/converters.h: Include them if USE_OSF1 is defined.
3329 * lib/encodings_osf1.def: New file.
3330 * lib/genflags.c (main): Include it. Define USE_OSF1.
3331 * lib/genaliases2.c (main): Include it conditionally.
3332 * lib/iconv.c: Define USE_OSF1 on OSF/1.
3333 Include encodings_osf1.def and aliases_osf1.h.
3334 * lib/Makefile.in (iconv.lo): Depend on encodings_osf1.def and
3336 * Makefile.devel (lib/aliases_osf1.h): New target.
3337 (all): Depend on lib/aliases_osf1.h.
3338 (lib/flags.h): Depend on lib/encodings_osf1.def.
3340 2001-03-01 Bruno Haible <haible@clisp.cons.org>
3342 * tools/Makefile (cp775.h): New target.
3344 * lib/cp775.h: New file.
3345 * lib/converters.h: Include it.
3346 * lib/encodings_dos.def (CP775): New encoding.
3348 2001-02-25 Bruno Haible <haible@clisp.cons.org>
3350 * lib/iconv.c (iconv_open): locale_charset() doesn't return NULL any
3353 2001-02-24 Bruno Haible <haible@clisp.cons.org>
3355 * src/iconv.c (convert): Use ICONV_CONST.
3356 * tests/table-from.c: Include config.h.
3357 (try): Use ICONV_CONST.
3358 * tests/table-to.c: Include config.h.
3359 (main): Use ICONV_CONST.
3360 * tests/Makefile.in (INCLUDES): Add -I../lib.
3361 * tests/Makefile.os2 (INCLUDES): Likewise.
3362 * tests/Makefile.msvc (INCLUDES): Add -I..\lib.
3364 2001-02-24 Bruno Haible <haible@clisp.cons.org>
3366 Provide all encodings used by DOS locales.
3367 * tools/Makefile (cp437.h, cp852.h, cp855.h, cp857.h, cp861.h,
3368 cp864.h, cp865.h, cp869.h): New targets.
3370 * lib/cp437.h: New file.
3371 * lib/cp852.h: New file.
3372 * lib/cp855.h: New file.
3373 * lib/cp857.h: New file.
3374 * lib/cp861.h: New file.
3375 * lib/cp864.h: New file.
3376 * lib/cp865.h: New file.
3377 * lib/cp869.h: New file.
3378 * lib/converters.h: Include them if USE_DOS is defined.
3379 * lib/encodings_dos.def: New file.
3380 * lib/genflags.c (main): Include it. Define USE_DOS.
3381 * lib/genaliases2.c (main): Include it conditionally.
3382 * lib/iconv.c: Define USE_DOS on DJGPP.
3383 Include encodings_dos.def and aliases_dos.h.
3384 * lib/Makefile.in (iconv.lo): Depend on encodings_dos.def and
3386 * Makefile.devel (lib/aliases_dos.h): New target.
3387 (all): Depend on lib/aliases_dos.h.
3388 (lib/flags.h): Depend on lib/encodings_dos.def.
3390 2001-02-23 Bruno Haible <haible@clisp.cons.org>
3392 * src/iconv.c [DJGPP]: Include <io.h> and <unistd.h>.
3393 (SET_BINARY) [O_BINARY]: New macro.
3394 (usage): Mention --binary if available.
3395 (convert): Use SET_BINARY instead of setmode.
3397 Reported by Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>.
3399 2001-02-25 Bruno Haible <haible@clisp.cons.org>
3401 * autoconf/ltconfig:
3402 sed -e 's/reload object files/produce relocatable object files/'.
3404 2001-02-20 Bruno Haible <haible@clisp.cons.org>
3406 * src/iconv.c (usage, main): Make -f and -t options optional.
3407 * man/iconv.1: Mark them as optional.
3409 2001-02-20 Bruno Haible <haible@clisp.cons.org>
3411 * tools/Makefile (GB18030ext.TXT, GB18030uni.TXT): Generate from
3413 * lib/gb18030uni.h, lib/gb18030ext.h: Add mapping 0xA989 -> U+303E,
3414 0xFE5E -> U+2E97. Shift the entire four-byte range.
3415 * tests/GB18030.TXT: Regenerated.
3417 2001-02-20 Bruno Haible <haible@clisp.cons.org>
3419 Better support for DOS/Windows platforms.
3420 * autoconf/ltconfig: Upgrade to libtool-1.3.5.
3421 * autoconf/ltmain.sh: Likewise.
3422 * autoconf/aclocal.m4: Likewise.
3423 * autoconf/install-sh: New file.
3424 * configure.in: Call AC_OBJEXT and AC_EXEEXT. Call AC_CONFIG_AUX_DIR.
3426 2001-02-20 Bruno Haible <haible@clisp.cons.org>
3428 * Makefile.in (libdir, includedir, mandir): Use the autoconf
3429 determined value, in order to respect the configure arguments.
3430 * lib/Makefile.in (libdir): Likewise.
3431 * src/Makefile.in (bindir): Likewise.
3432 * man/Makefile.in (mandir): Likewise.
3434 2001-02-04 Bruno Haible <haible@clisp.cons.org>
3436 * lib/translit.def: Add all the neutral transliterations from glibc.
3437 * lib/gentranslit.c (main): Allow UTF-8 replacements which are in
3438 UCS-2 but not in ISO-8859-1. Generate a table of 'unsigned short'.
3439 Avoid accessing data[-1].
3440 * lib/loop_unicode.h (unicode_loop_convert): Change type of pointer
3443 2001-01-05 Bruno Haible <haible@clisp.cons.org>
3445 Implement and document CP862.
3446 * tools/Makefile (ALL): Add cp862.h.
3447 (cp862.h): New target.
3448 * lib/cp862.h: New file.
3449 * lib/converters.h: Include it.
3450 * lib/encodings.def (CP862): New encoding.
3451 * README, man/iconv_open.3: Add CP862.
3452 * tests/Makefile.in (check): Check CP862.
3453 * tests/Makefile.msvc (check): Likewise.
3454 * tests/Makefile.os2 (check): Likewise.
3455 * tests/CP862.TXT: New file.
3457 2000-12-18 Bruno Haible <haible@clisp.cons.org>
3459 * autoconf/mbstate_t.m4: New file, from textutils-2.0.10.
3460 * Makefile.devel (OTHERMACROS): Add it.
3461 * configure.in: Call AC_MBSTATE_T.
3462 * lib/config.h.in (mbstate_t): New definition.
3463 * lib/loop_wchar.h (mbrtowc): For BeOS, declare and define fallback.
3465 2000-12-12 Bruno Haible <haible@clisp.cons.org>
3467 * Makefile.in: Use $(MAKE) instead of $(MAKE) -r. Needed with Solaris
3468 "make", which doesn't set MAKE as expected by @SET_MAKE@ if -r is
3469 given. Reported by Toshimitsu Fujiwara.
3471 2000-12-08 Bruno Haible <haible@clisp.cons.org>
3473 * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
3474 * lib/Makefile.in (exec_prefix): Likewise.
3475 * src/Makefile.in (exec_prefix): Likewise.
3476 * man/Makefile.in (exec_prefix): Likewise.
3478 2000-12-02 Bruno Haible <haible@clisp.cons.org>
3480 * Version 1.5 released.
3481 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3482 Bump version number.
3483 * lib/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:2:0.
3485 2000-12-02 Bruno Haible <haible@clisp.cons.org>
3487 * Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
3488 Remove files installed in lib by libcharset.
3489 * Makefile.msvc (mostlyclean): Likewise.
3491 * Makefile.in (check): Depend on target 'all'.
3492 * Makefile.os2 (check): Likewise.
3493 * Makefile.msvc (check): Depend on target 'force' as well.
3495 * src/iconv.c (usage): Take an exitcode argument.
3496 (print_version): New function.
3497 (main): Recognize --help and --version command line options.
3499 2000-12-02 Bruno Haible <haible@clisp.cons.org>
3501 * Makefile.msvc: Replace STATIC with its opposite flag, DLL.
3502 * lib/Makefile.msvc: Likewise.
3503 * src/Makefile.msvc: Likewise.
3504 * tests/Makefile.msvc: Likewise.
3506 2000-12-01 Bruno Haible <haible@clisp.cons.org>
3508 * src/iconv.c: Include <fcntl.h>. Define fallbacks for setmode, fileno.
3509 (force_binary): New variable.
3510 (convert): If requested, set the input O_BINARY.
3511 (main): Accept --binary option. If requested, set the output O_BINARY.
3512 * tests/check-stateful.bat: Pass --binary to iconv.
3513 * tests/check-stateful.cmd: Likewise.
3514 * tests/check-translit.bat: Likewise.
3515 * tests/check-translit.cmd: Likewise.
3517 2000-12-01 Bruno Haible <haible@clisp.cons.org>
3519 * include/iconv.h.in (_libiconv_version): New declaration.
3520 * lib/iconv.c (_libiconv_version): New variable.
3522 2000-11-30 Bruno Haible <haible@clisp.cons.org>
3524 * Makefile.msvc (all): File now named lib/libcharset.h.
3525 (clean, distclean, maintainer-clean): Likewise.
3527 2000-11-23 Bruno Haible <haible@clisp.cons.org>
3529 * lib/*: Move here all files from src/*.
3530 * src/*: Move all files to lib.
3531 * lib/Makefile.in (distclean): No need to remove config.status,
3532 config.log, config.cache.
3533 * configure.in: Require lib/iconv.c, not src/iconv.c. Create
3534 lib/config.h, not src/config.h. Also create lib/Makefile.
3535 * Makefile.in (all): Install libcharset into lib, not src. Recurse
3537 (install-lib): Recurse into lib, not src.
3538 (install): Recurse into libcharset, lib and src.
3539 (installdirs, uninstall): Likewise.
3540 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
3541 * Makefile.msvc (all): Recurse into lib and src.
3542 (install): Recurse into libcharset, lib and src.
3543 (installdirs, uninstall): Likewise.
3544 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
3545 * Makefile.os2 (all): Recurse into lib and src.
3546 (install-lib): Recurse into lib, not src.
3547 (install, uninstall): Recurse into lib and src.
3548 (check, mostlyclean, clean, distclean, maintainer-clean): Likewise.
3549 * Makefile.devel (lib/config.h.msvc): Renamed from src/config.h.msvc.
3550 (lib/aliases.h): Renamed from src/aliases.h.
3551 (lib/aliases.gperf): Renamed from src/aliases.gperf.
3552 (lib/aliases_aix.h): Renamed from src/aliases_aix.h.
3553 (lib/flags.h): Renamed from src/flags.h.
3554 (lib/translit.h): Renamed from src/translit.h.
3555 * src/iconv.c: Moved here from tests/iconv.c.
3556 * src/Makefile.in: New file.
3557 * src/Makefile.msvc: New file.
3558 * src/Makefile.os2: New file.
3559 * tests/Makefile.in (iconv): Remove target.
3560 (../lib/libiconv.la): Renamed from ../src/libiconv.la.
3561 (clean): No need to remove iconv.
3562 * tests/Makefile.msvc (iconv.exe): Remove target.
3563 * tests/Makefile.os2 (iconv.exe): Likewise.
3564 * tests/check-stateful: iconv is in ../src.
3565 * tests/check-stateful.bat: Likewise.
3566 * tests/check-stateful.cmd: Likewise.
3567 * tests/check-translit: iconv is in ../src.
3568 * tests/check-translit.bat: Likewise.
3569 * tests/check-translit.cmd: Likewise.
3570 * man/iconv.1: New file.
3571 * man/Makefile.in (install, installdirs, uninstall): Also install *.1
3573 * man/Makefile.os2 (MAN3): Renamed from MAN.
3574 (MAN1): New variable.
3575 (install, uninstall): Also install *.1 man pages.
3577 2000-11-21 Bruno Haible <haible@clisp.cons.org>
3579 * Makefile.msvc (all, check, mostlyclean, clean, distclean,
3580 maintainer-clean): Recurse into libcharset.
3581 (clean, distclean, maintainer-clean): Remove src\libcharset.h.
3582 * src/Makefile.msvc (LIBCHARSET_OBJECTS): New variable.
3583 (iconv.lib): Link with $(LIBCHARSET_OBJECTS).
3585 2000-11-18 Bruno Haible <haible@clisp.cons.org>
3587 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Change implementation
3588 so that it agrees with Microsoft's definition of CP950.
3589 * tests/CP950.TXT: Likewise.
3590 * tests/CP950.IRREVERSIBLE.TXT: Add 0xA244, 0xA2CC, 0xA2CE.
3592 2000-11-18 Bruno Haible <haible@clisp.cons.org>
3594 Add support for locale dependent "char" and "wchar_t" encodings.
3595 * libcharset: New subdirectory.
3596 * src/loop_unicode.h: New file, extracted from src/iconv.c.
3597 * src/loop_wchar.h: New file.
3598 * src/loops.h: New file. Include loop_unicode.h and loop_wchar.h.
3599 * src/encodings_local.def: New file.
3600 * src/genaliases.c: Also create aliases for encodings_local.def.
3601 * src/converters.h (conv_struct): Add lfuncs field.
3602 * src/genflags.c: Add dummy definitions of struct loop_funcs.
3603 * src/iconv.c: Include libcharset.h.
3604 (loop_funcs): New structure.
3605 Treat encodings_local.def like encodings.def.
3607 (iconv_open): Move the bulk of the code to loop_unicode.h.
3609 (iconvctl): Extend determination of TRIVIALP to wchar_t conversion
3611 * src/Makefile.in (PLUG_SOURCES): Remove variable.
3612 (LIBCHARSET_OBJECTS): New variable.
3613 (libiconv.la): Link in the LIBCHARSET_OBJECTS.
3614 (libiconv_plug_linux.so, libiconv_plug_solaris.so,
3615 libiconv_plug_osf.so): Link in the LIBCHARSET_OBJECTS, using
3617 (iconv.lo): Depend on encodings_local.def.
3618 * src/Makefile.msvc (iconv.obj): Depend on encodings_local.def.
3619 * src/Makefile.os2 (iconv.obj): Likewise.
3620 * configure.in: Add tests for locale.h, mbrtowc, wcrtomb, setlocale.
3621 Recurse into libcharset.
3622 * src/config.h.in (HAVE_LOCALE_H, HAVE_MBRTOWC, HAVE_WCRTOMB,
3623 HAVE_SETLOCALE): New macros.
3624 * tests/iconv.c: Include config.h and locale.h.
3625 (main): Call setlocale.
3626 * tests/Makefile.in (iconv): Search for config.h in ../src.
3627 * tests/Makefile.os2 (iconv.exe): Likewise.
3628 * tests/Makefile.msvc (iconv.exe): Likewise.
3629 * README, man/iconv_open.3: Document "char" and "wchar_t" encodings.
3630 * Makefile.in: After "cd", use "&&" not ";".
3631 (all, check, mostlyclean, clean, distclean, maintainer-clean):
3632 Recurse into libcharset.
3633 * Makefile.devel (all): Recurse into libcharset.
3634 (src/aliases.gperf): Depend on src/encodings_local.def.
3636 2000-11-18 Bruno Haible <haible@clisp.cons.org>
3638 * src/converters.h (ucs4_t): New type.
3639 (wchar_t): Remove locally defined override.
3640 (mbtowc_funcs, wctomb_funcs): Use ucs4_t instead of wchar_t.
3641 * src/iconv.c (iconv): Likewise.
3642 * src/genflags.c (emit_encoding): Use ucs4_t instead of wchar_t.
3643 * tools/8bit_tab_to_h.c: Use "ucs4_t" instead of "wchar_t".
3644 * tools/cjk_tab_to_h.c: Likewise.
3645 * src/armscii_8.h: Use ucs4_t instead of wchar_t.
3646 * src/ascii.h: Likewise.
3647 * src/big5.h: Likewise.
3648 * src/big5hkscs.h: Likewise.
3649 * src/ces_big5.h: Likewise.
3650 * src/ces_gbk.h: Likewise.
3651 * src/cns11643.h: Likewise.
3652 * src/cns11643_1.h: Likewise.
3653 * src/cns11643_2.h: Likewise.
3654 * src/cns11643_3.h: Likewise.
3655 * src/cns11643_inv.h: Likewise.
3656 * src/cp1046.h: Likewise.
3657 * src/cp1124.h: Likewise.
3658 * src/cp1129.h: Likewise.
3659 * src/cp1133.h: Likewise.
3660 * src/cp1250.h: Likewise.
3661 * src/cp1251.h: Likewise.
3662 * src/cp1252.h: Likewise.
3663 * src/cp1253.h: Likewise.
3664 * src/cp1254.h: Likewise.
3665 * src/cp1255.h: Likewise.
3666 * src/cp1256.h: Likewise.
3667 * src/cp1257.h: Likewise.
3668 * src/cp1258.h: Likewise.
3669 * src/cp850.h: Likewise.
3670 * src/cp856.h: Likewise.
3671 * src/cp866.h: Likewise.
3672 * src/cp874.h: Likewise.
3673 * src/cp922.h: Likewise.
3674 * src/cp932.h: Likewise.
3675 * src/cp932ext.h: Likewise.
3676 * src/cp936ext.h: Likewise.
3677 * src/cp949.h: Likewise.
3678 * src/cp950.h: Likewise.
3679 * src/cp950ext.h: Likewise.
3680 * src/euc_cn.h: Likewise.
3681 * src/euc_jp.h: Likewise.
3682 * src/euc_kr.h: Likewise.
3683 * src/euc_tw.h: Likewise.
3684 * src/gb12345.h: Likewise.
3685 * src/gb12345ext.h: Likewise.
3686 * src/gb18030.h: Likewise.
3687 * src/gb18030ext.h: Likewise.
3688 * src/gb18030uni.h: Likewise.
3689 * src/gb2312.h: Likewise.
3690 * src/gbk.h: Likewise.
3691 * src/gbkext1.h: Likewise.
3692 * src/gbkext2.h: Likewise.
3693 * src/gbkext_inv.h: Likewise.
3694 * src/georgian_academy.h: Likewise.
3695 * src/georgian_ps.h: Likewise.
3696 * src/hkscs.h: Likewise.
3697 * src/hp_roman8.h: Likewise.
3698 * src/hz.h: Likewise.
3699 * src/iso2022_cn.h: Likewise.
3700 * src/iso2022_cnext.h: Likewise.
3701 * src/iso2022_jp.h: Likewise.
3702 * src/iso2022_jp1.h: Likewise.
3703 * src/iso2022_jp2.h: Likewise.
3704 * src/iso2022_kr.h: Likewise.
3705 * src/iso646_cn.h: Likewise.
3706 * src/iso646_jp.h: Likewise.
3707 * src/iso8859_1.h: Likewise.
3708 * src/iso8859_10.h: Likewise.
3709 * src/iso8859_13.h: Likewise.
3710 * src/iso8859_14.h: Likewise.
3711 * src/iso8859_15.h: Likewise.
3712 * src/iso8859_16.h: Likewise.
3713 * src/iso8859_2.h: Likewise.
3714 * src/iso8859_3.h: Likewise.
3715 * src/iso8859_4.h: Likewise.
3716 * src/iso8859_5.h: Likewise.
3717 * src/iso8859_6.h: Likewise.
3718 * src/iso8859_7.h: Likewise.
3719 * src/iso8859_8.h: Likewise.
3720 * src/iso8859_9.h: Likewise.
3721 * src/isoir165.h: Likewise.
3722 * src/isoir165ext.h: Likewise.
3723 * src/java.h: Likewise.
3724 * src/jisx0201.h: Likewise.
3725 * src/jisx0208.h: Likewise.
3726 * src/jisx0212.h: Likewise.
3727 * src/johab.h: Likewise.
3728 * src/johab_hangul.h: Likewise.
3729 * src/koi8_r.h: Likewise.
3730 * src/koi8_ru.h: Likewise.
3731 * src/koi8_u.h: Likewise.
3732 * src/ksc5601.h: Likewise.
3733 * src/mac_arabic.h: Likewise.
3734 * src/mac_centraleurope.h: Likewise.
3735 * src/mac_croatian.h: Likewise.
3736 * src/mac_cyrillic.h: Likewise.
3737 * src/mac_greek.h: Likewise.
3738 * src/mac_hebrew.h: Likewise.
3739 * src/mac_iceland.h: Likewise.
3740 * src/mac_roman.h: Likewise.
3741 * src/mac_romania.h: Likewise.
3742 * src/mac_thai.h: Likewise.
3743 * src/mac_turkish.h: Likewise.
3744 * src/mac_ukraine.h: Likewise.
3745 * src/mulelao.h: Likewise.
3746 * src/nextstep.h: Likewise.
3747 * src/sjis.h: Likewise.
3748 * src/tcvn.h: Likewise.
3749 * src/tis620.h: Likewise.
3750 * src/ucs2.h: Likewise.
3751 * src/ucs2be.h: Likewise.
3752 * src/ucs2internal.h: Likewise.
3753 * src/ucs2le.h: Likewise.
3754 * src/ucs2swapped.h: Likewise.
3755 * src/ucs4.h: Likewise.
3756 * src/ucs4be.h: Likewise.
3757 * src/ucs4internal.h: Likewise.
3758 * src/ucs4le.h: Likewise.
3759 * src/ucs4swapped.h: Likewise.
3760 * src/uhc_1.h: Likewise.
3761 * src/uhc_2.h: Likewise.
3762 * src/utf16.h: Likewise.
3763 * src/utf16be.h: Likewise.
3764 * src/utf16le.h: Likewise.
3765 * src/utf7.h: Likewise.
3766 * src/utf8.h: Likewise.
3767 * src/viscii.h: Likewise.
3769 2000-11-18 Bruno Haible <haible@clisp.cons.org>
3771 Make transliteration optional.
3772 * src/iconv.c (iconv_open): Strip off //TRANSLIT suffix from names.
3773 Set transliteration on if and only if tocode ends in //TRANSLIT.
3774 * README, man/iconv_open.3: Document how to enable transliteration.
3775 * tests/check-translit: Add //TRANSLIT to iconv's 't' argument.
3776 * tests/check-translit.bat: Likewise.
3777 * tests/check-translit.cmd: Likewise.
3779 2000-11-18 Bruno Haible <haible@clisp.cons.org>
3781 * man/iconv.3: Fix typo.
3783 2000-10-31 Bruno Haible <haible@clisp.cons.org>
3785 * README, man/iconv_open.3: Document JOHAB again.
3787 2000-11-15 Bruno Haible <haible@clisp.cons.org>
3789 * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
3790 (STATIC): Change default from 0 to 1.
3791 * src/Makefile.msvc: Likewise.
3792 * tests/Makefile.msvc: Likewise.
3793 * tests/check-stateless.bat: Call 'sort' with no arguments.
3795 2000-11-12 Bruno Haible <haible@clisp.cons.org>
3797 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
3798 version from GNU CVS.
3800 2000-10-24 Bruno Haible <haible@clisp.cons.org>
3802 * Version 1.4 released.
3803 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3804 Bump version number.
3805 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:1:0.
3807 2000-10-23 Bruno Haible <haible@clisp.cons.org>
3809 Implement and document GB18030 and BIG5HKSCS.
3810 * tools/cjk_tab_to_h.c (row_byte_hkscs, byte_row_hkscs, do_hkscs): New
3812 (do_gb18030uni): New function.
3813 (main): Accept gb18030ext, gb18030uni, hkscs.
3814 * tools/Makefile (ALL): Add gb18030ext.h, gb18030uni.h, hkscs.h.
3815 (gb18030ext.h, GB18030ext.TXT, gb18030uni.h, GB18030uni.TXT,
3816 hkscs.h): New targets.
3817 * src/gb18030ext.h, src/gb18030uni.h, src/gb18030.h: New files.
3818 * src/hkscs.h, src/big5hkscs.h: New files.
3819 * src/converters.h: Include gb18030.h and big5hkscs.h.
3820 * src/encodings.def (GB18030, BIG5HKSCS): New encodings.
3821 * README, man/iconv_open.3: Add GB18030, BIG5HKSCS.
3822 * tests/Makefile.in (check): Check GB18030, BIG5HKSCS.
3823 * tests/Makefile.msvc (check): Likewise.
3824 * tests/Makefile.os2 (check): Likewise.
3825 * tests/GB18030.TXT: New file.
3826 * tests/BIG5HKSCS.TXT, tests/BIG5HKSCS.IRREVERSIBLE.TXT: New files.
3828 2000-10-23 Bruno Haible <haible@clisp.cons.org>
3830 * tests/table-from.c (try, main): Use UCS-4-INTERNAL instead of
3831 UCS-2-INTERNAL, to avoid problems with UCS-2 surrogate handling.
3832 * tests/table-to.c (main): Likewise.
3834 2000-10-22 Bruno Haible <haible@clisp.cons.org>
3836 * src/gentranslit.c (main): Read the input in UTF-8 encoding.
3838 2000-10-09 Bruno Haible <haible@clisp.cons.org>
3840 CPU recognition on OpenBSD.
3841 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __m68k__,
3842 __mc68020__, __MIPSEB__, __MIPSEL__, __m88k__ as CPU indicators.
3844 2000-10-03 Bruno Haible <haible@clisp.cons.org>
3846 * src/gentranslit.c (main): Don't output non-ASCII ISO-8859-1
3847 character literals, use the numeric value instead.
3848 Reported by Shin-Hsien Yeh <shyeh@alcatel.com.tw>.
3850 2000-09-29 Bruno Haible <haible@clisp.cons.org>
3852 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
3855 2000-09-25 Bruno Haible <haible@clisp.cons.org>
3857 * autoconf/aclocal.m4 (CL_WORDS_LITTLEENDIAN): Recognize __i386__
3858 as equivalent to __i386. For OpenBSD.
3860 2000-09-21 Bruno Haible <haible@clisp.cons.org>
3862 * src/utf16.h (utf16_wctomb): Reject single surrogates.
3863 * src/utf16be.h (utf16be_wctomb): Likewise.
3864 * src/utf16le.h (utf16le_wctomb): Likewise.
3865 * src/ucs2.h (ucs2_mbtowc, ucs2_wctomb): Likewise.
3866 * src/ucs2be.h (ucs2be_mbtowc, ucs2be_wctomb): Likewise.
3867 * src/ucs2le.h (ucs2le_mbtowc, ucs2le_wctomb): Likewise.
3868 * src/ucs2internal.h (ucs2internal_mbtowc, ucs2internal_wctomb):
3870 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb):
3873 2000-09-15 Bruno Haible <haible@clisp.cons.org>
3875 * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
3876 * src/Makefile.in (install, installdirs, uninstall): Likewise.
3877 * man/Makefile.in (install, installdirs, uninstall): Likewise.
3879 2000-09-11 Bruno Haible <haible@clisp.cons.org>
3881 * src/utf7.h (utf7_mbtowc): Fix combining of UTF-16 surrogates.
3883 2000-08-26 Bruno Haible <haible@clisp.cons.org>
3885 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
3888 2000-07-04 Akira Hatakeyama <akira@sra.co.jp>
3889 Bruno Haible <haible@clisp.cons.org>
3891 * os2/iconv.def, README.os2, Makefile.os2, src/Makefile.os2,
3892 tests/Makefile.os2, man/Makefile.os2, tests/check-stateful.cmd,
3893 tests/check-stateless.cmd, tests/check-translit.cmd: New files.
3895 2000-06-28 Bruno Haible <haible@clisp.cons.org>
3897 * src/ucs2internal.h (ucs2internal_mbtowc): Avoid gcc warning about
3899 * src/ucs4internal.h (ucs4internal_mbtowc): Likewise.
3900 * src/ucs2swapped.h (ucs2swapped_mbtowc, ucs2swapped_wctomb): Verify
3901 sizeof(unsigned short).
3902 * src/ucs4swapped.h (ucs4swapped_mbtowc, ucs4swapped_mbtowc): Verify
3903 sizeof(unsigned int).
3904 Reported by François Pinard <pinard@iro.umontreal.ca>.
3906 2000-05-29 Bruno Haible <haible@clisp.cons.org>
3908 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
3909 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
3911 2000-05-23 Bruno Haible <haible@clisp.cons.org>
3913 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
3914 host_vendor, host_os correctly if $host has more than two hyphens.
3916 2000-04-15 Bruno Haible <haible@clisp.cons.org>
3918 * Version 1.3 released.
3919 * include/iconv.h.in (_LIBICONV_VERSION), README, windows/iconv.rc:
3920 Bump version number.
3921 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 2:0:0.
3923 2000-04-15 Bruno Haible <haible@clisp.cons.org>
3926 * INSTALL.generic: New file.
3928 Implement and document UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
3929 * src/ucs2be.h, src/ucs2le.h, src/ucs4be.h, src/ucs4le.h: New files.
3930 * src/converters.h: Include them.
3931 * src/ucs2swapped.h: Remove #defines for UCS-2-BE, UCS-2-LE.
3932 * src/ucs4swapped.h: Remove #defines for UCS-4-BE, UCS-4-LE.
3933 * src/encodings.def (UCS-2BE): Renamed from UCS-2-BE.
3934 (UCS-2LE): Renamed from UCS-2-LE.
3935 (UCS-4BE): Renamed from UCS-4-BE.
3936 (UCS-4LE): Renamed from UCS-4-LE.
3937 * Makefile.devel (src/aliases.h): Pass option "-i 1" to gperf.
3938 * README, man/iconv_open.3: Add UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
3939 * tests/Makefile.in (check): Check UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE.
3940 * tests/Makefile.msvc (check): Likewise.
3941 * tests/UCS-*snippet*: New files.
3943 Allow building as a shared library on Windows.
3944 Allow running the tests on Windows.
3945 * Makefile.devel (include/iconv.h.msvc): Remove rule.
3946 (include/iconv.h.msvc-static, include/iconv.h.msvc-shared): New
3949 * windows/dllexport.h: New file.
3950 * include/iconv.h.msvc: Remove file.
3951 * include/iconv.h.msvc-static, include/iconv.h.msvc-shared: New
3952 autogenerated files.
3953 * Makefile.msvc (STATIC, DEBUG): Default to 0.
3954 (all): Choose either include\iconv.h.msvc-static or
3955 include\iconv.h.msvc-shared.
3956 (check): Depend on all.
3957 (all, check, mostlyclean, clean, distclean, maintainer-clean):
3958 Recurse into tests directory.
3959 * src/Makefile.msvc (STATIC, DEBUG): Default to 0.
3960 (WARN_CFLAGS, PICFLAGS, OPTIMFLAGS): New variables.
3961 (CFLAGS): Use them. Add -MD and -DBUILDING_LIBICONV.
3962 (RESOURCES): New variable.
3963 (iconv.lib): Change rule when building DLL.
3964 (clean, distclean): One filename per line.
3965 * tests/Makefile.msvc: New file.
3966 * tests/check-stateful.bat, tests/check-stateless.bat,
3967 tests/check-translit.bat: New files.
3968 * tests/uniq-u.c: New file, taken from GNU textutils.
3969 * README.win32: Update.
3970 Based on patches by Taro Muraoka <koron@tka.att.ne.jp>.
3972 2000-04-14 Bruno Haible <haible@clisp.cons.org>
3974 Fix an OSF/1 problem.
3975 * configure.in: Define GCC variable for substitution.
3976 * src/Makefile.in (libiconv_plug_osf.so): Change rule if not using
3979 2000-04-13 Bruno Haible <haible@clisp.cons.org>
3981 Fix a SunOS 4 problem.
3982 * include/iconv.h.in: If EILSEQ is not defined by the system, define
3983 it to ENOENT, not EINVAL.
3985 2000-04-02 Bruno Haible <haible@clisp.cons.org>
3987 Allow building on filesystems lacking symlinks and hard links.
3988 * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
3990 * configure.in: Add CL_PROG_LN, CL_PROG_LN_S.
3991 * src/Makefile.in (LN): Use autoconfigured value @LN@.
3992 (LN_S): Use autoconfigured value @LN_S@.
3994 2000-03-15 Bruno Haible <haible@clisp.cons.org>
3996 * Version 1.2 released.
3997 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
3998 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:1:1.
4000 2000-03-14 Bruno Haible <haible@clisp.cons.org>
4002 Implement and document UTF-16BE and UTF16LE.
4003 * src/utf16be.h, src/utf16le.h: New files.
4004 * src/converters.h: Include them.
4005 * src/encodings.def (UTF-16BE, UTF16LE): New encodings.
4006 * README, man/iconv_open.3: Add UTF-16BE, UTF16LE.
4007 * tests/Makefile.in (check): Check UTF-16, UTF-16BE, UTF16LE.
4008 * tests/UTF-16*snippet*: New files.
4010 * src/utf16.h (utf16_wctomb): Output a byte order mark.
4012 2000-03-13 Bruno Haible <haible@clisp.cons.org>
4014 Provide all encodings used by AIX locales.
4015 * tools/Makefile (all): Add cp856.h, cp922.h, cp1046.h, cp1124.h,
4017 (cp856.h, cp922.h, cp1046.h, cp1124.h, cp1129.h): New targets.
4018 * src/cp856.h, src/cp922.h, src/cp943.h, src/cp1046.h, src/cp1124.h,
4019 src/cp1129.h: New files.
4020 * src/converters.h: Include them if USE_AIX is defined.
4021 * src/encodings_aix.def: New file, with CP856, CP922, CP943, CP1046,
4023 * src/genflags.c: Define USE_AIX. Include encodings_aix.def.
4024 * src/genaliases2.c: New file.
4025 * src/iconv.c: Define USE_AIX on AIX.
4026 Include encodings_aix.def and aliases_aix.h.
4027 (aliases2_lookup): New function.
4028 (iconv_open): Call aliases2_lookup.
4029 * src/Makefile.in (iconv.lo): Depend on encodings_aix.def and
4031 * Makefile.devel (all): Add src/aliases_aix.h.
4032 (src/aliases_aix.h): New rule.
4033 (src/flags.h): Depend on src/encodings_aix.def.
4035 2000-02-24 Bruno Haible <haible@clisp.cons.org>
4037 * src/iconv.c (iconv): Don't write beyond the end of the output buffer.
4038 Reported by Edmund Grimley Evans <edmundo@rano.org>.
4040 2000-02-22 Bruno Haible <haible@clisp.cons.org>
4042 * src/utf7.h (direct_tab, xdirect_tab): Treat tab like space.
4044 2000-02-15 Bruno Haible <haible@clisp.cons.org>
4046 * src/iconv.c (iconv): Add cast in xxx_reset call.
4048 2000-02-05 Bruno Haible <haible@clisp.cons.org>
4050 * src/tis620.h: Simplify.
4052 2000-01-27 Bruno Haible <haible@clisp.cons.org>
4054 * Makefile.devel (CLISP_DIR): Change to "..".
4056 2000-01-24 Bruno Haible <haible@clisp.cons.org>
4058 * Version 1.1 released.
4059 * include/iconv.h.in (_LIBICONV_VERSION): Bump version number.
4060 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 1:0:1.
4062 2000-01-23 Bruno Haible <haible@clisp.cons.org>
4064 * src/utf7.h (utf7_wctomb): If base64 encoding is not active, encode
4067 2000-01-22 Bruno Haible <haible@clisp.cons.org>
4069 * include/iconv.h.in (iconvctl): New declaration.
4070 (ICONV_TRIVIALP, ICONV_GET_TRANSLITERATE, ICONV_SET_TRANSLITERATE):
4072 * src/iconv.c (iconvctl): New function.
4074 * tests/Makefile.in: Add a rule for ../src/libiconv.la. Define $(MAKE).
4076 Solve a build problem.
4077 * include/iconv.h.in: Renamed from include/libiconv.h.in.
4078 * Makefile.devel: libiconv.h -> iconv.h.
4079 * Makefile.in: Likewise.
4080 * configure.in: Likewise. Remove check for <iconv.h>.
4081 * src/iconv.c: Include iconv.h instead of libiconv.h.
4082 * tests/iconv.c, tests/table-from.c, tests/table-to.c: Likewise.
4084 * README, man/iconv_open.3: Don't document JOHAB any more.
4086 * man/iconv.3: Clarify return value again.
4088 2000-01-16 Bruno Haible <haible@clisp.cons.org>
4091 * src/encodings.def (ISO-8859-14): Add alias ISO-IR-199.
4092 (ISO-8859-15): Add alias ISO-IR-203.
4093 (EUC-CN): Add alias CN-GB, from RFC 1922.
4094 (BIG5): Add alias CN-BIG5, from RFC 1922.
4095 * Makefile.devel (src/aliases.h): Add 8th character to key set.
4098 * src/encodings.def (JIS_X0201): Drop JISX0201.1976-0 alias.
4099 (JIS_X0208): Drop JIS_X0208.1983-0, JIS_X0208.1983-1 aliases.
4100 (KSC_5601): Drop KSC5601.1987-0 alias.
4102 Improve GB/T 12345 (not used yet).
4103 * tools/Makefile (gb12345ext.h): Use GB12345-more.TXT.
4104 * src/gb12345ext.h: Regenerated.
4106 Improve and document CP949.
4107 * tools/Makefile (all): Add uhc_1.h and uhc_2.h.
4108 (uhc_1.h, uhc_2.h): New rules.
4109 * tools/cjk_tab_to_h.c (output_charset2uni_noholes_monotonic): New
4111 (output_uni2charset_sparse): Take an additional boolean argument.
4112 All callers changed.
4113 (*_uhc_1, *_uhc_2): New functions.
4114 (main): Treat uhc_1 and uhc_2.
4115 * src/uhc_1.h, src/uhc_2.h: New files.
4116 * src/cp949.h: New file, include them.
4117 * src/converters.h: Include it.
4118 * src/encodings.def (KSC_5601): Remove alias CP949.
4119 (CP949): New encoding.
4120 * README, man/iconv_open.3: Add CP949.
4121 * tests/Makefile.in (check): Check CP949.
4122 * tests/CP949.TXT: New file.
4125 * README, man/iconv_open.3: Add CP932.
4126 * tests/Makefile.in (check): Check CP932.
4127 * tests/CP932.TXT, tests/CP932.IRREVERSIBLE.TXT: New files.
4129 * Makefile.devel (src/flags.h): Depend on src/converters.h.
4131 * tests/Makefile.in (check): Check JIS_X0201.
4132 * tests/JIS_X0201.TXT: New file.
4134 * src/euc_kr.h (euc_kr_wctomb): Shrink size of buf.
4135 * src/iso2022_kr.h (iso2022_kr_wctomb): Likewise.
4137 * src/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Use isoir165_mbtowc.
4138 (iso2022_cn_ext_wctomb): Use isoir165_wctomb.
4140 Add ISO-IR-165 (undocumented).
4141 * tools/Makefile (all): Add isoir165ext.h.
4142 (isoir165ext.h): New rule.
4143 * tools/cjk_tab_to_h.c (main): Treat isoir165ext like gb2312.
4144 * src/isoir165.h, src/isoir165ext.h: New files.
4145 * src/converters.h: Include it.
4146 * src/encodings.def: Add ISO-IR-165.
4147 * tests/Makefile.in (check): Check ISO-IR-165.
4148 * tests/ISO-IR-165.TXT, tests/ISO-IR-165.IRREVERSIBLE.TXT: New files.
4150 Add ISO646-CN (undocumented).
4151 * src/iso646_cn.h: New file.
4152 * src/converters.h: Include it.
4153 * src/encodings.def: Add ISO646-CN.
4154 * tests/Makefile.in (check): Check ISO646-CN.
4155 * tests/ISO646-CN.TXT: New file.
4157 Add ISO646-JP (undocumented).
4158 * src/iso646_jp.h: New file.
4159 * src/converters.h: Include it.
4160 * src/encodings.def: Add ISO646-JP.
4161 * tests/Makefile.in (check): Check ISO646-JP.
4162 * tests/ISO646-JP.TXT: New file.
4164 2000-01-05 Bruno Haible <haible@clisp.cons.org>
4167 * tools/Makefile (all): Add iso8859_16.h.
4168 (iso8859_16.h): New rule.
4169 * src/iso8859_16.h: New file.
4170 * src/converters.h: Include it.
4171 * src/encodings.def: Add ISO-8859-16.
4172 * README, man/iconv_open.3: Add ISO-8859-16.
4173 * tests/Makefile.in (check): Check ISO-8859-16.
4174 * tests/ISO-8859-16.TXT: New file.
4176 * man/iconv.3: Clarify what happens *inbuf in case 3.
4178 * src/iso8859_8.h: Update using newest table from ftp.unicode.org.
4179 * tests/ISO-8859-8.TXT: Likewise.
4181 2000-01-04 Bruno Haible <haible@clisp.cons.org>
4183 * Version 1.0 released.
4184 * include/libiconv.h.in (_LIBICONV_VERSION): Bump version number.
4185 * src/Makefile.in (LIBICONV_VERSION_INFO): Define to 0:1:0.
4186 (libiconv.la): Use LIBICONV_VERSION_INFO.
4188 2000-01-03 Bruno Haible <haible@clisp.cons.org>
4190 * tests/Makefile.in: New file.
4191 tests/check-stateless, tests/table-from.c, tests/table-to.c,
4192 tests/*.TXT, tests/genutf8.c: New files, checks for stateless
4194 tests/check-stateful, tests/iconv.c, tests/*-snippet*: New files,
4195 checks for stateful encodings.
4196 * Makefile.in (all, check, mostlyclean, clean, distclean,
4197 maintainer-clean): Descend into tests directory.
4198 * configure.in: Add tests/Makefile to AC_OUTPUT duties.
4200 * src/gentranslit.c: New file.
4201 * Makefile.devel (src/translit.h): New rule.
4202 * src/translit.def, src/translit.h: New files.
4203 * src/iconv.c: Include it.
4204 (iconv): Transliterate using translit.h table.
4206 * src/genflags.c: New file.
4207 * Makefile.devel (src/flags.h): New rule.
4208 * src/flags.h: New file.
4209 * src/iconv.c: Include it.
4210 (encoding): Add field 'oflags'.
4211 (all_encodings): Initialize the field 'oflags'.
4212 (iconv_open): Copy field 'oflags'.
4213 (iconv): Transliterate quotation marks U+2018, U+2019, U+201A.
4214 * src/Makefile.in (iconv.lo): Update dependencies.
4216 * src/converters.h: New file, extracted from src/iconv.c.
4217 * src/iconv.c: Include it.
4218 * src/Makefile.in (iconv.lo): Update dependencies.
4220 * tools/cjk_variants.c: New file.
4221 * tools/Makefile (ALL): Add cjk_variants.h.
4222 (cjk_variants.h, cjk_variants): New rules.
4223 * src/cjk_variants.h: New file.
4224 * src/iconv.c: Include it.
4225 (iconv): Use cjk_variants for transliteration.
4227 * man/iconv.3: Fix description of return value.
4228 * euc_kr.h (euc_kr_wctomb): Remove Hangul transliteration.
4229 * iso2022_kr.h (iso2022kr_wctomb): Likewise.
4230 * src/iconv.c (iconv): Do Hangul transliteration here and increment
4231 result once for every transliterated character.
4232 * src/johab_hangul.h (johab_hangul_decompose): Change result array
4233 from 'unsigned char*' to 'wchar_t*'.
4235 * src/cp1258.h (cp1258_mbtowc): Return RET_ILSEQ instead of storing
4238 * src/georgian_ps.h (georgian_ps_wctomb): Accept 0x00e6.
4240 * src/euc_jp.h (euc_jp_wctomb): Don't treat U+005C and U+007E like
4243 * src/euc_tw.h (euc_tw_mbtowc): Fix typo.
4245 * src/cp950.h (cp950_mbtowc, cp950_wctomb): Exclude the range
4248 * tools/cjk_tab_to_h.c (read_table_ksc5601): Some Hangul range was
4249 not being excluded. Fix that.
4250 * src/ksc5601.h: Regenerated.
4251 * src/johab.h (johab_mbtowc): Don't accept 0xDA{A1..D3} - this is
4252 valid in KSC5601/KSX1001 but not in JOHAB.
4254 * src/iconv.c (conv_struct): Add fields iindex, oindex.
4255 (iconv_open): Fill in iindex, oindex.
4257 * src/encodings.def (UCS-2-BE): Add aliases "UNICODE-1-1" and
4258 "csUnicode11", from IANA charset list.
4259 (MacRoman): Add aliases "MAC" and "csMacintosh" for "MACINTOSH",
4260 from IANA charset list.
4261 (JIS_X0208): Add aliases "X0208", "ISO-IR-87", "csISO87JISX0208",
4262 from IANA charset list.
4263 (GB_2312-80): New encoding, from IANA charset list.
4265 * README, man/iconv_open.3: Add MacIceland and MacUkraine.
4267 * Makefile.devel: Add rules for src/aliases.h and src/aliases.gperf.
4268 (all): Depend on src/aliases.h.
4269 * src/Makefile.in: Remove rules for $(srcdir)/aliases.h and
4270 $(srcdir)/aliases.gperf.
4273 * src/Makefile.in (libiconv_plug_linux.so): Remove unneeded "-ldl".
4275 1999-12-31 Bruno Haible <haible@clisp.cons.org>
4277 * Version 0.3 released.