Summary: | app-portage/autounmask: loop on setting multilib_abi_x86 use flags | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mario Fetka (geos_one) <mario.fetka> |
Component: | Current packages | Assignee: | No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | patrakov |
Priority: | High | Keywords: | PMASKED |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://github.com/sjnewbury/multilib-overlay/blob/portage-multilib/doc/portage-multilib-instructions | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 398935 | ||
Bug Blocks: |
Description
Mario Fetka (geos_one)
2010-12-07 08:09:43 UTC
Please post your `emerge --info' output in a comment. as requested the the emerge info Portage 2.2.0_alpha8-r2 (default/linux/amd64/10.0/desktop/kde, gcc-4.5.1-asneeded, glibc-2.12.1-r3, 2.6.36-go-r2 x86_64) ================================================================= System uname: Linux-2.6.36-go-r2-x86_64-AMD_Turion-tm-_X2_Ultra_Dual-Core_Mobile_ZM-86-with-gentoo-2.0.1 Timestamp of tree: Mon, 13 Dec 2010 21:45:04 +0000 distcc 3.1 x86_64-pc-linux-gnu [disabled] ccache version 3.1.3 [enabled] app-shells/bash: 4.1_p9 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.6.6-r1, 2.7.1, 3.1.3 dev-util/ccache: 3.1.3 dev-util/cmake: 2.8.1-r2 sys-apps/baselayout: 2.0.1-r1 sys-apps/openrc: 0.6.8 sys-apps/sandbox: 2.4 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.21 sys-devel/gcc: 4.5.1-r1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82 virtual/os-headers: 2.6.36.1 (sys-kernel/linux-headers) Repositories: gentoo crossdev 389-ds apparmor bongo ifolder lightscribe linamh mds go-mysql go-genlink go-vmware n4g n4g-experimental kde x11 mozilla vmware sunrise perl-experimental nx java-overlay sping gcc-porting php geki-overlay multilib qting-edge ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -msse3 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config" 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.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=k8 -msse3 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://gentoo.lagis.at/ ftp://gentoo.lagis.at/ http://gentoo.wetzlmayr.com/ http://gentoo.inode.at/ ftp://gentoo.inode.at/source/" LANG="de_DE.UTF-8" LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed" LINGUAS="de en" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" 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="/home/crossdev /home/mario/mars/linamh/trunk/389 /home/mario/mars/linamh/trunk/apparmor /home/mario/mars/linamh/trunk/bongo /home/mario/mars/linamh/trunk/ifolder /home/mario/mars/linamh/trunk/lightscribe /home/mario/mars/linamh/trunk/linamh /home/mario/mars/linamh/trunk/mds /home/mario/mars/linamh/trunk/mysql /home/mario/mars/linamh/trunk/genlink /home/mario/mars/linamh/trunk/vmware /home/mario/mars/n4g/trunk/novell4gentoo /home/mario/mars/n4g/branches/experimental /var/lib/layman/kde /var/lib/layman/x11 /var/lib/layman/mozilla /var/lib/layman/vmware /var/lib/layman/sunrise /var/lib/layman/perl-experimental /var/lib/layman/nx /var/lib/layman/java-overlay /var/lib/layman/sping /var/lib/layman/gcc-porting /var/lib/layman/php /var/lib/layman/openoffice-geki /var/lib/layman/multilib /var/lib/layman/qting-edge" SYNC="rsync://rsync.at.gentoo.org/gentoo-portage" USE="3dnow 3dnowext R X X509 a52 aac acl acpi ada additions afs afterimage aio airplay akonadi alsa amarok amd64 amr analogtv analyzers ao apache2 apm apng archive asf ass atm audio audiofile audioscrobbler auth autoipd automount autoreplace avahi bash-completion bcel berkdb bfq bidi big-tables binary-drivers bineditor binfilter bittorrent blink bluetooth bluray bonjour bootchart branding btrfs bugzilla bzip2 cairo cardbus ccache cd_apache cd_apcups cd_apple_sensors cd_ascent cd_battery cd_bind cd_conntrack cd_contextswitch cd_cpu cd_cpufreq cd_csv cd_curl cd_curl_xml cd_dbi cd_df cd_disk cd_dns cd_email cd_entropy cd_exec cd_filecount cd_fscache cd_gmond cd_hddtemp cd_interface cd_ipmi cd_iptables cd_ipvs cd_irq cd_java cd_libvirt cd_load cd_logfile cd_madwifi cd_match_empty_counter cd_match_hashed cd_match_regex cd_match_timediff cd_match_value cd_mbmon cd_memcachec cd_memcached cd_memory cd_modbus cd_multimeter cd_mysql cd_netlink cd_network cd_nfs cd_nginx cd_notify_desktop cd_notify_email cd_ntpd cd_nut cd_olsrd cdaudio cdda cddax cddb cdio cdparanoia cdr cdrdao cdrom cdsound chatzilla chm cifsupcall cisco clamav clamdtop cli client clucene cmake compat consolekit corefonts cpio cpudetection cracklib crypt csharp css csv cups curl curlwrappers custom-optimization cvs cxx d dbus dc1394 dcc_video dcc_voice dell designer designer-plugin desktopglobe devfs-compat device-mapper dhclient dhcp dhcpcd dia dirac disk-partition djbfft djvu dmi dmraid dms docbook dot downloadorder dri drizzle dts dv dvb dvbplayer dvbsetup dvd dvdnav dvdr dvi dvi2tty dvipdfm eap-sim eap-tls ebook edirectory edit editor eds eigen eix elf embedded-fuseiso emboss emovix enca encode enscript epiphany epos eselect ethernet etiquette excel exif expat experimental expoblending extensions extra extra-tools extraengine extrafilters extras faac faad facedetect fam fame fasteap fasttrack fat fax fbcon fbcondecor fbsplash festival ffmpeg firefox firefox3 flac flash flite floppy fltk fluidsynth fontconfig fontforge foomaticdb fortran fpx freetds freetts ftdi ftp fuse gadu gallium garmin gcdmaster gcj gconf gcrypt gd gdbm gecko geoip geolocation gfortran ggz gif gimp git glade glib glibc-compat20 glitz glut gmail gmm gmp gnutls google google-gadgets gopher gpg gpm gps gpu graphite graphviz groupwise gs gsm gssapi gstreamer gtk guile gzip h323 hal hbci hddtemp hfs highlight hinotify history howl-compat hpijs hs16 i18n ical icc ichain iconv icotools icoutils icq icu id3 id3tag idea ieee1394 ifc imagemagick imap inifile init_mm-patch inkjar inotify iodbc iphone ipod iptv ipv6 irc irda iso14755 jabber java java6 javascript jbig jfs jpeg jpeg2k kdcraw kde kdm kdrive kipi kmail konqueror kontact kpathsea kqemu kross kvm lame laptop lastfm lastfmradio latex latex3 lcms ldap libburn libdsk libffi libmms libnotify libsexy libssh2 libsysfs libtiger libv4l2 lightning lirc live llvm lm_sensors logrotate loop-aes lua luatex lvm lvm1 lvm2 lzma lzo mac mad magic math matroska mbrola mdnsresponder-compat mediaplayer mercurial mercurical messenger midi mikmod mime mjpeg mktemp mmx mmxext mng modplug modules mono moonlight mozilla mozldap mp3 mp3rtp mp3tunes mp4 mpeg mpfr mplayer mppe-mppc msn mudflap multilib multimedia musicbrainz mysql mysqli ncs ncurses neon netapi netpbm network networking networkmanager nforce2 nfs nfsv3 nfsv4 nio2 nis nls nmas nntp normalize nowlistening npp nptl nptlonly nsplugin nspluginwrapper nss ntfs ntlm ntp obex objc objc++ objc-gc ocamlopt oci8-instant-client odk ogg ogg123 ogm okular ole openexr opengl openid openmp openssl opensslcrypt optimized-qmake oracle orathreads osdmenu overlays pam pango parport parted pcf pci pcmcia pcre pdf perforce perl phonon php pic pkcs11 plasma plugins pm-utils pmount pmu png pnm policykit postproc ppds ppp pppd pstoedit python qalculate qemu qemu-ifup qimageblitz qmake qml qq qscintilla qt-dbus qt-faststart qt-webkit qt3support qt4 qthelp qtscript quicktime quota quotas radio radius rar rdesktop rdp readline redeyes redland reiser4 reiserfs remote resolvconf rpm rss rsync rtc rtf rtmp rtsp ruby samba samba4 scanfolder scanner scim scp screenshot script scsi sdb-ldap sdk sdl sdl-image sdl-sound sdlaudio seamonkey search semantic-desktop sensord serial server session sftp shadow shm shmvideo shout shutdown sid skins skype slp smbclient smbkrb5passwd smbsharemodes smp sms smtp sndfile snmp soap sockets solver sound soup sox speech speex spell sql sqlite sqlite3 srt sse sse2 sse3 sse4 sse4a sse5 ssh ssh1 ssl ssp startup-notification stk stream strigi subversion sudo svg swig sysfs syslog systemtap sysvipc t1lib taglib tcmalloc tcpd tcpwrapper telepathy teletext templates tga tgif themes theora thesaurus threads thunderbird tiff tls toolame tools trace tracker transcode transparency truetype twitter twolame type3 udev udev-acl udf uml unicode unzip upnp urandom usb utempter utils uuid v4l v4l2 valgrind vboxwebsrv vcd vcdinfo vcdx vde vdr video videos virtualbox virtuoso vlc vnc vorbis vpx vserver wav wavpack wcwidth webcam webdav webdav-neon webinterface webkit wifi wimax windeco wineappdb winetools winetriks winpopup winscp wireshark wma wma-fixed wmf wordperfect wpd wpg wps wv2 wxwidgets x11vnc x264 xanim xattr xcb xcf xcomposite xfs xft xine xinerama xinetd xiph xklavier xls xml xmlpatterns xmlrpc xmp xorg xorgmodule xpdf-headers xpm xrandr xrender xscreensaver xsettings xsl xslt xterm-color xulrunner xv xvid xvmc xwax_decoders_aac xwax_decoders_cd xwax_decoders_flac xwax_decoders_misc xwax_decoders_mp3 xwax_decoders_ogg yahoo youtube yv12 zeroconf zfs zip zlib zvbi" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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 cgi cgid 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" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de en" MULTILIB_ABIS="amd64 x86" PHP_TARGETS="php5-2" QEMU_USER_TARGETS="arm" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeon intel" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS Hello Mario, Thanks for reporting this bug. While the loop is certainly a bug, I must also say that autounmask is not supposed to work for setting multilib_abi_x86 correctly even after fixing the loop bug. Or rather, it would apply the flag for many more packages than needed. The reason is that the dependency information exported by the multilib overlay is wrong, see http://blog.flameeyes.eu/2008/08/18/same-abi-and-any-abi-dependencies My previous comment was not clear enough. Sometimes you don't want to set the multilib_abi_x86 flag on certain packages, you want to add them to NO_AUTO_FLAG variable instead to stop flag propagation at that point. A good example is dev-vcs/git: some live ebuilds use it, but you don't want to build it and all its dependencies with multilib_abi_x86 just to be able to build that live thing with multilib_abi_x86. Autounmask has no knowledge about that variable. Note: some developers consider this to be abuse of the NO_AUTO_FLAG variable. It was originally meant as a list of packages that don't cross-compile cleanly. (In reply to comment #4) > My previous comment was not clear enough. Sometimes you don't want to set the > multilib_abi_x86 flag on certain packages, you want to add them to NO_AUTO_FLAG > variable instead to stop flag propagation at that point. A good example is > dev-vcs/git: some live ebuilds use it, but you don't want to build it and all > its dependencies with multilib_abi_x86 just to be able to build that live thing that don't bother me at all (its better then the old binary x86 blobs/emul) offtopic.: i think its time to add a new ebuild RESTRICT keyword like "multilib" (for ex. app-arch/unrar is a binry only but it is also keyworded multilb) package no longer in tree |