diff options
Diffstat (limited to 'dev-python/gnuplot-py')
-rw-r--r-- | dev-python/gnuplot-py/Manifest | 1 | ||||
-rw-r--r-- | dev-python/gnuplot-py/files/gnuplot-py-1.7-mousesupport.patch | 75 | ||||
-rw-r--r-- | dev-python/gnuplot-py/gnuplot-py-1.8-r1.ebuild | 33 | ||||
-rw-r--r-- | dev-python/gnuplot-py/metadata.xml | 18 |
4 files changed, 127 insertions, 0 deletions
diff --git a/dev-python/gnuplot-py/Manifest b/dev-python/gnuplot-py/Manifest new file mode 100644 index 000000000000..ab948c730f83 --- /dev/null +++ b/dev-python/gnuplot-py/Manifest @@ -0,0 +1 @@ +DIST gnuplot-py-1.8.tar.gz 118828 SHA256 ab339be7847d30a8acfd616f27b5021bfde0999b7bf2d68400fbe62c53106e21 SHA512 748dc95ea53acd362f67c821a3cc7cf23b6329c2dd13c130c91e1c9f89afe1ffd84619ed321923c65455adf86ee58976dd6dd187881ee3ede5e0f5f551fb027d WHIRLPOOL b13436a3de17db7c871f7179291e0b9669dc7b3b6de9b4e0463e9989c1c0105c2495145ffd12e163cbbc75ff863ce657dbd64aca305c5a42c529e0f2411e7060 diff --git a/dev-python/gnuplot-py/files/gnuplot-py-1.7-mousesupport.patch b/dev-python/gnuplot-py/files/gnuplot-py-1.7-mousesupport.patch new file mode 100644 index 000000000000..2eaf6ae379ed --- /dev/null +++ b/dev-python/gnuplot-py/files/gnuplot-py-1.7-mousesupport.patch @@ -0,0 +1,75 @@ +--- _Gnuplot.py.orig 2003-10-17 16:28:10.000000000 +0200 ++++ _Gnuplot.py 2004-10-28 14:39:20.000000000 +0200 +@@ -18,6 +18,27 @@ + + import gp, PlotItems, termdefs + ++def test_mouse(): ++ """Return whether mouse support is present or not. ++ ++ The detection is done by calling gnuplot with a file containing only the ++ "set mouse" command. If gnuplot does have mouse support, it should simply ++ execute the file silently, producing no output.""" ++ ++ import os,tempfile,commands ++ ++ tmpname = tempfile.mktemp() ++ tfile = open(tmpname,"w") ++ tfile.write("set mouse") ++ tfile.close() ++ msg = commands.getoutput(gp.GnuplotOpts.gnuplot_command + " " + ++ tmpname) ++ os.unlink(tmpname) ++ if msg: # Gnuplot won"t print anything if it has mouse support ++ has_mouse = 0 ++ else: ++ has_mouse = 1 ++ return has_mouse + + class _GnuplotFile: + """A file to which gnuplot commands can be written. +@@ -152,7 +173,7 @@ + 'output' : 'string', + } + +- def __init__(self, filename=None, persist=None, debug=0): ++ def __init__(self, filename=None, persist=None, debug=0, mouse=None): + """Create a Gnuplot object. + + Create a 'Gnuplot' object. By default, this starts a gnuplot +@@ -172,8 +193,19 @@ + 'debug=1' -- echo the gnuplot commands to stderr as well as + sending them to gnuplot. + ++ "mouse=1" -- activate mouse support (officially available as of ++ gnuplot 4.0 under certain platforms). ++ + """ + ++ # The mouse check must be done first, so we can decide whether to use ++ # inline data and fifos or not (they break mouse support) ++ if mouse is None: ++ mouse = test_mouse() ++ if mouse: ++ gp.GnuplotOpts.prefer_inline_data = 0 ++ gp.GnuplotOpts.prefer_fifo_data = 0 ++ + if filename is None: + self.gnuplot = gp.GnuplotProcess(persist=persist) + else: +@@ -182,10 +214,14 @@ + 'Gnuplot with output to file does not allow ' + 'persist option.') + self.gnuplot = _GnuplotFile(filename) ++ + self._clear_queue() + self.debug = debug + self.plotcmd = 'plot' +- self('set terminal %s' % (gp.GnuplotOpts.default_term,)) ++ # The "set mouse" command MUST be the VERY FIRST command passed to gnuplot ++ if mouse: ++ self("set mouse") ++ self("set terminal %s" % gp.GnuplotOpts.default_term) + + def __call__(self, s): + """Send a command string to gnuplot. diff --git a/dev-python/gnuplot-py/gnuplot-py-1.8-r1.ebuild b/dev-python/gnuplot-py/gnuplot-py-1.8-r1.ebuild new file mode 100644 index 000000000000..67cc4a7a6f89 --- /dev/null +++ b/dev-python/gnuplot-py/gnuplot-py-1.8-r1.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +PYTHON_SINGLE_IMPL=true + +inherit distutils-r1 + +DESCRIPTION="A python wrapper for Gnuplot" +HOMEPAGE="http://gnuplot-py.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="amd64 ~ia64 ppc ppc64 ~s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="doc" + +DEPEND=" + dev-python/numpy[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sci-visualization/gnuplot" + +DOCS=( ANNOUNCE.txt CREDITS.txt FAQ.txt NEWS.txt TODO.txt ) + +PATCHES=( "${FILESDIR}"/${PN}-1.7-mousesupport.patch ) + +python_install_all() { + use doc && local HTML_DOCS=( doc/Gnuplot/. ) + distutils-r1_python_install_all +} +# testsuite does NOT run unattended, so left out here diff --git a/dev-python/gnuplot-py/metadata.xml b/dev-python/gnuplot-py/metadata.xml new file mode 100644 index 000000000000..e9e18ed8005a --- /dev/null +++ b/dev-python/gnuplot-py/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>python</herd> + <longdescription lang="en"> + Gnuplot.py is a Python module that interfaces to gnuplot, the popular + plotting program. It allows you to use gnuplot from within Python to + plot arrays of data from memory, data files, or mathematical + functions. If you use Python to perform computations or as `glue' for + numerical programs, you can use this module to plot data on the fly as + they are computed. And the combination with Python makes it is easy to + automate things, including to create crude `animations' by plotting + different datasets one after another. +</longdescription> + <upstream> + <remote-id type="sourceforge">gnuplot-py</remote-id> + </upstream> +</pkgmetadata> |