dev-python/rospkg: strip ros_packages/ from path when updating the cache
authorAlexis Ballier <aballier@gentoo.org>
Tue, 28 Feb 2017 11:04:00 +0000 (12:04 +0100)
committerAlexis Ballier <aballier@gentoo.org>
Tue, 28 Feb 2017 11:26:51 +0000 (12:26 +0100)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

dev-python/rospkg/files/gentoo.patch [new file with mode: 0644]
dev-python/rospkg/rospkg-1.1.0-r1.ebuild [new file with mode: 0644]
dev-python/rospkg/rospkg-9999.ebuild

diff --git a/dev-python/rospkg/files/gentoo.patch b/dev-python/rospkg/files/gentoo.patch
new file mode 100644 (file)
index 0000000..5a9e773
--- /dev/null
@@ -0,0 +1,15 @@
+Strip ros_packages/ from paths. ros_packages is only for avoiding to crawl the
+whole /usr but the real one in the path without it.
+
+Index: rospkg-1.1.0/src/rospkg/rospack.py
+===================================================================
+--- rospkg-1.1.0.orig/src/rospkg/rospack.py
++++ rospkg-1.1.0/src/rospkg/rospack.py
+@@ -59,6 +59,7 @@ def list_by_path(manifest_name, path, ca
+     path = os.path.abspath(path)
+     basename = os.path.basename
+     for d, dirs, files in os.walk(path, topdown=True, followlinks=True):
++        d = d.replace('ros_packages/', '')
+         if 'CATKIN_IGNORE' in files:
+             del dirs[:]
+             continue  # leaf
diff --git a/dev-python/rospkg/rospkg-1.1.0-r1.ebuild b/dev-python/rospkg/rospkg-1.1.0-r1.ebuild
new file mode 100644 (file)
index 0000000..6ed953c
--- /dev/null
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} pypy{,3} )
+
+SCM=""
+if [ "${PV#9999}" != "${PV}" ] ; then
+       SCM="git-r3"
+       EGIT_REPO_URI="https://github.com/ros-infrastructure/rospkg"
+fi
+
+inherit ${SCM} distutils-r1
+
+DESCRIPTION="Standalone Python library for the ROS package system"
+HOMEPAGE="http://wiki.ros.org/rospkg"
+if [ "${PV#9999}" != "${PV}" ] ; then
+       SRC_URI=""
+       KEYWORDS=""
+       # Needed for tests
+       S="${WORKDIR}/${PN}"
+       EGIT_CHECKOUT_DIR="${S}"
+else
+       SRC_URI="https://github.com/ros-infrastructure/rospkg/archive/${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="dev-python/pyyaml[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}
+       test? (
+               dev-python/nose[${PYTHON_USEDEP}]
+               dev-python/coverage[${PYTHON_USEDEP}]
+       )
+"
+PATCHES=( "${FILESDIR}/gentoo.patch" )
+
+python_test() {
+       nosetests --with-coverage --cover-package=rospkg --with-xunit test || die
+}
index 56908705af3d64e5d8ef11a46a901ce62672bbef..6ed953cac503ea883646c54e23c8c846ca692076 100644 (file)
@@ -37,6 +37,7 @@ DEPEND="${RDEPEND}
                dev-python/coverage[${PYTHON_USEDEP}]
        )
 "
+PATCHES=( "${FILESDIR}/gentoo.patch" )
 
 python_test() {
        nosetests --with-coverage --cover-package=rospkg --with-xunit test || die