Ben de Groot posted on Tue, 04 Aug 2015 11:59:40 +0800 as excerpted: > In my opinion, this is the way Gentoo has always worked, and we should > simply recommend users to only set one of the qt* useflags as globally > enabled, if they want to prevent such micro-management. Hiding the qt4 > option is in my opinion the wrong solution around people complaining > after they have consciously enabled both flags. > > If this is not acceptable (or "absolutely unusable" as one dev put it), > then we need a proper solution, which a) will not hide the qt4 option, > and b) will prevent triggering required_use blockage by choosing qt5 > over qt4 in case both are enabled, while c) informing the user about > this. This probably requires new eclass or even EAPI functionality.
What about a solution such as that used by python, USE=qt, for turning on qt support at all if it's optional, with QT_TARGETS for people to set to the versions they want if more than one can be enabled at once, and QT_SINGLE_TARGET for people to set to their preferred if a package can build against only one at a time, but that one can be chosen? And of course, just as with python, people can setup an /etc/portage/env/ * file for exceptions, and point as many packages at that file as desired using package.env.[1] But this would be dramatically simpler with qt than it is with python, since there will normally only be two (with a theoretical but unlikely possibility of three) choices at the same time, and the time between qt slot upgrades and slot-effective times as well is much /much/ longer than between python slot upgrades. Of course it'd require a whole new set of eclasses, but it's not as if that hasn't been done before. [1] FWIW, that's the python solution I've been using for awhile, with PYTHON_SINGLE_TARGET set to 3.3 and then 3.4 in make.conf, with an /etc/portage/env/python.starget.27 file that does what the name suggests, and formerly quite a few package entries in /etc/portage/package.env pointing to it that couldn't handle python3 yet, but now only one, app- text/asciidoc. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman