2004-01-23 Artem B. Bityuckiy <abitytsky@softminecorp.com>
* acinclude.m4 (--enable-newlib-iconv): New configuration option.
(--enable-newlib-builtin-converters): Ditto.
* configure.in: Add code to set _ICONV_ENABLED flag.
Set _MB_LEN_MAX to 1 if not mb enabled.
* configure: Regenerated.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* newlib.hin: Add _ICONV_ENABLED flag.
* libc/Makefile.am: Add support for iconv.
* libc/configure.in: Ditto.
* libc/Makefile.in: Regenerated.
* libc/aclocal.m4: Ditto.
* libc/configure: Ditto.
* libc/libc.texinfo: Add iconv documentation.
* libc/iconv/AUTHORS, libc/iconv/COPYING, libc/iconv/Makefile.am,
libc/iconv/Makefile.in, libc/iconv/README.ORIGINAL,
libc/iconv/README.TODO, libc/iconv/charset.aliases,
libc/iconv/iconv.tex, libc/iconv/ccs/Makefile.am,
libc/iconv/ccs/Makefile.in, libc/iconv/ccs/README.CCS.SOURCES,
libc/iconv/ccs/big5.c, libc/iconv/ccs/cns11643_plane1.c,
libc/iconv/ccs/cns11643_plane14.c, libc/iconv/ccs/cns11643_plane2.c,
libc/iconv/ccs/cp775.c, libc/iconv/ccs/cp850.c,
libc/iconv/ccs/cp852.c, libc/iconv/ccs/cp855.c,
libc/iconv/ccs/cp866.c, libc/iconv/ccs/gb_2312_80.c,
libc/iconv/ccs/iconv_mktbl, libc/iconv/ccs/iso_8859_1.c,
libc/iconv/ccs/iso_8859_15.c, libc/iconv/ccs/iso_8859_2.c,
libc/iconv/ccs/iso_8859_4.c, libc/iconv/ccs/iso_8859_5.c,
libc/iconv/ccs/jis_x0201.c, libc/iconv/ccs/jis_x0208_1983.c,
libc/iconv/ccs/jis_x0212_1990.c, libc/iconv/ccs/koi8_r.c,
libc/iconv/ccs/koi8_u.c, libc/iconv/ccs/ksx1001.c,
libc/iconv/ccs/shift_jis.c, libc/iconv/ccs/us_ascii.c,
libc/iconv/ccs/binary/Makefile.am, libc/iconv/ccs/binary/Makefile.in,
libc/iconv/ccs/binary/big5.cct,
libc/iconv/ccs/binary/cns11643_plane1.cct,
libc/iconv/ccs/binary/cns11643_plane14.cct,
libc/iconv/ccs/binary/cns11643_plane2.cct,
libc/iconv/ccs/binary/cp775.cct, libc/iconv/ccs/binary/cp850.cct,
libc/iconv/ccs/binary/cp852.cct, libc/iconv/ccs/binary/cp855.cct,
libc/iconv/ccs/binary/cp866.cct, libc/iconv/ccs/binary/gb_2312_80.cct,
libc/iconv/ccs/binary/iso_8859_1.cct,
libc/iconv/ccs/binary/iso_8859_15.cct,
libc/iconv/ccs/binary/iso_8859_2.cct,
libc/iconv/ccs/binary/iso_8859_4.cct,
libc/iconv/ccs/binary/iso_8859_5.cct,
libc/iconv/ccs/binary/jis_x0201.cct,
libc/iconv/ccs/binary/jis_x0208_1983.cct,
libc/iconv/ccs/binary/jis_x0212_1990.cct,
libc/iconv/ccs/binary/koi8_r.cct, libc/iconv/ccs/binary/koi8_u.cct,
libc/iconv/ccs/binary/ksx1001.cct,
libc/iconv/ccs/binary/shift_jis.cct,
libc/iconv/ccs/binary/us_ascii.cct,
libc/iconv/ces/Makefile.am, libc/iconv/ces/Makefile.in,
libc/iconv/ces/euc-jp.c, libc/iconv/ces/euc-kr.c,
libc/iconv/ces/euc-tw.c, libc/iconv/ces/gb2312.c,
libc/iconv/ces/iso-10646-ucs-2.c, libc/iconv/ces/iso-10646-ucs-4.c,
libc/iconv/ces/ucs-2-internal.c, libc/iconv/ces/ucs-4-internal.c,
libc/iconv/ces/utf-16.c, libc/iconv/ces/utf-8.c,
libc/iconv/lib/Makefile.am, libc/iconv/lib/Makefile.in,
libc/iconv/lib/aliases.c, libc/iconv/lib/bialiasesi.c,
libc/iconv/lib/biccs.c, libc/iconv/lib/bices.c,
libc/iconv/lib/ccs.c, libc/iconv/lib/ces.c,
libc/iconv/lib/ces_euc.c, libc/iconv/lib/ces_iso2022.c,
libc/iconv/lib/ces_table.c, libc/iconv/lib/converter.c,
libc/iconv/lib/deps.h, libc/iconv/lib/endian.h,
libc/iconv/lib/iconv.c, libc/iconv/lib/loaddata.c,
libc/iconv/lib/local.h, libc/include/iconv.h: New files.
* libc/sys/linux/include/iconv.h: Ditto.
* libc/include/sys/_types.h (_iconv_t): Added.
* doc/aclocal.m4: Regenerated.
* doc/configure: Ditto.
* doc/Makefile.in: Ditto.
* iconvdata/Makefile.in: Ditto.
* iconvdata/aclocal.m4: Ditto.
* iconvdata/configure: Ditto.
* libc/*aclocal.m4: Ditto.
* libc/*Makefile.in: Ditto.
* libc/*configure: Ditto.
* libm/*aclocal.m4: Ditto.
* libm/*Makefile.in: Ditto.
* libm/*configure: Ditto.
2004-01-24 05:37:46 +08:00
|
|
|
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.
|
2004-01-28 07:26:26 +08:00
|
|
|
Both .c and .cct files are generated by 'iconv_mktbl' perl script from
|
2004-01-23 Artem B. Bityuckiy <abitytsky@softminecorp.com>
* acinclude.m4 (--enable-newlib-iconv): New configuration option.
(--enable-newlib-builtin-converters): Ditto.
* configure.in: Add code to set _ICONV_ENABLED flag.
Set _MB_LEN_MAX to 1 if not mb enabled.
* configure: Regenerated.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* newlib.hin: Add _ICONV_ENABLED flag.
* libc/Makefile.am: Add support for iconv.
* libc/configure.in: Ditto.
* libc/Makefile.in: Regenerated.
* libc/aclocal.m4: Ditto.
* libc/configure: Ditto.
* libc/libc.texinfo: Add iconv documentation.
* libc/iconv/AUTHORS, libc/iconv/COPYING, libc/iconv/Makefile.am,
libc/iconv/Makefile.in, libc/iconv/README.ORIGINAL,
libc/iconv/README.TODO, libc/iconv/charset.aliases,
libc/iconv/iconv.tex, libc/iconv/ccs/Makefile.am,
libc/iconv/ccs/Makefile.in, libc/iconv/ccs/README.CCS.SOURCES,
libc/iconv/ccs/big5.c, libc/iconv/ccs/cns11643_plane1.c,
libc/iconv/ccs/cns11643_plane14.c, libc/iconv/ccs/cns11643_plane2.c,
libc/iconv/ccs/cp775.c, libc/iconv/ccs/cp850.c,
libc/iconv/ccs/cp852.c, libc/iconv/ccs/cp855.c,
libc/iconv/ccs/cp866.c, libc/iconv/ccs/gb_2312_80.c,
libc/iconv/ccs/iconv_mktbl, libc/iconv/ccs/iso_8859_1.c,
libc/iconv/ccs/iso_8859_15.c, libc/iconv/ccs/iso_8859_2.c,
libc/iconv/ccs/iso_8859_4.c, libc/iconv/ccs/iso_8859_5.c,
libc/iconv/ccs/jis_x0201.c, libc/iconv/ccs/jis_x0208_1983.c,
libc/iconv/ccs/jis_x0212_1990.c, libc/iconv/ccs/koi8_r.c,
libc/iconv/ccs/koi8_u.c, libc/iconv/ccs/ksx1001.c,
libc/iconv/ccs/shift_jis.c, libc/iconv/ccs/us_ascii.c,
libc/iconv/ccs/binary/Makefile.am, libc/iconv/ccs/binary/Makefile.in,
libc/iconv/ccs/binary/big5.cct,
libc/iconv/ccs/binary/cns11643_plane1.cct,
libc/iconv/ccs/binary/cns11643_plane14.cct,
libc/iconv/ccs/binary/cns11643_plane2.cct,
libc/iconv/ccs/binary/cp775.cct, libc/iconv/ccs/binary/cp850.cct,
libc/iconv/ccs/binary/cp852.cct, libc/iconv/ccs/binary/cp855.cct,
libc/iconv/ccs/binary/cp866.cct, libc/iconv/ccs/binary/gb_2312_80.cct,
libc/iconv/ccs/binary/iso_8859_1.cct,
libc/iconv/ccs/binary/iso_8859_15.cct,
libc/iconv/ccs/binary/iso_8859_2.cct,
libc/iconv/ccs/binary/iso_8859_4.cct,
libc/iconv/ccs/binary/iso_8859_5.cct,
libc/iconv/ccs/binary/jis_x0201.cct,
libc/iconv/ccs/binary/jis_x0208_1983.cct,
libc/iconv/ccs/binary/jis_x0212_1990.cct,
libc/iconv/ccs/binary/koi8_r.cct, libc/iconv/ccs/binary/koi8_u.cct,
libc/iconv/ccs/binary/ksx1001.cct,
libc/iconv/ccs/binary/shift_jis.cct,
libc/iconv/ccs/binary/us_ascii.cct,
libc/iconv/ces/Makefile.am, libc/iconv/ces/Makefile.in,
libc/iconv/ces/euc-jp.c, libc/iconv/ces/euc-kr.c,
libc/iconv/ces/euc-tw.c, libc/iconv/ces/gb2312.c,
libc/iconv/ces/iso-10646-ucs-2.c, libc/iconv/ces/iso-10646-ucs-4.c,
libc/iconv/ces/ucs-2-internal.c, libc/iconv/ces/ucs-4-internal.c,
libc/iconv/ces/utf-16.c, libc/iconv/ces/utf-8.c,
libc/iconv/lib/Makefile.am, libc/iconv/lib/Makefile.in,
libc/iconv/lib/aliases.c, libc/iconv/lib/bialiasesi.c,
libc/iconv/lib/biccs.c, libc/iconv/lib/bices.c,
libc/iconv/lib/ccs.c, libc/iconv/lib/ces.c,
libc/iconv/lib/ces_euc.c, libc/iconv/lib/ces_iso2022.c,
libc/iconv/lib/ces_table.c, libc/iconv/lib/converter.c,
libc/iconv/lib/deps.h, libc/iconv/lib/endian.h,
libc/iconv/lib/iconv.c, libc/iconv/lib/loaddata.c,
libc/iconv/lib/local.h, libc/include/iconv.h: New files.
* libc/sys/linux/include/iconv.h: Ditto.
* libc/include/sys/_types.h (_iconv_t): Added.
* doc/aclocal.m4: Regenerated.
* doc/configure: Ditto.
* doc/Makefile.in: Ditto.
* iconvdata/Makefile.in: Ditto.
* iconvdata/aclocal.m4: Ditto.
* iconvdata/configure: Ditto.
* libc/*aclocal.m4: Ditto.
* libc/*Makefile.in: Ditto.
* libc/*configure: Ditto.
* libm/*aclocal.m4: Ditto.
* libm/*Makefile.in: Ditto.
* libm/*configure: Ditto.
2004-01-24 05:37:46 +08:00
|
|
|
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.
|
|
|
|
|