--- /Library/Gentoo/usr/portage/dev-python/matplotlib/matplotlib-1.3.0.ebuild 2014-04-26 05:33:16.000000000 -0300 +++ /Library/Gentoo/usr/portage/dev-python/matplotlib/matplotlib-1.3.1.ebuild 2014-08-27 09:33:50.000000000 -0300 @@ -1,31 +1,34 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/matplotlib/matplotlib-1.3.0.ebuild,v 1.10 2014/04/26 08:20:26 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/matplotlib/matplotlib-1.3.1.ebuild,v 1.5 2014/08/27 12:20:22 blueness Exp $ EAPI=5 -PYTHON_COMPAT=( python{2_7,3_2,3_3} ) +PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} ) + PYTHON_REQ_USE='tk?' -inherit distutils-r1 eutils flag-o-matic +VIRTUALX_REQUIRED="always" + +inherit distutils-r1 eutils flag-o-matic virtualx DESCRIPTION="Pure python plotting library with matlab like syntax" HOMEPAGE="http://matplotlib.org/" SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" -IUSE="cairo doc excel examples fltk gtk gtk3 latex qt4 test tk wxwidgets" SLOT="0" -KEYWORDS="amd64 arm ~mips ~ppc ~ppc64 x86 ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" - # Main license: matplotlib # Some modules: BSD # matplotlib/backends/qt4_editor: MIT # Fonts: BitstreamVera, OFL-1.1 LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="cairo doc excel examples fltk gtk gtk3 latex pyside qt4 test tk wxwidgets" # #456704 -- a lot of py2-only deps PY2_USEDEP=$(python_gen_usedep 'python2*') -PY32_USEDEP=$(python_gen_usedep python{3_2,3_3}) +PY32_USEDEP=$(python_gen_usedep python3_2) +PY3_USEDEP=$(python_gen_usedep python{3_2,3_3}) COMMON_DEPEND=" dev-python/numpy[${PYTHON_USEDEP}] dev-python/python-dateutil:0[${PYTHON_USEDEP}] @@ -35,7 +38,7 @@ media-libs/freetype:2 media-libs/libpng:0 gtk? ( dev-python/pygtk[${PY2_USEDEP}] ) - wxwidgets? ( dev-python/wxpython[${PY2_USEDEP}] )" + wxwidgets? ( >=dev-python/wxpython-2.8[${PY2_USEDEP}] )" # internal copy of pycxx highly patched # dev-python/pycxx @@ -44,8 +47,8 @@ virtual/pkgconfig doc? ( app-text/dvipng - virtual/python-imaging[${PY2_USEDEP},${PY32_USEDEP}] - dev-python/ipython + virtual/python-imaging[${PYTHON_USEDEP}] + dev-python/ipython[${PYTHON_USEDEP}] dev-python/numpydoc[${PY2_USEDEP}] dev-python/xlwt[${PY2_USEDEP}] dev-python/sphinx[${PYTHON_USEDEP}] @@ -61,7 +64,8 @@ cairo? ( dev-python/pycairo[${PYTHON_USEDEP}] ) excel? ( dev-python/xlwt[${PY2_USEDEP}] ) fltk? ( dev-python/pyfltk[${PY2_USEDEP}] ) - gtk3? ( dev-python/pygobject:3[${PYTHON_USEDEP}] + gtk3? ( + dev-python/pygobject:3[${PYTHON_USEDEP}] x11-libs/gtk+:3[introspection] ) latex? ( virtual/latex-base @@ -69,15 +73,24 @@ app-text/dvipng app-text/poppler[utils] dev-texlive/texlive-fontsrecommended + dev-texlive/texlive-latexextra + dev-texlive/texlive-xetex ) - qt4? ( || ( dev-python/PyQt4[X,${PYTHON_USEDEP}] dev-python/pyside[X,${PYTHON_USEDEP}] ) )" + pyside? ( dev-python/pyside[X,${PYTHON_USEDEP}] ) + qt4? ( dev-python/PyQt4[X,${PYTHON_USEDEP}] )" PY2_FLAGS="|| ( $(python_gen_useflags python2*) )" -REQUIRED_USE="doc? ( ${PY2_FLAGS} ) +PY32_FLAGS="|| ( $(python_gen_useflags python3_2) )" +REQUIRED_USE=" + doc? ( ${PY2_FLAGS} ) excel? ( ${PY2_FLAGS} ) fltk? ( ${PY2_FLAGS} ) gtk? ( ${PY2_FLAGS} ) - wxwidgets? ( ${PY2_FLAGS} )" + wxwidgets? ( ${PY2_FLAGS} ) + test? ( + cairo fltk latex pyside qt4 tk wxwidgets + || ( gtk gtk3 ) + )" RESTRICT="mirror" @@ -97,14 +110,29 @@ } python_prepare_all() { - sed -i -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \ - lib/matplotlib/{mathtext,fontconfig_pattern}.py \ +# 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 + + sed \ + -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \ + -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \ || die "sed pyparsing failed" - local PATCHES=( - # avoid checks needing a X display - "${FILESDIR}"/${P}-setup_without_X11.patch - ) + # suggested by upstream + sed \ + -e '/tol/s:32:35:g' \ + -i lib/matplotlib/tests/test_mathtext.py || die + + if use gtk || use gtk3; then + export XDG_RUNTIME_DIR="${T}/runtime-dir" + mkdir "${XDG_RUNTIME_DIR}" || die + chmod 0700 "${XDG_RUNTIME_DIR}" || die + fi distutils-r1_python_prepare_all } @@ -126,12 +154,20 @@ pytz = False dateutil = False [gui_support] + agg = True $(use_setup cairo) + $(use_setup pyside) $(use_setup qt4) $(use_setup tk) EOF - if [[ ${EPYTHON} == python3* ]]; then + if use gtk3 && use cairo; then + echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die + else + echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die + fi + + if $(python_is_python3); then cat >> "${BUILD_DIR}"/setup.cfg <<-EOF six = True fltk = False @@ -146,6 +182,7 @@ six = False $(use_setup fltk) $(use_setup gtk) + $(use_setup gtk3) $(use_setup wxwidgets wx) EOF fi @@ -160,7 +197,8 @@ } python_compile() { - wrap_setup distutils-r1_python_compile + VIRTUALX_COMMAND="wrap_setup distutils-r1_python_compile" + virtualmake } python_compile_all() { @@ -180,10 +218,9 @@ wrap_setup distutils_install_for_testing cd "${TMPDIR}" || die - "${PYTHON}" -c " -import sys, matplotlib as m -sys.exit(0 if m.test(verbosity=2) else 1) -" || die "Tests fail with ${EPYTHON}" + VIRTUALX_COMMAND="${PYTHON}" + virtualmake -c "import sys, matplotlib as m; sys.exit(0 if m.test(verbosity=2) else 1)" || \ + die "Tests fail with ${EPYTHON}" } python_install() {