summaryrefslogtreecommitdiff
path: root/dev-python/matplotlib
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-08-11 14:19:56 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-08-11 14:19:56 +0100
commit34d4f34516ab568ad4ea24fc16ee0ad9ec8ad079 (patch)
tree3339f6fc30715c2fbe1d20281f6ddc53eda3f9b4 /dev-python/matplotlib
parent32eff0cac517b699efc32b86520bac482961a57f (diff)
gentoo auto-resync : 11:08:2022 - 14:19:56
Diffstat (limited to 'dev-python/matplotlib')
-rw-r--r--dev-python/matplotlib/Manifest2
-rw-r--r--dev-python/matplotlib/matplotlib-3.5.3.ebuild283
2 files changed, 285 insertions, 0 deletions
diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest
index c5f1ae9faf91..d67c7ee5c897 100644
--- a/dev-python/matplotlib/Manifest
+++ b/dev-python/matplotlib/Manifest
@@ -4,6 +4,8 @@ AUX matplotlib-3.5.2-test.patch 10981 BLAKE2B cd7406a1452b22d5782ef293b10e1fbed8
DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca SHA512 ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b
DIST matplotlib-3.5.1.tar.gz 35320470 BLAKE2B ebf69b62ac587c61ecf8442abaab302019f63a3c9d8db6f7f7fb32f4d14da554fd8305ea6dfed2ff86a5af4e7e4d2b81f14802692fe50c986f7da8545bd26c00 SHA512 a317dbd748e5fc1fafcf80020cb6d38a8888431487beded97acd59d759e67e54f59506b642e4a03d4351c1ac050d15e3f2e2b5443433debc78ddad52881c8d82
DIST matplotlib-3.5.2.tar.gz 35210006 BLAKE2B e3f90a0cf1d28f041a8cdd6920a8a4efe16169bb4acf85f7b2562196db306eeb692218728ea33c7b62214e7894e83a104954cbef38c45ccbb4f630bd35c0c36b SHA512 32844dfa85dbc43360c1773d748a58d2ab089111c51c825da62956c778a0eeaf10ca33a5c6c094295388a80d5873a2e1b17484e02b653e9e8e5ba98659329974
+DIST matplotlib-3.5.3.tar.gz 35236343 BLAKE2B 0d3f4e15295afe2c737e441325206e77c520a514bc87ab1eebef624f89896a2cf609e8d57b8fa8ef28ecf8c836e20cb296adaa95f81dbfcf3f2a45631e3dd02c SHA512 f431d3046e9c5fbe5d44a16a762e9a178ba34380974964660eaf3681671178866a63b3bad9aad8d3ad423926f7db2965d514e9b1489e3a824a4532a01f0e0670
EBUILD matplotlib-3.5.1-r2.ebuild 7232 BLAKE2B 38969ec1fd4c035afe1be859825105203abe9ecc0c9ef409a64fe4e041d87324205e58c8085c628bf80a11550f453351ef518807c4f5365092bfc6f9498b213a SHA512 8c7424c236d0348d23c117d0433316c92d85fcd1902d436b418bc2c0602d648cfa8d24f8ddfb3ada0b8d9e68feda3e9526c93cf9dcf6569db516e2596581a886
EBUILD matplotlib-3.5.2-r3.ebuild 7393 BLAKE2B 87bea3c13eac18a8bfecffa9266bcde29681b43b4d9430e47b7a9acebc45cba14483c7ccdd0b43967c9125cc760fce9cdcaea783aec649fed06b2ddd96f55f19 SHA512 200a53e212de82d9ea655a327350cb7ddc00bdd078fa9627dca540064972e3ed03fca02af5db0ac4b52ba65445846a674c920a9275afb696c4020da897664f32
+EBUILD matplotlib-3.5.3.ebuild 7452 BLAKE2B 772cc3fa10b93c6c407644a30a1a240432b4bb9c17b88a285a24d2664c06658e5d09265842c16f1b4396f4750501dda4062afc0e8294d1eed2931e7657c15ef1 SHA512 a90a05dab36b35037165cd4e73888a0c67576f3b3f2f34ed4635f4c79713c8030087a11a797e8d376fd823f9ef46e873ed5cd2a3f1c703a9ccaee59420d60c9a
MISC metadata.xml 1075 BLAKE2B 6e2f62f6788e5a673bd54e375e6c7e8fb32d4dd181a48cf62582b93f78ef7a0e513417d24e940844188d5ab38bb2946c09e80d40706c207648c95eeac672a796 SHA512 38d935eed141df3a8d675b51a547135c9a357ab2058292640a9e98a07e3e3cc70348011d8c4f7f9f0ddece9531b56a1b2dfb2245cf1dfe065d43dc834ca78748
diff --git a/dev-python/matplotlib/matplotlib-3.5.3.ebuild b/dev-python/matplotlib/matplotlib-3.5.3.ebuild
new file mode 100644
index 000000000000..e4d1e2aaf06d
--- /dev/null
+++ b/dev-python/matplotlib/matplotlib-3.5.3.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..11} )
+PYTHON_REQ_USE='tk?,threads(+)'
+
+inherit distutils-r1 flag-o-matic multiprocessing prefix toolchain-funcs \
+ virtualx
+
+FT_PV=2.6.1
+DESCRIPTION="Pure python plotting library with matlab like syntax"
+HOMEPAGE="
+ https://matplotlib.org/
+ https://github.com/matplotlib/matplotlib/
+ https://pypi.org/project/matplotlib/
+"
+SRC_URI="
+ mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+ test? (
+ https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
+ )
+"
+
+# Main license: matplotlib
+# Some modules: BSD
+# matplotlib/backends/qt4_editor: MIT
+# Fonts: BitstreamVera, OFL-1.1
+LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
+
+# internal copy of pycxx highly patched
+# dev-python/pycxx
+RDEPEND="
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
+ >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.18.2[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ >=dev-python/pillow-7.1.1[jpeg,${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-2.2.1[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+ >=dev-python/six-1.14.0[${PYTHON_USEDEP}]
+ media-fonts/dejavu
+ media-fonts/stix-fonts
+ media-libs/freetype:2
+ media-libs/libpng:0
+ >=media-libs/qhull-2013:=
+ virtual/imagemagick-tools[jpeg,tiff]
+ cairo? (
+ dev-python/cairocffi[${PYTHON_USEDEP}]
+ )
+ excel? (
+ dev-python/xlwt[${PYTHON_USEDEP}]
+ )
+ gtk3? (
+ >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ )
+ latex? (
+ virtual/latex-base
+ app-text/dvipng
+ app-text/ghostscript-gpl
+ app-text/poppler[utils]
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ dev-texlive/texlive-xetex
+ )
+ qt5? (
+ dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
+ )
+ webagg? (
+ >=www-servers/tornado-6.0.4[${PYTHON_USEDEP}]
+ )
+ wxwidgets? (
+ $(python_gen_cond_dep '
+ dev-python/wxpython:*[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ )
+"
+
+BDEPEND="
+ ${RDEPEND}
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm_git_archive[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ doc? (
+ >=app-text/dvipng-1.15-r1
+ >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
+ >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
+ >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
+ virtual/latex-base
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-latexrecommended
+ dev-texlive/texlive-luatex
+ dev-texlive/texlive-xetex
+ >=media-gfx/graphviz-2.42.3[cairo]
+ )
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
+ >=www-servers/tornado-6.0.4[${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ )
+"
+
+distutils_enable_tests pytest
+
+use_setup() {
+ local uword="${2:-${1}}"
+ if use "${1}"; then
+ echo "${uword} = True"
+ echo "${uword}agg = True"
+ else
+ echo "${uword} = False"
+ echo "${uword}agg = False"
+ fi
+}
+
+python_prepare_all() {
+# Generates test failures, but fedora does it
+# local PATCHES=(
+# "${FILESDIR}"/${P}-unbundle-pycxx.patch
+# "${FILESDIR}"/${P}-unbundle-agg.patch
+# )
+# rm -r agg24 CXX || die
+# rm -r agg24 || die
+
+# cat > lib/${PN}/externals/six.py <<-EOF
+# from __future__ import absolute_import
+# from six import *
+# EOF
+
+ # Affects installed _version.py, bug #854600
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+ local PATCHES=(
+ "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
+ "${FILESDIR}"/matplotlib-3.5.2-test.patch
+ )
+
+ sed \
+ -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
+ -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
+ || die "sed pyparsing failed"
+ sed -i -e '/setuptools_scm/s:,<7::' setup.py || die
+
+ hprefixify setupext.py
+
+ rm -rf libqhull || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ append-flags -fno-strict-aliasing
+ append-cppflags -DNDEBUG # or get old trying to do triangulation
+ tc-export PKG_CONFIG
+
+ unset DISPLAY # bug #278524
+ export XDG_RUNTIME_DIR="${T}/runtime-dir"
+ mkdir "${XDG_RUNTIME_DIR}" || die
+ chmod 0700 "${XDG_RUNTIME_DIR}" || die
+}
+
+python_configure() {
+ mkdir -p "${BUILD_DIR}" || die
+
+ # create setup.cfg (see setup.cfg.template for any changes).
+
+ # common switches.
+ cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
+ [directories]
+ basedirlist = ${EPREFIX}/usr
+ [provide_packages]
+ pytz = False
+ dateutil = False
+ [libs]
+ system_freetype = True
+ system_qhull = True
+ [packages]
+ tests = True
+ [gui_support]
+ agg = True
+ gtk = False
+ gtkagg = False
+ macosx = False
+ pyside = False
+ pysideagg = False
+ qt4 = False
+ qt4agg = False
+ $(use_setup cairo)
+ $(use_setup gtk3)
+ $(use_setup qt5)
+ $(use_setup tk)
+ $(use_setup wxwidgets wx)
+ EOF
+
+ if use gtk3 && use cairo; then
+ echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
+ else
+ echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
+ fi
+}
+
+wrap_setup() {
+ local MAKEOPTS=-j1
+ local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
+ "$@"
+}
+
+python_compile() {
+ wrap_setup distutils-r1_python_compile
+ find "${BUILD_DIR}" -name '*.pth' -delete || die
+}
+
+python_compile_all() {
+ if use doc; then
+ cd doc || die
+
+ VARTEXFONTS="${T}"/fonts \
+ emake SPHINXOPTS= O=-Dplot_formats=png:100 html
+ fi
+}
+
+src_test() {
+ mkdir build || die
+ ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # broken by -Wdefault
+ "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
+ "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
+ tests/test_testing.py::test_warn_to_fail
+ )
+ [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
+ # https://github.com/matplotlib/matplotlib/issues/23384
+ "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtagg', 'QT_API': 'PyQt5'}]"
+ "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtcairo', 'QT_API': 'PyQt5'}]"
+ )
+
+ # we need to rebuild mpl against bundled freetype, otherwise
+ # over 1000 tests will fail because of mismatched font rendering
+ grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
+ > "${BUILD_DIR}"/test-setup.cfg || die
+ local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
+
+ esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
+ local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
+
+ # speed tests up
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ nonfatal epytest --pyargs matplotlib -m "not network" \
+ -p xdist.plugin -n "$(makeopts_jobs)" || die
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/build/html/. )
+
+ distutils-r1_python_install_all
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}