If USE=qt, then a dependency on >=x11-libs/qt-2.3.0 is added, which ultimately
causes xfree to be merged, even if USE=-X. qt support should be made conditional
on USE=X. Since the patch is trivial, it is pasted below.
--- php.eclass 2004-01-08 17:14:01.000000000 -0500
+++ php.eclass.new 2004-02-28 17:58:56.381870424 -0500
@@ -58,7 +58,10 @@
- X? ( virtual/x11 )
+ X? (
+ qt? ( >=x11-libs/qt-2.3.0 )
crypt? ( >=dev-libs/libmcrypt-2.4 >=app-crypt/mhash-0.8 )
curl? ( >=net-ftp/curl-7.10.2 )
x86? ( firebird? ( >=dev-db/firebird-1.0 ) )
@@ -78,7 +81,6 @@
>=media-libs/libpng-1.2.5 >=media-libs/tiff-3.5.5 )
png? ( >=media-libs/libpng-1.2.5 )
postgres? ( >=dev-db/postgresql-7.1 )
- qt? ( >=x11-libs/qt-2.3.0 )
snmp? ( net-analyzer/net-snmp )
spell? ( app-text/aspell )
ssl? ( >=dev-libs/openssl-0.9.5 )
there are other packages that have similar dependencies
if you dont want X, then put -qt and -gtk into your USE
That doesn't make it any less of a bug. It's annoying to have to have -qt -gnome -kde -gtk when I already have -X.
the default profile has USE="X sdl gtk kde qt gnome" among other things
if you dont like the defaults, override them in your make.conf or make your own profile
If I say I don't want X support, I shouldn't get X just because gnome or qt happen to be set in the default. -X should trump +gnome +qt etc.
See also bug #43229; at least one Gentoo developer agrees with me.
this is Bug 43229
as for -X overriding gtk/qt, that's been discussed before and possible side solutions have been proposed, but as it stands now, it's not going to happen
crawl the mail archives for gentoo-dev to see about use classes and such
Sorry, meant bug #43228.
andy: as an odd example of why your logic there is wrong:
say I have X and qt installed on a machine, and then want to build my PHP _with_ it's qt stuff, but WITHOUT it's X stuff.
the existing logic allows this, your logic does not.
But you can't build or use qt without X. libqt links against a ton of X libraries, not the least of which is libX11. It makes no sense to say you want qt without X.