1. newlib/iconv/ccs/iconv_mktbl Perl script should be upgraded. Currently
this script can only generate Big Endian (Network Byte Order) .cct files.
This decreases conversion performance on little endian systems since iconv
library needs to swap all bytes that it reads from loaded CCS table.
Something such -LE and -BE options should be added to 'iconv_mktbl' script.
Also, we can keep two .cct file versions - BE and LE (e.g., koi8_r-le.cct
and koi8_r-be.cct) and iconv library will automatically choose needed cct.
Or we can keep both LE and BE data in one .cct file.
2. http://www.dante.net/staff/konstantin/FreeBSD/iconv/ contains additional
CES and CCS converters (see iconv-extra-2.0.tar.gz and
iconv-rfc1345-2.0.tar.gz). These extra converters should be added too.
3. Documentation should be created. It should contain:
1) How to compile iconv (configure script options description)
2) How to add new converter
3) Work principles.
It would be nice if iconv architecture will be described too.
4. CCS files loading (iconv/lib/loaddata.c). Now file is loaded into memory
for every iconv descriptor. For example, if one use two iconv descriptors
for UTF8->KOI8-R and UTF-16->KOI8-R conversions, koi8_r.cct file will
be loaded twice. To save memory, we should load each .cct only once
(if possible).
Artem B. Bityuckiy,
SoftMine Corporation,
<abitytsky@softminecorp.com>,
<dedekind@mail.ru>,
Jan, 2004.