|
80f29e3a
|
2025-11-02T00:00:15
|
|
gnu make idiom
|
|
d4f3d739
|
2025-11-01T23:55:40
|
|
aclocal and automake
|
|
2d7186ad
|
2025-11-01T23:51:08
|
|
gnulib
|
|
136f0195
|
2025-11-01T23:46:30
|
|
make autogen really bootstrap
|
|
b66b2f54
|
2025-09-13T00:57:59
|
|
Update gitsub.sh.
* gitsub.sh: Update from gnulib.
|
|
61fbe742
|
2025-09-06T16:56:25
|
|
Update gitsub.sh.
* gitsub.sh: Update from gnulib.
|
|
918904ed
|
2025-07-07T11:42:45
|
|
Add support for --enable-relocatable in mingw builds on Cygwin hosts.
Reported by Michele Locati <michele@locati.it> in
<https://github.com/mlocati/gettext-iconv-windows/pull/47#issuecomment-3041406917>.
* configure.ac: Invoke gl_BUILD_TO_HOST_BINDIR.
* src/Makefile.in (bindir_c_make, localedir_c_make): New variables.
(iconv_no_i18n.@OBJEXT@, iconv.@OBJEXT@): Fix value of INSTALLDIR and
LOCALEDIR.
|
|
b6de390c
|
2025-06-10T21:05:13
|
|
More install-tests, part 2.
|
|
b012e147
|
2025-06-10T04:41:45
|
|
More install-tests.
* install-tests/test-api.c: New file.
* install-tests/Makefile.in (installcheck): Compile and run test-api.
(SOURCE_FILES): Add test-api.c.
|
|
e443659f
|
2025-06-10T00:55:52
|
|
build: Implement 'installcheck' target.
* install-tests/test-version.c: New file.
* install-tests/Makefile.in: New file.
* configure.ac (PATH_SEPARATOR, AUGMENT_SHLIBPATH): New variables.
(AC_CONFIG_FILES): Add install-tests/Makefile.
* Makefile.in (bindir): New variable.
(all, mostlyclean, clean, distclean, maintainer-clean, distdir): Recurse
into install-tests.
(installcheck): New target.
|
|
8ec33591
|
2025-06-07T04:14:52
|
|
Sync woe32dll/export.h with GNU libunistring and GNU gettext.
* woe32dll/export.h: Update comments.
|
|
6a93e918
|
2025-05-31T14:47:08
|
|
Switch to automake 1.18.
* autogen.sh: Update comment.
* Makefile.devel (AUTOMAKE, ACLOCAL): Use binary from automake 1.18.
* libcharset/autogen.sh: Update comment.
* libcharset/Makefile.devel (ACLOCAL): Use binary from automake 1.18.
|
|
cf10b545
|
2025-05-31T00:29:46
|
|
Document the 'const char **' vs. 'char **' problem.
Reported by Braden Ganetsky <braden.ganetsky@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2025-05/msg00003.html>.
* man/iconv.3 (SYNOPSIS, CONFORMING TO): List also the POSIX-compatible
declaration. Explain the background. Mention AM_ICONV.
|
|
d53c2baf
|
2025-04-17T22:06:24
|
|
Switch to automake 1.17, part 3.
* autogen.sh (ACLOCAL): Use Automake 1.17.
Copyright-paperwork-exempt: Yes
|
|
f3f8dbdb
|
2025-04-16T16:24:16
|
|
Update after gnulib changed.
* gitsub.sh: Update from gnulib.
|
|
d68ea07b
|
2025-02-14T11:47:48
|
|
Fix a buffer overrun in the GB18030 converter (regression 2023-05-29).
Reported by Nick Wellnhofer <wellnhofer@aevum.de>.
* lib/gb18030_2005.h (gb18030_2005_wctomb): Return RET_TOOSMALL if there
is not enough room for 4 bytes.
|
|
bc17565f
|
2024-12-28T08:26:48
|
|
Update after gnulib changed.
* Makefile.devel (GNULIB_MODULES): Use the new names of renamed gnulib
modules.
|
|
ed5a57cf
|
2024-12-14T12:16:27
|
|
Update translations.
* po/libiconv.pot: Update.
* po/*.po: Update from TP.
* po/LINGUAS: Add be, ka.
|
|
8d618a87
|
2024-12-15T12:56:32
|
|
Prepare for version 1.18.
* configure.ac: Bump version number to 1.18.
* 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.
|
|
55e382b6
|
2024-12-15T13:13:09
|
|
Update after gnulib changed.
|
|
deb432a1
|
2024-12-15T13:11:29
|
|
Use the newest gettext release.
* po/Makefile.in.in: Upgrade to gettext-0.23, keeping the change
2019-01-27 Bruno Haible <bruno@clisp.org>
Accommodate a shell that is not in /bin/sh.
* po/Makefile.in.in (SHELL): Use the value found by configure.
* po/*: Upgrade to gettext-0.23 as well.
|
|
9f28054d
|
2024-12-15T12:52:18
|
|
Implement the //NON_IDENTICAL_DISCARD suffix from POSIX:2024.
* include/iconv.h.in (ICONV_GET_DISCARD_INVALID,
ICONV_SET_DISCARD_INVALID, ICONV_GET_DISCARD_NON_IDENTICAL,
ICONV_SET_DISCARD_NON_IDENTICAL): New macros.
* lib/converters.h (struct conv_struct): Change type of discard_ilseq to
'unsigned int'.
(DISCARD_INVALID, DISCARD_UNCONVERTIBLE): New macros.
* lib/iconv.c (iconv_open, iconv_open_into): Change type of
discard_ilseq to 'unsigned int'.
(iconvctl): Implement ICONV_GET_DISCARD_INVALID,
ICONV_SET_DISCARD_INVALID, ICONV_GET_DISCARD_NON_IDENTICAL,
ICONV_SET_DISCARD_NON_IDENTICAL. Change the implementation of
ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ to test/set both bits.
* lib/iconv_open1.h: Update comment. Recognize //NON_IDENTICAL_DISCARD.
* lib/iconv_open2.h: Update comment.
* lib/loop_unicode.h (mb_to_uc_write_replacement): Test the
DISCARD_UNCONVERTIBLE bit of discard_ilseq.
(unicode_loop_convert): Test the respective bit of discard_ilseq.
(unicode_loop_reset): Test the DISCARD_UNCONVERTIBLE bit of
discard_ilseq.
* lib/loop_wchar.h (wchar_from_loop_convert, wchar_to_loop_convert):
Test the DISCARD_INVALID bit of discard_ilseq.
* man/iconv_open.3: Mention the //NON_IDENTICAL_DISCARD suffix. Mark as
conforming to POSIX:2024.
* man/iconv.3: Likewise.
* man/iconv_close.3: Mark as conforming to POSIX:2024.
* man/iconv.1: Likewise.
* man/iconvctl.3: Document ICONV_GET_DISCARD_INVALID,
ICONV_SET_DISCARD_INVALID, ICONV_GET_DISCARD_NON_IDENTICAL,
ICONV_SET_DISCARD_NON_IDENTICAL. Revise the description of
ICONV_GET_DISCARD_ILSEQ, ICONV_SET_DISCARD_ILSEQ.
* tests/test-discard.c (test_default, test_translit, test_ignore,
test_ignore_translit): Test also the ICONV_GET_DISCARD_INVALID,
ICONV_GET_DISCARD_NON_IDENTICAL accessors.
(test_nid, test_nid_translit, test_invd, test_invd_translit): New
functions.
(main): Add test cases with //NON_IDENTICAL_DISCARD suffix.
* NEWS: Mention the change.
|
|
ef2f457f
|
2024-12-15T10:37:13
|
|
Support multiple suffixes in iconv_open, like glibc does.
* lib/iconv_open1.h: Use a loop when looking for the common suffixes.
* tests/test-discard.c: New file.
* tests/Makefile.in (check): Run test-discard.
(test-discard, test-discard.@OBJEXT@): New targets.
(clean): Remove test-discard.
(SOURCE_FILES): Add test-discard.c.
* NEWS: Mention the change.
|
|
14d04cda
|
2024-12-14T17:07:37
|
|
Switch to automake 1.17, part 2.
* Makefile.devel (AUTOMAKE, ACLOCAL): Use binary from automake 1.17.
* libcharset/autogen.sh: Update comment.
|
|
e310efbf
|
2024-12-14T17:00:22
|
|
Remove left-overs of preloadable library (removed in 1.16).
* include/iconv.h.in: Remove LIBICONV_PLUG conditionals.
* lib/iconv.c: Likewise.
* lib/converters.h: Likewise.
* lib/loop_unicode.h: Likewise.
* lib/loop_wchar.h: Likewise.
* lib/iconv_open2.h: Likewise.
|
|
3782f302
|
2024-12-14T13:03:31
|
|
Add transliteration of Emojis.
Suggested by Colin Leroy-Mira <colin@colino.net> in
<https://savannah.gnu.org/bugs/index.php?64046>.
* lib/translit.def: Add transliterations from glibc's fix of
<https://sourceware.org/bugzilla/show_bug.cgi?id=30649>.
* NEWS: Mention it.
|
|
2c82f5d5
|
2024-12-14T12:10:36
|
|
Improve man page.
* man/iconv.3: Move 4th case to be the 2nd case. Add a NOTES section,
based on the Linux man-pages project's iconv.3 page.
|
|
72242b09
|
2024-12-14T13:04:39
|
|
Update .gitignore after last commit.
|
|
a4c1470b
|
2024-12-13T23:55:13
|
|
Distinguish byte-order state and shift-state.
Reported by Tomas Kalibera <tomas.kalibera@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2024-12/msg00000.html>.
* lib/converters.h (struct conv_struct): Add field 'ibyteorder'.
* lib/iconv_open2.h: Initialize the ibyteorder field.
* lib/ucs2.h (ucs2_mbtowc): Use the ibyteorder field instead of the
istate field.
* lib/ucs4.h (ucs4_mbtowc): Likewise.
* lib/utf16.h (utf16_mbtowc): Likewise.
* lib/utf32.h (utf32_mbtowc): Likewise.
* tests/test-bom-state.c: New file.
* tests/Makefile.in (check): Run test-bom-state.
(test-bom-state, test-bom-state.@OBJEXT@): New targets.
(clean): Remove test-bom-state.
(SOURCE_FILES): Add test-bom-state.c.
* NEWS: Mention the change.
|
|
ef22b8c1
|
2024-11-22T18:46:21
|
|
Update after gnulib changed.
|
|
2f2b617f
|
2024-11-22T18:43:15
|
|
Switch to libtool 2.5.4.
* m4/libtool.m4: Update from libtool-2.5.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: Likewise.
* libcharset/m4/*.m4: Likewise.
* build-aux/ltmain.sh: Update from libtool-2.5.4, 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'.
* libcharset/build-aux/ltmain.sh: Likewise.
|
|
e5ef1792
|
2024-11-07T09:28:31
|
|
Update the LGPL text.
* COPYING.LIB: Update from
<https://ftp.gnu.org/gnu/Licenses/lgpl-2.1.txt>.
* libcharset/COPYING.LIB: Likewise.
|
|
f017cafc
|
2024-10-22T12:28:36
|
|
Spelling fixes.
From Mike Taves <mwtoews@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnu-libiconv/2024-10/msg00002.html>.
* NOTES: Fix grammar.
* lib/iconv_open1.h: Fix a typo in comments.
* lib/iso2022_jp2.h: Likewise.
* lib/iso2022_jpms.h: Fix English spelling in comments.
|
|
eed6782c
|
2024-10-05T02:24:01
|
|
Fix undefined behaviour caused by shifting (unsigned char) << 24.
Reported by Tim Sweet <tsweet64@protonmail.com>
at <https://savannah.gnu.org/bugs/?66289>.
* lib/ucs4.h (ucs4_mbtowc): Cast 'unsigned char' values to ucs4_t before
shifting them to the left.
* lib/ucs4be.h (ucs4be_mbtowc): Likewise.
* lib/ucs4le.h (ucs4le_mbtowc): Likewise.
* lib/utf32.h (utf32_mbtowc): Likewise.
* lib/utf32be.h (utf32be_mbtowc): Likewise.
* lib/utf32le.h (utf32le_mbtowc): Likewise.
|
|
78eea6d4
|
2024-09-26T14:52:33
|
|
Switch to libtool 2.5.3.
* m4/libtool.m4: Update from libtool-2.5.3, 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.
* libcharset/m4/*.m4: Likewise.
* build-aux/ltmain.sh: Update from libtool-2.5.3, 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'.
* libcharset/build-aux/ltmain.sh: Likewise.
|
|
7c585ee9
|
2024-09-26T14:57:05
|
|
Update after gnulib changed.
* autogen.sh: Copy also build-to-host.m4 and host-cpu-c-abi.m4.
|
|
0d94621c
|
2024-08-24T15:46:59
|
|
Fix shared library support in 32-bit mode on FreeBSD/powerpc64.
Patch from <https://savannah.gnu.org/patch/index.php?10469>.
* m4/libtool.m4: On FreeBSD, fix shlibpath_var.
* libcharset/m4/libtool.m4: Likewise.
|
|
09865086
|
2024-08-13T20:51:25
|
|
Prefer #include <...> for system headers.
See <https://www.gnu.org/software/gnulib/manual/html_node/Style-of-_0023include-statements.html>.
* gnulib-local/lib/xmalloc.c: Include <error.h>.
* src/iconv.c: Likewise.
|
|
576d31d5
|
2024-07-12T14:07:33
|
|
Switch to automake 1.17.
* autogen.sh: Update comment.
|
|
a1f83cd2
|
2024-07-12T14:16:59
|
|
Update after gnulib changed.
|
|
e613b130
|
2024-07-12T14:06:43
|
|
Assume wchar_t.
* include/iconv.h.in (iconv_wchar_mb_to_wc_fallback,
iconv_wchar_wc_to_mb_fallback): Assume HAVE_WCHAR_T is 1.
* src/iconv.c (ilseq_wchar_subst_buffer, subst_mb_to_wc_fallback,
subst_wc_to_mb_fallback, main): Likewise.
* configure.ac (HAVE_WCHAR_T): Remove variable.
(gt_TYPE_WCHAR_T): Remove invocation.
|
|
5bddef71
|
2024-06-11T23:51:44
|
|
POSIX compliance: Interpret '-' file name as standard input.
Reported by Brian Inglis at <https://savannah.gnu.org/bugs/?65874>.
* src/iconv.c (main): Recognize the argument '-' as denoting standard
input.
|
|
ee9ea2e5
|
2024-05-23T11:22:54
|
|
INSTALL.windows: Fix MSVC instructions.
* INSTALL.windows: Mention the tools needed for 'windres'.
|
|
17a9a072
|
2024-04-04T15:21:35
|
|
Fix macro file 'serial' numbers for 'aclocal --install'.
* gnulib-local/m4/alloca.m4: Make 'serial' effective. Set value to 100,
in order to override gnulib's alloca.m4.
|
|
f492b1c6
|
2024-04-04T15:15:02
|
|
Switch to autoconf 2.72.
* autogen.sh: Update comment.
|
|
317dfadc
|
2023-09-18T13:35:39
|
|
Fix shared library support on Android.
Patch from <https://savannah.gnu.org/patch/index.php?10393>.
* m4/libtool.m4: On Android, fix library_names_spec and
hardcode_libdir_flag_spec.
* libcharset/m4/libtool.m4: Likewise.
|
|
6ad5ae56
|
2023-09-16T12:04:24
|
|
Fix a misnomer.
* include/export.h (LIBICONV_SHLIB_EXPORTED): Renamed from
LIBICONV_DLL_EXPORTED. Prefer the term "shared library", since the term
"DLL" applies only to Windows.
* Makefile.devel (include/iconv.h.build.in): Insert
LIBICONV_SHLIB_EXPORTED instead of LIBICONV_DLL_EXPORTED.
* configure.ac (DLL_VARIABLE): Update comment.
* lib/Makefile.in (DEFS): Update comment.
* woe32dll/export.h: Update comment.
* libcharset/include/export.h (LIBCHARSET_SHLIB_EXPORTED): Renamed from
LIBCHARSET_DLL_EXPORTED. Prefer the term "shared library", since the
term "DLL" applies only to Windows.
* libcharset/Makefile.devel (include/libcharset.h.build.in,
include/localcharset.h.build.in): Insert LIBCHARSET_SHLIB_EXPORTED
instead of LIBCHARSET_DLL_EXPORTED.
* libcharset/lib/relocatable-stub.c (libcharset_set_relocation_prefix): Use
LIBCHARSET_SHLIB_EXPORTED instead of LIBCHARSET_DLL_EXPORTED.
* libcharset/lib/Makefile.in (DEFS): Update comment.
* libcharset/Makefile.in (install-lib): Update comment.
|
|
d01ac199
|
2023-09-13T19:53:35
|
|
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.
|
|
999f8b33
|
2023-09-07T13:50:13
|
|
Sync woe32dll/export.h with GNU libunistring and GNU gettext.
* woe32dll/export.h: Update comments.
(IMP): Define correctly for 64-bit Windows platforms.
|
|
bacf3318
|
2023-09-06T03:29:12
|
|
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.
* libcharset/include/export.h: Add a copyright notice. Set
LIBCHARSET_DLL_EXPORTED to empty on MSVC when DLL_EXPORT is not defined.
* libcharset/Makefile.devel (include/libcharset.h.build.in,
include/localcharset.h.build.in): Filter out the second copyright
notice.
|
|
c18887cc
|
2023-08-30T12:42:46
|
|
Recognize the *-*-windows* config triplets introduced on 2023-06-26.
* configure.ac: Treat windows* as equivalent to mingw*.
|
|
865880c6
|
2023-07-18T22:26:04
|
|
Update after gnulib changed.
|
|
6e2b31f6
|
2023-06-29T15:14:13
|
|
Update the installation instructions for Windows.
* INSTALL.windows: Add a note about MSYS2.
|
|
10091cd6
|
2023-06-23T11:44:00
|
|
Assume UTF-8 for plain text.
* INSTALL.generic: Use Unicode quote characters.
|
|
5448df58
|
2023-05-29T13:59:43
|
|
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.
|
|
bf03f38b
|
2023-05-25T01:43:25
|
|
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.
|
|
db5e62f4
|
2023-05-25T01:05:43
|
|
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".
|
|
3a3cd34c
|
2023-05-25T00:19:27
|
|
Update .gitignore.
|
|
c2c61860
|
2023-05-21T22:05:44
|
|
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.
|
|
968e1240
|
2023-05-21T15:12:35
|
|
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.
|
|
6549d20c
|
2023-05-21T00:29:37
|
|
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.
|
|
45425ff4
|
2023-05-19T17:49:37
|
|
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.
|
|
41e0bd4e
|
2023-05-17T21:47:12
|
|
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".
|
|
af375a34
|
2023-05-12T22:50:18
|
|
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.
|
|
153d4079
|
2023-05-12T22:41:08
|
|
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.
|
|
33f08ec1
|
2023-04-03T20:08:16
|
|
Fix genflags compilation error.
* lib/genflags.c (ICONV_SURFACE_EBCDIC_ZOS_UNIX): New macro, copied from
include/iconv.h.in.
|
|
19b6af5e
|
2023-04-03T04:12:01
|
|
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.
|
|
af6ae1c5
|
2023-04-01T01:27:36
|
|
Correct indentation.
|
|
02abfbed
|
2023-04-01T00:56:53
|
|
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.
|
|
7b45add9
|
2023-04-01T00:34:22
|
|
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.
|
|
87e63b24
|
2023-04-01T00:29:57
|
|
Make table of transliterations more maintainable.
* tools/gen-translit-def-part.lisp: New file.
* Makefile.in (SOURCE_FILES): Add it.
|
|
dee7d5e9
|
2023-04-01T00:10:12
|
|
Fix table of transliterations.
* lib/translit.def: Sort according to Unicode code point.
|
|
c593e206
|
2023-02-13T10:59:50
|
|
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.
|
|
0a05ca75
|
2023-02-05T20:45:06
|
|
Update after gnulib changed.
|
|
e46dee2f
|
2023-01-29T20:07:21
|
|
Fix a clang warning "a function declaration without a prototype...".
* lib/loop_wchar.h (mbrtowc): Don't declare. Drop portability to BeOS.
|
|
2582e7bb
|
2022-07-18T19:33:52
|
|
Make autopull.sh more suited for continuous integration.
* autopull.sh: Support option --one-time.
|
|
f4f3b4d4
|
2022-07-18T13:30:45
|
|
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.
|
|
b9a6c979
|
2022-07-17T14:04:29
|
|
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.
|
|
1d47a157
|
2022-05-23T00:56:16
|
|
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.
|
|
4b9c27be
|
2022-05-15T15:01:28
|
|
Use the newest gettext release.
* po/Makefile.in.in: Upgrade to gettext-0.21, keeping the change
2019-01-27 Bruno Haible <bruno@clisp.org>
Accommodate a shell that is not in /bin/sh.
* po/Makefile.in.in (SHELL): Use the value found by configure.
|
|
2320d924
|
2022-05-15T14:46:44
|
|
Update translations.
* po/*.po: Update from TP, with 'msgmerge --previous'.
* po/LINGUAS: Add ko.
|
|
b003e45e
|
2022-05-15T14:25:58
|
|
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'.
|
|
8c9fa489
|
2022-04-13T18:33:16
|
|
Fix undefined behaviour.
* tests/test-shiftseq.c (main2): Make input array larger.
|
|
dc461c46
|
2022-02-12T14:11:36
|
|
Update translations.
* po/ro.po: Update Romanian translations.
* po/wa.po: Update Walloon translations.
|
|
b87dce88
|
2022-02-12T13:54:58
|
|
Regenerate PO files.
|
|
22e4bc61
|
2022-02-12T13:51:11
|
|
Update after gnulib changed.
|
|
c31a1460
|
2022-02-12T13:50:15
|
|
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.
|
|
429e0425
|
2022-02-12T13:49:13
|
|
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.
|
|
574b8292
|
2022-02-12T13:39:36
|
|
build: Remove leftover file (regression 2019-06-30).
* Makefile.in (distclean, maintainer-clean): Remove
include/libcharset.h.inst.
|
|
9bd653f3
|
2022-02-07T23:30:46
|
|
Update NEWS.
* NEWS: Mention the EBCDIC encodings.
|
|
92c01a29
|
2022-01-24T01:36:56
|
|
Update after gnulib changed.
|
|
59b4d2b4
|
2022-01-24T01:31:08
|
|
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.
|
|
68ac8a9f
|
2022-01-23T23:37:30
|
|
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.
|
|
58976846
|
2022-01-04T10:32:32
|
|
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.
|
|
05b20c93
|
2021-09-19T23:13:57
|
|
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.
|
|
4d57c61b
|
2021-09-19T22:48:01
|
|
Update after gnulib changed.
|
|
8dfed547
|
2021-06-27T20:48:45
|
|
Tweak last commit.
|
|
76d0485b
|
2021-06-27T16:39:44
|
|
README: Update.
Reported at <https://savannah.gnu.org/bugs/?60837>.
* README: Overhaul the paragraph that mentions iconv.m4.
|
|
91f96be0
|
2021-06-06T11:51:12
|
|
Change the license of the library from LGPL 2.0 to LGPL 2.1.
|
|
f221458b
|
2021-06-06T11:42:12
|
|
gnulib-local: Put real license notice into the source files.
|