newlib-cygwin/newlib/libc/iconv/ccs/README.CCS.SOURCES

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.