commit: 208abfa899d4851229d0090fd08e7e76ba632097 Author: Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net> AuthorDate: Mon Oct 26 12:05:26 2020 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Mon Nov 9 13:22:05 2020 +0000 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=208abfa8
x11-libs/qwt: Qt5 compatible version of qwt-5: qwt5-qt5 named same as qwt-6, but in seperate slot so they can be installed simulataniously based on the treecleaned 5.2.3 ebuild (2018 06 28) https://github.com/gentoo/gentoo/commit/34cbddba12337afd34a28890034439748c436444 Package-Manager: Portage-3.0.8, Repoman-3.0.2 Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net> Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org> x11-libs/qwt/metadata.xml | 18 +++++++ x11-libs/qwt/qwt-5.2.3_p20200902.ebuild | 88 +++++++++++++++++++++++++++++++++ 2 files changed, 106 insertions(+) diff --git a/x11-libs/qwt/metadata.xml b/x11-libs/qwt/metadata.xml new file mode 100644 index 000000000..f793a4b23 --- /dev/null +++ b/x11-libs/qwt/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>[email protected]</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription lang="en"> + The Qwt library contains GUI Components and utility classes which are + primarily useful for programs with a technical background. + Besides a 2D plot widget it provides scales, sliders, dials, + compasses, thermometers, wheels and knobs to control or display + values, arrays or ranges of type double. +</longdescription> + <upstream> + <remote-id type="sourceforge">qwt</remote-id> + </upstream> +</pkgmetadata> diff --git a/x11-libs/qwt/qwt-5.2.3_p20200902.ebuild b/x11-libs/qwt/qwt-5.2.3_p20200902.ebuild new file mode 100644 index 000000000..f945bc877 --- /dev/null +++ b/x11-libs/qwt/qwt-5.2.3_p20200902.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit qmake-utils + +COMMIT="0052f96fdd6d5f021f20a1cfc4d2fcfc605941da" + +DESCRIPTION="2D plotting library for Qt5" +HOMEPAGE="https://qwt.sourceforge.io/ https://github.com/gbm19/qwt5-qt5" +SRC_URI="https://github.com/gbm19/qwt5-qt5/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="qwt" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" +SLOT="5" +IUSE="doc examples svg" + +RDEPEND=" + dev-qt/designer:5 + dev-qt/qtgui:5 + svg? ( dev-qt/qtsvg:5 ) +" +BDEPEND="doc? ( app-doc/doxygen )" + +DOCS=( CHANGES README ) + +S="${WORKDIR}/${PN}5-qt5-${COMMIT}" + +src_prepare() { + default + sed -e "/QwtVersion/s:5.2.2.:${PV}:g" -i ${PN}.prf || die + + cat > qwtconfig.pri <<-EOF + target.path = "${EPREFIX}/usr/$(get_libdir)" + headers.path = "${EPREFIX}/usr/include/qwt5" + doc.path = "${EPREFIX}/usr/share/doc/${PF}" + CONFIG += qt warn_on thread release + CONFIG += QwtDll QwtPlot QwtWidgets QwtDesigner + VERSION = ${PV} + QWT_VERSION = ${PV/_*} + QWT_INSTALL_PLUGINS = "${EPREFIX}/usr/$(get_libdir)/qt5/plugins/designer" + QWT_INSTALL_FEATURES = "${EPREFIX}/usr/share/qt5/mkspecs/features" + EOF + sed -i -e 's/headers doc/headers/' src/src.pro || die + use svg && echo >> qwtconfig.pri "CONFIG += QwtSVGItem" +} + +src_configure() { + eqmake5 +} + +src_compile() { + default + if use doc ; then + cd doc || die + doxygen Doxyfile || die "doxygen failed" + HTML_DOCS="doc/html" + fi +} + +src_install () { + emake INSTALL_ROOT="${D}" install + einstalldocs + doman doc/man/*/* + + 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/qwt5" + DEPENDPATH += "${EPREFIX}/usr/include/qwt5" + LIBS += -lqwt + EOF + sed -i -e 's:../qwtconfig:qwtconfig:' examples/examples.pro || die + cp *.pri examples/ || die + insinto /usr/share/${PN}5 + doins -r examples + fi + + # avoid file conflict with qwt:6 + # https://github.com/gbm19/qwt5-qt5/issues/2 + pushd "${ED}/usr/share/man/man3/" + for f in *; do mv ${f} ${f//.3/.5qt5.3}; done + popd +}
