[CFT] BSDL iconv in base system

Gabor Kovesdan gabor at FreeBSD.org
Tue Jun 15 00:13:48 UTC 2010


Hello Folks,

during the last summer, Google generously founded my Summer of Code 
project, which was providing a BSD-licensed iconv implementation for 
FreeBSD. I'm proud to announce that the work has been completed and a 
patch is available to add it to the base system.

The results of this work are:
- The Citrus implementation has been ported from NetBSD.
- Some utilities have been added. There is a conversion table generator, 
which can compare conversion tables to reference data generated by GNU 
libiconv. This helps ensuring conversion compatibility.
- UTF-16 surrogate support and some endianness issues have been fixed.
- The rather chaotic Makefiles to build metadata have been refactored 
and cleaned up, now it is easy to read and it is also easier to add 
support for new encodings.
- A bunch of new encodings and encoding aliases have been added.
- Support for 1->2, 1->3 and 1->4 mappings, which is needed for 
transliterating with flying accents as GNU does, like "u.
- Lots of warnings have been fixed, the major part of the code is now 
WARNS=6 clean.
- New section 1 and section 5 manual pages have been added.
- Some GNU-specific calls have been implemented: iconvlist(), 
iconvctl(), iconv_canonicalize(), iconv_open_into()
- Support for GNU's //IGNORE suffix has been added.
- The "-" argument for stdin is now recognized in iconv(1) as per POSIX.
- The Big5 conversion module has been fixed.
- The iconv.h header files is supposed to be compatible with the GNU 
version, i.e. sources should build with base iconv.h and GNU libiconv. 
I've just did a very quick test and it seems ports can safely link to 
GNU libiconv, there's no conflict.
- Various cleanups and style(9) fixes.
- A bachelor thesis written in Hungarian language: 
http://www.kovesdan.org/files/bsc_iconv.pdf

The rather big patch (42,5M) is available here: 
http://www.kovesdan.org/patches/iconv_base_integrate.diff

Any comments, suggestions or bugreports are very welcome.

-- 
Gabor Kovesdan
FreeBSD Volunteer

EMAIL:gabor at FreeBSD.org  .:|:.gabor at kovesdan.org
WEB:http://people.FreeBSD.org/~gabor  .:|:.http://kovesdan.org



More information about the freebsd-current mailing list