Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 83385 - conflict of interest between USE and rdepend in an ebuild
Summary: conflict of interest between USE and rdepend in an ebuild
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Portage team
Depends on:
Reported: 2005-02-26 09:10 UTC by david somers
Modified: 2005-02-26 18:10 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description david somers 2005-02-26 09:10:18 UTC

When emerging www-app/mediawiki, I was getting x11-base/xorg-X11 pulled in. This was because in the tree of dependencies, the ebuild dev-lang/tk has a rdepend on virtual/x11.

Now, the problem is that in my USE flag I had explicitly put in -X.

It seems that emerge will ignore the USE flag setting when a package needs it as an rdepend.

However, I would have expected emerge to have indicated that there is a conflict of interests between my wishes (USE -X) and those of a package that will be installed (tcltk's rdepend on virtual/x11)

Reproducible: Always
Steps to Reproduce:

Expected Results:  

1. Raised a error/warning along the lines of:

Package dev-lang/tk needs virtual/x11 but USE -X indicates you don't want X 

2. Just ignore trying to emerge tcltk

Step 2 is what I had to do, by specifying USE -tcktl, to get mediawiki to 
install... it seems a bit of a kludge.
Comment 1 solar (RETIRED) gentoo-dev 2005-02-26 10:40:26 UTC
I don't think this is a portage bug. Can you do a 
emerge -pv --tree www-app/mediawiki
Comment 2 solar (RETIRED) gentoo-dev 2005-02-26 10:41:30 UTC
sorry thats -pve --tree
Comment 3 david somers 2005-02-26 13:09:53 UTC
When I did this earlier, I had a stray USE=tcltk, so media-libs/pdflib was pulling in tcltk, which was then pulling in x11-base/xorg-x11 (from an rdepend virtual/x11)

[ebuild  N    ] dev-php/php-4.3.10  -X +berkdb +crypt -curl -debug +doc -fdftk -firebird -flash -freetds -gd -gd-external +gdbm -gmp -hardenedphp -imap -informix -ipv6 -java +jpeg -kerberos -ldap -mcal -memlimit -mssql +mysql +ncurses +nls -oci8 +odbc +pam +pdflib +png -postgres -qt +readline -snmp +spell +ssl +tiff +truetype +xml2 -yaz 0 kB
[ebuild  N    ] www-apps/mediawiki-1.3.11  -imagemagick -math -vhosts 0 kB
[ebuild  N    ]  dev-php/mod_php-4.3.10  -X -apache2 +berkdb +crypt -curl -debug +doc -fdftk -firebird -flash -freetds -gd -gd-external +gdbm -gmp -hardenedphp -imap -informix -ipv6 -java +jpeg -kerberos -ldap -mcal -memlimit -mssql +mysql +nls -oci8 +odbc +pam +pdflib +png -postgres -qt -snmp +spell +ssl +tiff +truetype +xml2 -yaz 0 kB
[ebuild  N    ]   app-doc/php-docs-200403  0 kB
[ebuild  N    ] app-crypt/gnupg-1.2.6  -X -debug -idea -ldap +nls (-selinux) -static 0 kB
[ebuild  N    ]   mail-mta/courier-  +crypt +fam -fax -ipv6 -ldap -mailwrapper +mysql +nls -norewrite +pam -postgres +spell (-uclibc) 5,746 kB
[ebuild  N    ]    app-admin/fam-2.7.0-r2  0 kB
[ebuild  N    ]     net-nds/portmap-5b-r9  -debug (-selinux) +tcpd 0 kB
[ebuild  N    ]    net-libs/courier-authlib-0.54.20050224  +berkdb +crypt -debug +gdbm -ldap +mysql +pam -postgres (-uclibc) 1,925 kB
[ebuild  N    ]    app-dicts/aspell-en-0.51.1  0 kB
[ebuild  N    ]   media-libs/t1lib-5.0.2  -X -debug +doc 0 kB
[ebuild  N    ]   app-text/aspell-0.50.5-r4  -debug +gpm 0 kB
[ebuild  N    ]   media-libs/freetype-1.3.1-r4  +nls -tetex 0 kB
[ebuild  N    ] x11-terms/xterm-197  -Xaw3d -debug +truetype +unicode 674 kB
[ebuild  N    ]  sys-apps/utempter-  -debug 20 kB
[ebuild  N    ]   app-arch/rpm2targz-9.0-r2  2 kB
[ebuild  N    ]    app-arch/cpio-2.6-r1  +nls 0 kB
[ebuild  N    ]    sys-apps/which-2.16  0 kB
[ebuild  N    ]   media-libs/pdflib-5.0.4_p1-r1  -java +perl +python +tcltk* 0 kB
[ebuild  N    ]    dev-lang/tk-8.4.6-r1  -threads 3,155 kB
[ebuild  N    ]     x11-base/xorg-x11-6.8.0-r4  -3dfx +3dnow +bitmap-fonts -cjk -debug -dlloader -dmx +doc +font-server -hardened -insecure-drivers -ipv6 -minimal +mmx +nls +opengl +pam -sdk +sse -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 72,273 kB
[ebuild  N    ]      x11-base/opengl-update-2.0_pre5  30 kB
[ebuild  N    ]      x11-misc/ttmkfdir-3.0.9-r2  -debug 0 kB
[ebuild  N    ]      media-libs/fontconfig-2.2.3  0 kB
[ebuild  N    ] dev-perl/DBD-mysql-2.1027  0 kB
[ebuild  N    ]  dev-perl/DBI-1.38-r1  0 kB
[ebuild  N    ]   dev-perl/PlRPC-0.2016-r1  0 kB
[ebuild  N    ]    dev-perl/Storable-2.07-r1  0 kB
[ebuild  N    ]    dev-perl/Net-Daemon-0.37  0 kB
[ebuild  N    ]   net-libs/libwww-5.4.0-r2  +mysql +ssl 0 kB
[ebuild  N    ]    dev-db/mysql-4.0.22-r2  +berkdb -debug -innodb +perl +readline (-selinux) +ssl -static +tcpd 0 kB
[ebuild  N    ]     sys-apps/tcp-wrappers-7.6-r8  -ipv6 0 kB
[ebuild  N    ]     sys-apps/procps-3.2.4-r2  -debug 0 kB
[ebuild  N    ]   media-libs/libpng-1.2.8  -debug 375 kB
[ebuild  N    ]   net-www/apache-2.0.52-r1  +berkdb -debug +doc +gdbm -ipv6 -ldap +ssl -static -threads 0 kB
[ebuild  N    ]    dev-util/yacc-1.9.1-r2  0 kB
[ebuild  N    ]   dev-libs/libmcrypt-2.5.7  0 kB
[ebuild  N    ]    sys-devel/libtool-1.5.10-r4  (-uclibc) 0 kB
[ebuild  N    ]   media-libs/freetype-2.1.5-r1  -bindist -cjk -debug +doc +zlib 0 kB
[ebuild  N    ]   sys-apps/file-4.12  -build -debug +python 0 kB
[ebuild  N    ]   dev-db/unixODBC-2.2.6  -gnome -qt 0 kB
[ebuild  N    ]   app-text/sablotron-1.0  -debug +doc +perl 0 kB
[ebuild  N    ]    dev-perl/XML-Parser-2.34  0 kB
[ebuild  N    ]   dev-libs/libxslt-1.1.9-r1  +crypt +python 0 kB
[ebuild  N    ]    dev-libs/libgcrypt-1.1.94  +nls 0 kB
[ebuild  N    ]     dev-libs/libgpg-error-1.0-r1  +nls 0 kB
[ebuild  N    ]    dev-libs/libxml2-2.6.16  -debug -ipv6 +python +readline 0 kB
[ebuild  N    ]   media-libs/tiff-3.7.1-r1  0 kB
[ebuild  N    ]    media-libs/jpeg-6b-r4  -debug 0 kB
[ebuild  N    ]   app-crypt/mhash-0.9.2  0 kB
[ebuild  N    ]  net-www/webapp-config-1.10-r11  0 kB
[ebuild  N    ]   sys-apps/findutils-4.1.20-r1  -afs -build -debug +nls (-selinux) -static 0 kB
[ebuild  N    ]   app-portage/gentoolkit-0.2.0  0 kB
[ebuild  N    ]   sys-apps/coreutils-5.2.1-r4  -acl -build -debug +nls (-selinux) -static (-uclibc) 68 kB
[ebuild  N    ]    sys-apps/help2man-1.33.1  +nls 0 kB
[ebuild  N    ]     dev-perl/Locale-gettext-1.01-r1  0 kB
[ebuild  N    ]   sys-apps/sed-4.0.9  -bootstrap -build -debug +nls -static 0 kB
[ebuild  N    ]    sys-libs/glibc-  -build -debug -erandom -hardened (-multilib) +nls -nptl -pic -userlocales 0 kB
[ebuild  N    ]     sys-apps/baselayout-1.9.4-r6  -bootstrap -build -debug -livecd (-selinux) -static (-uclibc) 0 kB
[ebuild  N    ]      sys-apps/util-linux-2.12i-r1  +crypt -debug +nls +pam +perl (-selinux) -static 0 kB
[ebuild  N    ]       app-crypt/hashalot-0.3  0 kB
[ebuild  N    ]        sys-apps/grep-2.5.1-r6  -build -debug +nls -pcre -static (-uclibc) 0 kB
[ebuild  N    ]       sys-fs/e2fsprogs-1.35-r1  -debug -diet +nls -static 0 kB
[ebuild  N    ]       sys-kernel/linux-headers-2.4.21-r1  -build 0 kB
[ebuild  N    ]       sys-apps/pam-login-3.14  -livecd +nls (-selinux) 0 kB
[ebuild  N    ]        sys-libs/pam-0.77-r6  +berkdb -debug -pwdb (-selinux) 112 kB
[ebuild  N    ]         sys-libs/cracklib-2.7-r10  -debug +pam (-uclibc) 0 kB
[ebuild  N    ]          sys-apps/miscfiles-1.3-r1  (-uclibc) 0 kB
[ebuild  N    ]         sys-devel/automake-1.9.4  (-uclibc) 0 kB
[ebuild  N    ]          sys-devel/automake-wrapper-1-r1  0 kB
[ebuild  N    ]           sys-devel/automake-1.4_p6  (-uclibc) 0 kB
[ebuild  N    ]           sys-devel/automake-1.7.9-r1  (-uclibc) 0 kB
[ebuild  N    ]           sys-devel/automake-1.6.3  (-uclibc) 0 kB
[ebuild  N    ]           sys-devel/automake-1.8.5-r3  (-uclibc) 0 kB
[ebuild  N    ]           sys-devel/automake-1.5  (-uclibc) 0 kB
[ebuild  N    ]            sys-devel/autoconf-2.59-r6  0 kB
[ebuild  N    ]             sys-devel/autoconf-wrapper-2-r1  0 kB
[ebuild  N    ]              sys-devel/autoconf-2.13  0 kB
[ebuild  N    ]         dev-libs/glib-1.2.10-r5  -debug 0 kB
[ebuild  N    ]      sys-apps/gawk-3.1.3-r2  -build +nls (-uclibc) 0 kB
[ebuild  N    ]     sys-devel/gcc-3.3.5-r1  -bootstrap -boundschecking -build -debug +fortran -gcj +gtk -hardened (-ip28) (-multilib) -multislot (-n32) (-n64) +nls -nocxx -objc -static (-uclibc) 0 kB
[ebuild  N    ]      sys-devel/binutils-  -bootstrap -build -debug -multitarget +nls (-uclibc) 0 kB
[ebuild  N    ]      sys-devel/gcc-config-1.3.8-r4  0 kB
[ebuild  N    ]       sys-apps/portage-2.0.51-r15  -build -debug (-selinux) 0 kB
[ebuild  N    ]        dev-lang/python-2.3.4-r1  -X +berkdb -bootstrap -build -debug +doc +gdbm -ipv6 +ncurses +readline +ssl +tcltk -ucs2 0 kB
[ebuild  N    ]         dev-python/python-docs-2.3.4  0 kB
[ebuild  N    ]         dev-libs/expat-1.95.8  -test 0 kB
[ebuild  N    ]         dev-libs/openssl-0.9.7e  -debug -emacs (-uclibc) 0 kB
[ebuild  N    ]          dev-lang/perl-5.8.5-r4  +berkdb -debug +doc +gdbm -ithreads -perlsuid (-uclibc) 0 kB
[ebuild  N    ]           sys-devel/libperl-5.8.5  +berkdb -debug +gdbm -ithreads (-uclibc) 0 kB
[ebuild  N    ]            sys-libs/gdbm-1.8.3-r1  +berkdb -debug 0 kB
[ebuild  N    ]             sys-libs/db-1.85-r1  0 kB
[ebuild  N    ] sys-apps/man-1.5p  -debug +nls 0 kB
[ebuild  N    ]  sys-apps/cronbase-0.3.1  0 kB
[ebuild  N    ]            sys-apps/groff-1.19.1-r2  -X -debug 0 kB
[ebuild  N    ]             sys-apps/texinfo-4.7-r1  -build -debug +nls -static 0 kB
[ebuild  N    ]           sys-libs/db-4.1.25_p1-r4  -bootstrap +doc -java -nocxx +tcltk 0 kB
[ebuild  N    ]            dev-lang/tcl-8.4.6  -threads 0 kB
[ebuild  N    ]          sys-apps/diffutils-2.8.7  -debug +nls -static 0 kB
[ebuild  N    ]          sys-devel/bc-1.06-r5  -debug +readline -static 0 kB
[ebuild  N    ]           sys-devel/flex-2.5.4a-r5  -build -debug -static 0 kB
[ebuild  N    ]         sys-libs/readline-4.3-r5  0 kB
[ebuild  N    ]        app-shells/bash-2.05b-r9  -build -debug +nls (-uclibc) 0 kB
[ebuild  N    ]        sys-apps/debianutils-1.16.7-r4  -build -debug -static 0 kB
[ebuild  N    ]         app-arch/bzip2-1.0.2-r5  -build -debug -static 0 kB
[ebuild  N    ]        dev-python/python-fchksum-1.7.1  0 kB
[ebuild  N    ]         sys-libs/zlib-1.2.2  -build -debug 0 kB
[ebuild  N    ]      sys-devel/bison-1.875d  -debug +nls -static 0 kB
[ebuild  N    ]       sys-devel/m4-1.4.1  +nls 0 kB
[ebuild  N    ]        sys-devel/gettext-0.12.1-r2  -emacs +nls 0 kB
[ebuild  N    ]      sys-libs/ncurses-5.4-r5  -bootstrap -build -debug +doc +gpm -nocxx (-uclibc) +unicode* 0 kB
[ebuild  N    ]       sys-devel/gnuconfig-20040214  (-uclibc) 0 kB
[ebuild  N    ]       sys-libs/gpm-1.20.1  (-selinux) 0 kB
[ebuild  N    ]        sys-devel/patch-2.5.9  -build -debug -static 0 kB

I still think its 'feature' that x11 is being pulled in when I've got USE=-X set... as I said before, it would be a good idea to handle this edge case in a sensible manner (i.e. enhance/add a feture to portage to warn or ignore the request ro rdepend virtual/x11).
Comment 4 Jason Stubbs (RETIRED) gentoo-dev 2005-02-26 18:10:38 UTC
USE flags are for optional functionality in packages. You had USE="tcltk" which pdflib acted on by wanting to build that optional functionality. However, that optional functionality (which you've requested) unconditionally requires X11. USE="-X" on a lean X11-based system is not an unreasonable thing. If you want to prevent yourself from accidentally installing xorg-x11, you can add it to /etc/portage/package.mask.