Changes of Jun 8 to /sys-libs/files/eblits/src_unpack.eblit mean that the var LIB_IDNVER must be set in the glibc ebuild in order for libidn to be unpacked (here's a diff excerpt): $ diff ~/glibc/files/eblits/src_unpack.eblit src_unpack.eblit 3c3 < # $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.4 2007/11/11 20:12:38 vapier Exp $ --- > # $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.5 2008/06/08 00:49:09 vapier Exp $ : 60,62c63,65 < [[ -n ${LT_VER} ]] && unpack glibc-linuxthreads-${LT_VER}.tar.bz2 < [[ -n ${PORTS_VER} ]] && unpack_addon ports ${PORTS_VER} < unpack_addon libidn --- > [[ -n ${LT_VER} ]] && unpack_pkg linuxthreads ${LT_VER} > [[ -n ${PORTS_VER} ]] && unpack_pkg ports ${PORTS_VER} > [[ -n ${LIBIDN_VER} ]] && unpack_pkg libidn : Unfortunately, the corresponding change to glib-2.6.1 is missing, meaning that glibc gets build without the libidn addon. Without the libidn addon, applications that use internationalised domain names fail. For example: $ traceroute www.google.com.au www.google.com.au: Bad value for ai_flags Cannot handle "host" cmdline arg `www.google.com.au' on position 1 (argc 1) Here's a patch to fix the problem: $diff -N /usr/portage/sys-libs/glibc/glibc-2.6.1.ebuild glibc-2.6.1.ebuild 23a24 > LIBIDN_VER="2.6.1" # version of libidn addon I've marked this critical as it's the stable glibc that's affected. Reproducible: Always Steps to Reproduce: 1.Emerge glibc stable 2.6.1 2.Notice in emerge output that glibc-libidn-2.6.1.tar.bz2 isn't unpacked 3.Notice that libcidn.so isn't built as part of glibc 4.traceroute fails with "bad ai_flags" I'm not sure how glibc gets tested, but it would be good to have something in the test suite that picks up missing add-ons... it's an easy sort of mistake to make.
Correction, patch should probably read: LIBIDN_VER=${RELEASE_VER} # version of libidn addon
After upgrading to gcc 4.3.1, I've reemerged `system` and now I have this problem, using glibc-2.7-r2 Portage 2.1.5.4 (default-linux/x86/2007.0, gcc-4.3.1, glibc-2.7-r2, 2.6.24-gentoo-r8 i686) ================================================================= System uname: 2.6.24-gentoo-r8 i686 AMD Athlon(tm) XP 2600+ Timestamp of tree: Wed, 11 Jun 2008 06:45:01 +0000 app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.3.6-r2, 2.4.4-r4, 2.5.2-r4 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.62 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.4 virtual/os-headers: 2.6.25-r4 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/openjms/config /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps y" FEATURES="candy distlocks fixpackages parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp.roedu.net/pub/mirrors/gentoo.org" LDFLAGS="" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="3dnow aalib acl acpi adns alsa apache2 bzip2 cairo caps cli cracklib crypt cups curl curlwrappers dio exif expat flac fortran ftp gd gif gmp gpm iconv idn imagemagick imap imlib isdnlog jpeg mad maildir mailwrapper memlimit mhash midi mmap mmx mudflap ncurses network-cron nocxx nptl nptlonly offensive oggvorbis openmp pam pcntl pcre png posix pppd readline reflection samba session shared sharedmem slang soap sockets speex spl sse ssl svg sysvipc tcpd theora tiff truetype unicode urandom usb vhosts vim-syntax wmf x86 xml xmlrpc xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LANG, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
I've reemerged glibc-2.7-r2 again, and idn support still isn't compiled in... I've saved the output of the emerge and searched for `idn`, and there are only 2 lines containing the string: * glibc-libidn-2.7.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking glibc-libidn-2.7.tar.bz2 ;-) ... [ ok ]
fixed in cvs http://sources.gentoo.org/sys-libs/glibc/glibc-2.6.1.ebuild?r1=1.21&r2=1.22 http://sources.gentoo.org/sys-libs/glibc/glibc-2.7-r2.ebuild?r1=1.4&r2=1.5