Stroller wrote:
> On 9 Jan 2007, at 16:05, Phill Wiggin wrote:
>> ...
>> Honestly, I'm not sure that the order of the USE flags makes any
>> difference.
>> Nor was I - that's why I asked.
The order doesn't make any difference, the flags simply control what
does and doesn't get included as a dependency. You'll notice tools like
ufed will reorder the USE keywords alphabetically(which would break
things if order mattered).
>> The best thing to do (so far as I'm aware) is to add a
>> line in the /etc/portage/package.use file that says:
>> media-tv/mythtv qt3 -qt4
>> I'd have thought that, too.
That'd be fairly pointless. The mythtv ebuild has an explicit dependency
for qt3, so it'll get built regardless of the global use flags. It also
uses the qt3 eclass to make sure the appropriate paths get set so only
QT3 gets used and not QT4.
All the QT paths are set using files in /etc/env.d/(usually 44qt4 for
QT4 and 45qt3/50qtdir3 for QT3).
As has been suggested you can either hardmask any version of QT4 and
higher(using /etc/portage/package.mask) and unmerge QT4 if it has
already been installed, call qmake with the full path(and set QMAKE with
the same path, see the mythtv ebuild for more details) or adjust the
order of the files in /etc/env.d so that qt3 comes first(this may
however be stomped on by future QT upgrades) and run "env-update &&
source /etc/profile" to pick the new order up.
For those wondering why you might have both QT3 and QT4 installed, you
can usually figure out which package has the qt use flags by using
equery(part of gentoolkit):
# equery hasuse -i qt3
[ Searching for USE flag qt3 in all categories among: ]
* installed packages
[I--] [ ] app-text/poppler-bindings-0.5.4 (0)
# equery hasuse -i qt4
[ Searching for USE flag qt4 in all categories among: ]
* installed packages
[I--] [ ] app-text/poppler-bindings-0.5.4 (0)
"equery depends -D qt" will find all packages that depend on
qt(installed or not) but it's slow. Very, very, very, very slow.
Matt