On Sat, 28 Jul 2012 14:27:49 +0800 Ben de Groot <yng...@gentoo.org> wrote:
> On 28 July 2012 13:59, Nikos Chantziaras <rea...@gmail.com> wrote: > > On 28/07/12 08:22, Ben de Groot wrote: > >> > >> In preparation for that, we want to ask maintainers of all ebuilds > >> in the tree with dependencies on Qt4, to make sure that they have > >> the proper slot. Otherwise your package may pull in Qt5 while it > >> may not in fact support it. > > > > > > This can be trouble if the application actually works with Qt5. It > > might depend on Qt4 but has no problems with Qt5 (contrary to Qt3 > > vs Qt4, Qt5 is mostly compatible with much of existing Qt4 code), > > needlessly pulling-in Qt4. Many applications simply build and run > > as-is and no code changes are necessary. > > > > So what would be the methodology of making sure a package has the > > proper slot? > > Obviously you would need to make sure that the package actually does > support Qt5. Then, as I see it, we could do either: > > || ( x11-libs/qt-gui:4 x11-libs/qt-gui:5 ) Never prefer an old version in an || ( ) block, this makes for a poor update experience. Also the || ( ) construct can only be used if they are runtime switchable, which I really doubt here, as otherwise you build against one, the user install the other and portage depcleans the one you have built against. > > or: > > qt4? ( x11-libs/qt-gui:4 ) > qt5? ( x11-libs/qt-gui:5 ) > A qt5 useflag will do more harm than good. If I enable qt, I do not care which version, I just want the gui for the particular app. If the app works with qt:5 the usflag qt means qt:5, if it only works with qt:4 the useflags means qt:4. In case it works with both and the maintainer thinks it's worth to let the user choose, use the useflag qt4 to let the user opt out of the latest and greatest. > Other thoughts?