dev-python/catkin_pkg: Allow having package.xml in ros_packages subdir without trigge...
authorAlexis Ballier <aballier@gentoo.org>
Tue, 28 Feb 2017 08:22:52 +0000 (09:22 +0100)
committerAlexis Ballier <aballier@gentoo.org>
Tue, 28 Feb 2017 11:26:48 +0000 (12:26 +0100)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

dev-python/catkin_pkg/catkin_pkg-0.3.1-r2.ebuild [new file with mode: 0644]
dev-python/catkin_pkg/catkin_pkg-9999.ebuild
dev-python/catkin_pkg/files/ros_packages.patch [new file with mode: 0644]

diff --git a/dev-python/catkin_pkg/catkin_pkg-0.3.1-r2.ebuild b/dev-python/catkin_pkg/catkin_pkg-0.3.1-r2.ebuild
new file mode 100644 (file)
index 0000000..e258fe5
--- /dev/null
@@ -0,0 +1,42 @@
+# 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/catkin_pkg"
+fi
+
+inherit ${SCM} distutils-r1
+
+DESCRIPTION="Standalone Python library for the catkin package system"
+HOMEPAGE="http://wiki.ros.org/catkin_pkg"
+if [ "${PV#9999}" != "${PV}" ] ; then
+       SRC_URI=""
+       KEYWORDS=""
+else
+       SRC_URI="https://github.com/ros-infrastructure/catkin_pkg/archive/${PV}.tar.gz -> ${P}-gh.tar.gz"
+       KEYWORDS="~amd64 ~arm"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       dev-python/docutils[${PYTHON_USEDEP}]
+       dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}
+       test? ( dev-python/mock[${PYTHON_USEDEP}] dev-python/nose[${PYTHON_USEDEP}] )
+"
+PATCHES=( "${FILESDIR}/catkin_prefix.patch" "${FILESDIR}/argparse.patch" "${FILESDIR}/ros_packages.patch" )
+
+python_test() {
+       nosetests -s --tests test || die
+}
index 57cbb8ced9968cd7bc429d3c579255f22b266cb8..e258fe5491b96f07e94a8fd52339c0d2ec07742f 100644 (file)
@@ -35,15 +35,8 @@ RDEPEND="
 DEPEND="${RDEPEND}
        test? ( dev-python/mock[${PYTHON_USEDEP}] dev-python/nose[${PYTHON_USEDEP}] )
 "
-PATCHES=( "${FILESDIR}/catkin_prefix.patch" "${FILESDIR}/argparse.patch" )
+PATCHES=( "${FILESDIR}/catkin_prefix.patch" "${FILESDIR}/argparse.patch" "${FILESDIR}/ros_packages.patch" )
 
 python_test() {
        nosetests -s --tests test || die
 }
-
-python_install_all() {
-       distutils-r1_python_install_all
-       # Avoid recursing in the whole hierarchy
-       dodir /usr/
-       touch "${ED}/usr/CATKIN_IGNORE"
-}
diff --git a/dev-python/catkin_pkg/files/ros_packages.patch b/dev-python/catkin_pkg/files/ros_packages.patch
new file mode 100644 (file)
index 0000000..6c9855d
--- /dev/null
@@ -0,0 +1,13 @@
+Index: catkin_pkg-0.3.1/src/catkin_pkg/packages.py
+===================================================================
+--- catkin_pkg-0.3.1.orig/src/catkin_pkg/packages.py
++++ catkin_pkg-0.3.1/src/catkin_pkg/packages.py
+@@ -59,7 +59,7 @@ def find_package_paths(basepath, exclude
+             del dirnames[:]
+             continue
+         elif PACKAGE_MANIFEST_FILENAME in filenames:
+-            paths.append(os.path.relpath(dirpath, basepath))
++            paths.append(os.path.relpath(dirpath.replace('ros_packages/',''), basepath))
+             del dirnames[:]
+             continue
+         for dirname in dirnames: