[CFT] BSDL iconv in base system
gabor at FreeBSD.org
Tue Jun 15 00:13:48 UTC 2010
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
- 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:
The rather big patch (42,5M) is available here:
Any comments, suggestions or bugreports are very welcome.
EMAIL:gabor at FreeBSD.org .:|:.gabor at kovesdan.org
More information about the freebsd-current