FreeBSD and WITH_ICONV
I’ve put WITH_ICONV=yes in my /etc/src.conf file on a few VMs running stable/9, and yes, I got burned. My beloved server named enterprise running stable/9 was also affected. :-/
By enabling WITH_ICONV, certain iconv related functions will be compiled and placed in libc. This didn’t shown any ill side effects until early August when updating ports such as devel/glib and devel/bzr failed with complaints such as:
msgfmt -o po/da.mo po/da.po po/da.po:66:7: invalid multibyte sequence
At first it would seem msgfmt is less forgiving or downright confused when linked with an iconv enabled libc. Not to worry, a dermal regenerator is available.
Solution
Remove
WITH_ICONV=yes WITH_LIBICONV_COMPAT=yes
from both /etc/make.conf and /etc/src.conf.
Update your source tree, recompile world and kernel, install the new world and kernel, remove /usr/include/iconv.h as it will not be removed by make delete-old, update your ports tree, and reinstall all ports depending on devel/gettext and converters/libiconv.