We, the Qt team, would like to include a new eclass in the tree.
The qt4-r2 eclass is meant to help with ebuilds for Qt-based (qmake-based, to
be precise) applications.
The eclass is attached, and here's a short comparison between qt4-r2 and qt4
(currently in tree) eclasses:
Removed in qt4-r2:
* obsolete QT4_BUILD_WITH_USE_CHECK and
QT4_OPTIONAL_BUILD_WITH_USE_CHECK hacks.
Improved in qt4-r2:
* eqmake4 function now behaves similarly to qmake itself, i.e.:
- doesn't assume ${PN}.pro, but searches for the project file if not
specified, just like qmake does
- in some cases is able to figure out the correct project file if there
are several of them in one directory (rare case, but technically
possible)
New in qt4-r2:
* automatic generation of "linguas_*" IUSE, based on LANGS and LANGSLONG
variables,
* automatic installation of documentation, based on DOCS and DOCSDIR
variables,
* exported src_configure(), src_compile() and src_install() functions
The qt4-r2 eclass requires EAPI-2.
We have been developing, testing and constantly improving qt4-r2 in qting-edge
overlay for around a year already. It's working for us and we find it very
handy compared to the old qt4.eclass.
After pushing qt4-r2 to the tree, we're going to port Qt 4 apps' ebuilds to
qt4-r2 and deprecate qt4.eclass.
Thanks,
Dominik
Haven't look at the content yet. But the name is going to make things extremely
confusing. I can see people using qt4-r2 just because it has -r2 (so it is newer
than qt4), even if they should use qt4. If you really need to introduce a new
eclass, you should use a name that accurately reflects what it does.
Cheers,
Thomas
--
---------
Thomas Anderson
Gentoo Developer
/////////
Areas of responsibility:
AMD64, Secretary to the Gentoo Council
---------
The name is actually the simplest possible, and yes, our goal is to switch to
qt4-r2 in the end (which I mentioned at the end of my first mail). So in
general, once qt4-r2 is in, no one should use qt4.eclass.
We had several name options, e.g. qt4-tng but qt4-r2 seemed the most
straightforward. plus -r2 adds the Gentoo flavor, hence is better than e.g.
qt4-v2 :)
That said, we want qt4-r2 to be a new eclass for Qt-based ebuilds. And we
can't just make changes to qt4.eclass since there are too many ebuilds using
it and we would surely break the tree.
Cheers,
Dominik
[1]: http://dev.gentoo.org/~scarabeus/qt4-r2.eclass.patch
--
Markos Chandras (hwoarang)
Gentoo Linux Developer [KDE/Qt/Sound/Sunrise/Kernel/Bug-wrangler]
Web: http://hwoarang.silverarrow.org
That is exactly the intended behaviour. We would break the tree if we would
simply add the new functionality to the existing qt4.eclass. And in absence
of an eclass versioning mechanism, this is what we came up with. As soon
as existing ebuilds in the tree are ported over to qt4-r2, the old
qt4.eclass will
be removed.
Cheers,
--
Ben de Groot
Gentoo Linux developer (qt, media, lxde, desktop-misc)
______________________________________________________
I hate leaving old cruft around, so I definitely meant removed. If
that is against policy,
can you refer me to a document that specifies said policy?
Sorry, i was not up to date with this.
http://devmanual.gentoo.org/eclass-writing/index.html
--
Cheers
Dawid Węgliński
Hey,
I'm attaching:
* the eclass updated according to suggestion from scarabeus,
* the diff between the first revision and the current one.
Changes include:
* moving EAPI check to the global scope,
* moving documentation around,
* passing parameters to inner functions (inherited from base.eclass).
Please review this one, if there are no objections we'd like to introduce it
to the tree in about two weeks time starting from now.
Thanks a lot,
Dominik