diff options
author | 2015-01-28 13:31:17 +0000 | |
---|---|---|
committer | 2015-01-28 13:31:17 +0000 | |
commit | 3982649a5e7ed950b957467813ad947958bdaf6b (patch) | |
tree | 7272401c54ef1e041bb8dc1c6b7684f09a980963 /x11-libs | |
parent | bump, update RDEPs (diff) | |
download | gentoo-2-3982649a5e7ed950b957467813ad947958bdaf6b.tar.gz gentoo-2-3982649a5e7ed950b957467813ad947958bdaf6b.tar.bz2 gentoo-2-3982649a5e7ed950b957467813ad947958bdaf6b.zip |
x11-libs/qwt: Add qt5 support #517866, thanks Eugene Shalygin for the ebuild
(Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key B9D4F231BD1558AB!)
Diffstat (limited to 'x11-libs')
-rw-r--r-- | x11-libs/qwt/ChangeLog | 7 | ||||
-rw-r--r-- | x11-libs/qwt/qwt-6.1.2-r1.ebuild | 198 |
2 files changed, 204 insertions, 1 deletions
diff --git a/x11-libs/qwt/ChangeLog b/x11-libs/qwt/ChangeLog index 6c2e082dcdca..87483a7c2b7d 100644 --- a/x11-libs/qwt/ChangeLog +++ b/x11-libs/qwt/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for x11-libs/qwt # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/ChangeLog,v 1.137 2015/01/15 20:09:17 jlec Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/ChangeLog,v 1.138 2015/01/28 13:31:17 jlec Exp $ + +*qwt-6.1.2-r1 (28 Jan 2015) + + 28 Jan 2015; Justin Lecher <jlec@gentoo.org> +qwt-6.1.2-r1.ebuild: + Add qt5 support #517866, thanks Eugene Shalygin for the ebuild 15 Jan 2015; Justin Lecher <jlec@gentoo.org> qwt-6.1.2.ebuild: Add missing dep on dev-qt/qtopengl, #536642 diff --git a/x11-libs/qwt/qwt-6.1.2-r1.ebuild b/x11-libs/qwt/qwt-6.1.2-r1.ebuild new file mode 100644 index 000000000000..45987410569a --- /dev/null +++ b/x11-libs/qwt/qwt-6.1.2-r1.ebuild @@ -0,0 +1,198 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qwt/qwt-6.1.2-r1.ebuild,v 1.1 2015/01/28 13:31:17 jlec Exp $ + +EAPI=5 + +inherit eutils multibuild multilib qmake-utils + +MY_P="${PN}-${PV/_/-}" + +DESCRIPTION="2D plotting library for Qt4" +HOMEPAGE="http://qwt.sourceforge.net/" +SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV/_/-}/${MY_P}.tar.bz2" + +LICENSE="qwt mathml? ( LGPL-2.1 Nokia-Qt-LGPL-Exception-1.1 )" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos" +SLOT="6" +IUSE="doc examples mathml opengl qt4 qt5 static-libs svg" + +DEPEND=" + !<x11-libs/qwt-5.2.3 + qt4? ( + dev-qt/designer:4 + dev-qt/qtcore:4 + dev-qt/qtgui:4 + opengl? ( dev-qt/qtopengl:4 ) + svg? ( dev-qt/qtsvg:4 ) + ) + qt5? ( + dev-qt/designer:5 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtconcurrent:5 + dev-qt/qtwidgets:5 + opengl? ( dev-qt/qtopengl:5 ) + svg? ( dev-qt/qtsvg:5 ) + ) + doc? ( !<media-libs/coin-3.1.3[doc] ) + opengl? ( virtual/opengl ) + " +RDEPEND="${DEPEND}" + +S="${WORKDIR}"/${MY_P} + +DOCS="README" + +PATCHES=( + "${FILESDIR}"/${PN}-6.0.2-invalid-read.patch + "${FILESDIR}"/${PN}-6.1.1-pc-destdir.patch + ) + +src_prepare() { + cat > qwtconfig.pri <<-EOF + QWT_INSTALL_LIBS = "${EPREFIX}/usr/$(get_libdir)" + QWT_INSTALL_HEADERS = "${EPREFIX}/usr/include/qwt6" + QWT_INSTALL_DOCS = "${EPREFIX}/usr/share/doc/${PF}" + QWT_CONFIG += QwtPlot QwtWidgets QwtDesigner QwtPkgConfig + VERSION = ${PV/_*} + QWT_VERSION = ${PV/_*} + EOF + + use mathml && echo "QWT_CONFIG += QwtMathML" >> qwtconfig.pri + use opengl && echo "QWT_CONFIG += QwtOpenGL" >> qwtconfig.pri + use svg && echo "QWT_CONFIG += QwtSvg" >> qwtconfig.pri + + cat > qwtbuild.pri <<-EOF + QWT_CONFIG += qt warn_on thread release no_keywords + EOF + + MULTIBUILD_VARIANTS=( ) + + if use qt4; then + use static-libs && MULTIBUILD_VARIANTS+=( qt4-static ) + MULTIBUILD_VARIANTS+=( qt4-shared ) + fi + + if use qt5; then + use static-libs && MULTIBUILD_VARIANTS+=( qt5-static ) + MULTIBUILD_VARIANTS+=( qt5-shared ) + fi + + multibuild_copy_sources + + preparation() { + if [[ ${MULTIBUILD_VARIANT} == *-shared ]]; then + echo "QWT_CONFIG += QwtDll" >> qwtconfig.pri + fi + + case "${MULTIBUILD_VARIANT}" in + qt4-*) + cat >> qwtconfig.pri <<-EOF + QWT_INSTALL_PLUGINS = "${EPREFIX}/usr/$(get_libdir)/qt4/plugins/designer" + QWT_INSTALL_FEATURES = "${EPREFIX}/usr/share/qt4/mkspecs/features" + EOF + sed \ + -e 's/target doc/target/' \ + -e "/^TARGET/s:(qwt):(qwt6-qt4):g" \ + -e "/^TARGET/s:qwt):qwt6-qt4):g" \ + -i src/src.pro || die + + sed \ + -e '/qwtAddLibrary/s:(qwt):(qwt6-qt4):g' \ + -e '/qwtAddLibrary/s:qwt):qwt6-qt4):g' \ + -i qwt.prf designer/designer.pro examples/examples.pri \ + textengines/mathml/qwtmathml.prf textengines/textengines.pri || die + + ;; + qt5-*) + cat >> qwtconfig.pri <<-EOF + QWT_INSTALL_PLUGINS = "${EPREFIX}/usr/$(get_libdir)/qt5/plugins/designer" + QWT_INSTALL_FEATURES = "${EPREFIX}/usr/share/qt5/mkspecs/features" + EOF + sed \ + -e 's/target doc/target/' \ + -e "/^TARGET/s:(qwt):(qwt6-qt5):g" \ + -e "/^TARGET/s:qwt):qwt6-qt5):g" \ + -i src/src.pro || die + + sed \ + -e '/qwtAddLibrary/s:(qwt):(qwt6-qt5):g' \ + -e '/qwtAddLibrary/s:qwt):qwt6-qt5):g' \ + -i qwt.prf designer/designer.pro examples/examples.pri \ + textengines/mathml/qwtmathml.prf textengines/textengines.pri || die + ;; + esac + epatch "${PATCHES[@]}" + } + + multibuild_foreach_variant run_in_build_dir preparation +} + +src_configure() { + configuration() { + case "${MULTIBUILD_VARIANT}" in + qt4-*) + eqmake4 + ;; + qt5-*) + eqmake5 + ;; + esac + } + multibuild_parallel_foreach_variant run_in_build_dir configuration +} + +src_compile() { + multibuild_foreach_variant run_in_build_dir default +} + +src_test() { + testing() { + cd examples || die + case "${MULTIBUILD_VARIANT}" in + qt4-*) + eqmake4 examples.pro + ;; + qt5-*) + eqmake5 examples.pro + ;; + esac + emake + } + multibuild_foreach_variant run_in_build_dir testing +} + +src_install () { + rm -f doc/man/*/{_,deprecated}* || die + + multibuild_foreach_variant run_in_build_dir emake INSTALL_ROOT="${D}" install + + if use qt4; then + mv "${ED}"/usr/$(get_libdir)/pkgconfig/qwt6{-qt4,}.pc || die + fi + + if use mathml; then + sed \ + -e "s: -L${WORKDIR}.* -lqwt6: -lqwt6:g" \ + -i "${ED}"/usr/$(get_libdir)/pkgconfig/qwtmathml.pc || die + fi + + use doc && dohtml -r doc/html/* + + if use examples; then + # don't build examples - fix the qt files to build once installed + cat > examples/examples.pri <<-EOF + include( qwtconfig.pri ) + TEMPLATE = app + MOC_DIR = moc + INCLUDEPATH += "${EPREFIX}/usr/include/qwt6" + DEPENDPATH += "${EPREFIX}/usr/include/qwt6" + LIBS += -lqwt6 + EOF + sed -i -e 's:../qwtconfig:qwtconfig:' examples/examples.pro || die + cp *.pri examples/ || die + insinto /usr/share/${PN}6 + doins -r examples + fi +} |