mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-29 10:30:50 +08:00
01e0a77749
* configure.in: Add support to generate iconv converter flags for newlib.h * newlib.hin: Add iconv converter flags. * configure: Regenerated. * libc/Makefile.in: Ditto. * libc/configure.in: Moved iconv converter parsing logic to top level newlib configure.in. * libc/configure: Regenerated. * libc/iconv/Makefile.in: Ditto. * libc/iconv/README.TODO * libc/iconv/charset.aliases: Remove wrong BE aliases for UCS2/UCS4/UTF8. * libc/iconv/ccs/Makefile.am: Remove C flag setting now that newlib.h can be used. * libc/iconv/ces/Makefile.am: Ditto. * libc/iconv/lib/Makefile.am: Ditto. * libc/iconv/ccs/Makefile.in: Regenerated. * libc/iconv/ces/Makefile.in: Ditto. * libc/iconv/lib/Makefile.in: Ditto. * libc/iconv/ccs/README.CCS.SOURCES: Updated. * libc/iconv/ccs/iconv_mktbl: Don't write junk strings to binaries. * libc/iconv/ccs/big5.c: Switch to use new underscored flags defined in newlib.h. * libc/iconv/ccs/cns11643_plane1.c: Ditto. * libc/iconv/ccs/cns11643_plane14.c: Ditto. * libc/iconv/ccs/cns11643_plane2.c: Ditto. * libc/iconv/ccs/cp775.c: Ditto. * libc/iconv/ccs/cp850.c: Ditto. * libc/iconv/ccs/cp852.c: Ditto. * libc/iconv/ccs/cp855.c: Ditto. * libc/iconv/ccs/cp866.c: Ditto. * libc/iconv/ccs/gb_2312_80.c: Ditto. * libc/iconv/ccs/iso_8859_1.c: Ditto. * libc/iconv/ccs/iso_8859_15.c: Ditto. * libc/iconv/ccs/iso_8859_2.c: Ditto. * libc/iconv/ccs/iso_8859_4.c: Ditto. * libc/iconv/ccs/iso_8859_5.c: Ditto. * libc/iconv/ccs/jis_x0201.c: Ditto. * libc/iconv/ccs/jis_x0208_1983.c: Ditto. * libc/iconv/ccs/jis_x0212_1990.c: Ditto. * libc/iconv/ccs/koi8_r.c: Ditto. * libc/iconv/ccs/koi8_u.c: Ditto. * libc/iconv/ccs/ksx1001.c: Ditto. * libc/iconv/ccs/shift_jis.c: Ditto. * libc/iconv/ccs/us_ascii.c: Ditto. * libc/iconv/ccs/binary/big5.cct: Newly generated. * libc/iconv/ccs/binary/cns11643_plane1.cct: Ditto. * libc/iconv/ccs/binary/cns11643_plane14.cct: Ditto. * libc/iconv/ccs/binary/cns11643_plane2.cct: Ditto. * libc/iconv/ccs/binary/cp775.cct: Ditto. * libc/iconv/ccs/binary/cp850.cct: Ditto. * libc/iconv/ccs/binary/cp852.cct: Ditto. * libc/iconv/ccs/binary/cp855.cct: Ditto. * libc/iconv/ccs/binary/cp866.cct: Ditto. * libc/iconv/ccs/binary/gb_2312_80.cct: Ditto. * libc/iconv/ccs/binary/iso_8859_1.cct: Ditto. * libc/iconv/ccs/binary/iso_8859_15.cct: Ditto. * libc/iconv/ccs/binary/iso_8859_2.cct: Ditto. * libc/iconv/ccs/binary/iso_8859_4.cct: Ditto. * libc/iconv/ccs/binary/iso_8859_5.cct: Ditto. * libc/iconv/ccs/binary/jis_x0201.cct: Ditto. * libc/iconv/ccs/binary/jis_x0208_1983.cct: Ditto. * libc/iconv/ccs/binary/jis_x0212_1990.cct: Ditto. * libc/iconv/ccs/binary/koi8_r.cct: Ditto. * libc/iconv/ccs/binary/koi8_u.cct: Ditto. * libc/iconv/ccs/binary/ksx1001.cct: Ditto. * libc/iconv/ccs/binary/shift_jis.cct: Ditto. * libc/iconv/ccs/binary/us_ascii.cct: Ditto. * libc/iconv/lib/bialiasesi.c: Sync with charset.aliases. * libc/iconv/ces/euc-jp.c: Use newlib.h macros. * libc/iconv/ces/euc-kr.c: Ditto. * libc/iconv/ces/euc-tw.c: Ditto. * libc/iconv/ces/gb2312.c: Ditto. * libc/iconv/ces/iso-10646-ucs-2.c: Ditto. * libc/iconv/ces/iso-10646-ucs-4.c: Ditto. * libc/iconv/ces/ucs-2-internal.c: Ditto. * libc/iconv/ces/ucs-4-internal.c: Ditto. * libc/iconv/ces/utf-16.c: Ditto. * libc/iconv/ces/utf-8.c: Ditto. * libc/iconv/lib/aliases.c: Ditto. * libc/iconv/lib/biccs.c: Ditto. * libc/iconv/lib/bices.c: Ditto. * libc/iconv/lib/ccs.c: Ditto. * libc/iconv/lib/ces.c: Ditto. * libc/iconv/lib/ces_euc.c: Ditto. * libc/iconv/lib/ces_iso2022.c: Ditto. * libc/iconv/lib/ces_table.c: Ditto. * libc/iconv/lib/converter.c: Ditto. * libc/iconv/lib/deps.h: Ditto. * libc/iconv/lib/endian.h: Ditto. * libc/iconv/lib/iconv.c: Ditto. * libc/iconv/lib/loaddata.c: Ditto. * libc/iconv/lib/local.h: Include newlib.h. * libc/argz/Makefile.in: Regenerated. * libc/ctype/Makefile.in: Ditto. * libc/errno/Makefile.in: Ditto. * libc/iconv/ccs/binary/Makefile.in: Ditto. * libc/locale/Makefile.in: Ditto. * libc/misc/Makefile.in: Ditto. * libc/posix/Makefile.in: Ditto. * libc/reent/Makefile.in: Ditto. * libc/search/Makefile.in: Ditto. * libc/signal/Makefile.in: Ditto. * libc/stdio/Makefile.in: Ditto. * libc/stdio64/Makefile.in: Ditto. * libc/stdlib/Makefile.in: Ditto. * libc/string/Makefile.in: Ditto. * libc/syscalls/Makefile.in: Ditto. * libc/time/Makefile.in: Ditto. * libc/unix/Makefile.in: Ditto. * testsuite/newlib.iconv/iconv.exp: New file. * testsuite/newlib.iconv/iconvjp.c: Ditto. * testsuite/newlib.iconv/iconvnm.c: Ditto. * testsuite/newlib.iconv/iconvru.c: Ditto.
160 lines
5.1 KiB
Plaintext
160 lines
5.1 KiB
Plaintext
This directory contains CCS conversion tables - both C files and .cct files.
|
|
.cct files are for dynamic loading, .c files are for static linking with Newlib.
|
|
Both .c and .cct files are generated by 'iconv_mktbl' perl script from
|
|
special source files (call them .txt files). These .txt files can be taken
|
|
from Unicode.org site, addresses are given in the end.
|
|
|
|
.c files are linked with Newlib if correspondent 'configure' script option
|
|
was given. This helps to use iconv on targets without file system support.
|
|
If CCS table wasn't configured to be linked, iconv library tries to load it
|
|
dynamically from correspondent .cct file.
|
|
|
|
The following are commands to build .c and .cct CCS rable files from .txt
|
|
files for several supported encodings.
|
|
--------------------------------------------------------------------------
|
|
cp775
|
|
iconv_mktbl -Co cp775.c cp775.txt
|
|
iconv_mktbl -o cp775.cct cp775.txt
|
|
|
|
cp850
|
|
iconv_mktbl -Co cp850.c cp850.txt
|
|
iconv_mktbl -o cp850.cct cp850.txt
|
|
|
|
cp852
|
|
iconv_mktbl -Co cp852.c cp852.txt
|
|
iconv_mktbl -o cp852.cct cp852.txt
|
|
|
|
cp855
|
|
iconv_mktbl -Co cp855.c cp855.txt
|
|
iconv_mktbl -o cp855.cct cp855.txt
|
|
|
|
cp866
|
|
iconv_mktbl -Co cp866.c cp866.txt
|
|
iconv_mktbl -o cp866.cct cp866.txt
|
|
|
|
iso-8859-1
|
|
iconv_mktbl -Co iso-8859-1.c iso-8859-1.txt
|
|
iconv_mktbl -o iso-8859-1.cct iso-8859-1.txt
|
|
|
|
iso-8859-4
|
|
iconv_mktbl -Co iso-8859-4.c iso-8859-4.txt
|
|
iconv_mktbl -o iso-8859-4.cct iso-8859-4.txt
|
|
|
|
iso-8859-5
|
|
iconv_mktbl -Co iso-8859-5.c iso-8859-5.txt
|
|
iconv_mktbl -o iso-8859-5.cct iso-8859-5.txt
|
|
|
|
iso-8859-2
|
|
iconv_mktbl -Co iso-8859-2.c iso-8859-2.txt
|
|
iconv_mktbl -o iso-8859-2.cct iso-8859-2.txt
|
|
|
|
iso-8859-15
|
|
iconv_mktbl -Co iso-8859-15.c iso-8859-15.txt
|
|
iconv_mktbl -o iso-8859-15.cct iso-8859-15.txt
|
|
|
|
big5
|
|
iconv_mktbl -Co big5.c big5.txt
|
|
iconv_mktbl -o big5.cct big5.txt
|
|
|
|
ksx1001
|
|
iconv_mktbl -Co ksx1001.c ksx1001.txt
|
|
iconv_mktbl -o ksx1001.cct ksx1001.txt
|
|
|
|
gb_2312
|
|
iconv_mktbl -Co gb_2312-80.c gb_2312-80.txt
|
|
iconv_mktbl -o gb_2312-80.cct gb_2312-80.txt
|
|
|
|
jis_x0201
|
|
iconv_mktbl -Co jis_x0201.c jis_x0201.txt
|
|
iconv_mktbl -o jis_x0201.cct jis_x0201.txt
|
|
|
|
shift_jis
|
|
iconv_mktbl -Co shift_jis.c shift_jis.txt
|
|
iconv_mktbl -o shift_jis.cct shift_jis.txt
|
|
|
|
jis_x0208
|
|
iconv_mktbl -C -c 1 -u 2 -o jis_x0208-1983.c jis_x0208-1983.txt
|
|
iconv_mktbl -c 1 -u 2 -o jis_x0208-1983.cct jis_x0208-1983.txt
|
|
|
|
jis_x0212
|
|
iconv_mktbl -Co jis_x0212-1990.c jis_x0212-1990.txt
|
|
iconv_mktbl -o jis_x0212-1990.cct jis_x0212-1990.txt
|
|
|
|
cns11643-plane1
|
|
iconv_mktbl -C -p 0x1 -o cns11643-plane1.c cns11643.txt
|
|
iconv_mktbl -p 0x1 -o cns11643-plane1.cct cns11643.txt
|
|
|
|
cns11643-plane2
|
|
iconv_mktbl -C -p 0x2 -o cns11643-plane2.c cns11643.txt
|
|
iconv_mktbl -p 0x2 -o cns11643-plane2.cct cns11643.txt
|
|
|
|
cns11643-plane14
|
|
iconv_mktbl -C -p 0xE -o cns11643-plane14.c cns11643.txt
|
|
iconv_mktbl -p 0xE -o cns11643-plane14.cct cns11643.txt
|
|
|
|
koi8-r
|
|
iconv_mktbl -Co koi8-r.c koi8-r.txt
|
|
iconv_mktbl -o koi8-r.cct koi8-r.txt
|
|
|
|
koi8-u
|
|
iconv_mktbl -Co koi8-u.c koi8-u.txt
|
|
iconv_mktbl -o koi8-u.cct koi8-u.txt
|
|
|
|
us-ascii
|
|
iconv_mktbl -Cao us-ascii.c iso-8859-1.txt
|
|
iconv_mktbl -ao us-ascii.cct iso-8859-1.txt
|
|
--------------------------------------------------------------------------
|
|
Source files for CCS tables can be taken from at least two places:
|
|
|
|
1. http://www.unicode.org/Public/MAPPINGS/ contains a lot of encoding
|
|
map files.
|
|
2. http://www.dante.net/staff/konstantin/FreeBSD/iconv/ contains original
|
|
iconv sources and encoding map files.
|
|
|
|
Makefile in this directory contains rules to make .cct and .c files from
|
|
source encoding map files. It has rules to make the following tables (with
|
|
source map file URL):
|
|
|
|
big5
|
|
http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT
|
|
|
|
cns11643_plane14, cns11643_plane1 and cns11643_plane2
|
|
http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/CNS11643.TXT
|
|
|
|
cp775, cp850, cp852, cp855, cp866
|
|
http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/
|
|
|
|
gb_2312_80
|
|
http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/GB/GB2312.TXT
|
|
|
|
iso_8859_15, iso_8859_1, iso_8859_2, iso_8859_4, iso_8859_5
|
|
http://www.unicode.org/Public/MAPPINGS/ISO8859/
|
|
|
|
jis_x0201, jis_x0208_1983, jis_x0212_1990, shift_jis
|
|
http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/JIS0201.TXT
|
|
|
|
koi8_r
|
|
http://www.unicode.org/Public/MAPPINGS/VENDORS/MISC/KOI8-R.TXT
|
|
|
|
ksx1001
|
|
http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/KSC/KSX1001.TXT
|
|
|
|
koi8-u can be given from original FreeBSD iconvi library distribution
|
|
http://www.dante.net/staff/konstantin/FreeBSD/iconv/
|
|
|
|
Moreover, http://www.dante.net/staff/konstantin/FreeBSD/iconv/ contains a
|
|
lot of additional CCS tables that you can use with Newlib.
|
|
|
|
If you will try to add another CCS table, be
|
|
careful with 'iconv_mktbl' script since it can contain bugs. Try to take
|
|
'iconv_mktbl' from original FreeBSD iconv library distribution. Rules
|
|
to build .c and .ccs files are also can be given in original iconv library
|
|
distribution.
|
|
|
|
Artem B. Bityuckiy,
|
|
SoftMine Corporation,
|
|
<abitytsky@softminecorp.com>,
|
|
<dedekind@mail.ru>,
|
|
Dec, 2003.
|
|
|