> qt - GLOBAL use flag that causes the package to build against the good > version > for that package. > > qt3, qt4... - LOCAL use flags to build against specific versions of > qt when it makes sense on a per-package basis and when it's deemed to > be reasonable by the package maintainer. Easy to keep track of because > they'd all be in use.local.desc.
This is exactly what I recommend. It requires no end user changes to make it work. The only downside to this is that using "qt" isn't explicit in which version it pulls in. To that, I say: who cares? That only seemingly becomes valid when someone wants to "rid their system of a specific version of Qt", which if they're advanced enough to think they need to do that they can probably hack around enough to figure out that packages depend on the version of Qt they want to nuke. I seriously doubt there will ever be many packages that support both at the same time. For those, we'll handle them in the best way we can at the time, be it a qt3 flag, a separate package instance, or other. Moreso, people will release new packages of existing products that use Qt4 instead of Qt3. This is where it gets interesting: if somelibrary-3.0 depends on Qt3 and somelibrary-4.0 depends on Qt4, do we slot them so they can both be installed at the same time? Seems reasonable to do so, but you run into the issue of how to handle version dependencies across slots of the same package...something portage doesn't do very gracefully at the moment. Oh, the joys. :) -- gentoo-dev@gentoo.org mailing list