summaryrefslogtreecommitdiff
path: root/dev-python/pyudev/pyudev-0.16.1-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/pyudev/pyudev-0.16.1-r1.ebuild')
-rw-r--r--dev-python/pyudev/pyudev-0.16.1-r1.ebuild70
1 files changed, 70 insertions, 0 deletions
diff --git a/dev-python/pyudev/pyudev-0.16.1-r1.ebuild b/dev-python/pyudev/pyudev-0.16.1-r1.ebuild
new file mode 100644
index 00000000000..eefe667b592
--- /dev/null
+++ b/dev-python/pyudev/pyudev-0.16.1-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python binding to libudev"
+HOMEPAGE="http://pyudev.readthedocs.org https://github.com/pyudev/pyudev"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 arm x86"
+IUSE="pygobject pyqt4 pyside test"
+
+RDEPEND="virtual/udev
+ pygobject? ( dev-python/pygobject:2[$(python_gen_usedep 'python2*')] )
+ pyqt4? ( dev-python/PyQt4[${PYTHON_USEDEP}] )
+ pyside? ( dev-python/pyside[$(python_gen_usedep '!(python3_3)')] )"
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}] )"
+
+DOCS=( CHANGES.rst README.rst )
+
+REQUIRED_USE="pygobject? ( || ( $(python_gen_useflags 'python2*') ) )
+ pyside? ( $(python_gen_useflags '!(python3_3)') )"
+
+python_prepare_all() {
+ # tests are known to pass then fail on alternate runs
+ # tests: fix run_path
+ sed -i -e "s|== \('/run/udev'\)|in (\1,'/dev/.udev')|g" \
+ tests/test_core.py || die
+
+ if ! use pygobject; then
+ rm pyudev/glib.py || die
+ sed -i -e "s|[, ]*GlibBinding()||g" \
+ tests/test_observer.py || die
+ fi
+ if ! use pyqt4; then
+ rm pyudev/pyqt4.py || die
+ sed -i -e "s|Qt4Binding('PyQt4')[, ]*||g" \
+ tests/test_observer.py || die
+ fi
+ if ! use pyside; then
+ rm pyudev/pyside.py || die
+ sed -i -e "s|Qt4Binding('PySide')[, ]*||g" \
+ tests/test_observer.py || die
+ fi
+ if ! use pyqt4 && ! use pyside; then
+ rm pyudev/_qt_base.py || die
+ fi
+ if ! use pyqt4 && ! use pyside && ! use pygobject; then
+ rm tests/test_observer.py || die
+ fi
+
+ ewarn "If your PORTAGE_TMPDIR is longer in length then '/var/tmp/',"
+ ewarn "change it to /var/tmp to ensure tests will pass."
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ py.test || die "Tests fail with ${EPYTHON}"
+}