commit: f068dc7864dfae7b572dade8744da359f9767a12 Author: Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net> AuthorDate: Mon Oct 26 12:12:49 2020 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Mon Nov 9 13:22:31 2020 +0000 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=f068dc78
sci-visualization/scidavis: Qt5 data visualizer and analyzer Requires new deps qwtplot3d and qwt5-qt5(packaged as qwt:5) Reported-by: Helmut Jarausch, urcindalo, Oliver Freyermuth Closes: https://bugs.gentoo.org/556832 Closes: https://github.com/gentoo/sci/pull/984 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> .../scidavis/files/scidavis-build.patch | 39 +++++++++ .../scidavis/files/scidavis-tests.patch | 10 +++ sci-visualization/scidavis/metadata.xml | 24 ++++++ sci-visualization/scidavis/scidavis-2.3.0.ebuild | 93 ++++++++++++++++++++++ 4 files changed, 166 insertions(+) diff --git a/sci-visualization/scidavis/files/scidavis-build.patch b/sci-visualization/scidavis/files/scidavis-build.patch new file mode 100644 index 000000000..cb1e2600c --- /dev/null +++ b/sci-visualization/scidavis/files/scidavis-build.patch @@ -0,0 +1,39 @@ +diff --git a/config.pri b/config.pri +index 2b8d943..6034b6a 100644 +--- a/config.pri ++++ b/config.pri +@@ -278,30 +278,13 @@ osx_dist { + + contains(PRESET, linux_package) { + ### dynamically link against Qwt(3D) installed system-wide +- +- exists(/usr/include/qt5/qwt5-qt5) {INCLUDEPATH+=/usr/include/qt5/qwt5-qt5} +- exists(/usr/include/qt5/qwtplot3d-qt5) {INCLUDEPATH+=/usr/include/qt5/qwtplot3d-qt5} +- exists(/usr/include/qwt5-qt5) {INCLUDEPATH+=/usr/include/qwt5-qt5} +- exists(/usr/include/qwtplot3d) {INCLUDEPATH+=/usr/include/qwtplot3d} +- +- system (ls /usr/lib*/libqwt5-qt5.so) {LIBS+=-lqwt5-qt5} +- system (ls /usr/lib*/*/libqwt5-qt5.so) {LIBS+=-lqwt5-qt5} +- system (ls /usr/lib*/libqwt-qt5.so) {LIBS+=-lqwt-qt5} +- system (ls /usr/lib*/libqwtplot3d-qt5.so) {LIBS+=-lqwtplot3d-qt5} +- system (ls /usr/lib*/*/libqwtplot3d-qt5.so) {LIBS+=-lqwtplot3d-qt5} +- +- ++ INCLUDEPATH +=/usr/include/qwt5 ++ INCLUDEPATH +=/usr/include/qwtplot3d ++ LIBS +=-lqwt5-qt5 ++ LIBS +=-lqwtplot3d + LIBS += -lz -lGLU +- +- INCLUDEPATH += /usr/include/muParser + LIBS += -lgsl -lgslcblas + LIBS += -lmuparser +- +- # enable user installed packages +- INCLUDEPATH = "$(HOME)/usr/include" $$INCLUDEPATH +- QMAKE_LIBDIR = "$(HOME)/usr/lib" $$QMAKE_LIBDIR +- +- + } + + contains(PRESET, self_contained) { diff --git a/sci-visualization/scidavis/files/scidavis-tests.patch b/sci-visualization/scidavis/files/scidavis-tests.patch new file mode 100644 index 000000000..2c9fa0095 --- /dev/null +++ b/sci-visualization/scidavis/files/scidavis-tests.patch @@ -0,0 +1,10 @@ +diff --git a/test/testPaintDevice.cpp b/test/testPaintDevice.cpp +index 8657307..89693b0 100644 +--- a/test/testPaintDevice.cpp ++++ b/test/testPaintDevice.cpp +@@ -1,4 +1,5 @@ + #include "testPaintDevice.h" ++#include <QPainterPath> + using namespace std; + + namespace diff --git a/sci-visualization/scidavis/metadata.xml b/sci-visualization/scidavis/metadata.xml new file mode 100644 index 000000000..089e4b033 --- /dev/null +++ b/sci-visualization/scidavis/metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Andrew Ammerlaan</name> + </maintainer> + <maintainer type="project"> + <email>[email protected]</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription lang="en"> + SciDAVis is a user-friendly data analysis and visualization program primarily aimed at high-quality plotting of scientific data. + It strives to combine an intuitive, easy-to-use graphical user interface with powerful features such as Python scriptability. + </longdescription> + <use> + <flag name="assistant">Compile with QAssistant (documentation broweser) support from <pkg>dev-qt/assistant</pkg>.</flag> + <flag name="origin">Add support for reading OriginLab OPJ project files through <pkg>sci-libs/liborigin</pkg>.</flag> + <flag name="python">Build support for python scripting.</flag> + </use> + <upstream> + <remote-id type="sourceforge">SciDAVis</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-visualization/scidavis/scidavis-2.3.0.ebuild b/sci-visualization/scidavis/scidavis-2.3.0.ebuild new file mode 100644 index 000000000..9676cfaac --- /dev/null +++ b/sci-visualization/scidavis/scidavis-2.3.0.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7,8,9} ) + +inherit python-single-r1 qmake-utils xdg + +DESCRIPTION="Application for Scientific Data Analysis and Visualization" +HOMEPAGE="http://scidavis.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/SciDAVis/$(ver_cut 1)/$(ver_cut 1-2)/${P}.tar.gz" + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~x86" +SLOT="0" + +IUSE="assistant doc origin python test" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/muParser + dev-qt/qtgui:5 + dev-qt/qtopengl:5 + sci-libs/gsl + sys-libs/zlib[minizip] + x11-libs/qwt:5 + x11-libs/qwtplot3d + assistant? ( dev-qt/assistant ) + origin? ( sci-libs/liborigin ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5-sip[${PYTHON_USEDEP}] + dev-python/sip[${PYTHON_USEDEP}] + ') + ) +" +BDEPEND=" + doc? ( app-doc/doxygen ) + test? ( dev-libs/unittest++ ) +" + +PATCHES=( + "${FILESDIR}/${PN}-build.patch" + "${FILESDIR}/${PN}-tests.patch" +) + +src_prepare() { + default + + # OF has been renamed in Gentoo https://bugs.gentoo.org/383179 + # Note this is *not* packaged in sys-libs/zlib[minizip] because + # this file resides in the test directory in upstream zlib + sed -i -r 's:\<(O[FN])\>:_Z_\1:g' 3rdparty/minigzip/minigzip.c || die + + # fix paths + cat >> config.pri <<-EOF + # install docs to ${PF} instead of ${PN} + documentation.path = "\$\$INSTALLBASE/share/doc/${PF}" + + # install python files in Gentoo specific directories + pythonconfig.path = "$(python_get_scriptdir)" + pythonutils.path = "$(python_get_scriptdir)" + + # /usr/share/appdata is deprecated + appdata.path = "\$\$INSTALLBASE/share/metainfo" + EOF +} + +src_configure() { + INSTALLBASE="${EPREFIX}/usr" eqmake5 \ + $(usex assistant " " " CONFIG+=noassistant ") \ + $(usex origin " CONFIG+=liborigin " " ") \ + $(usex python " CONFIG+=python " " ") \ + $(usex test " CONFIG+=test " " ") +} + +src_compile() { + default + if use doc ; then + doxygen Doxyfile || die "doxygen failed" + HTML_DOCS="API/html" + fi +} + +src_install () { + emake INSTALL_ROOT="${D}" install + einstalldocs + use python && python_optimize +}
