blob: 0c033f1828bc6e874826bcbd4e7e86e2f6fc995a [file] [log] [blame]
2023-09-13 Bruno Haible <bruno@clisp.org>
Simplify the library: Don't compile relocatable.c any more.
The library does not need relocatable.h any more since 2018-09-22.
* lib/relocatable.h: Remove file.
* lib/relocatable.c: Remove file.
* lib/compat.c: New file.
* lib/Makefile.in (DEFS): Don't define LIBDIR, BUILDING_DLL,
ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
set_relocation_prefix, relocate, relocate2.
(SOURCES): Remove relocatable.c. Add compat.c.
(OBJECTS): Remove relocatable.lo. Add compat.lo.
(localcharset.lo): Update dependencies.
(relocatable.lo): Remove rule.
(compat.lo): Add rule.
(SOURCE_FILES): Remove relocatable.h, relocatable.c. Add compat.c.
2023-09-07 Bruno Haible <bruno@clisp.org>
Sync woe32dll/export.h with GNU libunistring and GNU gettext.
* woe32dll/export.h: Update comments.
(IMP): Define correctly for 64-bit Windows platforms.
2023-09-06 Bruno Haible <bruno@clisp.org>
Don't export symbols from static MSVC .obj files.
Suggested by Dmitry Bely <dmitry.bely@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-08/msg00002.html>.
* include/export.h: Add a copyright notice. Set LIBICONV_DLL_EXPORTED to
empty on MSVC when DLL_EXPORT is not defined.
* Makefile.devel (include/iconv.h.build.in): Filter out the second
copyright notice.
* configure.ac (DLL_VARIABLE): Test DLL_EXPORT, not _DLL.
* lib/relocatable.h: From gnulib:
(RELOCATABLE_DLL_EXPORTED): Don't use __declspec(dllexport) when
creating static .obj files with MSVC.
2023-08-30 Bruno Haible <bruno@clisp.org>
Recognize the *-*-windows* config triplets introduced on 2023-06-26.
* configure.ac: Treat windows* as equivalent to mingw*.
2023-06-29 Bruno Haible <bruno@clisp.org>
Update the installation instructions for Windows.
* INSTALL.windows: Add a note about MSYS2.
2023-05-29 Bruno Haible <bruno@clisp.org>
GB18030: Help transitioning away from PUA code points.
* lib/gb18030ext.h (gb18030_2005_ext_wctomb): Remove function.
(gb18030ext_wctomb): Renamed from gb18030_2022_ext_wctomb.
* lib/gb18030uni.h (gb18030_2005_uni_wctomb): Map 6 Ext-B code points to
4-bytes sequences.
(gb18030_2022_uni_wctomb): Small refactoring.
* lib/gb18030_2005.h (gb18030_2005_pua2charset): Map 6 PUA code points
to 4-bytes sequences instead of 2-bytes sequences.
(gb18030_2005_wctomb): Update accordingly. Invoke gb18030ext_wctomb
instead of gb18030_2005_ext_wctomb.
* lib/gb18030_2022.h (gb18030_2022_wctomb): Invoke gb18030ext_wctomb
instead of gb18030_2022_ext_wctomb.
* tests/GB18030-2005.IRREVERSIBLE.TXT: Update the inverse mappings of 6
Ext-B code points and 6 PUA code points.
* NEWS: Mention it.
2023-05-24 Bruno Haible <bruno@clisp.org>
man pages: List a fifth condition when iconv(3) may stop.
Based on the patch to the man-pages project
<https://marc.info/?l=linux-man&m=168496625522371&w=2> =
<https://lore.kernel.org/linux-man/2f9c4dbd-7aa6-fc7a-f126-453603ef695e@gmail.com/T/#m25e33d4defa1118e5c84951790f0319360abf9d4>
* man/iconv.3: List a fifth condition.
2023-05-24 Bruno Haible <bruno@clisp.org>
man pages: Use man page section title from groff or the distro.
Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00027.html>.
* man/*.[13]: Remove section title "Linux Programmer's Manual".
2023-05-21 Bruno Haible <bruno@clisp.org>
Support creating shared libraries on Hurd/x86_64.
Patch from
<https://lists.gnu.org/archive/html/bug-hurd/2023-05/msg00086.html>.
* m4/libtool.m4 (_LT_ENABLE_LOCK): Treat Hurd/x86_64 like
Linux/x86_64.
2023-05-21 Bruno Haible <bruno@clisp.org>
Fix link error regarding _libiconv_version on MSVC in C++ mode.
Reported at <https://savannah.gnu.org/bugs/?64227>.
* include/iconv.h.in (_libiconv_version): Enclose in an extern "C"
block.
2023-05-20 Bruno Haible <bruno@clisp.org>
Implement GB18030 version 2022.
* lib/encodings.def (GB18030): Add alias GB18030:2005.
(GB18030:2022): New encoding.
* lib/gb18030ext.h (gb18030_2005_ext_2uni_pagefe): Renamed from
gb18030ext_2uni_pagefe.
(gb18030_2022_ext_2uni_pagefe): New array.
(gb18030_2005_ext_mbtowc): Renamed from gb18030ext_mbtowc.
(gb18030_2022_ext_mbtowc): New function.
(gb18030_2005_ext_wctomb): Renamed from gb18030ext_wctomb.
(gb18030_2022_ext_wctomb): New function.
* lib/gb18030uni.h (gb18030_2022_charset2uni_pua1,
gb18030_2022_charset2uni_pua2): New arrays.
(gb18030_2005_uni_mbtowc): Renamed from gb18030uni_mbtowc.
(gb18030_2022_uni_mbtowc): New function.
(gb18030_2022_uni2charset_pua1, gb18030_2022_uni2charset_pua2): New
arrays.
(gb18030_2005_uni_wctomb): Renamed from gb18030uni_wctomb.
(gb18030_2022_uni_wctomb): New function.
* lib/gb18030_2005.h: Renamed from lib/gb18030.h. Update comments.
(gb18030_2005_mbtowc): Renamed from gb18030_mbtowc.
(gb18030_2005_pua2charset): Renamed from gb18030_pua2charset.
(gb18030_2005_wctomb): Renamed from gb18030_wctomb.
* lib/gb18030_2022.h: New file, based on lib/gb18030_2005.h.
* lib/converters.h: Don't include gb18030.h. Include gb18030_2005.h,
gb18030_2022.h.
* lib/Makefile.in (SOURCE_FILES): Remove gb18030.h. Add gb18030_2005.h,
gb18030_2022.h.
* tests/GB18030-2005-BMP.TXT: Renamed from tests/GB18030-BMP.TXT.
* tests/GB18030-2005.IRREVERSIBLE.TXT: Renamed from
tests/GB18030.IRREVERSIBLE.TXT.
* tests/GB18030-2022-BMP.TXT: New file.
* tests/Makefile.in (check): Test GB18030:2005 instead of GB18030. Also
test GB18030:2022.
(clean): Don't remove GB18030.TXT. Instead, remove GB18030-2005.TXT and
GB18030-2022.TXT.
(SOURCE_FILES): Update. Add GB18030-2022-BMP.TXT.
* README: Mention the new encoding.
* man/iconv_open.3: Likewise.
* NEWS: Likewise.
2023-05-19 Bruno Haible <bruno@clisp.org>
Make the compiler used by Makefile.devel customizable.
Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-05/msg00006.html>.
* Makefile.devel: Require GNU make.
(CC): Use value from the environment, if set and non-empty.
(CFLAGS): Use value from the environment, if set.
* autogen.sh (GMAKE): New variable.
Use it for executing Makefile.devel.
2023-05-17 Bruno Haible <bruno@clisp.org>
On z/OS, allow charset tagging of temporary shell scripts.
Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-05/msg00002.html>.
* lib/genaliases.c (BINARY_MODE): New macro.
(main): Use it instead of "b".
2023-05-12 Bruno Haible <bruno@clisp.org>
Integrate the last change.
* src/Makefile.in (SOURCE_FILES): Add zos-tag.h.
* tests/Makefile.in (SOURCE_FILES): Add check-tag.
* NEWS: Mention the new functionality.
2023-05-12 Mike Fulton <mikefultonpersonal@gmail.com>
On z/OS, set a charset tag on iconv's output file.
For the concept of charset tags as external metadata on z/OS files, see
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00021.html>.
* src/zos-tag.h: New file.
* src/iconv.c: Include zos-tag.h.
(convert): Add a 'tocode' parameter. On z/OS, turn off auto-conversion
and tag the output file.
(main): Update callers.
* tests/check-ebcdic: On z/OS, make all test files initially untagged.
* tests/check-tag: New file.
* tests/Makefile.in (check): Pass the host_os to check-ebcdic. Invoke
check-tag.
2023-04-03 Bruno Haible <bruno@clisp.org>
Fix genflags compilation error.
* lib/genflags.c (ICONV_SURFACE_EBCDIC_ZOS_UNIX): New macro, copied from
include/iconv.h.in.
Allow overriding the newline conversion for EBCDIC encodings.
Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-04/msg00009.html>.
* include/iconv.h.in (ICONV_SURFACE_NONE,
ICONV_SURFACE_EBCDIC_ZOS_UNIX): New macros.
(ICONV_GET_FROM_SURFACE, ICONV_SET_FROM_SURFACE, ICONV_GET_TO_SURFACE,
ICONV_SET_TO_SURFACE): New macros.
* lib/converters.h (struct conv_struct): Add the fields isurface,
osurface.
(swap_x15_x25): New macro.
* lib/iconv.c (iconv_open, iconv_open_into): Add local variables
from_surface, to_surface.
(ALL_SURFACES): New macro.
(iconvctl): Adjust ICONV_TRIVIALP implementation. Implement the
ICONV_{GET,SET}_{FROM,TO}_SURFACE requests.
* lib/iconv_open1.h: Parse a /ZOS_UNIX surface specifier. Set
from_surface, to_surface.
* lib/iconv_open2.h: Copy the values of from_surface, to_surface into
the conversion descriptor.
* lib/ebcdic*.h (*_mbtowc): Test the isurface. If requested, call
swap_x15_x25 right after fetching an input byte.
(*_wctomb): Test the osurface. If requested, call swap_x15_x25 right
before storing an output byte.
* man/iconvctl.3 (REQUEST VALUES): Document the
ICONV_{GET,SET}_{FROM,TO}_SURFACE requests.
* src/iconv.c (main): If ICONV_EBCDIC_ZOS_UNIX is set, set the from/to
surfaces accordingly.
* man/iconv.1 (ENVIRONMENT): New section.
* tests/check-ebcdic: New file.
* tests/Makefile.in (check): Invoke it.
(SOURCE_FILES): Add it.
* NEWS: Mention the new functionality.
2023-03-31 Bruno Haible <bruno@clisp.org>
Add some transliterations for mathematical symbols.
Based on <https://sourceware.org/bugzilla/show_bug.cgi?id=23132>
and the translit_neutral change in
<https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=513aaa0d782f8fae36732d06ca59d658149f0139>.
Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2023-03/msg00002.html>.
* lib/translit.def: Add a couple of transliterations in the range
U+27C0..U+29FF.
* NEWS: Mention it.
2023-03-31 Bruno Haible <bruno@clisp.org>
Upgrade transliterations to Unicode 15.0.0.
* tools/gen-translit-def-part.lisp: Update comments.
* lib/translit.def: Include differences between the generated files
translit-part-4.0.0.def and translit-part-15.0.0.def.
2023-03-31 Bruno Haible <bruno@clisp.org>
Make table of transliterations more maintainable.
* tools/gen-translit-def-part.lisp: New file.
* Makefile.in (SOURCE_FILES): Add it.
2023-03-31 Bruno Haible <bruno@clisp.org>
Fix table of transliterations.
* lib/translit.def: Sort according to Unicode code point.
2023-02-13 Bruno Haible <bruno@clisp.org>
Fix iconv link command for Cygwin.
Inspired by https://www.cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/libiconv.git;a=blob;f=1.16-cross-install.patch;h=7b3c5c0d761497a20abf0e4cc38d74f2755445fb;hb=HEAD .
Rationale: libintl may depends on libiconv.
* src/Makefile.in (install): On the link command line, mention libintl
before libiconv.
2023-01-29 Bruno Haible <bruno@clisp.org>
Fix a clang warning "a function declaration without a prototype...".
* lib/loop_wchar.h (mbrtowc): Don't declare. Drop portability to BeOS.
2022-07-18 Bruno Haible <bruno@clisp.org>
Make autopull.sh more suited for continuous integration.
* autopull.sh: Support option --one-time.
2022-07-18 Bruno Haible <bruno@clisp.org>
Move gnulib-tool invocation back from autopull.sh to autogen.sh.
* autogen.sh: Revert last change. Improve comments.
* autopull.sh: Only call 'gitsub.sh pull'.
* HACKING: Mention autopull.sh.
2022-07-17 Bruno Haible <bruno@clisp.org>
Split autogen.sh into autopull.sh and autogen.sh.
* autopull.sh: New file, based on autogen.sh.
* autogen.sh: Remove code that was moved to autopull.sh. Remove
--skip-gnulib option.
* Makefile.devel (all): Remove srclib/Makefile.gnulib.
* Makefile.in (SOURCE_FILES): Add autogen.sh.
* HACKING: Mention autopull.sh.
2022-05-22 Bruno Haible <bruno@clisp.org>
Add GNU Project notice.
* JOIN-GNU: New file. Inspired by a suggestion from José E. Marchesi
on the gnu-prog-discuss mailing list.
* README: Refer to it.
* Makefile.in (SOURCE_FILES): Add it.
2022-05-15 Bruno Haible <bruno@clisp.org>
Switch to libtool 2.4.7.
* m4/libtool.m4: Update from libtool-2.4.7, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltoptions.m4: Likewise.
* m4/ltsugar.m4: Likewise.
* m4/ltversion.m4: Likewise.
* m4/lt~obsolete.m4: Likewise.
* build-aux/ltmain.sh: Update from libtool-2.4.7, with modifications:
2017-07-15 Bruno Haible <bruno@clisp.org>
Allow building statically linked binaries, through
LDFLAGS="-static". Apply patch from
<https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
* build-aux/ltmain.sh (func_mode_help, func_mode_link): In the
link mode, accept option '-static-uninstalled-libs' in place of
'-static', and make '-static' an equivalent of '-all-static'.
2022-04-13 Bruno Haible <bruno@clisp.org>
Fix undefined behaviour.
* tests/test-shiftseq.c (main2): Make input array larger.
2022-02-12 Bruno Haible <bruno@clisp.org>
Update translations.
* po/ro.po: Update Romanian translations.
* po/wa.po: Update Walloon translations.
2022-02-12 Bruno Haible <bruno@clisp.org>
Prepare for version 1.17.
* configure.ac: Bump version number to 1.17.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 9:0:7.
* src/iconv.c (print_version): Update copyright year.
* windows/iconv.rc: Likewise.
* windows/libiconv.rc: Likewise.
* README: Update download link.
2022-02-12 Bruno Haible <bruno@clisp.org>
Update source file list (regression 2022-01-23).
* lib/Makefile.in (SOURCE_FILES): Add encodings_zos.def, ebcdic*.h.
(GENERATED_FILES): Add aliases_zos.h, canonical_zos.h.
* tests/Makefile.in (SOURCE_FILES): Add IBM-*.TXT.
2022-01-23 Bruno Haible <bruno@clisp.org>
Update NEWS.
* NEWS: Mention the EBCDIC encodings.
2022-01-23 Bruno Haible <bruno@clisp.org>
Optimize the EBCDIC table sizes.
* lib/converters.h (DEDUPLICATE_TABLES): New macro.
* lib/ebcdic1025.h: Deduplicate tables with ebcdic880.h.
* lib/ebcdic1123.h: Deduplicate tables with ebcdic1025.h.
* lib/ebcdic1132.h: Deduplicate tables with ebcdic838.h.
* lib/ebcdic1153.h: Deduplicate tables with ebcdic870.h.
* lib/ebcdic1154.h: Deduplicate tables with ebcdic880.h.
* lib/ebcdic1155.h: Deduplicate tables with ebcdic1026.h.
* lib/ebcdic1156.h: Deduplicate tables with ebcdic1112.h.
* lib/ebcdic1157.h: Deduplicate tables with ebcdic1122.h.
* lib/ebcdic1158.h: Deduplicate tables with ebcdic1154.h, ebcdic1123.h.
* lib/ebcdic1160.h: Deduplicate tables with ebcdic838.h.
* lib/ebcdic1164.h: Deduplicate tables with ebcdic1130.h.
* lib/ebcdic1165.h: Deduplicate tables with ebcdic870.h.
* lib/ebcdic1166.h: Deduplicate tables with ebcdic1154.h.
* lib/ebcdic4971.h: Deduplicate tables with ebcdic875.h.
* lib/ebcdic12712.h: Deduplicate tables with ebcdic424.h.
2022-01-23 Bruno Haible <bruno@clisp.org>
New EBCDIC encodings.
Reported by Ulrich Schwab and Calvin Buckley via Jack Woehr.
* NOTES: Mention how to enable EBCDIC encodings.
* tests/IBM-*.TXT: New files.
* tools/8bit_tab_to_h.c (main): Emit copyright header with year 2022.
* tools/Makefile: Add rules for generating ebcdic*.h.
* lib/ebcdic*.h: New files, automatically generated by tools/Makefile.
* lib/ebcdic838.h: Tweak reverse mapping manually.
* lib/ebcdic1160.h: Likewise.
* lib/converters.h: Include all ebcdic*.h.
* lib/encodings_zos.def: New file.
* lib/genaliases2.c: Include encodings_zos.def.
* lib/genflags.c: Likewise.
* Makefile.devel (lib/aliases_zos.h lib/canonical_zos.h): New rule.
(lib/flags.h, totally-clean): Update.
* lib/aliases2.h: Include aliases_zos.h.
* lib/iconv.c (USE_ZOS): New macro.
Include encodings_zos.def, canonical_zos.h.
* README, man/iconv_open.3: Document the IBM-* encodings.
* tests/Makefile.in (check-extra-yes): Also test the EBCDIC encodings.
2022-01-04 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Set GL_GENERATE_ALLOCA_H
instead of ALLOCA_H. Drop AC_SUBST and AM_CONDITIONAL invocations.
2021-09-19 Bruno Haible <bruno@clisp.org>
tests: Avoid check-subst failures in QEMU user-mode environments.
* Makefile.devel (GNULIB_MODULES): Add stdbool.
(gnulib-imported-files): Copy also tests/qemu.h.
* tests/is-native.c: New file.
* tests/Makefile.in (is-native, is-native.@OBJEXT@): New targets.
(clean): Remove the 'is-native' program.
(SOURCE_FILES): Add is-native.c.
(IMPORTED_FILES): Add qemu.h.
* tests/check-subst: Invoke 'locale charmap' only in native
environments.
2021-06-27 Bruno Haible <bruno@clisp.org>
README: Update.
Reported at <https://savannah.gnu.org/bugs/?60837>.
* README: Overhaul the paragraph that mentions iconv.m4.
2021-06-06 Bruno Haible <bruno@clisp.org>
gnulib-local: Put real license notice into the source files.
* gnulib-local/lib/alloca.in.h: Use an LGPLv2+ notice.
2021-02-28 Bruno Haible <bruno@clisp.org>
Update DEPENDENCIES.
* DEPENDENCIES: List the normal dependencies of a package with an
Autoconf-generated configure file.
2021-02-07 Bruno Haible <bruno@clisp.org>
Support creating shared libraries on MidnightBSD.
Patch from <https://savannah.gnu.org/patch/?10007>.
* m4/libtool.m4: Treat MidnightBSD like FreeBSD.
* build-aux/ltmain.sh: Likewise.
2021-01-31 Bruno Haible <bruno@clisp.org>
Update after gnulib changed on 2020-08-26.
* configure.ac: Test $iconv_arg1, not $am_cv_proto_iconv_arg1.
2021-01-31 Bruno Haible <bruno@clisp.org>
Switch to autoconf 2.71.
* autogen.sh: Update comment.
* configure.ac: Use AS_HELP_STRING instead of AC_HELP_STRING. Invoke
AC_C_BIGENDIAN instead of CL_WORDS_LITTLEENDIAN.
* m4/eilseq.m4: Require Autoconf >= 2.61.
(AC_EILSEQ): Improve quoting. Use AC_COMPUTE_INT instead of
_AC_COMPUTE_INT.
* m4/endian.m4: Remove file.
* Makefile.in (SOURCE_FILES): Remove it.
2020-12-08 Bruno Haible <bruno@clisp.org>
Switch to autoconf 2.70.
* Makefile.devel (AUTOCONF, AUTOHEADER): Remove '-2.69' suffix.
* HACKING: Remove sentence about symbolic links.
* autogen.sh: Update comment.
2020-08-31 Bruno Haible <bruno@clisp.org>
Fix some -Wcast-qual warning, reported by clang.
* lib/iconv.c (compare_by_name): Add more 'const'.
(iconv_canonicalize): Cast value to 'unsigned char', not pointer to 'unsigned char *'.
* lib/iconv_open1.h: Likewise.
2020-08-30 Bruno Haible <bruno@clisp.org>
Make sure that build-aux/compile is in the tarball.
* autogen.sh: Fetch also 'build-aux/compile' through gnulib-tool.
* Makefile.devel (srclib/Makefile.in): Don't fetch nor delete
'build-aux/compile'.
* Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/compile.
(IMPORTED_FILES): Add build-aux/compile.
2020-08-29 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.64.
2020-08-06 Bruno Haible <bruno@clisp.org>
Avoid a GCC warning with GCC >= 7.
Reported by Reini Urban <rurban@cpan.org>
in <https://savannah.gnu.org/bugs/?58903>.
* lib/gentranslit.c (main): Reset i to 0 each time p gets a new value.
Add assertion about i's possible values.
2020-04-05 Bruno Haible <bruno@clisp.org>
Fix an autogen.sh failure (regression from 2016-12-04).
Reported by Petr Ovtchenkov <ptr@void-ptr.info> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2020-04/msg00003.html>.
* autogen.sh: Invoke also the Makefile target srclib/Makefile.in, so as
to get build-aux/install-sh. Finish the "copy files" phase before recursing
through the subpackages tree through Makefile.devel.
* Makefile.devel: Reorder targets.
2020-04-04 Bruno Haible <bruno@clisp.org>
Don't use LGPLv3.
* gnulib-local/modules/mbstate (License): Set to LGPLv2+.
2020-04-04 Bruno Haible <bruno@clisp.org>
Change the license of the library from LGPL 2.0 to LGPL 2.1.
* COPYING.LIB: Upgrade to LGPL 2.1.
2019-12-23 Bruno Haible <bruno@clisp.org>
Do export the symbol 'locale_charset' (needed by GNU bash).
* lib/Makefile.in (DEFS): Define also BUILDING_LIBCHARSET.
2019-09-01 Bruno Haible <bruno@clisp.org>
build: Add support for shallow-cloning of subdirectories.
* gitsub.sh (func_usage): Document allowed git options with 'git pull'.
(func_pull): Accept GIT_OPTIONS argument.
(pull): Parse git options before complaining about too many arguments.
Pass the git options to func_pull.
2019-07-05 Bruno Haible <bruno@clisp.org>
Don't export the symbol 'aliases_lookup' on non-ELF platforms.
* Makefile.devel (lib/aliases.h, lib/aliases_sysaix.h,
lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h):
Add a 'static' keyword in front of the declaration of aliases_lookup.
2019-07-02 Bruno Haible <bruno@clisp.org>
Update to current gnulib.
* Makefile.devel (GNULIB_MODULES): Add lib-symbol-visibility.
(srclib/Makefile.gnulib): Copy codeset.m4.
* srclib/Makefile.am (AM_CFLAGS): Initialize.
2019-07-02 Bruno Haible <bruno@clisp.org>
Drop unused macro gl_GLIBC21.
* autogen.sh: Don't copy glibc21.m4.
2019-05-22 Bruno Haible <bruno@clisp.org>
Fix comment.
Reported by Paul Hardy <unifoundry@gmail.com>.
* lib/jisx0213.h: Fix comment about the underlying standard version.
2019-05-11 Bruno Haible <bruno@clisp.org>
Update bug reporting instructions.
* README: Tell users to report bugs in the bug tracker or by email.
* src/iconv.c (usage): Likewise.
(print_version): Move URL out of translatable string.
2019-04-26 Bruno Haible <bruno@clisp.org>
Update translations.
$ rsync -Lrtvz translationproject.org::tp/latest/libiconv/ po/new
$ cd po/new
$ for f in *.po; do \
msgmerge --update --lang=${f%.po} --previous $f ../libiconv.pot; \
done
$ mv *.po ../
$ cd ..; rm -rf new
2019-04-26 Bruno Haible <bruno@clisp.org>
Update POT file.
$ cd po; make update-po
2019-04-26 Bruno Haible <bruno@clisp.org>
Prepare for version 1.16.
* configure.ac: Bump version number to 1.16.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:1:6.
* src/iconv.c (print_version): Update copyright year.
* windows/iconv.rc: Likewise.
* windows/libiconv.rc: Likewise.
* README: Update download link.
2019-04-26 Bruno Haible <bruno@clisp.org>
Tweak exported symbols when --enable-relocatable is used.
* lib/Makefile.in (DEFS): Map 'relocate2' to a different symbol.
2019-04-01 Bruno Haible <bruno@clisp.org>
build: Separate git operations from build operations.
* gitsub.sh: New file, from gnulib.
* .gitmodules: New file.
* autogen.sh: Remove all git operations. Look at GNULIB_SRCDIR
environment variable. Ignore the GNULIB_TOOL environment variable.
* HACKING: Explain when to use gitsub.sh.
2019-03-07 Bruno Haible <bruno@clisp.org>
Avoid signed integer overflow during shifts.
Reported by Jeffrey Walton <noloader@gmail.com>.
* lib/tcvn.h (tcvn_wctomb): Use unsigned integer type for bit mask
operation.
* lib/viscii.h (viscii_wctomb): Likewise.
2019-03-04 Bruno Haible <bruno@clisp.org>
Add support for --enable-relocatable to libcharset.
* autogen.sh: Copy some more files to libcharset/build-aux/ and
libcharset/m4/.
2019-03-04 Bruno Haible <bruno@clisp.org>
Update --enable-relocatable support after gnulib changed.
* configure.ac: Move the LT_INIT invocation before the gl_RELOCATABLE
invocation. Remove unused argument to gl_RELOCATABLE.
2019-01-27 Bruno Haible <bruno@clisp.org>
Accommodate a shell that is not in /bin/sh.
* Makefile.in (SHELL): Use the value found by configure.
* lib/Makefile.in (SHELL): Likewise.
* man/Makefile.in (SHELL): Likewise.
* src/Makefile.in (SHELL): Likewise.
* tests/Makefile.in (SHELL): Likewise.
(check, check-extra-yes): Use SHELL to run the check-* scripts.
2019-01-27 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* Makefile.in (GNULIB_IMPORTED_FILES): Remove build-aux/snippet/*.
2019-01-27 Bruno Haible <bruno@clisp.org>
Update support for building with MSVC. Automake does not install ar-lib.
* autogen.sh: Fetch build-aux/ar-lib here.
* Makefile.devel (srclib/Makefile.in): Don't fetch build-aux/ar-lib
here.
* Makefile.in (AUTOMAKE_IMPORTED_FILES): Remove build-aux/ar-lib.
(IMPORTED_FILES): Add build-aux/ar-lib.
2019-01-06 Bruno Haible <bruno@clisp.org>
Revisit handling of file descriptors closed by the parent process.
* src/iconv.c (main): Add comment.
2018-10-23 Bruno Haible <bruno@clisp.org>
Remove outdated DJGPP build infrastructure.
Approved by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
* djgpp: Remove directory.
* INSTALL.djgpp: Remove file.
* Makefile.in (SOURCE_FILES): Remove them.
2018-10-23 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* configure.ac (AC_PREREQ): Bump minimum Autoconf version to 2.63.
2018-09-22 Bruno Haible <bruno@clisp.org>
Avoid some warnings in MSVC build.
* include/export.h: Handle MSVC compiler as well.
2018-09-22 Bruno Haible <bruno@clisp.org>
Update from gnulib. Move mapping tables into the code.
* autogen.sh: Don't create libcharset/m4/relocatable-lib.m4.
* Makefile.in (mostlyclean, clean, distclean, maintainer-clean): Don't
remove lib/charset.alias.
* tests/check-subst: Don't set CHARSETALIASDIR.
2018-05-04 Bruno Haible <bruno@clisp.org>
Drop special instructions for OSF/1.
* INSTALL.generic: Remove the recommendation for OSF/1.
2018-05-04 Bruno Haible <bruno@clisp.org>
Simplify: Remove the ability to install a preloadable library.
* preload/*: Remove directory.
* Makefile.devel: Don't recurse into 'preload'.
* Makefile.in: Likewise.
* configure.ac: Don't declare 'preload' as a subdirectory.
* README, NEWS: Update.
2018-05-04 Bruno Haible <bruno@clisp.org>
Simplify code. Drop support for Borland C++ on Windows.
* lib/iconv.c: Simplify 'defined _WIN32 || defined __WIN32__' to just
'defined _WIN32'.
* lib/iconv_open1.h: Likewise.
2018-05-04 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c: Update from gnulib.
2018-05-04 Bruno Haible <bruno@clisp.org>
Switch to automake 1.16.
* autogen.sh: Update comment.
* Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.16.
* libcharset/Makefile.devel (ACLOCAL): Likewise.
* preload/Makefile.devel (ACLOCAL): Likewise.
2018-03-27 Bruno Haible <bruno@clisp.org>
Doc tweaks.
* README: Don't recommend to use --prefix=/usr/local, as it produces
problems with GCC (since GCC's treatment of /usr/local/include and
/usr/local/lib is inconsistent by default). Don't recommend to use
the iconv.m4 installed by GNU gettext, because it won't work when
GNU automake and GNU gettext are installed with different --prefix
options; instead recommend the 'iconv' module from gnulib.
2018-01-27 Bruno Haible <bruno@clisp.org>
Rename some files.
* INSTALL.windows: Renamed from README.windows.
* INSTALL.djgpp: Renamed from README.djgpp.
* Makefile.in (SOURCE_FILES): Update.
2018-01-03 Bruno Haible <bruno@clisp.org>
Fix installation in 64-bit mode on AIX.
* lib/Makefile.in (AR): New variable.
(install): Use it instead of hardcoding 'ar'.
2017-11-26 Bruno Haible <bruno@clisp.org>
Avoid end-of-lines problem in generated shell scripts on Cygwin.
Patch by Feiyun Wang <feiyunw@yahoo.com>.
* lib/genaliases.c (main): Create canonical.sh and canonical_local.sh
with Unix end-of-line characters, regardless of Cygwin choice of
text mode vs. binary mode.
2017-07-15 Bruno Haible <bruno@clisp.org>
Allow building statically linked binaries, through LDFLAGS="-static".
Apply patch from
<https://lists.gnu.org/archive/html/bug-libtool/2017-07/msg00000.html>.
* build-aux/ltmain.sh (func_mode_help, func_mode_link): In the link
mode, accept option '-static-uninstalled-libs' in place of '-static',
and make '-static' an equivalent of '-all-static'.
2017-07-15 Bruno Haible <bruno@clisp.org>
Don't attempt to build preloadable_libiconv.so when linking statically.
* preload/configure.ac (enable_shared, enable_static): Don't force
shared libraries when LDFLAGS indicates static linking.
(PLUGLIB): Set to empty when is not configured for building shared
libraries.
2017-07-15 Bruno Haible <bruno@clisp.org>
Get rid of autom4te.cache directories, as far as possible.
* Makefile.devel (srclib/Makefile.in, aclocal.m4, configure,
config.h.in): Remove autom4te.cache after invoking aclocal, autoconf,
autoheader, automake.
* preload/Makefile.devel (aclocal, configure): Likewise.
2017-05-18 Bruno Haible <bruno@clisp.org>
* lib/relocatable.h: Update from gnulib.
* lib/relocatable.c: Update from gnulib.
2017-01-30 Bruno Haible <bruno@clisp.org>
Prepare for version 1.15.
* src/iconv.c (print_version): Update copyright year.
* windows/iconv.rc: Likewise.
* windows/libiconv.rc: Likewise.
2016-12-29 Bruno Haible <bruno@clisp.org>
Make Makefile.devel consistent with .gitignore.
* Makefile.devel (srclib/Makefile.in): Depend on aclocal.m4.
(totally-clean): Remove also aclocal.m4.
2016-12-25 Bruno Haible <bruno@clisp.org>
Tweak autogen.sh.
* autogen.sh: Emit a "done" diagnostic when autogen.sh completed
successfully.
2016-12-25 Bruno Haible <bruno@clisp.org>
Reorder Makefile.devel.
* Makefile.devel: Reorder: put gnulib targets before autotools targets.
2016-12-14 Bruno Haible <bruno@clisp.org>
Cleanup useless removals.
* lib/Makefile.in (distclean): No need to remove 'libtool'.
2016-12-04 Bruno Haible <bruno@clisp.org>
Update comments.
* Makefile.devel: Update comments about release process.
2016-12-04 Bruno Haible <bruno@clisp.org>
Create tarballs through an Automake-like "make dist" command.
* Makefile.in (SOURCE_FILES, LIBTOOL_IMPORTED_FILES,
AUTOMAKE_OLD_IMPORTED_FILES, AUTOMAKE_IMPORTED_FILES, IMPORTED_FILES,
GENERATED_FILES, DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
(PACKAGE, VERSION, TAR, GZIP): New macros.
(dist): New target.
* lib/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
* man/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
* preload/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
* src/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
* tests/Makefile.in (SOURCE_FILES, IMPORTED_FILES, GENERATED_FILES,
DISTRIBUTED_BUILT_FILES, DISTFILES): New macros.
(distdir): New target.
2016-12-04 Bruno Haible <bruno@clisp.org>
Remove duplicates of imported files from version control.
* autogen.sh: Copy imported files to libcharset.
2016-12-04 Bruno Haible <bruno@clisp.org>
Always use the newest released copies of files brought in from Automake.
* Makefile.devel (srclib/Makefile.in): Make sure to get new versions of
files brought in by automake.
* build-aux/install-sh: Remove from version control.
* build-aux/missing: Likewise.
2016-12-04 Bruno Haible <bruno@clisp.org>
Always use the newest copies of config.guess, config.sub.
* Makefile.devel (gnulib-imported-files): New target.
* autogen.sh: Invoke it.
* build-aux/config.guess: Remove from version control.
* build-aux/config.sub: Likewise.
2016-12-04 Bruno Haible <bruno@clisp.org>
Always use the newest copy of fcntl-o.m4.
* m4/fcntl-o.m4: Remove file. Rely on srcm4/fcntl-o.m4 instead.
2016-12-04 Bruno Haible <bruno@clisp.org>
Remove obsolete documentation.
* PORTS: Remove file.
2016-12-03 Bruno Haible <bruno@clisp.org>
Make Makefile.devel more useful for the users of the released tarball.
* Makefile.devel (srclib/Makefile.gnulib): Don't force this target.
(gnulib-clean): New target.
(totally-clean): New target. Do the removals from autogen.sh. Also,
remove lib/aliases*.gperf, lib/canonical*.h, man/iconvctl.3.html,
man/iconv_open_into.3.html.
* autogen.sh: Invoke target gnulib-clean before srclib/Makefile.gnulib.
Invoke target totally-clean before all.
* preload/Makefile.devel (totally-clean): New target.
2016-12-03 Bruno Haible <bruno@clisp.org>
Modernize configure.ac.
* configure.ac: Use 2-argument AC_INIT. Avoid an AM_INIT_AUTOMAKE
warning.
* preload/configure.ac: Use 2-argument AC_INIT. Use AC_CONFIG_SRCDIR.
2016-12-03 Bruno Haible <bruno@clisp.org>
Towards reproducible builds.
* Makefile.devel (man/%.html): Remove the CreationDate comment line
from the output.
2016-12-04 Bruno Haible <bruno@clisp.org>
Update to gettext-0.19.8.1.
* ABOUT-NLS: Update through 'gettextize'.
2016-12-03 Bruno Haible <bruno@clisp.org>
Update documentation.
* HACKING: Refer to the Git repository.
2016-12-03 Bruno Haible <bruno@clisp.org>
Avoid compilation warnings in 'genflags' program.
* lib/genflags.c: Avoid warnings from GCC's -Wunused-function option.
2016-12-02 Bruno Haible <bruno@clisp.org>
* relocatable.c: Update from gnulib.
2016-11-25 Bruno Haible <bruno@clisp.org>
Prepare for version 1.15.
* configure.ac: Bump version number to 1.15.
* README: Likewise.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* windows/iconv.rc: Update.
* windows/libiconv.rc: Update.
* Makefile.devel: Update comments.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 8:0:6.
* src/iconv.c (print_version): Update copyright year.
2016-11-23 Bruno Haible <bruno@clisp.org>
Update installation instructions for Windows.
* README.windows: Assume a 64-bit Windows. Explain both 32-bit and
64-bit builds. Add instructions for the MS Visual C/C++ tool chain.
Revamp instructions for Cygwin.
2016-11-23 Bruno Haible <bruno@clisp.org>
Drop the nickname "woe32".
* README.windows: Renamed from README.woe32.
2016-11-22 Bruno Haible <bruno@clisp.org>
Update support for building with MSVC.
* Makefile.devel (srclib/Makefile.in): Import 'ar-lib' and 'compile'
from gnulib.
* lib/Makefile.in (install-lib, install): Install the .la file with
$(INSTALL), not $(INSTALL_DATA). Otherwise the native Windows DLL gets
installed without execution permissions, and programs linked to it fail:
in a Cygwin shell with exit code 127, or from a cmd.exe window with a
dialog "The application was unable to start correctly (0xc0000022)."
2016-11-19 Bruno Haible <bruno@clisp.org>
Fix link error when compiling with gcc -O0.
* lib/iconv.c (aliases2_lookup): Make static.
Reported by Chung-Lin Tang <chunglin.tang@gmail.com>
at https://savannah.gnu.org/bugs/?47953 .
2016-11-17 Bruno Haible <bruno@clisp.org>
UTF-8: Reject surrogates and out-of-range code points.
* lib/utf8.h (utf8_mbtowc, utf8_wctomb): Reject code points in the
range 0xD800..0xDFFF and >= 0x110000.
* tests/genutf8.c (main): Don't emit mappings for 0xD800..0xDFFF.
2016-10-22 Bruno Haible <bruno@clisp.org>
Switch to libtool 2.4.6.
* m4/libtool.m4: Update from libtool-2.4.6, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}..
* m4/ltoptions.m4: Likewise.
* m4/ltversion.m4: Likewise.
* build-aux/ltmain.sh: Likewise.
2016-10-14 Bruno Haible <bruno@clisp.org>
Use 'size_t', not 'int', for the length of a string.
* lib/iconv.c: Include <limits.h>.
* lib/genflags.c: Likewise.
* lib/converters.h (struct mbtowc_funcs, struct wctomb_funcs): Change
'int n' parameter to 'size_t n'.
(RET_COUNT_MAX): New macro.
* lib/*.h: Use 'size_t n' instead of 'int n'.
* lib/ucs2.h (ucs2_mbtowc): Make sure 'count' does not cause an 'int'
overflow.
* lib/ucs4.h (ucs4_mbtowc): Likewise.
* lib/utf16.h (utf16_mbtowc): Likewise.
* lib/utf32.h (utf32_mbtowc): Likewise.
* tools/8bit_tab_to_h.c: Generate function signatures with 'size_t n'.
* tools/cjk_tab_to_h.c: Likewise.
* NEWS: Mention the change.
2016-10-04 Bruno Haible <bruno@clisp.org>
Extend CP1255 mapping.
* lib/cp1255.h (cp1255_2uni, cp1255_page05): Map 0xCA to U+05BA.
* tests/CP1255.TXT: Likewise.
This matches https://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WindowsBestFit/bestfit1255.txt
and what the native Windows converter does since at least Windows XP.
2016-10-01 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
Bruno Haible <bruno@clisp.org>
Remove large stack requirement from gentranslit.
* lib/gentranslit.c (main): Heap-allocate large arrays.
* Makefile.devel (lib/translit.h): Remove 'ulimit -s unlimited' command.
2015-12-10 Ben Noordhuis <info@bnoordhuis.nl> (tiny change)
Remove unused array from gentranslit.
* lib/gentranslit.c (main): Remove unused array.
* Makefile.devel (CC): Add -Wall option.
Reported in https://savannah.gnu.org/bugs/?46663 .
2016-10-01 Bruno Haible <bruno@clisp.org>
Fix bug #41187.
* src/iconv.c (main): Increment i after parsing the --silent option.
Reported in https://savannah.gnu.org/bugs/?41187 .
2016-10-01 Bruno Haible <bruno@clisp.org>
Update to current gnulib.
* Makefile.devel (GNULIB_MODULES): Remove memmove.
* tests/Makefile.in (INCLUDES): Make sure to include the top-level
"config.h". Needed for the 'binary-io' module.
2016-10-01 Bruno Haible <bruno@clisp.org>
Switch to automake 1.15.
* autogen.sh: Update comment.
* Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.15.
(srclib/Makefile.in): Don't remove auxiliary files brought in by
automake.
* preload/Makefile.devel (ACLOCAL): Switch to version 1.15.
* srclib/Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects.
* build-aux/missing: Update from automake-1.15.
2016-10-01 Bruno Haible <bruno@clisp.org>
Remove autogenerated doc files from version control.
* man/iconvctl.3.html: Remove file.
* man/iconv_open_into.3.html: Remove file.
2012-12-06 Bruno Haible <bruno@clisp.org>
Change copyright holder of man pages.
* man/*.[13]: Replace myself with FSF.
2012-06-30 Bruno Haible <bruno@clisp.org>
Make it possible to run 'genaliases2' on native Windows.
* lib/genaliases2.c (main): Expect 3 arguments. Open the output files
explicitly. Complain if they don't exist.
* Makefile.devel (lib/aliases_*.h): Pass the output filenames as
arguments to genaliases.
Reported at <https://savannah.gnu.org/bugs/?36748>.
Make it possible to run 'genaliases' on native Windows.
* lib/genaliases.c (main): Expect 3 arguments. Open the output files
explicitly. Complain if they don't exist. Improve error checking.
* Makefile.devel (lib/aliases*.h): Pass the output filenames as
arguments to genaliases.
Reported at <https://savannah.gnu.org/bugs/?36748>.
2012-05-13 Bruno Haible <bruno@clisp.org>
Tweak the GB18030 converter to map 0x8135F437 to U+E7C7.
* lib/gb18030.h (gb18030_pua2charset, gb18030_wctomb): Remove mapping
from U+E7C7 to 0xA8BC.
* lib/gb18030uni.h (gb18030uni_mbtowc): Treat 0x8135F437 as a special
case.
(gb18030uni_wctomb): Treat U+E7C7 as a special case.
* tests/GB18030-BMP.TXT: Map 0x8135F437 to U+E7C7, not U+1E3F.
* tests/GB18030.IRREVERSIBLE.TXT: Remove irreversible mappings for
0x8135F437 and U+E7C7.
2012-04-28 Bruno Haible <bruno@clisp.org>
Switch to autoconf 2.69 and automake 1.12.
* autogen.sh: Update comment.
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.69.
(AUTOMAKE, ACLOCAL): Switch to version 1.12.
* preload/Makefile.devel (AUTOCONF): Switch to version 2.69.
(ACLOCAL): Switch to version 1.12.
2012-03-24 Bruno Haible <bruno@clisp.org>
Avoid a GCC warning.
* lib/isoir165.h (isoir165_mbtowc): Don't shadow the 'ret' variable.
2012-01-26 Bruno Haible <bruno@clisp.org>
Modernize quoting.
* README: Quote 'like this', not `like this', as per the recent change
to the GNU coding standards.
* NOTES: Likewise.
* gnulib-local/lib/xmalloc.c: Likewise.
* lib/config.h.in: Likewise.
* src/iconv.c (usage): Likewise.
* tests/uniq-u.c: Likewise.
* tools/cjk_tab_to_h.c (output_uni2charset_sparse, do_jisx0213):
Likewise.
* lib/big5.h: Update accordingly.
* lib/cns11643_inv.h: Likewise.
* lib/cp932ext.h: Likewise.
* lib/cp950ext.h: Likewise.
* lib/gb12345ext.h: Likewise.
* lib/gb2312.h: Likewise.
* lib/gbkext_inv.h: Likewise.
* lib/hkscs1999.h: Likewise.
* lib/hkscs2001.h: Likewise.
* lib/hkscs2004.h: Likewise.
* lib/hkscs2008.h: Likewise.
* lib/isoir165ext.h: Likewise.
* lib/jisx0208.h: Likewise.
* lib/jisx0212.h: Likewise.
* lib/jisx0213.h: Likewise.
* lib/ksc5601.h: Likewise.
* lib/uhc_1.h: Likewise.
* lib/uhc_2.h: Likewise.
2012-01-15 Bruno Haible <bruno@clisp.org>
Support for MSVC 9.
* lib/config.h.in (inline, mode_t, ssize_t): Copy snippets from top
config.h.in.
* tests/genutf8.c: Include config.h.
* tests/gengb18030z.c: Likewise.
* woe32dll/export.h (VARIABLE): Define to empty if not using GCC.
2011-01-28 Bruno Haible <bruno@clisp.org>
Add a comment.
* woe32dll/export.h: Add a reference to the woe32dll writeup.
2012-01-06 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* gnulib-local/lib/error.h.diff: Update.
2012-01-06 Bruno Haible <bruno@clisp.org>
Talk about "native Windows API", not "Woe32".
* lib/relocatable.c: Update comments to mention native Windows.
2012-01-04 Bruno Haible <bruno@clisp.org>
Talk about "native Windows API", not "Win32".
* lib/relocatable.c: Update comments to mention native Windows.
(WINDOWS_NATIVE): Renamed from WIN32_NATIVE.
2011-10-27 Bruno Haible <bruno@clisp.org>
Fix bug with error handling in UCS-2, UCS-4, UTF-32 decoders.
* lib/ucs2.h (ucs2_mbtowc): Increment count only after validating wc.
* lib/ucs4.h (ucs4_mbtowc): Likewise.
* lib/utf32.h (utf32_mbtowc): Likewise.
Reported at <https://savannah.gnu.org/bugs/?34916>.
2012-06-30 Bruno Haible <bruno@clisp.org>
Improve ISO-2022-CP-MS versus CP932.
* lib/iso2022_jpms.h (iso2022_jpms_mbtowc): Recognize characters from
the rows 0x79..0x7C as rows from CP932.
* tests/ISO-2022-JP-MS-snippet.alt: New file, renamed from
tests/ISO-2022-JP-MS-snippet.
* tests/ISO-2022-JP-MS-snippet.UTF-8: Update the rows that correspond
to ESC $ B 0x79..0x7C.
* tests/ISO-2022-JP-MS-snippet: Likewise.
* tests/check-stateful: Also test the *-snippet.alt file if it exists.
* tests/check-stateful.bat: Likewise.
2012-06-30 Bruno Haible <bruno@clisp.org>
Improve ISO-2022-CP-MS versus CP932.
* lib/cp50221_0208_ext.h (cp50221_0208_ext_page30): Map U+301D like
U+301E.
* lib/iso2022_jpms.h (iso2022_jpms_wctomb): Map U+663B to JISX0208
0x7A 0x36, U+FFE2 to 0x7C 0x7B, U+FFE4 to 0x7C 0x7C.
Reported by Jeff Diehl <diehl.jeff@gmail.com>.
2011-10-23 Bruno Haible <bruno@clisp.org>
New encoding ISO-2022-CP-MS.
* NOTES: Mention ISO-2022-JP-MS.
* tools/CP50221-0208-EXT.TXT: New file.
* tools/CP50221-0212-EXT.TXT: New file.
* tools/8bit_tab_to_h.c: Add comments about how to generate
cp50221_0208_ext.h, cp50221_0212_ext.h.
* tools/Makefile: Add rules for generating cp50221_0208_ext.h,
cp50221_0212_ext.h.
* lib/cp50221_0208_ext.h: New file, mostly generated.
* lib/cp50221_0212_ext.h: New file, mostly generated.
* lib/iso2022_jpms.h: New file.
* lib/converters.h: Include it.
* lib/encodings.def: Add ISO-2022-JP-MS.
* README, man/iconv_open.3: Add ISO-2022-JP-MS.
* tests/ISO-2022-JP-MS-snippet: New file.
* tests/ISO-2022-JP-MS-snippet.UTF-8: New file.
* tests/Makefile.in (check): Also test ISO-2022-JP-MS.
Reported by Jeff Diehl <diehl.jeff@gmail.com>.
2011-10-23 Bruno Haible <bruno@clisp.org>
* lib/encodings.def: Add comments about Windows names of encodings.
2011-10-18 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.4.2, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}..
* m4/ltoptions.m4: Likewise.
* m4/ltversion.m4: Likewise.
* build-aux/ltmain.sh: Likewise.
2011-10-03 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c: Update from gnulib.
2011-09-02 Bruno Haible <bruno@clisp.org>
Fix "make check" failure when $(srcdir) != $(builddir).
* tests/Makefile.in (check): When $(srcdir) != ., temporarily copy
GB18030.IRREVERSIBLE.TXT into the build directory.
Reported by Christian Weisgerber <naddy@mips.inka.de>.
2011-08-07 Bruno Haible <bruno@clisp.org>
Ensure all HTML-formatted man pages are up-to-date.
* Makefile.devel (all): Depend on man/iconvctl.3.html and
man/iconv_open_into.3.html.
2011-08-07 Bruno Haible <bruno@clisp.org>
* Version 1.14 released.
2011-08-07 Bruno Haible <bruno@clisp.org>
* configure.ac: Bump version number to 1.14.
* README: Likewise.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* windows/iconv.rc: Update.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:1:5.
* src/iconv.c (print_version): Update copyright year.
2011-08-07 Bruno Haible <bruno@clisp.org>
Avoid a test failure on Solaris 2.6 and HP-UX 11.00.
* tests/test-to-wchar.c (main): Skip the test if conversion to wchar_t
is not supported.
2011-08-07 Bruno Haible <bruno@clisp.org>
* tests/check-subst: Add comments about OSF/1.
2011-08-07 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c: Update from gnulib.
2011-08-06 Bruno Haible <bruno@clisp.org>
Upgrade the GB18030 converter to the version from 2005.
* lib/gb18030ext.h (gb18030ext_2uni_pagefe): Change element type to
'unsigned int'. Change values for 0xFE51..0xFE53, 0xFE59, 0xFE61,
0xFE66, 0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0.
(gb18030ext_mbtowc): Change type of wc to 'unsigned int'. Change values
for 0xA6D9..0xA6DF, 0xA6EC..0xA6ED, 0xA6F3, 0xA8BC.
(gb18030ext_page9f, gb18030ext_pagefe): New constant arrays.
(gb18030ext_wctomb): Change values for U+1E3F, U+9FB4..U+9FBB,
U+FE10..U+FE19, U+20087, U+20089, U+200CC, U+215D7, U+2298F, U+241FE.
* tests/GB18030-BMP.TXT: Change values for 0xA6D9..0xA6DF,
0xA6EC..0xA6ED, 0xA6F3, 0xA8BC, 0xFE51..0xFE53, 0xFE59, 0xFE61, 0xFE66,
0xFE67, 0xFE6C, 0xFE6D, 0xFE76, 0xFE7E, 0xFE90, 0xFE91, 0xFEA0, to map
to now-assigned Unicode codepoints.
* tests/GB18030.IRREVERSIBLE.TXT: New file.
2011-08-06 Bruno Haible <bruno@clisp.org>
Fix conversion bug in CP1258 converter.
* lib/vietcomb.h (viet_comp_table_data): Remove entry for
U+00A5 U+0301. Fix entry for U+00A8 U+0301.
(viet_decomp_table): Fix entry for U+0385.
* tests/CP1258.IRREVERSIBLE.TXT: Update.
Reported by Gertjan Halkes <gertjan@ghalkes.nl>.
2011-07-03 Bruno Haible <bruno@clisp.org>
Improve interactive behaviour of iconv program.
* src/iconv.c (convert): Flush the output before starting a possibly
blocking safe_read call.
2011-07-03 Bruno Haible <bruno@clisp.org>
Fix interactive behaviour of iconv program.
* Makefile.devel (GNULIB_MODULES): Add safe-read.
* src/iconv.c: Include safe-read.h.
(convert): Take the infile as a file descriptor, not as a FILE stream.
Use safe_read() instead of fread().
(main): Update.
Reported by Xavier Pucel <xpucel@hotmail.com>.
2011-05-02 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* autogen.sh (GNULIB_MODULES): Remove exit, add stdlib.
2011-06-02 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* gnulib-local/m4/alloca.m4 (gl_FUNC_ALLOCA): Update.
2011-06-04 Bruno Haible <bruno@clisp.org>
Work around <wchar.h> bug on OSF/1 5.1.
* lib/loop_wchar.h: Before including <wchar.h>, include <stdio.h> and
some other includes.
2011-03-27 KO Myung-Hun <komh@chollian.net>
Fix installation on OS/2.
* src/Makefile.in (all, iconv_no_i18n): Add $(EXEEXT) suffix to
iconv_no_i18n. This is the recommended way to use libtool, see
<https://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00013.html>.
2011-03-31 Bruno Haible <bruno@clisp.org>
gentranslit: Fix buffer overrun.
* lib/gentranslit.c (main): Allocate more room for the suffix strings
of the translit pages.
Reported by Ben Noordhuis <info@bnoordhuis.nl>.
2011-02-28 Bruno Haible <bruno@clisp.org>
* lib/relocatable.h: Update from gnulib.
* lib/relocatable.c: Likewise.
2011-01-29 Corinna Vinschen <corinna-cygwin@cygwin.com>
Bruno Haible <bruno@clisp.org>
Simplify "wchar_t" handling on Cygwin 1.7.x.
* lib/iconv.c (iconv_canonicalize): On Cygwin >= 1.7, map
ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
* lib/iconv_open1.h: Likewise.
Rationale: <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
2011-01-29 Bruno Haible <bruno@clisp.org>
Adjust the meaning of "wchar_t" on native Windows systems.
* lib/iconv.c (iconv_canonicalize): On native Windows, map
ei_local_wchar_t to ei_utf16le or ei_utf16be, not ei_ucs2internal.
* lib/iconv_open1.h: Likewise.
Reported by Corinna Vinschen <corinna-cygwin@cygwin.com>
in <https://cygwin.com/ml/cygwin/2011-01/msg00410.html>.
2010-11-23 Bruno Haible <bruno@clisp.org>
Implement newer release of BIG5-HKSCS.
* tools/Makefile (ALL): Add hkscs2008.h.
(hkscs2008.h): New rule.
* tools/cjk_tab_to_h.c (main): Recognize hkscs2008.
* lib/encodings.def: Add BIG5-HKSCS:2008. Change BIG5-HKSCS alias to be
equivalent to BIG5-HKSCS:2008.
* lib/hkscs2008.h: New file, autogenerated.
* lib/big5hkscs2008.h: New file, based on lib/big5hkscs2004.h.
* lib/converters.h: Include the new file.
* README, man/iconv_open.3: Add BIG5-HKSCS:2004.
* tests/BIG5-HKSCS-2008.TXT: New file, based on
tests/BIG5-HKSCS-2004.TXT.
* tests/BIG5-HKSCS-2008.IRREVERSIBLE.TXT: New file, copied from
tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT
* tests/BIG5-HKSCS-2008-snippet: New file, based on
tests/BIG5-HKSCS-2004-snippet.
* tests/BIG5-HKSCS-2008-snippet.UTF-8: New file, based on
tests/BIG5-HKSCS-2004-snippet.UTF-8.
* tests/Makefile.in (check): Check also BIG5-HKSCS:2008.
Reported by oCameLo <camel322@gmail.com>.
2010-11-23 Bruno Haible <bruno@clisp.org>
Make cjk_tab_to_h 64-bit clean.
* tools/cjk_tab_to_h.c (do_jisx0213): Add a cast from size_t to int.
(output_title): Update copyright year.
2010-09-23 Bruno Haible <bruno@clisp.org>
Switch to autoconf 2.68.
* autogen.sh: Update comment.
* configure.ac: Fix AC_COMPILE_IFELSE invocation.
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.68.
* preload/Makefile.devel (AUTOCONF): Likewise.
2010-09-23 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.4, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltversion.m4: Update from libtool-2.4.
* build-aux/ltmain.sh: Likewise.
2010-09-23 Bruno Haible <bruno@clisp.org>
Simplify use of gnulib-tool now that gnulib-tool --import works better.
* autogen.sh: Don't remove gnulib-cache.m4 before running gnulib-tool.
* Makefile.devel (srclib/Makefile.gnulib): Depend on 'force'.
2010-07-31 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.67.
* preload/Makefile.devel (AUTOCONF): Likewise.
2010-07-03 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.66.
* preload/Makefile.devel (AUTOCONF): Likewise.
2010-06-04 Bruno Haible <bruno@clisp.org>
Addendum to 2009-10-18 commit.
* m4/fcntl-o.m4: New file, from gnulib.
* configure.ac: Invoke gl_FCNTL_O_FLAGS.
* lib/config.h.in (HAVE_WORKING_O_NOFOLLOW): New macro.
2010-06-04 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.2.8, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltoptions.m4: Update from libtool-2.2.8.
* m4/ltversion.m4: Likewise.
* m4/lt~obsolete.m4: Likewise.
* build-aux/ltmain.sh: Likewise.
2010-04-06 Bruno Haible <bruno@clisp.org>
Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
* include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
doesn't contains #include directives.
2010-03-30 Bruno Haible <bruno@clisp.org>
* README.woe32: Update for Cygwin 1.7.x.
2009-12-26 Bruno Haible <bruno@clisp.org>
* windows/libiconv.rc: Update.
* windows/iconv.rc: Update.
2009-12-11 Bruno Haible <bruno@clisp.org>
* include/iconv.h.in: Untabify.
* gnulib-local/lib/xalloc.h: Untabify.
* woe32dll/export.h: Untabify.
* tests/uniq-u.c: Untabify.
2009-12-11 Bruno Haible <bruno@clisp.org>
* srclib/Makefile.am (MOSTLYCLEANDIRS): New macro.
2009-12-11 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.65.
* preload/Makefile.devel (AUTOCONF): Likewise.
2009-11-22 Bruno Haible <bruno@clisp.org>
* tests/check-subst: Add reference to the Solaris printf bug.
Reported by Dagobert Michelsen <dagobert@familie-michelsen.de>.
2009-09-01 Bruno Haible <bruno@clisp.org>
* README.woe32: Put the -mno-cygwin option into CC and CXX.
Recommended by Paolo Bonzini and Eric Blake.
2009-08-15 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.64.
* preload/Makefile.devel (AUTOCONF): Likewise.
2009-08-15 Bruno Haible <bruno@clisp.org>
Use .git/info/exclude, not .gitignore, for imported or generated files.
* Makefile.devel (srclib/Makefile.gnulib): Pass option --no-vc-files to
gnulib-tool.
2009-07-07 Bruno Haible <bruno@clisp.org>
Fix an endless loop.
* lib/loop_wchar.h (wchar_to_loop_convert): Handle the case of
incomplete input correctly.
* tests/test-to-wchar.c: New file.
* tests/Makefile.in (tests-to-wchar, tests-to-wchar.o): New rules.
(check): Depend on and run tests-to-wchar.
(clean): Add tests-to-wchar.
Reported by Tristan Gingold <gingold@adacore.com>.
2009-06-30 Bruno Haible <bruno@clisp.org>
* Version 1.13.1 released.
2009-06-30 Bruno Haible <bruno@clisp.org>
* configure.ac: Bump version number to 1.13.1.
* README: Likewise.
2009-06-04 Bruno Haible <bruno@clisp.org>
* preload/Makefile.devel (AUTOCONF): Switch to version 2.63.
(ACLOCAL): Switch to version 1.11.
2009-05-19 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOMAKE, ACLOCAL): Switch to version 1.11.
* autogen.sh: Update comments.
2009-04-24 Bruno Haible <bruno@clisp.org>
Fix a compilation error on HP-UX 11.00, introduced on 2008-09-16.
* src/iconv_open2.h: Don't initialize nonexistent field if
!(HAVE_WCRTOMB || HAVE_MBRTOWC).
Patch by Joel Brobecker <brobecker@adacore.com>.
2009-04-15 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (install, uninstall): Append the $(EXEEXT) suffix
explicitly. Needed on Cygwin.
2009-04-11 Bruno Haible <bruno@clisp.org>
* configure.ac: Move the statements for WOE32 and WINDRES.
2009-03-26 Bruno Haible <bruno@clisp.org>
* Version 1.13 released.
2009-03-26 Bruno Haible <bruno@clisp.org>
* src/iconv.c: Update copyright header to GPLv3+.
(print_version): Update license info.
2009-03-26 Bruno Haible <bruno@clisp.org>
* src/iconv.c (print_version): Bump year.
2009-03-25 Bruno Haible <bruno@clisp.org>
* build-aux/config.guess: Update to GNU version 2009-02-03.
* build-aux/config.sub: Likewise.
2009-03-25 Bruno Haible <bruno@clisp.org>
* configure.ac: Bump version number to 1.13.
* README: Likewise.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* windows/iconv.rc: Update.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 7:0:5.
2009-03-25 Bruno Haible <bruno@clisp.org>
Fix the handling of Windows resources in shared libraries.
* configure.ac: Invoke LT_LANG for 'Windows Resource'.
* lib/Makefile.in (RC): New variable.
(WINDRES): Remove variable.
(OBJECTS_RES_yes): Add .lo suffix.
(libiconv.res.lo): Renamed from libiconv.res. Use libtool --tag=RC.
(clean): Simplify.
Based on a patch by Roumen Petrov <bugtrack@roumenpetrov.info>.
2009-03-14 Bruno Haible <bruno@clisp.org>
* autogen.sh: Checkout gnulib using 'git' instead of 'cvs'.
2009-01-24 Bruno Haible <bruno@clisp.org>
* tools/Makefile (ALL): Add cp1131.h.
(cp1131.h): New rule.
* lib/encodings.def: Add CP1131.
* lib/cp1131.h: New file.
* lib/converters.h: Include it.
* README, man/iconv_open.3: Add CP1131.
* NOTES: Mention CP1131.
* tests/CP1131.TXT: New file.
* tests/Makefile.in (check): Also test CP1131.
2009-01-17 Bruno Haible <bruno@clisp.org>
Add support for "make install-strip".
* configure.ac: Search for 'strip'. Invoke AM_PROG_INSTALL_STRIP.
* Makefile.in (install-strip): New rule.
* src/Makefile.in (STRIP, INSTALL_STRIP_PROGRAM, install_sh): New
variables.
(install-strip): New rule.
* lib/Makefile.in (install-strip): New target.
* preload/Makefile.in (install-strip): Likewise.
* man/Makefile.in (install-strip): Likewise.
Reported by Alon Bar-Lev <alon.barlev@gmail.com>.
2009-01-17 Bruno Haible <bruno@clisp.org>
Update after gnulib changed.
* src/Makefile.in (RELOCATABLE_STRIP): New variable.
2009-01-17 Bruno Haible <bruno@clisp.org>
Make --enable-relocatable work on glibc systems.
* src/Makefile.in (host): New variable.
2009-01-17 Bruno Haible <bruno@clisp.org>
* lib/genflags.c: Include <string.h>.
2009-01-14 Bruno Haible <bruno@clisp.org>
* configure.ac: More consistent m4 quoting.
* preload/configure.ac: Likewise.
2008-09-28 Bruno Haible <bruno@clisp.org>
* build-aux/ltmain.sh (func_emit_cwrapperexe_src): On mingw,
preprocess the argument vector through prepare_spawn.
2008-09-27 Bruno Haible <bruno@clisp.org>
* build-aux/config.guess: Update to GNU version 2008-09-08.
* build-aux/config.sub: Likewise.
2008-09-26 Bruno Haible <bruno@clisp.org>
* tests/test-shiftseq.c (main1, main2): Use ICONV_CONST.
2008-09-26 Bruno Haible <bruno@clisp.org>
* Makefile.devel (GNULIB_MODULES): Add sigpipe, stdio.
* tests/Makefile.in (check, table-from, table-to, test-shiftseq): Link
all programs against libicrt.a. Needed for the stdio function
replacements on mingw.
2008-09-21 Tadamasa Teranishi <yw3t-trns@asahi-net.or.jp>
* lib/encodings_extra.def: Add aliases for EUC-JISX0213, SHIFT_JISX0213,
ISO-2022-JP-3, found on <http://x0213.org/codetable/index.en.html>.
2008-09-20 Bruno Haible <bruno@clisp.org>
* man/iconv_open_into.3: New file.
2008-09-16 Bruno Haible <bruno@clisp.org>
New function iconv_open_into.
* include/iconv.h.in: Include <wchar.h> and its prerequisites.
(iconv_allocation_t): New type.
(iconv_open_into): New declaration.
* lib/iconv_open1.h: New file, extracted from lib/iconv.c.
* lib/iconv_open2.h: New file, extracted from lib/iconv.c.
* lib/iconv.c (iconv_open): Include iconv_open1.h and iconv_open2.h.
Verify size of iconv_allocation_t.
(iconv_open_into): New function.
* lib/loop_wchar.h (struct wchar_conv_struct): Don't define a state
field if !(HAVE_WCRTOMB || HAVE_MBRTOWC).
* configure.ac: Set and substitute USE_MBSTATE_T, BROKEN_WCHAR_H.
Reported by Roman Rybalko <romanr@romanr.info>.
2008-09-16 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Switch to version 2.63.
2008-09-16 Bruno Haible <bruno@clisp.org>
* include/iconv.h.in: Use Unicode single-quotes in comments.
2008-09-14 Bruno Haible <bruno@clisp.org>
* Makefile.devel (GNULIB_MODULES): Add strerror.
2008-09-07 Bruno Haible <bruno@clisp.org>
Make behaviour when encountering invalid input after a shift sequence
more consistent.
* lib/converters.h (RET_SHIFT_ILSEQ): New macro.
(RET_ILSEQ): Define in terms of RET_SHIFT_ILSEQ.
(RET_TOOFEW): Change to avoid collisions with RET_SHIFT_ILSEQ.
(DECODE_SHIFT_ILSEQ, DECODE_TOOFEW): New macros.
* lib/loop_unicode.h (unicode_loop_convert): Take into account the
shift count contained in the negative return values.
* lib/hz.h (hz_mbtowc): When encountering invalid input, store the
modified state and return RET_SHIFT_ILSEQ.
* lib/iso2022_cn.h (iso2022_cn_mbtowc): Likewise.
* lib/iso2022_cnext.h (iso2022_cn_ext_mbtowc): Likewise.
* lib/iso2022_jp.h (iso2022_jp_mbtowc): Likewise.
* lib/iso2022_jp1.h (iso2022_jp1_mbtowc): Likewise.
* lib/iso2022_jp2.h (iso2022_jp2_mbtowc): Likewise.
* lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Likewise.
* lib/iso2022_kr.h (iso2022_kr_mbtowc): Likewise.
* lib/ucs2.h (ucs2_mbtowc): Likewise.
* lib/ucs4.h (ucs4_mbtowc): Likewise.
* lib/utf16.h (utf16_mbtowc): Likewise.
* lib/utf32.h (utf32_mbtowc): Likewise.
* lib/utf7.h (utf7_mbtowc): Likewise.
* lib/utf16be.h (utf16be_mbtowcutf16be_mbtowc): When encountering
invalid input, return RET_SHIFT_ILSEQ.
* lib/utf16le.h (utf16le_mbtowc): Likewise.
* tests/test-shiftseq.c: New file.
* tests/Makefile.in (check): Run test-shiftseq.
(test-shiftseq, test-shiftseq.@OBJEXT@): New rules.
(clean): Remove test-shiftseq executable.
Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
at <https://savannah.gnu.org/bugs/?24216>.
2008-09-07 Bruno Haible <bruno@clisp.org>
* man/iconv.3: Clarify the processing of shift-sequences.
2008-09-07 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.2.6, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltoptions.m4: Update from libtool-2.2.6.
* m4/ltsugar.m4: Likewise.
* m4/ltversion.m4: Likewise.
* build-aux/ltmain.sh: Likewise.
2008-09-06 Bruno Haible <bruno@clisp.org>
* lib/gbk.h (gbk_wctomb): Fix an out-of-bounds write.
Reported by Roman Rybalko <roman_rybalko@users.sourceforge.net>
at <https://savannah.gnu.org/bugs/?24214>.
2008-06-30 Bruno Haible <bruno@clisp.org>
Fix sed expressions to work with the old sed-3.02 on MSYS.
* windows/windres-options (sed_extract_major, sed_extract_minor,
sed_extract_subminor): Put a semicolon before the closing brace. Use
an i\ command instead of an a\ command.
Reported by Sunil Negi <sunil.negi@morningstar.com>
in <http://article.gmane.org/gmane.comp.gnu.mingw.msys/4410>
via Keith Marshall <keithmarshall@users.sourceforge.net>.
2008-05-22 Bruno Haible <bruno@clisp.org>
* README.woe32: Update with info from GNU gettext's README.woe32.
2008-05-18 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.2.4, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltoptions.m4: Update from libtool-2.2.4.
* m4/ltversion.m4: Likewise.
* m4/lt~obsolete.m4: Likewise.
* build-aux/ltmain.sh: Likewise.
2008-04-14 Bruno Haible <bruno@clisp.org>
* tests/Makefile.in (check): Remove *.dSYM directories left over by gcc
on MacOS X 10.5.
2008-04-14 Bruno Haible <bruno@clisp.org>
* preload/configure.ac: Invoke AC_USE_SYSTEM_EXTENSIONS instead of
AC_AIX and AC_MINIX.
* Makefile.devel (AUTOCONF, AUTOHEADER): Require autoconf-2.62.
* preload/Makefile.devel (AUTOCONF): Likewise.
* autogen.sh: Likewise.
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from libtool-2.2.2, with modifications:
2008-04-06 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (LT_INIT): When setting LIBTOOL, use
CONFIG_SHELL; don't assume that the Makefile.in will set SHELL
to ${CONFIG_SHELL}.
* m4/ltoptions.m4: New file, from libtool-2.2.2.
* m4/ltsugar.m4: New file, from libtool-2.2.2.
* m4/ltversion.m4: New file, from libtool-2.2.2.
* m4/lt~obsolete.m4: New file, from libtool-2.2.2.
* build-aux/ltmain.sh: New file, from libtool-2.2.2.
* configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
* preload/configure.ac: Likewise.
2008-04-06 Bruno Haible <bruno@clisp.org>
More portable way of building the preloadable library.
* preload/Makefile.devel: New file.
* preload/Makefile.in: New file, based on lib/Makefile.in.
* preload/configure.ac: New file, based on configure.ac.
* Makefile.devel (all): Recurse into preload directory.
* Makefile.in (all, install, installdirs, uninstall, check,
mostlyclean, clean, distclean, maintainer-clean): Recurse into preload
directory.
* configure.ac: Likewise.
(OS, GCC, PLUGLIB): Remove definitions.
* lib/Makefile.in (all): Don't depend on PLUGLIB.
(preloadable_libiconv.so, preloadable_libiconv_linux.so,
preloadable_libiconv_solaris.so, preloadable_libiconv_osf.so): Remove
rules.
(install, uninstall, clean): Don't handle the preloadable library here.
2008-04-06 Bruno Haible <bruno@clisp.org>
Avoid a gcc warning.
* lib/loop_unicode.h (unicode_loop_convert): Add a cast.
2008-04-06 Bruno Haible <bruno@clisp.org>
* src/iconv.c (print_version): Bump year.
2008-04-06 Bruno Haible <bruno@clisp.org>
Support all possible nl_langinfo(CODESET) results on the respective
platforms, according to libcharset/lib/config.charset.
* lib/encodings.def: Add DEFALIAS statements, conditional on
USE_AIX_ALIASES, USE_HPUX_ALIASES, USE_OSF1_ALIASES,
USE_SOLARIS_ALIASES.
* lib/encodings_aix.def: Add DEFALIAS statements, conditional on
USE_AIX_ALIASES.
* lib/encodings_osf1.def: Add DEFALIAS statements, conditional on
USE_OSF1_ALIASES.
* lib/genaliases.c (emit_alias): New function, extracted from
emit_encoding.
(emit_encoding): Use it.
(main): Define DEFALIAS.
* lib/genaliases2.c (counter): New variable, extracted from
emit_encoding.
(emit_alias): New function, extracted from emit_encoding.
(emit_encoding): Use it.
(main): Define DEFALIAS.
* lib/genflags.c (main): Define DEFALIAS.
* lib/iconv.c (all_encodings): Define DEFALIAS.
Include the system dependent variant of aliases.h on the appropriate
systems.
(all_canonical): Include the system dependent variant of canonical.h,
canonical_aix.h, canonical_osf1.h, canonical_local.h on the appropriate
systems.
* lib/aliases2.h: Include the system dependent variant of
aliases_aix.h or aliases_osf1.h on the appropriate systems.
* lib/Makefile.in (iconv.lo): Depend on aliases_sysaix.h,
aliases_syshpux.h, aliases_sysosf1.h, aliases_syssolaris.h,
aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h, and also
aliases_extra.h, translit.h.
* Makefile.devel (all): Depend on lib/aliases_sysaix.h,
lib/aliases_syshpux.h, lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
(lib/aliases_sysaix.h, lib/aliases_syshpux.h, lib/aliases_sysosf1.h,
lib/aliases_syssolaris.h): New rules.
(lib/aliases_aix_sysaix.h): New rule.
(lib/aliases_osf1_sysosf1.h): New rule.
* autogen.sh: Also remove lib/aliases_sysaix.h, lib/aliases_syshpux.h,
lib/aliases_sysosf1.h, lib/aliases_syssolaris.h,
lib/aliases_aix_sysaix.h, lib/aliases_osf1_sysosf1.h.
2008-04-06 Bruno Haible <bruno@clisp.org>
* build-aux/config.libpath: Remove file, brought in by gnulib-tool.
* build-aux/config.rpath: Remove file, brought in by gnulib-tool.
2007-11-11 Bruno Haible <bruno@clisp.org>
* Version 1.12 released.
2007-11-11 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Require version 2.61.
(AUTOMAKE, ACLOCAL): Require version 1.10.
(srclib/Makefile.in): Avoid error from automake.
2007-10-26 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update, based on libtool-1.5.24.
* build-aux/ltmain.sh: Update, based on libtool-1.5.24.
2007-10-23 Bruno Haible <bruno@clisp.org>
* build-aux/config.guess: Update to GNU version 2007-07-22.
* build-aux/config.sub: Likewise.
2007-10-23 Bruno Haible <bruno@clisp.org>
* configure.ac: Bump version number to 1.12.
* README: Likewise.
2007-10-23 Bruno Haible <bruno@clisp.org>
Move relocatability infrastructure to gnulib.
* gnulib-local/lib/relocatable.h: Remove file.
* gnulib-local/lib/relocatable.c: Remove file.
2007-10-23 Bruno Haible <bruno@clisp.org>
Update from GNU gettext.
2006-11-26 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/xalloc.h (xmemdup): Add a typesafe C++
template variant.
Based on a patch from Paul Eggert in gnulib.
2006-11-06 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/xalloc.h (xcharalloc): New macro.
(xmemdup): New declaration.
* gnulib-local/lib/xstrdup.c (xmemdup): New function.
2006-11-03 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC,
XCALLOC): New macros.
(xnboundedmalloc): New inline function.
* gnulib-local/lib/xstrdup.c (xstrdup): Use XNMALLOC instead of
xmalloc.
2006-11-02 Bruno Haible <bruno@clisp.org>
* lib/xalloc.h (xnmalloc): New declaration. From gnulib
xalloc.h.
* lib/xmalloc.c (fixup_null_alloc): Write NULL, not 0.
(xnmalloc): New function.
2007-10-23 Bruno Haible <bruno@clisp.org>
Moved module xreadlink to gnulib.
* gnulib-local/modules/xreadlink: Remove file.
* gnulib-local/lib/xreadlink.h: Remove file.
* gnulib-local/lib/xreadlink.c: Remove file.
* gnulib-local/m4/xreadlink.m4: Remove file.
2007-10-07 Bruno Haible <bruno@clisp.org>
Update program license to GPLv3.
* COPYING: Replace with GPL 3.
* windows/iconv.rc (Comments): Update.
2007-10-07 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/alloca.in.h: Renamed from gnulib-local/lib/alloca_.h.
2007-03-30 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/alloca_.h: Change prefix of double-inclusion guard
macro to _GL_.
2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
* gnulib-local/lib/alloca_.h (alloca) [defined alloca]: Don't define or
declare.
2007-09-29 Bruno Haible <bruno@clisp.org>
* autogen.sh (GNULIB_CVS_ROOT): Change to read-only git mirror
valid since 2007-09-19.
2007-07-07 Bruno Haible <bruno@clisp.org>
* autogen.sh: Add an option --skip-gnulib.
2007-07-07 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/uniwidth.h: Remove file, moved to gnulib.
* gnulib-local/lib/width.c: Remove file, moved to gnulib.
* gnulib-local/lib/cjk.h: Remove file, moved to gnulib.
* gnulib-local/modules/uniwidth: Remove file.
* Makefile.devel (GNULIB_MODULES): Remove uniwidth, add uniwidth/width.
* src/iconv.c: Include uniwidth/cjk.h instead of cjk.h.
2007-06-30 Bruno Haible <bruno@clisp.org>
* src/iconv.c (print_version): Use the standard --version output, see
<https://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
2007-06-30 Bruno Haible <bruno@clisp.org>
* autogen.sh: New file.
* DEPENDENCIES: New file.
* HACKING: New file.
2007-06-30 Bruno Haible <bruno@clisp.org>
* src/iconv.c: Provide translator comments for many messages.
(conversion_error_EILSEQ, conversion_error_EINVAL,
conversion_error_other): New functions, extracted from convert.
(convert): Use them.
Reported by Tim Van Holder <tim.van.holder@telenet.be>.
2007-06-09 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/relocwrapper.c: Remove file.
2007-05-27 Bruno Haible <bruno@clisp.org>
* windows/libiconv.rc: New file.
* windows/iconv.rc: New file.
* windows/windres-options: New file.
* configure.ac (WOE32): New variable.
(WINDRES) [WOE32]: New variable.
* lib/Makefile.in (WINDRES): New variable.
(PACKAGE_VERSION): New variable.
(OBJECTS_EXP_yes): Renamed from OBJECTS_yes.
(OBJECTS_EXP_no): Renamed from OBJECTS_no.
(OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
(OBJECTS): Add one of them.
(libiconv.res): New rule.
(clean): Remove also libiconv.res.
* src/Makefile.in (WINDRES): New variable.
(PACKAGE_VERSION): New variable.
(OBJECTS_RES_yes, OBJECTS_RES_no): New variables.
(all, iconv_no_i18n, install): Use them.
(iconv.res): New rule.
(clean): Remove also iconv.res.
Suggested and inspired by work by Perry Rapp.
2007-05-27 Bruno Haible <bruno@clisp.org>
Follow broken iconv() prototype in POSIX.
* configure.ac (ICONV_CONST): Set to empty if the system has no iconv.
* lib/config.h.in (ICONV_CONST): Change default value to an empty
comment.
* src/iconv.c (ICONV_CONST): Change default value to empty.
Reported by Andreas Krennmair <ak@synflood.at>.
2007-05-25 Bruno Haible <bruno@clisp.org>
* tools/Makefile (ALL): Add rk1048.h.
(rk1048.h): New rule.
* lib/encodings.def: Add RK1048.
* lib/rk1048.h: New file.
* lib/converters.h: Include it.
* README, man/iconv_open.3: Add RK1048.
* NOTES: Mention RK1048.
* tests/RK1048.TXT: New file.
* tests/Makefile.in (check): Also test RK1048.
Suggested by Timur Birsh <team9@host.kz>.
2007-04-24 Bruno Haible <bruno@clisp.org>
* man/iconv_open.3: Tweak explanation of TRANSLIT.
Reported by Perry Rapp.
2007-04-23 Bruno Haible <bruno@clisp.org>
* tests/check-subst: Use the output of 'printf' only if it didn't
crash. Needed to work around a buffer overflow in Solaris /bin/printf.
Reported by Arto C. Nirkko <anirkko@insel.ch>.
2007-04-23 Bruno Haible <bruno@clisp.org>
* lib/iconv.c (iconv_open, iconv_canonicalize): Treat native Woe32
systems like those which define __STDC_ISO_10646__.
Reported by Keith Marshall <keithmarshall@users.sourceforge.net>.
2007-03-31 Bruno Haible <bruno@clisp.org>
* man/iconv.1: Use HYPHEN-MINUS signs instead of HYPHENs where
appropriate.
* man/iconv_open.3: Likewise.
* man/iconv.3: Likewise.
* man/iconv_close.3: Likewise.
* man/iconvctl.3: Likewise.
2007-03-31 Bruno Haible <bruno@clisp.org>
* man/iconv.1: Mark as POSIX compliant.
* man/iconv_open.3: Likewise.
* man/iconv.3: Likewise.
* man/iconv_close.3: Likewise.
* man/*.[13]: Syntactic simplifications.
2007-03-19 Bruno Haible <bruno@clisp.org>
Assume that mkinstalldirs also creates the necessary parent directories.
* Makefile.in (install, installdirs): Don't explicitly create the
parent directories.
* lib/Makefile.in (install, installdirs): Likewise.
* src/Makefile.in (install, installdirs): Likewise.
* man/Makefile.in (install, installdirs): Likewise.
Reported by Thomas Klausner <tk@giga.or.at>.
2007-03-04 Bruno Haible <bruno@clisp.org>
* Makefile.devel (GNULIB_MODULES): Add relocatable-prog. Remove
relocatable, relocwrapper.
* configure.ac: Invoke gl_RELOCATABLE instead of AC_RELOCATABLE.
* gnulib-local/modules/progreloc: Remove file.
* gnulib-local/modules/relocatable: Remove file.
* gnulib-local/modules/relocwrapper: Remove file.
* gnulib-local/m4/relocatable.m4: Remove file.
* gnulib-local/lib/strerror.c.diff: Remove file.
* src/Makefile.in: Remove SET_RELOCATABLE invocation. Instead get
RELOCATABLE_LDFLAGS and INSTALL_PROGRAM_ENV.
2007-02-19 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/xmalloc.c: Don't include exit.h.
* src/iconv.c: Likewise.
2007-02-16 Juan Manuel Guerrero <juan.guerrero@gmx.de>
* djgpp/*: Update.
2007-02-03 Bruno Haible <bruno@clisp.org>
* tools/Makefile (ksc5601.h): Add one extra character.
* lib/ksc5601.h: Regenerated.
* lib/cp949.h (cp949_mbtowc, cp949_wctomb): Exclude the new character.
* tests/EUC-KR.TXT: Add CIRCLED HANGUL IEUNG U.
* tests/JOHAB.TXT: Likewise.
Reported by Jungshik Shin (신정식, 申政湜) <jungshik@google.com>.
* lib/euc_kr.h: Update comments.
* lib/johab.h: Likewise.
2007-02-03 Bruno Haible <bruno@clisp.org>
* tools/cjk_tab_to_h.c (output_title): Bump copyright year.
2007-01-26 Bruno Haible <bruno@clisp.org>
Moved streq.h to gnulib.
* gnulib-local/lib/streq.h: Remove file.
* gnulib-local/modules/uniwidth (Files): Remove lib/streq.h.
(Depends-on): Add streq.
(lib_SOURCES): Remove streq.h.
2007-01-26 Bruno Haible <bruno@clisp.org>
Moved unitypes.h to gnulib.
* gnulib-local/lib/unitypes.h: Remove file.
* gnulib-local/modules/uniwidth (Files): Remove lib/unitypes.h.
(Depends-on): Add unitypes.
(lib_SOURCES): Remove unitypes.h.
2007-01-26 Bruno Haible <bruno@clisp.org>
Moved canonicalize to gnulib.
* gnulib-local/modules/canonicalize: Remove file.
* gnulib-local/lib/canonicalize.h: Remove file.
* gnulib-local/lib/canonicalize.c: Remove file.
* gnulib-local/m4/canonicalize.m4: Remove file.
* gnulib-local/modules/progreloc (Depends-on): Replace 'canonicalize'
with 'canonicalize-lgpl'.
2006-12-20 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (install): On AIX, add the contents of
/lib/libiconv.a to libiconv.a.
2006-12-20 Bruno Haible <bruno@clisp.org>
* Makefile.devel (all): Depend on srclib/Makefile.gnulib, not
srclib/Makefile.am.
(aclocal.m4): Likewise. Touch the resulting file, since aclocal not
always does it.
(srclib/Makefile.gnulib): Renamed from srclib/Makefile.am. Pass
option --makefile-name.
(srclib/Makefile.in): Depend on srclib/Makefile.gnulib too.
* srclib/Makefile.am: New file that includes srclib/Makefile.gnulib.
2006-10-31 Bruno Haible <bruno@clisp.org>
Update from GNU gettext.
2006-10-29 Bruno Haible <bruno@clisp.org>
Make it compile in C++ mode.
* gnulib-local/lib/xalloc.h (xrealloc): Define as template
with appropriate return type.
* gnulib-local/lib/xstrdup.c (xstrdup): Cast xmalloc result.
2006-10-26 Bruno Haible <bruno@clisp.org>
* gnulib-local/modules/canonicalize (Makefile.am): Remove
EXTRA_DIST. Now done by gnulib-tool.
* gnulib-local/modules/relocatable (Makefile.am): Likewise.
* gnulib-local/modules/relocwrapper (Makefile.am): Likewise.
2006-10-25 Bruno Haible <bruno@clisp.org>
* gnulib-local/m4/relocatable.m4 (AC_RELOCATABLE_BODY):
Renamed from AC_RELOCATABLE, without the AC_LIBOBJ invocation.
(AC_RELOCATABLE): New macro. Invoke AC_LIBOBJ here.
* gnulib-local/modules/relocwrapper (configure.ac): Invoke
AC_RELOCATABLE instead of requiring it.
2006-10-12 Bruno Haible <bruno@clisp.org>
* gnulib-local/modules/canonicalize (Makefile.am): Distribute
all files in lib/ through EXTRA_DIST.
* gnulib-local/modules/relocatable (Makefile.am): Likewise.
2006-09-14 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/canonicalize.c: Include <config.h>
unconditionally.
* gnulib-local/lib/relocatable.c: Likewise.
* lib/relocatable.c: Likewise.
* gnulib-local/lib/relocwrapper.c: Likewise.
* gnulib-local/lib/xmalloc.c: Likewise.
* gnulib-local/lib/xreadlink.c: Likewise.
* gnulib-local/lib/xstrdup.c: Likewise.
2006-08-02 Bruno Haible <bruno@clisp.org>
* gnulib-local/modules/canonicalize: Put under LGPL.
* gnulib-local/modules/relocatable: Likewise.
2006-07-18 Bruno Haible <bruno@clisp.org>
* gnulib-local/xalloc.h (xzalloc): New declaration.
* gnulib-local/xmalloc.c (xzalloc): New function.
2006-10-24 Bruno Haible <bruno@clisp.org>
* man/Makefile.in (PACKAGE): New variable. Needed for docdir.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2006-10-14 Bruno Haible <bruno@clisp.org>
* COPYING: New file.
* README: Clarify copyright of the iconv program.
Reported by Charles Wilson <cwilson@fastmail.fm>.
2006-08-08 Bruno Haible <bruno@clisp.org>
* INSTALL.generic: Add a recommendation for Tru64.
Reported by Gary V. Vaughan <gary@gnu.org>.
2006-07-29 Bruno Haible <bruno@clisp.org>
* tests/check-subst: Set CHARSETALIASDIR.
Needed so that "make check" works before "make install" on systems
such as NetBSD.
2006-07-29 Bruno Haible <bruno@clisp.org>
* Makefile.devel (aclocal.m4): Depend on srclib/Makefile.am.
(AUTOCONF_FILES): Add the existing *.m4 files.
2006-07-29 Bruno Haible <bruno@clisp.org>
* gnulib-local/lib/xreadlink.c: Assume <stdlib.h> exists.
* src/iconv.c: Assume <locale.h> exists.
* configure.ac: Remove tests for <locale.h>, <stddef.h>, <stdlib.h>,
<string.h>.
2006-07-29 Bruno Haible <bruno@clisp.org>
* configure.ac: Remove obsolete calls AC_PROG_GCC_TRADITIONAL,
AC_ISC_POSIX, AC_HEADER_STDC.
2006-07-29 Bruno Haible <bruno@clisp.org>
* configure.ac: Remove macro invocations that are redundant through
gl_EARLY and gl_INIT.
2006-07-29 Bruno Haible <bruno@clisp.org>
* gnulib-local/m4/alloca.m4 (gl_PREREQ_ALLOCA): Add a dummy statement.
Avoids a sh syntax error.
2006-07-29 Bruno Haible <bruno@clisp.org>
* gnulib-local/m4/relocatable.m4: Add comments.
2006-07-29 Bruno Haible <bruno@clisp.org>
* gnulib-local/modules/libiconv-misc: New file.
* Makefile.devel (GNULIB_MODULES): Add libiconv-misc.
* Makefile.devel (srclib/Makefile.am): Pass --no-libtool.
2006-07-29 Bruno Haible <bruno@clisp.org>
Note: gnulib macros no longer invoke AC_TYPE_SIZE_T nor
AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], ...)])
because we now assume that the system defines size_t and ptrdiff_t.
2006-07-29 Bruno Haible <bruno@clisp.org>
Switch to using gnulib.
* configure.ac (AC_PREREQ): Require autoconf-2.60.
Invoke gl_EARLY and gl_INIT.
* Makefile.devel (all): Depend on srclib/Makefile.am.
(aclocal.m4): Pass -I srcm4 to aclocal. Simplify dependencies, assuming
GNU make.
(GNULIB_MODULES): New variable.
(srclib/Makefile.am): New rule.
* gnulib-local: New directory.
* gnulib-local/m4/alloca.m4: Moved here from m4/alloca.m4.
* gnulib-local/m4/canonicalize.m4: Moved here from m4/canonicalize.m4.
* gnulib-local/m4/relocatable.m4: Moved here from m4/relocatable.m4.
* gnulib-local/m4/xreadlink.m4: Moved here from m4/xreadlink.m4.
* gnulib-local/lib/alloca_.h: Moved here from srclib/alloca_.h.
* gnulib-local/lib/canonicalize.h: Moved here from srclib/canonicalize.h.
* gnulib-local/lib/canonicalize.c: Moved here from srclib/canonicalize.c.
* gnulib-local/lib/cjk.h: Moved here from srclib/cjk.h.
* gnulib-local/lib/error.h.diff: New file.
* gnulib-local/lib/progname.h.diff: New file.
* gnulib-local/lib/relocatable.h: Moved here from srclib/relocatable.h.
* gnulib-local/lib/relocatable.c: Moved here from srclib/relocatable.c.
* gnulib-local/lib/relocwrapper.c: Moved here from srclib/relocwrapper.c.
* gnulib-local/lib/streq.h: Moved here from srclib/streq.h.
* gnulib-local/lib/strerror.c.diff: New file.
* gnulib-local/lib/unitypes.h: Moved here from srclib/unitypes.h.
* gnulib-local/lib/uniwidth.h: Moved here from srclib/uniwidth.h.
* gnulib-local/lib/width.c: Moved here from srclib/width.c.
* gnulib-local/lib/xalloc.h: Moved here from srclib/xalloc.h.
* gnulib-local/lib/xmalloc.c: Moved here from srclib/xmalloc.c.
* gnulib-local/lib/xstrdup.c: Moved here from srclib/xstrdup.c.
* gnulib-local/lib/xreadlink.h: Moved here from srclib/xreadlink.h.
* gnulib-local/lib/xreadlink.c: Moved here from srclib/xreadlink.c.
* gnulib-local/modules/canonicalize: New file.
* gnulib-local/modules/progreloc: New file.
* gnulib-local/modules/relocatable: New file.
* gnulib-local/modules/relocwrapper: New file.
* gnulib-local/modules/uniwidth: New file.
* gnulib-local/modules/xalloc: New file.
* gnulib-local/modules/xreadlink: New file.
* m4/allocsa.m4: Remove file. Now taken from gnulib.
* m4/codeset.m4: Likewise.
* m4/eealloc.m4: Likewise.
* m4/error.m4: Likewise.
* m4/extensions.m4: Likewise.
* m4/full-header-path.m4: Likewise.
* m4/gettext.m4: Likewise.
* m4/glibc21.m4: Likewise.
* m4/iconv.m4: Likewise.
* m4/intmax.m4: Likewise.
* m4/inttypes-h.m4: Likewise.
* m4/inttypes_h.m4: Likewise.
* m4/isc-posix.m4: Likewise.
* m4/lcmessage.m4: Likewise.
* m4/lib-ld.m4: Likewise.
* m4/lib-link.m4: Likewise.
* m4/lib-prefix.m4: Likewise.
* m4/longdouble.m4: Likewise.
* m4/longlong.m4: Likewise.
* m4/mbstate_t.m4: Likewise.
* m4/nls.m4: Likewise.
* m4/onceonly.m4: Likewise.
* m4/pathmax.m4: Likewise.
* m4/po.m4: Likewise.
* m4/printf-posix.m4: Likewise.
* m4/progtest.m4: Likewise.
* m4/readlink.m4: Likewise.
* m4/setenv.m4: Likewise.
* m4/signed.m4: Likewise.
* m4/size_max.m4: Likewise.
* m4/ssize_t.m4: Likewise.
* m4/stdbool.m4: Likewise.
* m4/stdint.m4: Likewise.
* m4/stdint_h.m4: Likewise.
* m4/strerror.m4: Likewise.
* m4/strerror_r.m4: Likewise.
* m4/unistd_h.m4: Likewise.
* m4/unlocked-io.m4: Likewise.
* m4/visibility.m4: Likewise.
* m4/wchar_t.m4: Likewise.
* m4/wint_t.m4: Likewise.
* srclib/allocsa.h: Remove file. Now taken from gnulib.
* srclib/allocsa.c: Likewise.
* srclib/binary-io.h: Likewise.
* srclib/error.h: Likewise.
* srclib/error.c: Likewise.
* srclib/exit.h: Likewise.
* srclib/gettext.h: Likewise.
* srclib/memmove.c: Likewise.
* srclib/pathmax.h: Likewise.
* srclib/progname.h: Likewise.
* srclib/progname.c: Likewise.
* srclib/progreloc.c: Likewise.
* srclib/readlink.c: Likewise.
* srclib/setenv.h: Likewise.
* srclib/setenv.c: Likewise.
* srclib/stdbool_.h: Likewise.
* srclib/stdint_.h: Likewise.
* srclib/strerror.c: Likewise.
* srclib/unlocked-io.h: Likewise.
* srclib/unsetenv.c: Likewise.
* srclib/Makefile.am: Remove file.
2006-07-27 Bruno Haible <bruno@clisp.org>
Remove OS/2 build support that doesn't assume GNU make and GNU bash.
* README.os2: Remove file.
* Makefile.os2: Remove file.
* lib/Makefile.os2: Remove file.
* src/Makefile.os2: Remove file.
* man/Makefile.os2: Remove file.
* tests/Makefile.os2: Remove file.
* tests/check-stateful.cmd: Remove file.
* tests/check-stateless.cmd: Remove file.
* tests/check-translit.cmd: Remove file.
2006-07-25 Bruno Haible <bruno@clisp.org>
Remove MSVC/nmake build support.
* windows: Remove directory.
* Makefile.msvc: Remove file.
* lib/Makefile.msvc: Remove file.
* srclib/Makefile.msvc: Remove file.
* src/Makefile.msvc: Remove file.
* tests/Makefile.msvc: Remove file.
* man/Makefile.msvc: Remove file.
* po/Rules-msvc: Remove file.
* po/Makefile.msvc.sh: Remove file.
* Makefile.devel (config.h.msvc, lib/config.h.msvc): Remove rules.
(include/iconv.h.msvc-static, include/iconv.h.msvc-shared): Remove
rules.
(po/Makefile.msvc): Remove rule.
(all): Update.
2006-07-25 Bruno Haible <bruno@clisp.org>
Remove VMS support.
* vms: Remove directory.
* Makefile.vms: Remove file.
* lib/Makefile.vms: Remove file.
* srclib/Makefile.vms: Remove file.
* src/Makefile.vms: Remove file.
* tests/Makefile.vms: Remove file.
* man/Makefile.vms: Remove file.
* Makefile.devel (config.h_vms, lib/config.h_vms): Remove rules.
(include/iconv.h_vms): Remove rule.
(all): Update.
2006-07-23 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (libiconv.la): Use the CFLAGS during linking.
* src/Makefile.in (iconv_no_i18n): Likewise.
(install): Likewise.
* tests/Makefile.in (table-from, table-to): Likewise.
Needed because the CFLAGS can e.g. trigger profiling.
Reported by Russell Aspinwall <russell.aspinwall@flomerics.co.uk>.
2006-07-19 Bruno Haible <bruno@clisp.org>
* Version 1.11 released.
2006-07-19 Bruno Haible <bruno@clisp.org>
* srclib/Makefile.am (libicrt_a_SOURCES): Remove error.h, error.c.
(LIBADD_SOURCE): Add them here.
2006-07-19 Bruno Haible <bruno@clisp.org>
* build-aux/config.guess: Update to GNU version 2006-07-02.
* build-aux/config.sub: Likewise.
2006-07-14 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (clean): Remove also *.stackdump.
* src/Makefile.in (clean): Likewise.
* tests/Makefile.in (clean): Likewise.
2006-07-14 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (clean): Remove also iconv_no_i18n. Needed for
cygwin or mingw.
* tests/Makefile.in (clean): Remove also the programs, without
EXEEXT. Needed for cygwin or mingw.
* Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
Remove also bin directory. Needed for cygwin and mingw.
2006-07-03 Bruno Haible <bruno@clisp.org>
* src/iconv.c (check_subst_formatstring): Use ngettext.
(subst_wc_to_mb_fallback, subst_mb_to_mb_fallback): Fix error messages
after 2006-01-22 change.
* configure.ac: Require a gettext version with ngettext.
2006-06-28 Bruno Haible <bruno@clisp.org>
* m4/gettext.m4: Update from GNU gettext.
* m4/po.m4: Update from GNU gettext.
2006-06-27 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF, AUTOHEADER): Use autoconf-2.60.
* Makefile.in (datarootdir): New variable.
(install, installdirs, uninstall): Also pass datarootdir.
* configure.ac (mandir): Remove customization.
* man/Makefile.in (datarootdir): New variable.
(docdir, htmldir): Use autoconf-substituted value.
* src/Makefile.in (datarootdir): New variable.
(localedir): Use autoconf-substituted value.
2006-06-27 Bruno Haible <bruno@clisp.org>
* m4/stdint.m4: Update from gnulib.
* srclib/stdint_.h: Update from gnulib.
* srclib/Makefile.am: Update.
2006-06-17 Bruno Haible <bruno@clisp.org>
* srclib/unsetenv.c: Update from GNU gettext.
* srclib/xreadlink.c: Likewise.
2006-06-16 Bruno Haible <bruno@clisp.org>
* m4/full-header-path.m4: New file, from gnulib.
* m4/size_max.m4: New file, from gnulib.
* m4/stdint.m4: Update from gnulib.
* srclib/stdint_.h: Update from gnulib.
* srclib/Makefile.am (stdint.h): Likewise.
* Makefile.devel (aclocal.m4): Update dependencies.
2006-06-16 Bruno Haible <bruno@clisp.org>
* m4/ssize_t.m4: Update from GNU gettext.
2006-06-12 Bruno Haible <bruno@clisp.org>
* m4/gettext.m4: Update from GNU gettext.
* m4/inttypes-h.m4: New file, from GNU gettext.
* m4/inttypes.m4: Remove file.
* m4/stdint.m4 (gl_STDINT_H): Update.
* Makefile.devel (aclocal.m4): Update dependencies.
2006-06-10 Bruno Haible <bruno@clisp.org>
* src/iconv.c (error) [NO_I18N]: Define here instead of including
error.h. Fixes link failure introduced on 2006-01-22.
2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
"parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
2006-05-20 Bruno Haible <bruno@clisp.org>
* tests/BIG5-HKSCS-1999-snippet: New file.
* tests/BIG5-HKSCS-1999-snippet.UTF-8: New file.
* tests/BIG5-HKSCS-2001-snippet: New file.
* tests/BIG5-HKSCS-2001-snippet.UTF-8: New file.
* tests/BIG5-HKSCS-2004-snippet: New file.
* tests/BIG5-HKSCS-2004-snippet.UTF-8: New file.
* tests/Makefile.in (check): Test also the stateful parts of
BIG5-HKSCS:1999, BIG5-HKSCS:2001, BIG5-HKSCS:2004.
2006-05-17 Bruno Haible <bruno@clisp.org>
Implement newer releases of BIG5-HKSCS.
* tools/Makefile (ALL): Remove hkscs.h, add hkscs1999.h, hkscs2001.h,
hkscs2004.h.
(hkscs.h): Remove rule.
(hkscs1999.h, hkscs2001.h, hkscs2004.h): New rules.
* tools/cjk_tab_to_h.c (output_title): Update year.
(main): Recognize hkscs1999, hkscs2001, hkscs2004.
* lib/encodings.def: Rename BIG5-HKSCS to BIG5-HKSCS:1999. Add
BIG5-HKSCS:2001, BIG5-HKSCS:2004. Make all three stateful.
* lib/hkscs.h: Remove file.
* lib/hkscs1999.h: New file.
* lib/hkscs2001.h: New file.
* lib/hkscs2004.h: New file.
* lib/big5hkscs.h: Remove file.
* lib/big5hkscs1999.h: New file.
* lib/big5hkscs2001.h: New file.
* lib/big5hkscs2004.h: New file.
* lib/converters.h: Include the new files.
* README, man/iconv_open.3: Add BIG5-HKSCS:1999, BIG5-HKSCS:2001.
* tests/BIG5-HKSCS.TXT: Remove file.
* tests/BIG5-HKSCS.IRREVERSIBLE.TXT: Remove file.
* tests/BIG5-HKSCS-1999.TXT: New file.
* tests/BIG5-HKSCS-1999.IRREVERSIBLE.TXT: New file.
* tests/BIG5-HKSCS-2001.TXT: New file.
* tests/BIG5-HKSCS-2001.IRREVERSIBLE.TXT: New file.
* tests/BIG5-HKSCS-2004.TXT: New file.
* tests/BIG5-HKSCS-2004.IRREVERSIBLE.TXT: New file.
* tests/check-stateless: Convert colon in the charset name to a dash in
the file name.
* tests/Makefile.in (check): Check BIG5-HKSCS:1999, BIG5-HKSCS:2001,
BIG5-HKSCS:2004 instead of just BIG5-HKSCS.
* tests/Makefile.msvc (check): Don't check BIG5-HKSCS.
* tests/Makefile.os2 (check): Likewise.
2006-05-17 Bruno Haible <bruno@clisp.org>
* srclib/progreloc.c: Update from GNU gettext.
2006-05-16 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (clean): Use EXEEXT.
* tests/Makefile.in (check, clean): Likewise.
2006-05-15 Bruno Haible <bruno@clisp.org>
* configure.ac: Move some checks before AC_RELOCATABLE.
2006-05-15 Bruno Haible <bruno@clisp.org>
Support for building shared libraries on mingw and Cygwin.
* configure.ac (WOE32DLL, DLL_VARIABLE): New variables.
* include/iconv.h.in (_libiconv_version): Mark as DLL_VARIABLE.
* woe32dll/export.h: New file, from GNU gettext.
* woe32dll/iconv-exports.h: New file.
* Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
include/iconv.h.msvc-shared): Remove the DLL_VARIABLE annotation.
* lib/Makefile.in (INCLUDES): Add -I for parent directory.
(LDFLAGS): Add WOE32DLL dependent flags.
(LDFLAGS_yes, LDFLAGS_no): New variables.
(OBJECTS): Add WOE32DLL dependent objects.
(OBJECTS_yes, OBJECTS_no): New variables.
(iconv-exports.lo): New rule.
2006-05-15 Bruno Haible <bruno@clisp.org>
* srclib/gettext.h: Update from GNU gettext.
* srclib/pathmax.h: Update from GNU gettext.
* srclib/progreloc.c: Update from GNU gettext.
* srclib/unsetenv.c: Update from GNU gettext.
* srclib/Makefile.am: Add snippet for creation of unistd.h.
* m4/extensions.m4: Update from GNU gettext.
* m4/gettext.m4: Update from GNU gettext.
* m4/lib-ld.m4: Update from GNU gettext.
* m4/lib-link.m4: Update from GNU gettext.
* m4/lib-prefix.m4: Update from GNU gettext.
* m4/longdouble.m4: Update from GNU gettext.
* m4/nls.m4: Update from GNU gettext.
* m4/onceonly.m4: Update from GNU gettext.
* m4/po.m4: Update from GNU gettext.
* m4/relocatable.m4: Update from GNU gettext.
* m4/unistd_h.m4: New file, from GNU gettext.
* Makefile.devel (aclocal.m4): Depend on it.
* configure.ac: Invoke gl_HEADER_UNISTD.
2006-05-14 Bruno Haible <bruno@clisp.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 [ linux ] (AC_LIBTOOL_LANG_CXX_CONFIG)
(AC_LIBTOOL_POSTDEP_PREDEP, AC_LIBTOOL_PROG_COMPILER_PIC)
(AC_LIBTOOL_PROG_LD_SHLIBS): Add support for Sun C 5.9,
Sun C++ 5.9, and Sun Fortran 8.3 on Linux.
2006-05-06 Charles Wilson <cygwin@cwilson.fastmail.fm>
* m4/libtool.m4: On Cygwin, like on mingw, define DLL_EXPORT when
compiling a shared library object.
2006-05-15 Bruno Haible <bruno@clisp.org>
* build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
2006-03-31 Juan Manuel Guerrero <juan.guerrero@gmx.de>
* djgpp/*: Update.
2006-01-23 Bruno Haible <bruno@clisp.org>
* configure.ac: Invoke gl_ALLOCSA.
* Makefile.devel (aclocal.m4): Depend on $(CONFIGURES_IN).
2006-01-22 Bruno Haible <bruno@clisp.org>
* src/iconv.c (xmalloc, xalloc_die) [NO_I18N]: Define to avoid using
gettext().
2006-01-22 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 6:0:4.
2006-01-22 Bruno Haible <bruno@clisp.org>
* src/iconv.c: Include error.h, exit.h.
(print_version): Use EXIT_SUCCESS.
(check_subst_formatstring, subst_mb_to_uc_fallback,
subst_uc_to_mb_fallback, subst_mb_to_wc_fallback,
subst_wc_to_mb_fallback, subst_mb_to_mb_fallback, convert, main): Use
error() instead of fprintf to stderr.
2006-01-22 Bruno Haible <bruno@clisp.org>
New feature: character-dependent substitutions.
* include/iconv.h.in (iconv_unicode_mb_to_uc_fallback,
iconv_unicode_uc_to_mb_fallback, iconv_wchar_mb_to_wc_fallback,
iconv_wchar_wc_to_mb_fallback): New types.
(struct iconv_fallbacks): New structure type.
(ICONV_SET_FALLBACKS): New macro.
* configure.ac: Invoke gt_TYPE_WCHAR_T and substitute HAVE_WCHAR_T.
* Makefile.os2 (all): Also substitute @HAVE_WCHAR_T@ in build/iconv.h.
* Makefile.devel (include/iconv.h_vms, include/iconv.h.msvc-static,
include/iconv.h.msvc-shared): Also substitute @HAVE_WCHAR_T@.
* lib/converters.h (struct conv_struct): Add field 'fallbacks'.
* lib/loop_unicode.h (struct uc_to_mb_fallback_locals): New type.
(uc_to_mb_write_replacement): New function.
(struct mb_to_uc_fallback_locals): New type.
(mb_to_uc_write_replacement): New function.
(unicode_loop_convert): Call mb_to_uc_fallback and uc_to_mb_fallback.
(unicode_loop_reset): Call uc_to_mb_fallback.
* lib/loop_wchar.h (struct wc_to_mb_fallback_locals): New type.
(wc_to_mb_write_replacement): New function.
(wchar_from_loop_convert): Call wc_to_mb_fallback.
(struct mb_to_wc_fallback_locals): New type.
(mb_to_wc_write_replacement): New function.
(wchar_to_loop_convert): Call mb_to_wc_fallback.
* lib/iconv.c (iconv_open): Initialize the 'fallbacks' field.
(iconvctl): Handle ICONV_SET_FALLBACKS.
* lib/genflags.c (struct iconv_fallbacks): New dummy definition.
* src/iconv.c: Include limits.h.
(isdigit, c_isprint): New macros.
(usage): Document long options and new options.
(check_subst_formatstring): New function.
(ilseq_byte_subst, ilseq_wchar_subst, ilseq_unicode_subst): New
variables.
(ilseq_byte_subst_size, ilseq_wchar_subst_size,
ilseq_unicode_subst_size): New variables.
(ilseq_byte_subst_buffer, ilseq_wchar_subst_buffer,
ilseq_unicode_subst_buffer): New variables.
(subst_mb_to_uc_cd, subst_mb_to_uc_temp_buffer): New variables.
(subst_mb_to_uc_fallback): New function.
(subst_uc_to_mb_cd, subst_uc_to_mb_temp_buffer): New variables.
(subst_uc_to_mb_fallback): New function.
(subst_mb_to_wc_cd, subst_mb_to_wc_temp_buffer): New variables.
(subst_mb_to_wc_fallback): New function.
(subst_wc_to_mb_cd, subst_wc_to_mb_temp_buffer): New variables.
(subst_wc_to_mb_fallback): New function.
(subst_mb_to_mb_cd, subst_mb_to_mb_temp_buffer): New variables.
(subst_mb_to_mb_fallback): New function.
(convert): Enlarge the outbuf when the conversion failed with E2BIG.
(main): Handle new options --byte-subst, --widechar-subst,
--unicode-subst.
* man/iconv.1: Document --unicode-subst, --byte-subst, --widechar-subst
options.
* tests/check-subst: New file.
* tests/Makefile.in (check): Also invoke check-subst.
Suggested by James Taylor <james@oakseed.demon.co.uk>.
2006-01-21 Bruno Haible <bruno@clisp.org>
* src/iconv.c (print_version): Bump copyright year.
(main): Accept long options --from-code, --to-code, --list, --silent.
Accept abbreviated long options, like getopt() does.
* man/iconv.1: Document long options.
2005-12-29 Bruno Haible <bruno@clisp.org>
* src/iconv.c (print_version): Update copyright year.
2005-12-29 Bruno Haible <bruno@clisp.org>
* configure.ac: Renamed from configure.in.
* Makefile.devel (CONFIGURES_IN, configure, config.h.in): Update.
2005-12-29 Bruno Haible <bruno@clisp.org>
* configure.in: Bump version number.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* windows/iconv.rc: Likewise.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:1:3.
2005-12-29 Bruno Haible <bruno@clisp.org>
* build-aux/config.guess: Update to GNU version 2005-12-23.
* build-aux/config.sub: Likewise.
* build-aux/config.libpath: Update from GNU gettext.
* build-aux/install-sh: Upgrade to automake-1.9.5.
* build-aux/missing: Upgrade to automake-1.9.5.
* build-aux/mkinstalldirs: Upgrade to automake-1.9.5.
2005-12-29 Bruno Haible <bruno@clisp.org>
* m4/alloca.m4: Update from GNU gettext.
* m4/allocsa.m4: Update from GNU gettext.
* m4/canonicalize.m4: Update from GNU gettext.
* m4/codeset.m4: Update from GNU gettext.
* m4/eealloc.m4: Update from GNU gettext.
* m4/error.m4: Update from GNU gettext.
* m4/extensions.m4: Update from GNU gettext.
* m4/gettext.m4: Update from GNU gettext.
* m4/glibc21.m4: Update from GNU gettext.
* m4/iconv.m4: Update from GNU gettext.
* m4/intmax.m4: Update from GNU gettext.
* m4/inttypes_h.m4: New file, from GNU gettext.
* m4/isc-posix.m4: Update from GNU gettext.
* m4/lcmessage.m4: Update from GNU gettext.
* m4/longdouble.m4: Update from GNU gettext.
* m4/longlong.m4: Update from GNU gettext.
* m4/mbstate_t.m4: Update from GNU gettext.
* m4/nls.m4: Update from GNU gettext.
* m4/onceonly.m4: Update from GNU gettext.
* m4/pathmax.m4: Update from GNU gettext.
* m4/po.m4: Update from GNU gettext.
* m4/printf-posix.m4: Update from GNU gettext.
* m4/progtest.m4: Update from GNU gettext.
* m4/readlink.m4: Update from GNU gettext.
* m4/relocatable.m4: Update from GNU gettext.
* m4/setenv.m4: Update from GNU gettext.
* m4/signed.m4: Update from GNU gettext.
* m4/ssize_t.m4: Update from GNU gettext.
* m4/stdbool.m4: Update from GNU gettext.
* m4/stdint_h.m4: New file, from GNU gettext.
* m4/strerror.m4: Update from GNU gettext.
* m4/strerror_r.m4: Update from GNU gettext.
* m4/unlocked-io.m4: Update from GNU gettext.
* m4/wchar_t.m4: Update from GNU gettext.
* m4/wint_t.m4: Update from GNU gettext.
* m4/xreadlink.m4: Update from GNU gettext.
* Makefile.devel (aclocal.m4): Depend on m4/inttypes_h.m4 and
m4/stdint_h.m4 as well.
* configure.in: Invoke AC_TYPE_MBSTATE_T instead of AC_MBSTATE_T.
Invoke gl_FUNC_GLIBC_UNLOCKED_IO instead of jm_FUNC_GLIBC_UNLOCKED_IO.
Invoke gl_ERROR instead of gt_FUNC_ERROR_AT_LINE.
Don't invoke AC_AIX and AC_MINIX, done by gl_USE_SYSTEM_EXTENSIONS.
Temporarily redefine AC_LIBOBJ and AC_REPLACE_FUNCS, so as to fill
SRCLIBOBJS instead of LIBOBJS.
* srclib/alloca_.h: Update from GNU gettext.
* srclib/allocsa.h: Update from GNU gettext.
* srclib/canonicalize.c: Update from GNU gettext.
* srclib/error.h: Update from GNU gettext.
* srclib/error.c: Update from GNU gettext.
* srclib/gettext.h: Update from GNU gettext.
* srclib/memmove.c: Update from GNU gettext.
* srclib/progname.h: Update from GNU gettext.
* srclib/progname.c: Update from GNU gettext.
* srclib/progreloc.c: Update from GNU gettext.
* srclib/readlink.c: Update from GNU gettext.
* srclib/relocatable.c: Update from GNU gettext.
* srclib/relocwrapper.c: Update from GNU gettext.
* srclib/setenv.h: Update from GNU gettext.
* srclib/setenv.c: Update from GNU gettext.
* srclib/stdbool_.h: Update from GNU gettext.
* srclib/stdint_.h: Update from gnulib.
* srclib/strerror.c: Update from GNU gettext.
* srclib/unlocked-io.h: Update from GNU gettext.
* srclib/unsetenv.c: Update from GNU gettext.
* srclib/xalloc.h: Update from GNU gettext.
* srclib/xmalloc.c: Update from GNU gettext.
* srclib/xreadlink.c: Update from GNU gettext.
* srclib/xstrdup.c: Update from GNU gettext.
* srclib/Makefile.am (DEFS): Also define EXEEXT.
(libicrt_a_LIBADD): Use SRCLIBOBJS instead of LIBOBJS.
(libicrt_a_DEPENDENCIES): New variable.
* src/Makefile.in (EXEEXT): New variable.
* build-aux/install-reloc: Update from GNU gettext.
* build-aux/reloc-ldflags: Update from GNU gettext.
* build-aux/config.rpath: Update from GNU gettext.
2005-12-29 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update, based on libtool-1.5.22.
* build-aux/ltmain.sh: Update, based on libtool-1.5.22.
2005-12-24 Bruno Haible <bruno@clisp.org>
Check the whole range of GB18030.
* tests/GB18030-BMP.TXT: Renamed from tests/GB18030.TXT.
* tests/gengb18030z.c: New file.
* tests/table-from.c (main): For GB18030, don't stop at U+10000.
* tests/table-to.c (main): Likewise.
* tests/Makefile.in (check): Generate GB18030.TXT on the fly from
GB18030-BMP.TXT.
(clean): Remove also gengb18030z and GB18030.TXT.
* tests/Makefile.msvc (check): Generate GB18030.TXT on the fly from
GB18030-BMP.TXT.
(clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
* tests/Makefile.os2 (check): Depend on gengb18030z.exe. Generate
GB18030.TXT on the fly from GB18030-BMP.TXT.
(clean): Remove also GB18030Z.TXT, GB18030TMP.TXT, GB18030.TXT.
2005-12-20 Bruno Haible <bruno@clisp.org>
* tests/table-to.c (main): Test the mappings up to U+10FFFF, not only
up to U+2FFFF. Tolerate that Unicode language tags are silently mapped
to nothing.
2005-12-22 Bruno Haible <bruno@clisp.org>
Extend GB18030 converter to cover the entire Unicode PUA.
* lib/gb18030.h: Update comments, based on second printing.
(gb18030_mbtowc): Add mapping for range U+E000..U+E765.
(gb18030_pua2charset): New array.
(gb18030_wctomb): Add mapping for range U+E000..U+E765 and the two-byte
part of range U+E766..U+E864.
* lib/gb18030ext.h (gb18030ext_2uni_pagefe): Add mappings to private
area.
(gb18030ext_mbtowc): Add mapping for the two-byte part of range
U+E766..U+E864.
* lib/gb18030uni.h (gb18030uni_charset2uni_ranges,
gb18030uni_uni2charset_ranges, gb18030uni_ranges): Add 12 more
intervals.
(gb18030uni_mbtowc, gb18030uni_wctomb): Update.
* tests/GB18030.TXT: Complete mappings to private area.
2005-12-22 Bruno Haible <bruno@clisp.org>
* lib/gbk.h: Update comments.
2005-12-20 Bruno Haible <bruno@clisp.org>
Add private area mappings to CP949.
* lib/cp949.h (cp949_mbtowc, cp949_wctomb): Map U+E000..U+E0BB like
many others do it.
* tests/CP949.TXT: Add mappings for U+E000..U+E0BB.
2005-12-15 Bruno Haible <bruno@clisp.org>
Add private area mappings to CP950.
* lib/cp950.h (cp950_mbtowc, cp950_wctomb): Map U+E000..U+F6B0 like
most others do it.
* tests/CP950.TXT: Add mappings for U+E000..U+F6B0.
2005-12-15 Bruno Haible <bruno@clisp.org>
Make CP936 follow what Microsoft does.
In http://www.microsoft.com/globaldev/reference/dbcs/936.mspx they
added a 0x80 - U+20AC mapping to the code chart, but not to the
tooltips and not to the list of mappings.
* lib/cp936.h: New file.
* lib/gbk.h: Update comments.
* lib/ces_gbk.h: Update comments.
* lib/converters.h: Include cp936.h.
* lib/encodings.def (CP936): New encoding.
(GBK): Remove CP936 aliases.
* README, man/iconv_open.3: Add CP936.
* tests/Makefile.in (check): Check CP936.
* tests/Makefile.msvc (check): Likewise.
* tests/Makefile.os2 (check): Likewise.
* tests/CP936.TXT: New file.
2005-12-14 Bruno Haible <bruno@clisp.org>
* lib/cp932.h (cp932_wctomb): Map U+FF5E, U+2225, U+FF0D, U+FFE0,
U+FFE1 like Microsoft does it.
* lib/CP932.IRREVERSIBLE.TXT: Add these mappings.
Reported by Lei Wang <lwang@qilinsoft.com>.
2005-12-14 Bruno Haible <bruno@clisp.org>
Follow Euro sign addition done in 1999 in
http://www.microsoft.com/globaldev/reference/dbcs/950/950_A3.mspx
* lib/cp950.h (cp950_mbtowc, cp950_wctomb): Add mapping for 0xA3E1.
* tests/CP950.TXT: Add mapping for 0xA3E1.
2005-11-11 Bruno Haible <bruno@clisp.org>
* lib/euc_jp.h (euc_jp_wctomb): When writing a 3-bytes byte sequence
and only two bytes are available in the output buffer, return
RET_TOOSMALL instead of overrunning the output buffer.
* lib/isoir165.h (isoir165_wctomb): When only one byte is available
in the output buffer, don't overrun the output buffer.
Reported by William Bardwell <bardwell@curl.com>.
2005-09-18 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update, based on libtool-1.5.20.
* build-aux/ltmain.sh: Update, based on libtool-1.5.20.
2005-08-12 Bruno Haible <bruno@clisp.org>
* lib/big5_2003.h: Map 0xF9FA..0xF9FD differently.
* tests/BIG5-2003.TXT: Likewise.
* tests/BIG5-2003.IRREVERSIBLE.TXT: New file.
Reported by Ping Yeh <ping@pingyeh.net>.
2005-07-24 Bruno Haible <bruno@clisp.org>
Tidy up exported symbols.
* m4/visibility.m4: New file.
* include/export.h: New file.
* configure.in: Invoke gl_VISIBILITY. Use AC_CONFIG_FILES. Arrange to
create also include/iconv.h.inst.
* Makefile.devel (all): Depend on include/iconv.h.build.in.
(aclocal.m4): Depend on m4/visibility.m4.
(include/iconv.h.build.in): New rule.
* Makefile.in (install-lib, install): Install include/iconv.h.inst,
not the include/iconv.h that was used for building.
(distclean, maintainer-clean): Remove also include/iconv.h.inst.
* lib/Makefile.in (CFLAGS): Add @CFLAG_VISIBILITY@.
(DEFS): Also define BUILDING_LIBICONV and BUILDING_DLL.
* lib/config.h.in (HAVE_VISIBILITY): New macro.
* lib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
Define to the gcc visibility attribute.
* srclib/relocatable.h (RELOCATABLE_DLL_EXPORTED) [HAVE_VISIBILITY]:
Likewise.
2005-07-25 Bruno Haible <bruno@clisp.org>
2003-08-24 Bruno Haible <bruno@clisp.org>
* lib/relocatable.h: Make this file includable in C++ mode: add extern
"C".
2005-07-08 Bruno Haible <bruno@clisp.org>
* Version 1.10 released.
2005-07-08 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (postinstall_cmds) [cygwin,mingw,pw32]: Make DLL
executable after installing it.
2005-07-08 Bruno Haible <bruno@clisp.org>
* configure.in: Bump version number.
* include/iconv.h.in (_LIBICONV_VERSION): Likewise.
* windows/iconv.rc: Likewise.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 5:0:3.
2005-07-05 Bruno Haible <bruno@clisp.org>
* Makefile.devel (ACLOCAL): New variable.
(aclocal.m4): Use it.
2005-07-05 Bruno Haible <bruno@clisp.org>
* m4/relocatable.m4 (AC_RELOCATABLE): On mingw, simply set
SET_RELOCATABLE to a trivial value.
2004-08-08 Bruno Haible <bruno@clisp.org>
* srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
be used.
2004-04-28 Bruno Haible <bruno@clisp.org>
* srclib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
Treat Cygwin like Windows, since it now accepts Windows pathnames.
2005-06-09 Bruno Haible <bruno@clisp.org>
* Makefile.in (mkinstalldirs): Use build-aux/ instead of autoconf/.
* lib/Makefile.in (mkinstalldirs): Likewise.
* src/Makefile.in (mkinstalldirs): Likewise.
* man/Makefile.in (mkinstalldirs): Likewise.
2005-06-08 Bruno Haible <bruno@clisp.org>
* srclib/canonicalize.c (__realpath): Avoid gcc warnings on platforms
that don't support symbolic links.
2005-06-08 Bruno Haible <bruno@clisp.org>
* srclib/binary-io.h (fileno): Undefine before defining it. Avoids a
gcc warning on mingw.
2005-05-22 Bruno Haible <bruno@clisp.org>
Implement and document BIG5-2003.
* lib/big5_2003.h: New file.
* lib/converters.h: Include it.
* lib/encodings_extra.def (BIG5-2003): New encoding.
* README, man/iconv_open.3: Add BIG5-2003.
* tests/Makefile.in (check-extra-yes): Check BIG5-2003.
* tests/BIG5-2003.TXT: New file.
2005-05-21 Bruno Haible <bruno@clisp.org>
Add EURO SIGN to EUC-TW converter.
* lib/cns11643_1.h (cns11643_1_2uni_page42): Add entry for 0x14242.
(cns11643_1_mbtowc): Update.
* lib/cns11643_inv.h (cns11643_inv_2charset): Add entry for 0x20AC.
(cns11643_inv_uni2indx_page*): Update.
* lib/dec_hanyu.h (dec_hanyu_mbtowc, dec_hanyu_wctomb): Consider only
part of row 42.
* tests/EUC-TW.TXT: Add entry for 0x20AC.
* tests/EUC-TW.IRREVERSIBLE.TXT: Likewise.
2005-05-03 Bruno Haible <bruno@clisp.org>
* tools/Makefile (ALL): Add pt154.h.
(pt154.h): New rule.
* lib/encodings.def: Add PT154.
* lib/pt154.h: New file.
* lib/converters.h: Include it.
* README, man/iconv_open.3: Add PT154.
* NOTES: Mention PT154.
* tests/PT154.TXT: New file.
* tests/Makefile.in (check): Also test PT154.
* tests/Makefile.msvc (check): Likewise.
* tests/Makefile.os2 (check): Likewise.
2005-03-29 Bruno Haible <bruno@clisp.org>
Rename libiconv_plug.so to preloadable_libiconv.so.
* configure.in (PLUGLIB): Set to preloadable_libiconv.so instead of
libiconv_plug.so.
* lib/Makefile.in (preloadable_libiconv.so): Renamed from
libiconv_plug.so.
(preloadable_libiconv_linux.so): Renamed from libiconv_plug_linux.so.
(preloadable_libiconv_solaris.so): Renamed from
libiconv_plug_solaris.so.
(preloadable_libiconv_osf.so): Renamed from libiconv_plug_osf.so.
(clean): Update.
* README: Update.
2005-03-29 Bruno Haible <bruno@clisp.org>
Implement and document ATARIST.
* tools/Makefile (ALL): Add atarist.h.
(atarist.h): New rule.
* lib/atarist.h: New file.
* lib/converters.h: Include it.
* lib/encodings_extra.def (ATARIST): New encoding.
* README, man/iconv_open.3: Add ATARIST.
* tests/Makefile.in (check-extra-yes): Check ATARIST.
* tests/ATARIST.TXT: New file.
2005-03-22 Bruno Haible <bruno@clisp.org>
* build-aux: New directory, renamed from autoconf.
* configure.in (AC_CONFIG_AUX_DIR): Use build-aux.
2005-03-16 Bruno Haible <bruno@clisp.org>
* m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
HAVE_LONGLONG_64BIT.
* srclib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
HAVE_LONGLONG_64BIT.
* srclib/Makefile.am (stdint.h): Likewise.
2005-03-14 Bruno Haible <bruno@clisp.org>
* Makefile.devel (aclocal.m4): Depend also on allocsa.m4, eealloc.m4,
extensions.m4, intmax.m4, inttypes.m4, longdouble.m4, longlong.m4,
printf-posix.m4, readlink.m4, signed.m4, ssize_t.m4, stdint.m4,
wchar_t.m4, wint_t.m4.
2005-03-13 Bruno Haible <bruno@clisp.org>
Make stdout error checking reliable, also when writing to a NFS file.
* src/iconv.c (main): Check the return value of fclose(stdout).
* lib/genaliases.c (main): Likewise.
* lib/genaliases2.c (main): Likewise.
* lib/genflags.c (main): Likewise.
* lib/gentranslit.c (main): Likewise.
* tests/genutf8.c (main): Likewise.
* tests/table-from.c (main): Likewise.
* tests/table-to.c (main): Likewise.
2005-03-13 Bruno Haible <bruno@clisp.org>
* src/iconv.c (convert): Before outputting an error message, flush
stdout and output a newline if suitable.
2005-03-13 Bruno Haible <bruno@clisp.org>
Improved error messages.
* srclib/width.c: New file, from GNU clisp.
* srclib/uniwidth.h: New file, from GNU clisp with modifications.
* srclib/unitypes.h: New file, from GNU clisp with modifications.
* srclib/cjk.h: New file, from GNU clisp.
* srclib/streq.h: New file, from GNU clisp.
* srclib/stdint_.h: New file, from gnulib.
* m4/stdint.m4: New file, from gnulib.
* m4/inttypes.m4: New file, from gnulib.
* srclib/Makefile.am: Add gnulib module 'stdint' snippet.
(BUILT_SOURCES): New variable.
(libicrt_a_SOURCES): Add width.c, uniwidth.h, unitypes.h, cjk.h,
streq.h.
* configure.in: Invoke gl_STDINT_H.
* src/iconv.c: Include cjk.h, uniwidth.h.
(line, column, cjkcode): New variables.
(update_line_column): New function.
(convert): Initialize line and column. In all error message, show also
the line and column number.
(main): Initialize cjkcode. Set up hooks to call update_line_column.
2005-03-13 Bruno Haible <bruno@clisp.org>
* include/iconv.h.in (iconv_canonicalize): New declaration.
* lib/genaliases.c (emit_encoding): Take two output streams as
arguments. To the second stream, emit a shell command for extracting
offsets into the gperf generated string pool.
(main): Write the shell commands into file descriptors 3 and 4.
* lib/genaliases2.c (emit_encoding): Take two output streams as
arguments. To the second stream, emit an expression for the offset
into the string pool.
(main): Write the offsets into file descriptor 3.
* Makefile.devel (lib/aliases.gperf): Remove target.
(lib/aliases.h): Generate lib/aliases.gperf temporarily. Generate also
lib/canonical.h and lib/canonical_local.h.
(lib/aliases_aix.h): Generate also lib/canonical_aix.h.
(lib/aliases_osf1.h): Generate also lib/canonical_osf1.h.
(lib/aliases_dos.h): Generate also lib/canonical_dos.h.
(lib/aliases_extra.h): Generate also lib/canonical_extra.h.
* lib/iconv.c (stringpool2): Provide default definition when it doesn't
exist.
(all_canonical): New array.
(iconv_canonicalize): New function.
2005-03-13 Bruno Haible <bruno@clisp.org>
* include/iconv.h.in (iconv_unicode_char_hook, iconv_wide_char_hook,
iconv_hooks): New types.
(ICONV_SET_HOOKS): New macro.
* lib/converters.h (struct conv_struct): Add field 'hooks'.
* lib/iconv.c (iconv_open): Initialize hooks to NULL.
(iconvctl): Handle ICONV_SET_HOOKS.
* lib/loop_unicode.h (unicode_loop_convert, unicode_loop_reset): After
conversion of a character, call the uc_hook.
* lib/loop_wchar.h (wchar_id_loop_convert): After every character, call
the wc_hook.
* lib/genflags.c (iconv_hooks): Provide a dummy definition.
2005-02-05 Bruno Haible <bruno@clisp.org>
* src/iconv.c (main): In case of unsupported encodings, show a hint
towards "iconv -l".
2005-01-06 Bruno Haible <bruno@clisp.org>
* lib/Makefile.msvc (CFLAGS): Define also INSTALLPREFIX.
* lib/Makefile.vms (DEFS): Likewise.
Reported by Troels Walsted Hansen <Troels.W.Hansen@fast.no>.
2005-01-05 Bruno Haible <bruno@clisp.org>
* autoconf/config.rpath: Update from GNU gettext.
2005-01-05 Bruno Haible <bruno@clisp.org>
Assume automake-1.9.
* Makefile.devel (AUTOMAKE): Assume automake-1.9.
2005-01-05 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.10.
* autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.10.
2004-11-11 Bruno Haible <bruno@clisp.org>
* lib/iconv.c (iconv_open): Accept the suffixes //TRANSLIT and //IGNORE
in arbitrary order.
Reported by Lukas Gebauer <gebauerl@mlp.cz>.
2004-09-21 Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>
* djgpp/config.bat: Update.
* djgpp/config.sed: Update.
* djgpp/config.site: Update.
* djgpp/edtest.bat: Update.
* djgpp/fnchange.in: Update.
* djgpp/Makefile.maint: Update.
* djgpp/makefile.sed: Update.
* djgpp/README.in: Update.
* djgpp/sources.sed: Update.
* djgpp/translit-check.sed: Update.
2004-08-25 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.6.
* autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.6.
2004-07-31 Bruno Haible <bruno@clisp.org>
Update to JISX 0213 plane 1 to 2004 version (ISO-IR-233).
* tools/Makefile (jisx0213.h): Bump version number.
* tools/JISX0213.TXT: Change mappings U+2015 -> U+2014,
U+2299 -> U+29BF, and add 10 new characters.
* tools/cjk_tab_to_h.c (output_title): Bump year.
(do_jisx0213): Update comments. Emit a conditional 'inline'.
* lib/jisx0213.h: Regenerated.
* lib/iso2022_jp3.h (iso2022_jp3_mbtowc): Accept escape sequence
ESC $ ( Q as a synonym of ESC $ ( O.
(iso2022_jp3_wctomb): Emit ESC $ ( Q instead of ESC $ ( O.
* tests/EUC-JISX0213.TXT: Change mappings U+2015 -> U+2014,
U+2299 -> U+29BF, and add 10 new characters.
* tests/SHIFT_JISX0213.TXT: Likewise.
* tests/ISO-2022-JP-3-snippet: Update.
* tests/ISO-2022-JP-3-snippet.UTF-8: Update.
2004-07-22 Bruno Haible <bruno@clisp.org>
* lib/encodings.def (ISO-8859-7): Add alias ISO_8859-7:2003.
* tools/Makefile (iso8859_7.h): Use conversion table from 2003.
* lib/iso8859_7.h: Add mappings for 0xa4, 0xa5, 0xaa.
* tests/ISO-8859-7.TXT: Update to ISO_8859-7:2003.
2004-07-22 Bruno Haible <bruno@clisp.org>
* tools/Makefile (ALL): Add iso8859_11.h.
(iso8859_11.h): New rule.
* lib/encodings.def: Add ISO-8859-11.
* lib/iso8859_11.h: New file.
* lib/converters.h: Include it.
* tests/ISO-8859-11.TXT: New file.
* tests/Makefile.in (check): Also test ISO-8859-11.
* tests/Makefile.msvc (check): Likewise.
* tests/Makefile.os2 (check): Likewise.
2004-07-17 Bruno Haible <bruno@clisp.org>
* src/iconv.c (main): Terminate option parsing when option -- is seen.
Reported by Len Lattanzi <zardoz@users.sourceforge.net>.
2004-03-05 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (install): Make DESTDIR work on HP-UX.
Reported by Bob Proulx <box@proulx.com>.
2004-02-19 Bruno Haible <bruno@clisp.org>
* lib/vietcomb.h (viet_comp_table_data): Un-uncomment 0x00D5, 0x00F5,
0x0168, 0x0169. Needed for TCVN-5712 but not for CP1258.
(viet_comp_table0301_len): Increment by 4.
* lib/cp1255.h (cp1255_mbtowc): Don't delay the handling of characters
which are not entries in cp1255_comp_table_data.
* lib/cp1258.h (cp1258_comp_bases): New array.
(cp1258_mbtowc): Don't delay the handling of characters which are not
relevant entries in viet_comp_table_data.
* lib/tcvn.h (tcvn_comp_bases): New array.
(tcvn_mbtowc): Don't delay the handling of characters which are not
relevant entries in viet_comp_table_data.
Reported by Alain Bench <veronatif@free.fr>.
2004-02-02 Perry Rapp <lifelines_3_0_18@hotmail.com>
Bruno Haible <bruno@clisp.org>
* man/iconvctl.3: New file.
* man/iconv.3: Refer to it in "See also".
* man/iconv_open.3: Likewise.
2004-01-24 Bruno Haible <bruno@clisp.org>
* srclib/progreloc.c (xstrdup): Define as strdup if no xmalloc should
be used.
2004-01-20 Bruno Haible <bruno@clisp.org>
Upgrade from gettext-0.14.
* configure.in: Call gl_USE_SYSTEM_EXTENSIONS. Call AM_STDBOOL_H
instead of gt_STDBOOL_H. Provide a definition for DLL_VARIABLE.
* srclib/Makefile.am (libicrt_a_SOURCES): Add allocsa.h, allocsa.c,
xalloc.h. Remove xmalloc.h.
(libicrt_a_LIBADD): Remove @ALLOCA@.
* srclib/Makefile.msvc (OBJECTS): Add allocsa.obj.
(allocsa.obj): New rule.
* srclib/Makefile.vms (OBJECTS): Add allocsa.obj.
(allocsa.obj): New rule.
* Makefile.devel (config.h_vms): Set MALLOC_0_IS_NONNULL to 0.
(config.h.msvc): Set MALLOC_0_IS_NONNULL to 1.
lib/:
2003-10-09 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c: Include xalloc.h instead of xmalloc.h.
2003-08-01 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c (find_shared_library_fullname): Disable the code on
Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2003-06-22 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c (compute_curr_prefix): Comment out this function in
the case when it is not used.
Reported by Pavel Roskin <proski@gnu.org>.
m4/:
* m4/gettext.m4: Upgrade from GNU gettext. Many changes.
* m4/po.m4: Likewise.
* m4/readlink.m4: New file, from GNU gettext.
2003-11-30 Bruno Haible <bruno@clisp.org>
* m4/allocsa.m4: New file.
* m4/eealloc.m4: New file.
* m4/setenv.m4 (gl_PREREQ_SETENV): Require gl_ALLOCSA instead of
AC_FUNC_ALLOCA.
2003-10-21 Bruno Haible <bruno@clisp.org>
* m4/canonicalize.m4 (gl_PREREQ_CANONICALIZE): Also test for
readlink().
2003-08-24 Bruno Haible <bruno@clisp.org>
* m4/relocatable.m4 (AC_RELOCATABLE): Use $(host) instead of @host@,
since the substitution of @host@ may occur before the substitution of
@SET_RELOCATABLE@.
2003-08-23 Bruno Haible <bruno@clisp.org>
* stdbool.m4: Replace with the version from gnulib, without
AC_HEADER_STDBOOL.
2003-08-08 Paul Eggert <eggert@twinsun.com>
* m4/extensions.m4: New file.
* m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
2003-07-01 Bruno Haible <bruno@clisp.org>
* m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
<sys/types.h> should be sufficient.
Reported by Paul Eggert.
2003-07-01 Bruno Haible <bruno@clisp.org>
* m4/lib-prefix.m4 (AC_LIB_ARG_WITH): Avoid "duplicated macro" error
from aclocal-1.4-p4.
Reported by Luke Schierer <lschiere@rackspace.com> and
Michael C. Toren <mct@toren.net>.
2003-07-01 Paul Eggert <eggert@twinsun.com>
* m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
xreadlink.c now includes it unconditionally.
2003-06-17 Paul Eggert <eggert@twinsun.com>
* m4/lib-ld.m4 (AC_LIB_PROG_LD_GNU, AC_LIB_PROG_LD): Don't use egrep,
for portability to POSIX 1003.1-2001. Backported from libtool-1.5.
2003-05-28 Paul Eggert <eggert@twinsun.com>
* m4/pathmax.m4 (gl_PATHMAX): Don't check for limits.h.
* m4/xreadlink.m4 (gl_XREADLINK): Likewise.
2002-12-24 Bruno Haible <bruno@clisp.org>
* m4/setenv.m4 (gt_FUNC_SETENV): New macro.
(gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
when invoked twice.
(gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
gt_FUNC_SETENV.
srclib/:
2003-11-30 Bruno Haible <bruno@clisp.org>
* srclib/alloca.c: Remove file.
2003-11-30 Bruno Haible <bruno@clisp.org>
Safer stack allocation.
* srclib/allocsa.h: New file.
* srclib/allocsa.c: New file.
* canonicalize.c: Include allocsa.h.
(__realpath): Use allocsa instead of alloca. Don't clobber errno right
before returning NULL.
* srclib/relocwrapper.c: Indirectly depends on allocsa.
* srclib/setenv.c: Include allocsa.h.
(alloca): Remove fallback definition.
(freea): Remove macro.
(__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
instead of freea.
2003-11-17 Bruno Haible <bruno@clisp.org>
* srclib/canonicalize.c: #undef realpath after <config.h> but before
the system includes, so as to avoid a prototype clash on Solaris 2.5.1.
Reported by Warren L. Dodge <warrend@mdhost.cse.tek.com>.
2003-10-21 Bruno Haible <bruno@clisp.org>
* srclib/canonicalize.c (lstat): Define as an alias to 'stat' on
systems without symbolic links.
2003-10-17 Bruno Haible <bruno@clisp.org>
* srclib/binary-io.h: Avoid warnings on Cygwin.
2003-10-09 Bruno Haible <bruno@clisp.org>
* srclib/xalloc.h: Renamed from xmalloc.h.
* srclib/progreloc.c: Include xalloc.h instead of xmalloc.h.
* srclib/relocatable.c: Likewise.
* srclib/xmalloc.c: Likewise.
* srclib/xreadlink.c: Likewise.
* srclib/xstrdup.c: Likewise.
2003-09-12 Paul Eggert <eggert@twinsun.com>
* srclib/progreloc.c (get_full_program_name): Define via prototype.
2003-09-12 Paul Eggert <eggert@twinsun.com>
* srclib/setenv.c (clearenv): Define via prototype.
2003-09-10 Bruno Haible <bruno@clisp.org>
* srclib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
* srclib/unsetenv.c: Likewise.
2003-08-28 Bruno Haible <bruno@clisp.org>
* srclib/binary-io.h: Undefine O_BINARY before defining it. This avoids
a warning on QNX, which defines O_BINARY to 000000.
2003-08-24 Bruno Haible <bruno@clisp.org>
* srclib/binary-io.h: Include <stdio.h>, to avoid a compilation error
when MSVC7 <stdio.h> is included later.
2003-08-24 Bruno Haible <bruno@clisp.org>
* srclib/error.h: Use ANSI C "..." declarations when compiling with
MSVC, even though it doesn't define __STDC__ by default.
* srclib/error.c: Use <stdarg.h> when compiling with MSVC, even though
it doesn't define __STDC__ by default.
2003-08-24 Bruno Haible <bruno@clisp.org>
Support for building DLLs on Windows.
* srclib/error.h (error_print_progname, error_message_count,
error_one_per_line): Add DLL_VARIABLE attribute.
* srclib/progname.h (program_name): Likewise.
2003-08-24 Bruno Haible <bruno@clisp.org>
* srclib/progname.h: Make this file includable in C++ mode: add extern
"C".
* srclib/relocatable.h: Likewise.
* srclib/xmalloc.h: Likewise.
2003-08-22 Bruno Haible <bruno@clisp.org>
* srclib/progname.h (error_with_progname, maybe_print_progname): Remove
declarations.
* srclib/progname.c (error_with_progname): Remove variable.
(maybe_print_progname): Remove function.
2003-08-01 Bruno Haible <bruno@clisp.org>
* srclib/relocatable.c (find_shared_library_fullname): Disable the code
on Linux/libc5. Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2003-07-01 Paul Eggert <eggert@twinsun.com>
* srclib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
having it depend on HAVE_SYS_TYPES_H.
2003-06-23 Bruno Haible <bruno@clisp.org>
Avoid compilation units that are empty after preprocessing.
* srclib/canonicalize.c: Add dummy declaration.
* srclib/strerror.c: Likewise.
* srclib/error.c: Include <stdio.h> even if there's nothing to be
compiled.
2003-06-22 Bruno Haible <bruno@clisp.org>
* srclib/relocatable.c (compute_curr_prefix): Comment out this function
in the case when it is not used.
Reported by Pavel Roskin <proski@gnu.org>.
2003-05-28 Paul Eggert <eggert@twinsun.com>
* srclib/pathmax.h: Include <limits.h> without checking for
HAVE_LIMITS_H.
* srclib/xreadlink.c: Likewise.
2004-01-20 Bruno Haible <bruno@clisp.org>
Assume automake-1.8.
* Makefile.devel (AUTOCONF, AUTOHEADER): Assume autoconf-2.59.
(AUTOMAKE): Assume automake-1.8.
* Makefile.in (am--refresh): New target.
2004-01-23 Bruno Haible <bruno@clisp.org>
* Version 1.9.2 released.
2004-01-23 Bruno Haible <bruno@clisp.org>
* tests/table-from.c: Include binary-io.h.
(main): Switch stdout to binary mode.
* tests/table-to.c: Include binary-io.h.
(main): Switch stdout to binary mode.
* tests/genutf8.c: Include binary-io.h.
(main): Switch stdout to binary mode.
* tests/Makefile.in (INCLUDES): Also look in srclib.
(check): Pass INCLUDES when compiling genutf8.c.
* tests/Makefile.os2 (INCLUDES): Also look in srclib.
(genutf8.exe): Pass INCLUDES when compiling genutf8.c.
* tests/Makefile.msvc (INCLUDES): Also look in srclib.
(check): Pass INCLUDES when compiling genutf8.c.
2004-01-21 Bruno Haible <bruno@clisp.org>
* src/iconv.c (force_binary): Remove variable.
(usage): Don't document --binary any more.
(convert, main): Always switch to binary mode.
* tests/check-stateful.bat: Remove --binary option.
* tests/check-translit.bat: Likewise.
* tests/check-stateful.cmd: Likewise.
* tests/check-translit.cmd: Likewise.
* djgpp/stateful-check.sed: Remove MODE variable.
* djgpp/translit-check.sed: Likewise.
2004-01-21 Bruno Haible <bruno@clisp.org>
* man/iconv.3: Fix description of return value in case of error.
Reported by Jonathan Wakely <redi@users.sf.net>.
2003-09-12 Paul Eggert <eggert@twinsun.com>
* srclib/progreloc.c (get_full_program_name): Define via prototype.
2003-08-15 Bruno Haible <bruno@clisp.org>
* Makefile.devel (lib/translit.h): Add ulimit command so that the
gentranslit program gets the stack it needs. Many Linux distributions
allow only 8 MB of stack by default.
2003-08-01 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c (find_shared_library_fullname): Disable the code on
Linux/libc5.
* srclib/relocatable.c (find_shared_library_fullname): Likewise.
Reported by Alain Guibert <derogaton+bgli@oreka.com>.
2003-07-02 Bruno Haible <bruno@clisp.org>
* m4/lib-ld.m4: Update from GNU gettext.
* m4/lib-prefix.m4: Update from GNU gettext.
* m4/gettext.m4: Update from GNU gettext.
* m4/intmax.m4: New file, from GNU gettext.
* m4/longdouble.m4: New file, from GNU gettext.
* m4/longlong.m4: New file, from GNU gettext.
* m4/printf-posix.m4: New file, from GNU gettext.
* m4/signed.m4: New file, from GNU gettext.
* m4/wchar_t.m4: New file, from GNU gettext.
* m4/wint_t.m4: New file, from GNU gettext.
* m4/pathmax.m4: Update from GNU gettext and gnulib.
* m4/ssize_t.m4: Update from GNU gettext and gnulib.
* m4/xreadlink.m4: Update from GNU gettext and gnulib.
* m4/readlink.m4: New file, from gnulib.
* autoconf/install-reloc: Update from GNU gettext.
* srclib/stdbool_.h: Renamed from srclib/stdbool.h.in.
* srclib/readlink.c: New file, from GNU gettext and gnulib.
* srclib/Makefile.am (LIBADD_SOURCE): Add readlink.c.
(EXTRA_DIST, stdbool.h): Use stdbool_.h instead of stdbool.h.in.
* configure.in: Invoke gl_FUNC_READLINK.
2003-06-22 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (install): Link with the already installed library.
This fixes a link error on Solaris.
Reported by Paul Eggert.
2003-06-08 Bruno Haible <bruno@clisp.org>
* srclib/canonicalize.c (__getcwd) [VMS]: Pass 3 arguments to getcwd.
2003-05-02 Bruno Haible <bruno@clisp.org>
Support for libtool-1.5.
* srclib/progname.c (set_program_name): Remove a leading
"<dirname>/.libs/lt-" or "<dirname>/.libs/", not only "lt-".
2003-06-23 Bruno Haible <bruno@clisp.org>
Avoid compilation units that are empty after preprocessing.
* srclib/canonicalize.c: Add dummy declaration.
* srclib/strerror.c: Likewise.
* srclib/error.c: Include <stdio.h> even if there's nothing to be
compiled.
2003-06-22 Bruno Haible <bruno@clisp.org>
Portability to mingw32.
* m4/ssize_t.m4: New file, from GNU gettext.
* m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2003-06-22 Bruno Haible <bruno@clisp.org>
Portability to mingw32.
* lib/relocatable.c [WIN32]: Include <windows.h>.
* srclib/relocatable.c: Likewise.
Reported by Jeff Bonggren <jbon@cfl.rr.com>.
2003-06-22 Bruno Haible <bruno@clisp.org>
* lib/relocatable.c (compute_curr_prefix): Comment out this function in
the case when it is not used.
* srclib/relocatable.c (compute_curr_prefix): Likewise.
Reported by Pavel Roskin <proski@gnu.org>.
2003-06-18 Bruno Haible <bruno@clisp.org>
* config/install-sh: Update from automake-1.7.5.
2003-06-16 Bruno Haible <bruno@clisp.org>
* lib/encodings.def (ISO-8859-15): Add alias LATIN-9.
(ISO-8859-16): Add aliases ISO_8859-16:2001, LATIN10, L10. Remove alias
ISO_8859-16:2000.
(GBK): Add aliases MS936, WINDOWS-936.
Reported by Guido Flohr <guido@imperia.net>.
2003-05-09 Bruno Haible <bruno@clisp.org>
* srclib/canonicalize.c: Add #ifdef around versioned_symbol. Avoids an
"extraneous semicolon" warning from Tru64 cc.
2003-06-07 Bruno Haible <bruno@clisp.org>
* Makefile.devel (config.h_vms): Don't define HAVE_ENVIRON_DECL.
* Makefile.vms (config.h): New rule.
(all, install): Depend on it.
(all, install, installdirs, uninstall, check): Fix typo.
(mostlyclean, clean, distclean, maintainer-clean): Likewise. Remove
config.h.
* lib/Makefile.vms (DEFS): Fix value of INSTALLDIR.
(OBJECTS): Use libiconv.obj instead of iconv.obj.
(libiconv.obj): Renamed from iconv.obj.
* srclib/Makefile.vms (INCLUDES): Add parent directory.
(OBJECTS): Remove strtoul.obj, setenv.obj, unsetenv.obj.
(strtoul.obj, setenv.obj, unsetenv.obj): Remove rules.
(alloca.h): New rule.
(canonicalize.obj): Depend on it.
(clean): Remove alloca.h.
* src/Makefile.vms (datadir, localedir): New variables.
(DEFS): Also define LOCALEDIR.
(iconv.obj): Add flags for relocatability,
(iconv.exe): Link with libicrt. Use link_options.
* vms/link_options.opt: New file.
Reported by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.
2003-06-07 Bruno Haible <bruno@clisp.org>
Support for relocatable data files even on Woe32.
* lib/Makefile.msvc (PICFLAGS): Also define PIC.
2003-05-22 Bruno Haible <bruno@clisp.org>
* Version 1.9.1 released.
2003-05-22 Bruno Haible <bruno@clisp.org>
* lib/genaliases.c (main): Emit %pic instead of %null-strings.
Change type of 'name' field to 'int'.
* lib/genaliases2.c (emit_encoding): Add a 'tag' argument. Emit an
invocation of macro S(), including the tag and a counter.
(main): Use the command-line argument as tag.
* Makefile.devel (lib/aliases_aix.h, lib/aliases_osf1.h,
lib/aliases_dos.h, lib/aliases_extra.h): Pass a tag to the program.
* lib/iconv.c (stringpool2_t): New type.
(stringpool2_contents): New data table.
(stringpool2): New macro.
(sysdep_aliases): Make position-independent. Move #includes out to
aliases2.h.
(aliases2_lookup): Update.
(nalias): New type.
(compare_by_index): Use 'struct nalias' instead of 'struct alias'.
(iconvlist): Convert 'struct alias' to 'struct nalias' while copying.
* lib/aliases2.h: New file, extracted from lib/iconv.c.
2003-05-20 Bruno Haible <bruno@clisp.org>
* lib/iconv.c (iconvlist): Test p->name against NULL, not against "".
Reported by Muraoka Taro <koron@tka.att.ne.jp>.
2003-05-19 Bruno Haible <bruno@clisp.org>
* windows/iconv.rc: Include <winver.h>.
Reported by Perry Rapp.
2003-05-18 Bruno Haible <bruno@clisp.org>
* Version 1.9 released.
2003-05-18 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (libiconv_plug_osf.so): Avoid using LIBTOOL_LINK.
2003-05-18 Bruno Haible <bruno@clisp.org>
* lib/Makefile.msvc (DEBUGFLAGS): New variable.
(iconv.lib): Use it.
* src/Makefile.msvc (DEBUGFLAGS): New variable.
* tests/Makefile.msvc (DEBUGFLAGS): New variable.
2003-05-17 Bruno Haible <bruno@clisp.org>
* src/Makefile.msvc (libdir, datadir, localedir): New variables.
(IIlibdir, IIdatadir, IIlocaledir): New variables.
(CFLAGS): Define LOCALEDIR.
(iconv_no_i18n.exe): New rule.
(all): Depend on it.
* tests/check-stateful.bat: Invoke iconv_no_i18n instead of iconv.
* tests/check-translit.bat: Likewise.
2003-05-16 Bruno Haible <bruno@clisp.org>
* lib/genaliases.c (main): Emit declarations for gperf-3.0.
* Makefile.devel (lib/aliases.h): Remove gperf command line options;
add new option "-m 10" for gperf-3.0.
2003-05-12 Bruno Haible <bruno@clisp.org>
* m4/error.m4: Update from gettext.
2003-05-12 Bruno Haible <bruno@clisp.org>
* configure.in: Invoke AC_GNU_SOURCE and jm_FUNC_GLIBC_UNLOCKED_IO.
2003-05-12 Bruno Haible <bruno@clisp.org>
* lib/Makefile.msvc (PICFLAGS, CFLAGS): Move BUILDING_* macros from
CFLAGS to PICFLAGS.
2003-05-09 Bruno Haible <bruno@clisp.org>
* srclib/error.c: Update from gnulib with modifications.
* srclib/unlocked-io.h: New file, from gnulib.
* m4/strerror_r.m4: New file, from gnulib.
* m4/unlocked-io.m4: New file, from gnulib.
* Makefile.devel (aclocal.m4): Depend on them.
2003-05-08 Bruno Haible <bruno@clisp.org>
* Makefile.msvc (IIPREFIX): New variable.
* srclib/Makefile.msvc (INCLUDES): Add -I..\windows.
* src/Makefile.msvc (IIPREFIX, IIprefix, IIexec_prefix, IIbindir,
IIincludedir): New variables.
(INCLUDES): Add -I..\windows.
(iconv.exe): Define INSTALLPREFIX and INSTALLDIR. Link with
../srclib/icrt.lib.
Patches by Perry Rapp.
2003-05-07 Bruno Haible <bruno@clisp.org>
* README.woe32: Fix instructions for step 1.
* srclib/Makefile.msvc (OBJECTS): Remove strtoul.obj.
(strtoul.obj): Remove rule.
Reported by Perry Rapp.
2003-05-07 Bruno Haible <bruno@clisp.org>
* Makefile.vms: New file.
* lib/Makefile.vms: New file.
* srclib/Makefile.vms: New file.
* src/Makefile.vms: New file.
* man/Makefile.vms: New file.
* tests/Makefile.vms: New file.
* Makefile.devel (config.h_vms, lib/config.h_vms, include/iconv.h_vms):
New rules.
(all): Depend on them.
2003-05-07 Bruno Haible <bruno@clisp.org>
* srclib/Makefile.msvc (OBJECTS): Remove findprog.obj.
(findprog.obj): Remove rule.
* src/Makefile.msvc (includedir): New variable.
2003-05-06 Bruno Haible <bruno@clisp.org>
* lib/translit.def: Upgrade to Unicode 4.0.
2003-05-06 Bruno Haible <bruno@clisp.org>
* srclib/Makefile.am (DEFS): Fix spelling of DEPENDS_ON_LIBICONV.
* srclib/Makefile.msvc (CFLAGS): Likewise.
* srclib/Makefile.msvc (INCLUDES): Add -I.. .
Reported by Perry Rapp.
* Makefile.msvc (config.h): New rule.
(all): Depend on it.
(mostlyclean, clean, distclean, maintainer-clean): Erase config.h.
Reported by Perry Rapp.
2003-05-06 Bruno Haible <bruno@clisp.org>
* autoconf/config.guess: Update to GNU version 2003-02-22.
* autoconf/config.sub: Likewise.
2003-05-06 Bruno Haible <bruno@clisp.org>
* m4/lib-link.m4: Update from GNU gettext.
* autoconf/config.rpath: Update from GNU gettext.
* m4/libtool.m4: Update from GNU gettext, based on libtool-1.5.
* autoconf/ltmain.sh: Update from GNU gettext, based on libtool-1.5.
* m4/gettext.m4: Update from GNU gettext.
* m4/nls.m4: Update from GNU gettext.
* m4/po.m4: Update from GNU gettext.
* Makefile.devel (aclocal.m4): Depend on m4/nls.m4 and m4/po.m4.
2003-04-12 Bruno Haible <bruno@clisp.org>
Support for OpenVMS 7.3.
* lib/iconv.c (USE_OSF1): Define also on VMS.
2003-04-12 Bruno Haible <bruno@clisp.org>
Better support for FreeBSD.
* lib/encodings.def (ISO8859-{1,2,3,4,5,6,7,8,9,10,13,14,15,16): New
aliases, for compatibility with earlier FreeBSD iconv implementation
by Konstantin Chuguev.
* lib/iconv.c (iconv_open, iconv, iconv_close) [FreeBSD]: Define as
aliases.
* src/Makefile.in (install) [FreeBSD]: Avoid installation problem.
2003-04-12 Bruno Haible <bruno@clisp.org>
* configure.in (mandir): Change default value.
* Makefile.in (datadir): New variable.
(install, installdirs, uninstall): Pass datadir to po and man
directories.
* Makefile.os2 (datadir): New variable.
(mandir): Use it instead of prefix.
(install, uninstall): Pass datadir to man directory.
* Makefile.msvc (mandir, docdir): Use datadir instead of prefix.
* man/Makefile.in (datadir): New variable.
(docdir): Use it instead of prefix.
(install, installdirs): Update.
* man/Makefile.os2 (datadir): New variable.
(mandir): Use it instead of prefix.
* man/Makefile.msvc (datadir): New variable.
(mandir, docdir): Use it instead of prefix.
(install, installdirs): Update.
2003-04-06 Bruno Haible <bruno@clisp.org>
Make it possible to build with or without libintl support on Woe32.
* Makefile.devel (config.h.msvc): Remove ENABLE_NLS.
* Makefile.msvc (NO_NLS): New variable.
* srclib/Makefile.msvc (NO_NLS): New variable.
(CFLAGS, INCLUDES): Use them.
* src/Makefile.msvc (NO_NLS): New variable.
(NLSFLAGS, INCINTL, LIBINTL): New variables.
(CFLAGS, INCLUDES, iconv.exe): Use them.
2003-04-12 Bruno Haible <bruno@clisp.org>
* lib/loop_unicode.h (unicode_transliterate): When the Hangul or
variants transliteration failed with RET_ILUNI, don't return
RET_TOOSMALL.
Reported by the FreeBSD porters.
2003-04-06 Bruno Haible <bruno@clisp.org>
* srclib/binary-io.h: New file, from GNU gettext.
* src/iconv.c: Include it.
(O_BINARY, O_TEXT, SET_BINARY): Remove definitions.
2003-04-05 Bruno Haible <bruno@clisp.org>
Support for relocatable installation.
* m4/alloca.m4: New file, from GNU gettext.
* m4/canonicalize.m4: New file, from GNU gettext.
* m4/error.m4: New file, from GNU gettext.
* m4/onceonly.m4: New file, from GNU gettext.
* m4/pathmax.m4: New file, from GNU gettext.
* m4/relocatable.m4: New file, from GNU gettext.
* m4/setenv.m4: New file, from GNU gettext.
* m4/stdbool.m4: New file, from GNU gettext.
* m4/strerror.m4: New file, from GNU gettext.
* m4/xreadlink.m4: New file, from GNU gettext.
* autoconf/config.libpath: New file, from GNU gettext.
* autoconf/install-reloc: New file, from GNU gettext.
* autoconf/reloc-ldflags: New file, from GNU gettext.
* autoconf/missing: New file, from GNU automake 1.7.3.
* lib/relocatable.h: New file, from GNU gettext.
* lib/relocatable.c: New file, from GNU gettext.
* srclib/alloca.c: New file, from GNU gettext.
* srclib/alloca_.h: New file, from GNU gettext.
* srclib/canonicalize.c: New file, from GNU gettext.
* srclib/canonicalize.h: New file, from GNU gettext.
* srclib/error.c: New file, from GNU gettext.
* srclib/error.h: New file, from GNU gettext.
* srclib/exit.h: New file, from GNU gettext.
* srclib/gettext.h: New file, from GNU gettext.
* srclib/memmove.c: New file, from GNU gettext.
* srclib/pathmax.h: New file, from GNU gettext.
* srclib/progname.c: New file, from GNU gettext.
* srclib/progname.h: New file, from GNU gettext.
* srclib/progreloc.c: New file, from GNU gettext.
* srclib/relocatable.c: New file, from GNU gettext.
* srclib/relocatable.h: New file, from GNU gettext.
* srclib/relocwrapper.c: New file, from GNU gettext.
* srclib/setenv.c: New file, from GNU gettext.
* srclib/setenv.h: New file, from GNU gettext.
* srclib/stdbool.h.in: New file, from GNU gettext.
* srclib/strerror.c: New file, from GNU gettext.
* srclib/unsetenv.c: New file, from GNU gettext.
* srclib/xmalloc.c: New file, from GNU gettext.
* srclib/xmalloc.h: New file, from GNU gettext.
* srclib/xreadlink.c: New file, from GNU gettext.
* srclib/xreadlink.h: New file, from GNU gettext.
* srclib/xstrdup.c: New file, from GNU gettext.
* srclib/Makefile.am: New file.
* srclib/Makefile.msvc: New file.
* windows/alloca.h: New file, from GNU gettext.
* windows/stdbool.h: New file, from GNU gettext.
* configure.in (AC_CONFIG_HEADERS): Replace src/config.h with config.h.
Add AC_RELOCATABLE, AC_HEADER_STDC, AC_CHECK_HEADERS(stddef.h stdlib.h
string.h), AC_CHECK_FUNCS(getc_unlocked), AC_REPLACE_FUNCS(memmove),
AM_LANGINFO_CODESET, gl_FUNC_ALLOCA, gl_CANONICALIZE,
gt_FUNC_ERROR_AT_LINE, gl_PATHMAX, gt_FUNC_SETENV, gt_STDBOOL_H,
gl_FUNC_STRERROR, gl_XREADLINK, AC_OUTPUT(srclib/Makefile).
* lib/config.h.in: Add HAVE_GETC_UNLOCKED, HAVE_LANGINFO_CODESET,
HAVE_SETLOCALE, HAVE_STDDEF_H, HAVE_STDLIB_H, HAVE_STRING_H, for
localcharset.c. Add ENABLE_RELOCATABLE, INSTALLPREFIX, for
relocatable.c.
* lib/Makefile.in (DEFS): New variable.
(SOURCES): Add localcharset.c and relocatable.c.
(OBJECTS): Add localcharset.lo and relocatable.lo.
(LIBCHARSET_OBJECTS): Remove variable.
(libiconv_plug_linux.so, libiconv_plug_solaris.so,
libiconv_plug_osf.so): Use $(DEFS). Don't use $(LIBCHARSET_OBJECTS).
(iconv.lo): Use $(DEFS).
(localcharset.lo, relocatable.lo): New rules.
* lib/Makefile.msvc (CFLAGS): Define HAVE_CONFIG_H, BUILDING_DLL,
ENABLE_RELOCATABLE, IN_LIBRARY, INSTALLDIR, NO_XMALLOC,
set_relocation_prefix, relocate. Remove $(PICFLAGS).
(INCLUDES): Simplify.
(SOURCES): Remove variable.
(OBJECTS): Add localcharset.obj and relocatable.obj.
(LIBCHARSET_OBJECTS): Remove variable.
(iconv.obj): Add $(PICFLAGS).
(localcharset.obj, relocatable.obj): New rules.
(iconv.lib): Drop $(LIBCHARSET_OBJECTS).
* include/iconv.h.in (libiconv_set_relocation_prefix): New declaration.
* src/gettext.h: Remove file.
* src/iconv.c: Include progname.h and relocatable.h.
(ICONV_CONST): Define to const if the system has no iconv.
(main): Invoke set_program_name. Relocate LOCALEDIR.
* src/Makefile.in (top_srcdir): New variable.
(INCLUDES): Add .. and ../srclib.
(iconv_no_i18n, iconv): Link with ../srclib/libicrt.a.
(iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Define INSTALLDIR.
(RELOCATABLE_LIBRARY_PATH, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR,
RELOCATABLE_CONFIG_H_DIR, @SET_RELOCATABLE@, iconv_LDFLAGS): New
variables.
(iconv): Use $(iconv_LDFLAGS).
(install): Use $(INSTALL_PROGRAM_ENV).
(distclean): Drop removing config.h.
* src/Makefile.msvc (INCLUDES): Add .., simplify.
* tests/Makefile.msvc (INCLUDES): Simplify.
* Makefile.devel (AUTOHEADER, AUTOMAKE): New variables.
(config.h.in, srclib/Makefile.in, config.h.msvc): New rules.
(all): Depend on them.
(aclocal.m4) Depend also on m4/alloca.m4, m4/canonicalize.m4,
m4/error.m4, m4/onceonly.m4, m4/pathmax.m4, m4/relocatable.m4,
m4/setenv.m4, m4/stdbool.m4, m4/strerror.m4, m4/xreadlink.m4.
(lib/config.h.msvc): Additional processing.
* Makefile.in (all, install, installdirs, uninstall, check): Recurse
into srclib.
(mostlyclean, clean, distclean, maintainerclean): Likewise. Remove
lib/localcharset.h.
(distclean, maintainerclean): Remove also config.h and some stamps.
* Makefile.msvc (all, install, installdirs, uninstall, check,
mostlyclean, clean, distclean, maintainerclean): Recurse into srclib.
* INSTALL.generic: Document --enable-relocatable and
--with-libintl-prefix. Remove the recommendation to set CPPFLAGS and
LDFLAGS. The lib-link.m4 macros make this unnecessary.
2003-04-05 Bruno Haible <bruno@clisp.org>
* configure.in: Bump version number to 1.9.
* include/iconv.h.in (_LIBICONV_VERSION): Bump.
* windows/iconv.rc: Bump version number.
* lib/Makefile.in (LIBICONV_VERSION_INFO): Bump to 4:0:2.
2003-04-05 Bruno Haible <bruno@clisp.org>
* Makefile.msvc (PREFIX): New variable.
(prefix): Use it.
(distclean, maintainer-clean): Drop Unix specific removals.
* lib/Makefile.msvc (PREFIX, IIPREFIX): New variables.
(prefix): Use it.
(IIprefix, IIexec_prefix, IIbindir, IIlibdir): New variables.
(clean): Drop Unix specific removal.
* src/Makefile.msvc (PREFIX): New variable.
(prefix): Use it.
(clean): Drop Unix specific removal.
(distclean): Likewise.
* tests/Makefile.msvc (clean): Drop Unix specific removal.
(distclean): Likewise.
2003-04-05 Bruno Haible <bruno@clisp.org>
* m4/endian.m4 (CL_WORDS_LITTLEENDIAN): Use 3-argument AC_DEFINE.
2003-04-05 Bruno Haible <bruno@clisp.org>
* m4/general.m4 (CL_CONFIG_SUBDIRS, CL_CANONICAL_HOST,
CL_CANONICAL_HOST_CPU, CL_CANONICAL_HOST_CPU_FOR_FFCALL): Remove
macros.
* m4/gettext.m4: Update from GNU gettext.
* m4/iconv.m4: Update from GNU gettext.
* m4/lcmessage.m4: Update from GNU gettext.
* m4/progtest.m4: Update from GNU gettext.
* m4/libtool.m4: Update from GNU gettext.
2003-02-16 Bruno Haible <bruno@clisp.org>
Workaround autoconf >= 2.52 breakage.
* libtool.m4 (AC_LIBTOOL_ARG_WITH): New macro.
(_LT_AC_LTCONFIG_HACK, AC_PROG_LD): Use it.
* autoconf/ltmain.sh: Update from GNU gettext.
2003-02-18 Bruno Haible <bruno@clisp.org>
Fix the 2002-09-16 fix.
* ltmain.sh (install): If "ln -s -f" fails (this is the case
with /usr/bin/ln on Solaris 2.7), fall back to "rm && ln -s".
2003-04-05 Bruno Haible <bruno@clisp.org>
Start using automake.
* configure.in: Add AM_INIT_AUTOMAKE invocation.
(PACKAGE, VERSION): Remove.
Use AC_CANONICAL_HOST instead of CL_CANONICAL_HOST.
Use AC_PROG_LN_S instead of CL_PROG_LN_S.
Use AC_PROG_RANLIB instead of CL_PROG_RANLIB.
Reorder so that AC_CANONICAL_HOST comes early but still after
AC_PROG_CC.
* m4/ranlib.m4: Remove file.
* m4/libtool.m4: Undo AC_ -> CL_ substitutions.
* Makefile.devel (CLISP_DIR): Comment out.
(AUTOCONF_FILES): Change to aclocal.m4.
(aclocal.m4): Renamed from autoconf/aclocal.m4. Update dependencies.
(configure.in): Drop --include option.
2003-03-17 Bruno Haible <bruno@clisp.org>
Improved MSVC support.
* Makefile.msvc (prefix): Use less Unixy value.
(local_prefix): Remove variable.
(libdir, includedir, mandir): Use backslashes.
(bindir, datadir, localedir, docdir): New variables.
(INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
(all): Recurse into po/ and man/.
(install, installdirs, uninstall): Rewritten.
(check, mostlyclean, clean, distclean, maintainer-clean): Recurse
into po/ and man/.
* lib/Makefile.msvc (prefix): Use less Unixy value.
(local_prefix): Remove variable.
(libdir): Use backslashes.
(bindir): New variable.
(INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Set to real values.
(RESOURCES): Enable iconv.res.
(install, installdirs, uninstall): New rules.
(clean): Remove config.h.
(distclean): Don't remove config.h here.
* src/Makefile.msvc (prefix, exec_prefix, bindir): New variables.
(INSTALL, INSTALL_PROGRAM, INSTALL_DATA): New variables.
(install, installdirs, uninstall): New rules.
* man/Makefile.msvc: New file.
* tests/Makefile.msvc (install, installdirs, uninstall): New rules.
* Makefile.devel (all): Depend on po/Makefile.msvc.
(po/Makefile.msvc): New rule.
* windows/iconv.rc: Update.
* README.woe32: Mention automatic installation command.
Rename libcharset.h to localcharset.h.
* lib/iconv.c: Include localcharset.h, not libcharset.h.
* Makefile.in (lib/localcharset.h): Renamed from lib/libcharset.h.
(all, install): Update dependencies.
(all): Create lib/localcharset.h, not lib/libcharset.h.
(mostlyclean, clean, distclean, maintainer-clean): Remove
lib/localcharset.h, not lib/libcharset.h.
* djgpp/README.in, djgpp/README: Update.
* djgpp/config.bat: Update.
* djgpp/config.sed: Update.
* djgpp/fnchange.in, djgpp/fnchange.lst: Update.
2003-01-31 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (all): Don't do the chmod if it has already been
done.
2003-01-31 Bruno Haible <bruno@clisp.org>
* lib/loop_unicode.h (unicode_transliterate): Enable recursive
transliteration. Idea from Perry Rapp.
* lib/gentranslit.c (main): Change bound from 0x10000 to 0x110000.
Change element type of translit_data to 'unsigned int'.
* lib/translit.def: Many new transliterations, mostly taken from glibc.
* lib/translit.h: Regenerated.
* tests/Translit1.ISO-8859-1, tests/Translit1.ASCII: New files.
* tests/Makefile.in (check): Add Translit1 check.
* tests/Makefile.msvc (check): Likewise.
* tests/Makefile.os2 (check): Likewise.
* tests/TranslitFail1.ISO-8859-1: Choose a sentence which the new
improved transliteration cannot do.
2003-02-14 Bruno Haible <bruno@clisp.org>
* Makefile.devel (AUTOCONF): Switch to autoconf-2.57.
(configure): Update rule.
2003-01-03 Albert Chin <libtool@thewrittenword.com>
* autoconf/ltmain.sh: Don't pass -R flags found in a .la's
dependency_libs variable directly down to the linker.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
2003-01-01 Bruno Haible <bruno@clisp.org>
* src/Makefile.in (install): Use libiconv.la in ../lib, not in
$(libdir), so that installing with DESTDIR works.
Reported by Michael Adams <michael@michaeladams.org>.
2003-01-01 Bruno Haible <bruno@clisp.org>
* Makefile.in (mkinstalldirs): New variable.
(install-lib, install, installdirs): Use it instead of mkdir.
* lib/Makefile.in (mkinstalldirs): New variable.
(install-lib, install, installdirs): Use it instead of mkdir.
* man/Makefile.in (mkinstalldirs): New variable.
(install, installdirs): Use it instead of mkdir.
* src/Makefile.in (mkinstalldirs): New variable.
(install, installdirs): Use it instead of mkdir.
2002-09-27 Bruno Haible <bruno@clisp.org>
* autoconf/mkinstalldirs: Upgrade to automake-1.7.2 version.
2002-11-07 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4: Upgrade to libtool-1.4.3.
* autoconf/ltmain.sh: Upgrade to libtool-1.4.3.
2002-07-14 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (_LT_AC_LTCONFIG_HACK): Add support for GNU/FreeBSD.
2002-06-12 Bruno Haible <bruno@clisp.org>
* configure.in: Use new AC_* names of libtool macros. Invoke
AC_LIBTOOL_WIN32_DLL.
2002-12-19 Bruno Haible <bruno@clisp.org>
* lib/Makefile.in (libiconv_plug_solaris.so): Change rule if using gcc.
Reported by Henry Nelson <henry@irm.nara.kindai.ac.jp>.
2002-11-07 Bruno Haible <bruno@clisp.org>
Make "make install" without prior "make" work.
* Makefile.in (lib/libcharset.h): New rule.
(all, install): Depend on it.
Reported by Martin Mokrejš <mmokrejs@natur.cuni.cz>.
2002-10-28 Bruno Haible <bruno@clisp.org>
* man/Makefile.in (install): Change directory back to the working
directory, so that install-sh (which may be a relative pathname) is
found in the right place.
2002-09-16 Bruno Haible <bruno@clisp.org>
* autoconf/ltmain.sh (install): Use "ln -s -f" instead of
"rm -f && ln -s" to make a symlink for a shared library.
Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2002-09-02 Bruno Haible <bruno@clisp.org>
* src/iconv.c (main): Don't call bindtextdomain if !ENABLE_NLS.
2002-08-16 Bruno Haible <bruno@clisp.org>
* src/iconv.c (main): Perform fflush before testing ferror(stdout).
2002-05-29 Bruno Haible <bruno@clisp.org>
* Version 1.8 released.
2002-05-26 Bruno Haible <bruno@clisp.org>
* lib/c99.h: New file.
* lib/converters.h: Include it.
* lib/encodings.def (C99): New encoding.
* README, man/iconv_open.3: Document C99 encoding.
2002-05-26 Bruno Haible <bruno@clisp.org>
* lib/java.h (java_mbtowc): Accept 12-byte sequences for non-BMP
characters.
(java_wctomb): Produce 12-byte sequences for non-BMP characters.
2002-05-29 Bruno Haible <bruno@clisp.org>
Fix installation of iconv program when linked with a libintl that was
built against an earlier libiconv.
* src/iconv.c: Conditionally disable NLS.
* src/iconv_no_i18n.c: New file.
* src/Makefile.in (libdir): New variable.
(all): Depend on iconv_no_i18n, iconv.@OBJEXT@ but not iconv. Make
directory writable, so iconv executable can be created during "make
install".
(iconv): Remove rule.
(iconv_no_i18n, iconv_no_i18n.@OBJEXT@): New rules.
(install): Link iconv now, after the new libiconv.so is installed.
(clean): Also remove iconv_no_i18n.
* tests/Makefile.in: (check, check-extra-yes): Depend on iconv_no_i18n,
not iconv.
* tests/check-stateful: Use iconv_no_i18n, not iconv.
* tests/check-translit: LIkewise.
* tests/check-translitfailure: Likewise.