Summary: | provide static libraries for x11-libs/qwt:5 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Thomas Capricelli <orzel> |
Component: | New packages | Assignee: | Gentoo Science Related Packages <sci> |
Status: | RESOLVED FIXED | ||
Severity: | enhancement | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Thomas Capricelli
2009-02-26 00:00:34 UTC
I believe this is a limitation of the Qt build system. You can either have dynamic or static, but not both. We just generally opt for dynamic as a default build condition. i understand, but could it be possible a to have a USE flag 'static', disabled by default ? (In reply to comment #2) > i understand, but could it be possible a to have a USE flag 'static', disabled > by default ? > The flag would be called 'static-libs' and it would enable/disable the additional static .a(rchives)... yes, that's what i mean... how difficult would it be ? why isn't there such a flag already ? none of the libraries can be installed as static lib ? it seems that now, several packages have the static-libs USE flag... It still would be great to have the qwt ebuild support this. Wow, quite a lot actually! :-) /usr/portage% grep "IUSE.*static-libs" */*/*ebuild -l | cut -d/ -f1,2 | sort | uniq| wc -l 67 +*qwt-5.2.3 (04 Mar 2013) + + 04 Mar 2013; Justin Lecher <jlec@gentoo.org> +qwt-5.2.3.ebuild, + -qwt-6.0.1.ebuild, -qwt-6.0.1-r1.ebuild, metadata.xml: + Version Bump, #460200; build static libs, #260324 + Thank you very much. I've just tested it and it works here. With the USE flag, both dynamic/static libs are installed which is just perfect. It is not currently available for qwt:6, any chance to have it for those recent versions as well ? Thanks a lot again! I copied x11-libs/qwt-6.0.2 to x11-libs/qwt-6.0.2-r1 in my local overlay and more or less copied everything related to 'static-bulid' from the qwt:5 ebuild. It seems to work well : it emerged fine and now : % equery files qwt:6 | grep libqwt /usr/lib64/libqwt6.a For reference : % diff -u /usr/portage/x11-libs/qwt/qwt-6.0.2.ebuild qwt-6.0.2-r1.ebuild --- /usr/portage/x11-libs/qwt/qwt-6.0.2.ebuild 2013-03-03 01:01:35.000000000 +0100 +++ qwt-6.0.2-r1.ebuild 2013-03-04 23:35:05.514767637 +0100 @@ -15,7 +15,7 @@ LICENSE="qwt mathml? ( LGPL-2.1 Nokia-Qt-LGPL-Exception-1.1 )" KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos" SLOT="6" -IUSE="doc examples mathml svg" +IUSE="doc examples static-libs mathml svg" DEPEND=" dev-qt/qtgui:4 @@ -78,13 +78,26 @@ } src_compile() { - # split compilation to allow parallel building - emake sub-src - emake + building() { + # split compilation to allow parallel building + emake sub-src + emake + } + building + + if use static-libs; then + sed "/QwtDll/d" -i qwtconfig.pri || die + eqmake4 + building + echo "CONFIG += QwtDll" >> qwtconfig.pri || die + fi } + + src_install () { qt4-r2_src_install + use static-libs && dolib.a lib/libqwt6.a if use doc; then dohtml -r doc/html/* fi +*qwt-6.0.2-r1 (05 Mar 2013) +*qwt-5.2.3-r1 (05 Mar 2013) + + 05 Mar 2013; Justin Lecher <jlec@gentoo.org> +qwt-5.2.3-r1.ebuild, + +files/qwt-5.2.3-install_qt.patch, +qwt-6.0.2-r1.ebuild: + Fix installation location for designer and plugin stuff, #460256; add + static-libs support, #260324 + I tested the new x11-libs/qwt-6.0.2-r1 ebuild and if fails with : ------------------------------------------------------------------------ .. make[1]: Entering directory `/var/tmp/portage/x11-libs/qwt-6.0.2-r1/work/qwt-6.0.2/textengines' make[1]: Nessuna operazione da eseguire per «install». make[1]: Leaving directory `/var/tmp/portage/x11-libs/qwt-6.0.2-r1/work/qwt-6.0.2/textengines' !!! dolib: lib/libqwt.a does not exist * ERROR: x11-libs/qwt-6.0.2-r1 failed (install phase): * dolib failed * ... ------------------------------------------------------------------------ Which is not really surprising, i wonder why you removed the 6 in your update. i did a find on /tmp/portage/x11-libs/qwt-6.0.2-r1/work/ and i can confirm the lib is still called with a 6 in the name : ./qwt-6.0.2/lib/libqwt6.a Also, I think there will be another problem once this one is resolved : you have removed all the '6' suffix that were there, and this will cause filename conflicts with the one installed by qwt:5. I'm not familiar with this, but i guess this was the original reason those were there. (In reply to comment #11) > I tested the new x11-libs/qwt-6.0.2-r1 ebuild and if fails with : args my fault. I didn't test the code which I copied from slot=5 +*qwt-6.0.2-r2 (06 Mar 2013) +*qwt-5.2.3-r2 (06 Mar 2013) + + 06 Mar 2013; Justin Lecher <jlec@gentoo.org> +qwt-5.2.3-r2.ebuild, + +qwt-6.0.2-r2.ebuild: + Enhance building static-libs by using multibuild.eclass + Tested emerging both x11-libs/qwt-5.2.3-r2 and x11-libs/qwt-6.0.2-r2 It worked despite collisions in /usr/share/qwt/examples/ (~60 files i guess). Which is fine with me. I have the following libs installed : qwt:5 /usr/lib64/libqwt.a /usr/lib64/libqwt.so /usr/lib64/libqwt.so.5 /usr/lib64/libqwt.so.5.2 /usr/lib64/libqwt.so.5.2.3 qwt:6 /usr/lib64/libqwt6.a /usr/lib64/libqwt6.so /usr/lib64/libqwt6.so.6 /usr/lib64/libqwt6.so.6.0 /usr/lib64/libqwt6.so.6.0.2 Thanks for taking care of this! + 06 Mar 2013; Justin Lecher <jlec@gentoo.org> qwt-5.2.3-r2.ebuild, + qwt-6.0.2-r2.ebuild: + Fix collision of example installation + |