From 70a27371a76592daa0273e8e1df72d27473f70c9 Mon Sep 17 00:00:00 2001 From: Dima Panov Date: Sun, 31 May 2020 07:59:18 +0000 Subject: [PATCH] x11-toolkits/py-qt5-chart: Add extra PyQt5 module from Rivervank Computing PyQtChart is a set of Python bindings for The Qt Company's Qt Charts library. The bindings sit on top of PyQt and are implemented as a single module. --- x11-toolkits/Makefile | 1 + x11-toolkits/py-qt5-chart/Makefile | 49 +++++++++++++++++ x11-toolkits/py-qt5-chart/distinfo | 3 + .../py-qt5-chart/files/patch-configure.py | 24 ++++++++ x11-toolkits/py-qt5-chart/pkg-descr | 4 ++ x11-toolkits/py-qt5-chart/pkg-plist | 55 +++++++++++++++++++ 6 files changed, 136 insertions(+) create mode 100644 x11-toolkits/py-qt5-chart/Makefile create mode 100644 x11-toolkits/py-qt5-chart/distinfo create mode 100644 x11-toolkits/py-qt5-chart/files/patch-configure.py create mode 100644 x11-toolkits/py-qt5-chart/pkg-descr create mode 100644 x11-toolkits/py-qt5-chart/pkg-plist diff --git a/x11-toolkits/Makefile b/x11-toolkits/Makefile index 649c35ba8e49..75f5670451f3 100644 --- a/x11-toolkits/Makefile +++ b/x11-toolkits/Makefile @@ -171,6 +171,7 @@ SUBDIR += py-easygui SUBDIR += py-fltk SUBDIR += py-gtk2 + SUBDIR += py-qt5-chart SUBDIR += py-qt5-gui SUBDIR += py-qt5-quick SUBDIR += py-qt5-quickwidgets diff --git a/x11-toolkits/py-qt5-chart/Makefile b/x11-toolkits/py-qt5-chart/Makefile new file mode 100644 index 000000000000..7c2c7186542f --- /dev/null +++ b/x11-toolkits/py-qt5-chart/Makefile @@ -0,0 +1,49 @@ +# $FreeBSD$ + +PORTNAME= chart +PORTVERSION= ${PYQT5_VERSION} +CATEGORIES= x11-toolkits devel python +MASTER_SITES= RIVERBANK/PyQtChart/${PYQT5_VERSION}/ +PKGNAMEPREFIX= ${PYQT_PY_RELNAME}- +DISTNAME= PyQtChart-${PYQT5_VERSION} + +MAINTAINER= kde@FreeBSD.org +COMMENT= Python bindings for the Qt5 toolkit, QtChart module + +LICENSE= ${PYQT5_LICENSE} + +BUILD_DEPENDS= ${PY_ENUM34} +RUN_DEPENDS= ${PY_ENUM34} + +USES= gl python pyqt:5 qt:5 +USE_GL= gl +USE_PYQT= sip_build core gui widgets +USE_PYTHON= concurrent flavors py3kplist +USE_QT= charts core declarative gui qmake_build widgets + +HAS_CONFIGURE= yes +CONFIGURE_ARGS+= --verbose --no-dist-info \ + -d ${PYTHONPREFIX_SITELIBDIR}/PyQt5 \ + -q ${QMAKE} \ + --sip ${SIP} \ + --pyqt-sipdir=${PYQT_SIPDIR} \ + --qtchart-sipdir=${PYQT_SIPDIR} +DESTDIRNAME= INSTALL_ROOT + +OPTIONS_DEFINE= API DEBUG +OPTIONS_DEFAULT=API +OPTIONS_SUB= yes + +API_DESC= Install QtCharts API for QScintilla2 +API_CONFIGURE_ON= --apidir=${PYQT_APIDIR} +API_CONFIGURE_OFF= --no-qsci-api +API_LIB_DEPENDS= libqscintilla2_qt5.so:devel/qscintilla2-qt5 +DEBUG_CONFIGURE_ON= --debug --trace + +.if !target(do-configure) +do-configure: + cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \ + ${PYTHON_CMD} configure.py ${CONFIGURE_ARGS} +.endif # !target(do-configure) + +.include diff --git a/x11-toolkits/py-qt5-chart/distinfo b/x11-toolkits/py-qt5-chart/distinfo new file mode 100644 index 000000000000..0a09be1498f2 --- /dev/null +++ b/x11-toolkits/py-qt5-chart/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1590894095 +SHA256 (PyQtChart-5.13.1.tar.gz) = 49960a1483527857b38c1527f9b6328d30bdcc84521f579c0a561a892f54130e +SIZE (PyQtChart-5.13.1.tar.gz) = 65027 diff --git a/x11-toolkits/py-qt5-chart/files/patch-configure.py b/x11-toolkits/py-qt5-chart/files/patch-configure.py new file mode 100644 index 000000000000..cc8fcce7cad8 --- /dev/null +++ b/x11-toolkits/py-qt5-chart/files/patch-configure.py @@ -0,0 +1,24 @@ +--- configure.py.orig 2019-11-02 18:58:12 UTC ++++ configure.py +@@ -690,7 +690,7 @@ class _TargetConfiguration: + self.stubs_dir = '' + self.distinfo = False + +- self.prot_is_public = (self.py_platform.startswith('linux') or self.py_platform == 'darwin') ++ self.prot_is_public = (self.py_platform.startswith('linux') or self.py_platform.startswith('freebsd') or self.py_platform == 'darwin') + + if pkg_config.pyqt5_is_supported and pkg_config.pyqt4_is_supported: + pyqt = 'PyQt5' if pkg_config.pyqt5_is_default else 'PyQt4' +@@ -1549,10 +1549,10 @@ INSTALLS += sip + + # These optimisations could apply to other platforms. + if module_config.no_exceptions: +- if target_config.py_platform.startswith('linux') or target_config.py_platform == 'darwin': ++ if target_config.py_platform.startswith('linux') or target_config.py_platform.startswith('freebsd') or target_config.py_platform == 'darwin': + pro.write('QMAKE_CXXFLAGS += -fno-exceptions\n') + +- if target_config.py_platform.startswith('linux') and not opts.static: ++ if target_config.py_platform.startswith('linux') or target_config.py_platform.startswith('freebsd') and not opts.static: + if target_config.py_version >= 0x030000: + entry_point = 'PyInit_%s' % mname + else: diff --git a/x11-toolkits/py-qt5-chart/pkg-descr b/x11-toolkits/py-qt5-chart/pkg-descr new file mode 100644 index 000000000000..3731eaa56abe --- /dev/null +++ b/x11-toolkits/py-qt5-chart/pkg-descr @@ -0,0 +1,4 @@ +PyQt5 is a set of Python bindings for Digia's Qt5 application framework. +This package provides the extra QtChart module. + +WWW: https://riverbankcomputing.com/software/pyqtchart diff --git a/x11-toolkits/py-qt5-chart/pkg-plist b/x11-toolkits/py-qt5-chart/pkg-plist new file mode 100644 index 000000000000..aab4bf8b8339 --- /dev/null +++ b/x11-toolkits/py-qt5-chart/pkg-plist @@ -0,0 +1,55 @@ +%%PYTHON_SITELIBDIR%%/PyQt5/QtChart.so +%%PYTHON_SITELIBDIR%%/PyQt5/QtChart.pyi +%%PYQT_SIPDIR%%/QtChart/QtChartmod.sip +%%PYQT_SIPDIR%%/QtChart/qabstractaxis.sip +%%PYQT_SIPDIR%%/QtChart/qabstractbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qabstractseries.sip +%%PYQT_SIPDIR%%/QtChart/qarealegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qareaseries.sip +%%PYQT_SIPDIR%%/QtChart/qbarcategoriesaxis.sip +%%PYQT_SIPDIR%%/QtChart/qbarcategoryaxis.sip +%%PYQT_SIPDIR%%/QtChart/qbarlegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qbarset.sip +%%PYQT_SIPDIR%%/QtChart/qboxplotlegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qboxplotseries.sip +%%PYQT_SIPDIR%%/QtChart/qboxset.sip +%%PYQT_SIPDIR%%/QtChart/qcandlesticklegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qcandlestickmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qcandlestickseries.sip +%%PYQT_SIPDIR%%/QtChart/qcandlestickset.sip +%%PYQT_SIPDIR%%/QtChart/qcategoryaxis.sip +%%PYQT_SIPDIR%%/QtChart/qchart.sip +%%PYQT_SIPDIR%%/QtChart/qchartglobal.sip +%%PYQT_SIPDIR%%/QtChart/qchartview.sip +%%PYQT_SIPDIR%%/QtChart/qdatetimeaxis.sip +%%PYQT_SIPDIR%%/QtChart/qhbarmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qhboxplotmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qhcandlestickmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qhorizontalbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qhorizontalpercentbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qhorizontalstackedbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qhpiemodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qhxymodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qlegend.sip +%%PYQT_SIPDIR%%/QtChart/qlegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qlineseries.sip +%%PYQT_SIPDIR%%/QtChart/qlogvalueaxis.sip +%%PYQT_SIPDIR%%/QtChart/qpercentbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qpielegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qpieseries.sip +%%PYQT_SIPDIR%%/QtChart/qpieslice.sip +%%PYQT_SIPDIR%%/QtChart/qpolarchart.sip +%%PYQT_SIPDIR%%/QtChart/qscatterseries.sip +%%PYQT_SIPDIR%%/QtChart/qsplineseries.sip +%%PYQT_SIPDIR%%/QtChart/qstackedbarseries.sip +%%PYQT_SIPDIR%%/QtChart/qvalueaxis.sip +%%PYQT_SIPDIR%%/QtChart/qvaluesaxis.sip +%%PYQT_SIPDIR%%/QtChart/qvbarmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qvboxplotmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qvcandlestickmodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qvpiemodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qvxymodelmapper.sip +%%PYQT_SIPDIR%%/QtChart/qxylegendmarker.sip +%%PYQT_SIPDIR%%/QtChart/qxyseries.sip +%%API%%%%PYQT_APIDIR%%/api/python/PyQtChart.api