freebsd-src/lib
Gabor Kovesdan ad30f8e79b Add the BSD-licensed Citrus iconv to the base system with default off
setting. It can be built by setting the WITH_ICONV knob. While this
knob is unset, the library part, the binaries, the header file and
the metadata files will not be built or installed so it makes no impact
on the system if left turned off.

This work is based on the iconv implementation in NetBSD but a great
number of improvements and feature additions have been included:

- 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. It also includes a macro magic to deal with the
  char ** and const char ** incompatibility.
- GNU compatibility: "" or "char" means the current local
  encoding in use
- Various cleanups and style(9) fixes.

Approved by:	delphij (mentor)
Obtained from:	The NetBSD Project
Sponsored by:	Google Summer of Code 2009
2011-02-25 00:04:39 +00:00
..
bind Update to BIND 9.6.3, the latest from ISC on the 9.6 branch. 2011-02-06 22:46:07 +00:00
clang Upgrade our copy of llvm/clang to r126079, from upstream's trunk. 2011-02-20 19:33:47 +00:00
csu Turn off default generation of userland dot symbols on powerpc64 now that 2011-02-18 21:44:53 +00:00
libalias
libarchive Don't write data into an empty "file." 2010-12-07 16:48:01 +00:00
libauditd
libbegemot
libblocksruntime Import libcompiler_rt into HEAD and add Makefiles. 2010-11-11 15:13:11 +00:00
libbluetooth
libbsm
libbsnmp Unbreak the build by temprorarily not using include directives in 2010-12-20 22:56:50 +00:00
libbz2
libc Add the BSD-licensed Citrus iconv to the base system with default off 2011-02-25 00:04:39 +00:00
libcalendar
libcam Add Serial Management Protocol (SMP) passthrough support to CAM. 2010-11-30 22:39:46 +00:00
libcom_err
libcompat
libcompiler_rt Mark libcompiler_rt as not needed executable stack on powerpc. 2011-01-14 11:23:39 +00:00
libcrypt
libdevinfo sys/rman.h now requires sys/types.h. Include it to make the API match 2011-02-10 04:53:09 +00:00
libdevstat
libdisk
libdwarf
libedit
libefi
libelf Do not allocate buffer to hold data for zero-sized sections. 2011-01-25 19:17:50 +00:00
libexpat
libfetch Fix a bug related to connection caching which could cause a crash after 2011-01-17 17:25:46 +00:00
libftpio
libgeom Remove stale link. 2010-12-04 08:44:56 +00:00
libgpib
libgssapi
libiconv Add the BSD-licensed Citrus iconv to the base system with default off 2011-02-25 00:04:39 +00:00
libiconv_modules Add the BSD-licensed Citrus iconv to the base system with default off 2011-02-25 00:04:39 +00:00
libipsec The use of snprintf() to append to a buffer is not valid according to C99 2010-12-11 08:07:21 +00:00
libipx
libjail Introduce signed and unsigned version of CTLTYPE_QUAD, renaming 2011-01-19 23:00:25 +00:00
libkiconv
libkse
libkvm libkvm: fix logic inversion introduced with last commit 2011-02-02 17:01:26 +00:00
liblzma Fix some leftover binaries and shared libraries in the system that still 2011-02-15 22:03:09 +00:00
libmagic
libmd Fix some leftover binaries and shared libraries in the system that still 2011-02-15 22:03:09 +00:00
libmemstat
libmilter
libmp
libncp
libnetgraph
libngatm
libopie
libpam Add <time.h> for ctime(), which we accidentally picked up through 2010-11-22 14:45:16 +00:00
libpcap Regenerate our lib/libpcap/config.h for libpcap 1.1.1. 2010-10-29 22:57:14 +00:00
libpkg Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
libpmc Revert last commit: CPUTYPE will be defined here 2011-02-11 02:34:26 +00:00
libproc Fix a memory leak on the error condition 2010-12-14 15:14:08 +00:00
libradius
librpcsec_gss
librpcsvc
librt Fix the 32-bit build stage on amd64 when WITH_CTF is enabled. It seems 2011-02-23 21:17:38 +00:00
librtld_db
libsbuf
libsdp
libsm
libsmb
libsmdb
libsmutil
libstand Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
libtacplus
libtelnet
libthr Introduce a non-portable function pthread_getthreadid_np(3) to retrieve 2011-02-07 21:26:46 +00:00
libthread_db
libufs Replace ERROR() macro with inline function. In-tree gcc cannot tolerate 2011-02-12 12:46:00 +00:00
libugidfw Quiet clang warnings by using string literal format strings. 2011-01-04 13:02:52 +00:00
libulog
libusb Check the return value of malloc(). 2010-12-14 15:11:49 +00:00
libusbhid
libutil
libvgl
libwrap
liby
libypclnt
libz Upgrade our copy of llvm/clang to r126079, from upstream's trunk. 2011-02-20 19:33:47 +00:00
msun Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
ncurses
Makefile Add the BSD-licensed Citrus iconv to the base system with default off 2011-02-25 00:04:39 +00:00
Makefile.inc