Thank you for replying. I see now that I should clarify further what is bothering me, as you didn't quite see my point. I guess it got lost in the noise. No more stories then :)
>Remember USE flags are for *optional* dependencies. Mandatory dependencies >will remain no matter what USE flags you set. I understand. That is not the problem. >How did you determine that? Did the ebuild inherit any eclasses and did you >look in those? Also make sure you have >=gentoolkit-0.2.2. Gentoolkit is 0.2.2. After equery, I took a look at the ebuild. As for the eclasses, I must admit I'm still not too comfortable with them, which is what I was actually referring to when I said I need to understand portage better. It's a shame really considering that I've been using gentoo for two-and-a-half years. I need to get spanked ;) . But as far as I understand it (and from what I can see looking at the eclasses) they are merely collections of useful shell functions which devs can use when writing ebuilds. Anyway, to get rid of unnecessary confusion, I will give you an example package which I remember, and whose ebuild is simple enough so that it does not include any complicated inherits. In fact, it is short enough to be included in this mail. > # Copyright 1999-2006 Gentoo Foundation > # Distributed under the terms of the GNU General Public License v2 > # $Header: /var/cvsroot/gentoo-x86/media-gfx/gqview/gqview-2.0.1.ebuild,v > 1.8 2006/02/21 21:31:07 mr_bones_ Exp $ > > DESCRIPTION="A GTK-based image browser" > HOMEPAGE="http://gqview.sourceforge.net/" > SRC_URI="mirror://sourceforge/gqview/${P}.tar.gz" > > LICENSE="GPL-2" > SLOT="0" > KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86" > IUSE="" > > RDEPEND=">=x11-libs/gtk+-2.4.0 > virtual/libintl" > > DEPEND="${RDEPEND} > sys-devel/gettext" > > src_install() { > make DESTDIR="${D}" install || die "make install failed" > # leave README uncompressed because the program reads it > dodoc AUTHORS ChangeLog TODO > rm -f "${D}/usr/share/doc/${PF}/COPYING" > } As you can see, it does not inherit anything, and does not depend on anything gnomish. However, when I checked with equery, it definitely depended on something which I didn't need/want (sorry, I can't remember what it was, probably gconf or some such), although the ebuild specifies no such dependency, not even indirectly (through gtk+ etc.) After I removed the unwanted dep and remerged gqview, it did not pull the removed "dependency" back in, and no longer depends on it. The same applies for dependencies which were disabled through use flags, such as this snip (from openoffice): > gnome? ( >=x11-libs/gtk+-2.4 > > >=gnome-base/gnome-vfs-2.6 > >=gnome-base/gconf-2.0 ) In this case, It depended on gnome-vfs and gconf, even when the gnome USE flag was disabled. After I removed the offending packages and recompiled openoffice, the dependecy is gone. Note: you might remember I wrote that oo.org used to be compiled with USE="eds", which pulls these in along with other stuff indirectly through gnome-extra/evolution-data-server. It was the reason these libs were installed in the first place. The dependency problem I'm describing, however, is independent from that and was present even after I recompiled oo.org without "eds". I hope this helped you better understand what is bothering me. It's not that I'm particularly against having those libs installed and wouldn't mind to keep them if they were hard deps of something I needed, but I'm kind of frustrated when packages depend on things I told them not to depend on through USE flags. It means I cant test a package with a hard dep on a lib because in case I emerge something while that lib is installed, I'll never know if it will choose to depend on that lib, which in turn would mean that after I remove the lib, I need to recompile stuff, once more. In the past two weeks, I recompiled openoffice 4 times, which is 3 times more than I'm normally willing to do it. This is not to say I would be less frustrated if only small packages were affected :) Looking at oo.org ebuild again and I see that it uses use_enable function in the call to ./configure. So why the heck did it depend on gconf and gnome-vfs when it was obviously told not to? And even more confusing: how did equery know about this dependency? *Sigh* I hope I'm missing something here. Because if these are bugs, there's quite a few. Sadly, I removed all the temporary lists of packages I removed and rebuilt, so I have nothing to report now. Stupid me. Jure
pgp42lQd4UUE6.pgp
Description: PGP signature