Cannot emerge with tr_TR.UTF-8 locale. When i try with LC_ALL="C", it was good.. Adding build log as attachment.. Reproducible: Always # emerge --info Portage 2.1.6.3 (default/linux/x86/2008.0, gcc-4.3.2, glibc-2.9_p20081201-r0, 2.6.28-rc3-zen1 i686) ================================================================= System uname: Linux-2.6.28-rc3-zen1-i686-Intel-R-_Core-TM-2_Duo_CPU_T7100_@_1.80GHz-with-glibc2.0 Timestamp of tree: Fri, 26 Dec 2008 00:35:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p48 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r8 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.6.2 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.1 sys-apps/sandbox: 1.3.2 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.19 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O3 -march=core2 -mtune=core2 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O3 -march=core2 -mtune=core2 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://mirror.qubenet.net/mirror/gentoo/ http://gentoo.tiscali.nl/ http://gentoo.mneisen.org/" LANG="tr_TR.UTF-8" LC_ALL="tr_TR.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,--sort-common -s" LINGUAS="tr" MAKEOPTS="-j4 -s " 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/layman/desktop-effects /usr/local/portage/layman/arcon /usr/local/portage/layman/zen-overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acl acpi alsa bash-completion bluetooth bzip2 cli cracklib crypt custom-cflags dbus device-mapper disk-partition dri effects fat ffmpeg firefox fortran freetype gdbm gif gimpprint glitz gnome gpm gst gstreamer gtk gtk2 hal iconv icq ipv6 irc isdnlog jabber jfs jpeg laptop lcd lm_sensors midi mjpeg mmx mng moznocompose moznoirc moznomail moznopango mp3 msn mudflap nautilus ncurses network networkmanager nls nptl nptlonly ntfs ogg opengl openmp pam pcre pdf perl pidgin plugin png pppd python rar readline reflection reiser4 reiserfs rss ruby session spl sqlite3 sse sse2 ssl ssse3 startup-notification subversion svg sysfs tcpd theora tiff udev unicode usb v4l v4l2 vorbis wifi win32codecs x86 xcb xfs xine xorg yahoo zlib zsh-completion" 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 mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="tr" USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa vga" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 176464 [details] sandbox-1.3.2 tr locale emerge log
some translations: programda serseri %a = stray %a in program %a bildirilmemiş (bu işlevde ilk kullanımı) = %a undeclared (first use in this function) %a işlevi için çok az argüman belirtildi= = too few arguments to function %a hata = error uyarı = warning
I can reproduce the issue.
Created attachment 176469 [details, diff] sandbox-1.3.2-toupper.patch The use of toupper makes sandbox unnecessarily locale-dependent. Any objections to just getting rid of it, like so?
(In reply to comment #4) > Created an attachment (id=176469) [edit] > sandbox-1.3.2-toupper.patch > > The use of toupper makes sandbox unnecessarily locale-dependent. Any objections > to just getting rid of it, like so? > This fixes the issue. Thanks for the patch. Maintainers, please test and fix.
no, there is no real need for the SB_NR_xxx defines to be upper case, but i'd rather have the awk env be sane than trip over one bug after another fixed in git http://git.overlays.gentoo.org/gitweb/?p=proj/sandbox.git;a=commitdiff;h=9f1de9b6afdbb83ff75fad66204fd95a83975eab site note for Gürkan: you should not be setting LC_ALL in your environment anywhere ... that's simply wrong and will break other things
(In reply to comment #6) > no, there is no real need for the SB_NR_xxx defines to be upper case, but i'd > rather have the awk env be sane than trip over one bug after another > > fixed in git > > http://git.overlays.gentoo.org/gitweb/?p=proj/sandbox.git;a=commitdiff;h=9f1de9b6afdbb83ff75fad66204fd95a83975eab > > site note for Gürkan: you should not be setting LC_ALL in your environment > anywhere ... that's simply wrong and will break other things > Well that reveals unanticipated locale related (especially with Turkish special case) bugs in programs. I've been trying to spot and fix Turkish related bugs for some time.
then you should be setting LANG to tr_TR.UTF-8, not LC_ALL. packages which only set a subset of LC_* vars will break if you tromp on it with LC_ALL.
If a package sets LC_CTYPE without checking LC_ALL, that's a bug in the package, not a bug in the user's configuration.
i think that's dumb, but i guess my opinion is irrelevant as the spec says: http://www.opengroup.org/onlinepubs/9699919799/functions/setlocale.html#tag_16_524_07 so no, packages should not be checking LC_ALL to see if it's "ok", they should be setting it if they need their own behavior
(In reply to comment #10) > i think that's dumb, but i guess my opinion is irrelevant as the spec says: > http://www.opengroup.org/onlinepubs/9699919799/functions/setlocale.html#tag_16_524_07 > > so no, packages should not be checking LC_ALL to see if it's "ok", they should > be setting it if they need their own behavior > To generalize applications should ignore user locale or use locale-ignoring functions when needed.