summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2020-05-13 13:21:47 +0200
committerAlexis Ballier <aballier@gentoo.org>2020-05-13 16:07:03 +0200
commit3ce0c317e2f10d34f8372f3ec858ac154efa8005 (patch)
treeeec385cdc71b57f2da9755bd59ee130f31e830f0 /dev-util/catkin
parentdev-python/catkin_pkg: Bump to 0.4.20. (diff)
downloadgentoo-3ce0c317e2f10d34f8372f3ec858ac154efa8005.tar.gz
gentoo-3ce0c317e2f10d34f8372f3ec858ac154efa8005.tar.bz2
gentoo-3ce0c317e2f10d34f8372f3ec858ac154efa8005.zip
dev-util/catkin: Bump to 0.8.3.
Port to EAPI7. Add python 3.7/3.8. Drop pypy. Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Alexis Ballier <aballier@gentoo.org>
Diffstat (limited to 'dev-util/catkin')
-rw-r--r--dev-util/catkin/Manifest1
-rw-r--r--dev-util/catkin/catkin-0.8.3.ebuild124
-rw-r--r--dev-util/catkin/catkin-9999.ebuild16
-rw-r--r--dev-util/catkin/files/egginfo.patch13
4 files changed, 148 insertions, 6 deletions
diff --git a/dev-util/catkin/Manifest b/dev-util/catkin/Manifest
index d5d5c25f558d..dba3fbac5c50 100644
--- a/dev-util/catkin/Manifest
+++ b/dev-util/catkin/Manifest
@@ -1,3 +1,4 @@
DIST catkin-0.7.14.tar.gz 203422 BLAKE2B 22f27066054db9d35aaee216603c778a70a1941ab067ba6bfb42d25c6c90dc3fe3efb19167328dcbb008d21b9f7987cce4d3af44fe8368a1fda369432b383401 SHA512 4d17d2fd9c69d04d90a2aff4d48ac6cbdec052856af18cd4b3fb72cb7b3159651b606cd36ef653b9097ee7c23e036709afc019a95bb0ab34c29f51aad4d17d21
DIST catkin-0.7.17.tar.gz 212023 BLAKE2B 901bc5a3e226eaab59917b4d548fe3aacfad602a75e46cbd720f252ffd490c4ff2b170cd158a0c09c047b837d6f097555ba55291dfeedb51951d98f2f0273c34 SHA512 0c6adfda27924a5c9c5360e5e84e082e5cc9a7638a1129fe86f604515d3731f4257f725f80e8e8781200a8a367472224aea537871e56e1859e9f66950a746d45
DIST catkin-0.7.20.tar.gz 215244 BLAKE2B 06755e87f43d1e97138a6696af05dfd9b9434adcca9d4269c7b93b363b25ac9e8b198a980d7607b6b317f546b7637103dc251213087201ff56c1f12c86892edb SHA512 7258f0d548a92d846c9ad195d5e28a567d3c1b4cd1caabffd58c3fabee66cec8ce3612d3095e6437ac201b4d37fddf8f850775e809ebb7eaaeb99328afaedfc6
+DIST catkin-0.8.3.tar.gz 215988 BLAKE2B 92d7bced93e2d33dafcfd902724f993aa15756139265b5594c15041c333568591193b86e1a4bee8c278f2739dd063f73b6ce675b8ab4fefd312b5daeea414c7a SHA512 14fd03627f3fb339a850ca73e7a49dfeb7312a85416473dff60995ea1d0f1050982929c297751502589a7320dd7eec5d922c86061166f9d475fc1108540db4ae
diff --git a/dev-util/catkin/catkin-0.8.3.ebuild b/dev-util/catkin/catkin-0.8.3.ebuild
new file mode 100644
index 000000000000..c37940ea8dfe
--- /dev/null
+++ b/dev-util/catkin/catkin-0.8.3.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+SCM=""
+if [ "${PV#9999}" != "${PV}" ] ; then
+ SCM="git-r3"
+ EGIT_REPO_URI="https://github.com/ros/catkin"
+fi
+
+PYTHON_COMPAT=( python{3_6,3_7,3_8} )
+
+inherit ${SCM} cmake-utils python-r1 python-utils-r1
+
+DESCRIPTION="Cmake macros and associated python code used to build some parts of ROS"
+HOMEPAGE="http://wiki.ros.org/catkin"
+if [ "${PV#9999}" != "${PV}" ] ; then
+ SRC_URI=""
+ KEYWORDS=""
+else
+ SRC_URI="https://github.com/ros/catkin/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-python/catkin_pkg[${PYTHON_USEDEP}]
+ dev-python/empy[${PYTHON_USEDEP}]
+ dev-util/cmake
+"
+DEPEND="${RDEPEND}
+ test? ( dev-python/nose[${PYTHON_USEDEP}] dev-python/mock[${PYTHON_USEDEP}] )"
+BDEPEND="
+ dev-util/cmake
+"
+
+PATCHES=(
+ "${FILESDIR}/tests.patch"
+ "${FILESDIR}/catkin_prefix_path.patch"
+ "${FILESDIR}/gnuinstalldirs.patch"
+ "${FILESDIR}/catkin_prefix_path_util_py_v2.patch"
+ "${FILESDIR}/package_xml.patch"
+ "${FILESDIR}/etc.patch"
+ "${FILESDIR}/egginfo.patch"
+)
+
+src_prepare() {
+ # fix libdir
+ sed -i \
+ -e 's:LIBEXEC_DESTINATION lib:LIBEXEC_DESTINATION libexec:' \
+ -e 's:}/lib:}/${CMAKE_INSTALL_LIBDIR}:' \
+ -e 's:DESTINATION lib):DESTINATION ${CMAKE_INSTALL_LIBDIR}):' \
+ -e 's:DESTINATION lib/:DESTINATION ${CMAKE_INSTALL_LIBDIR}/:' \
+ -e 's:PYTHON_INSTALL_DIR lib:PYTHON_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}:' \
+ cmake/*.cmake || die
+ cmake-utils_src_prepare
+}
+
+catkin_src_configure_internal() {
+ local sitedir="$(python_get_sitedir)"
+ mycmakeargs+=(
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DPYTHON_INSTALL_DIR="${sitedir#${EPREFIX}/usr/}"
+ )
+ python_export PYTHON_SCRIPTDIR
+ cmake-utils_src_configure
+}
+
+src_configure() {
+ export PYTHONPATH="${S}/python"
+ local mycmakeargs=(
+ "-DCATKIN_ENABLE_TESTING=$(usex test)"
+ "-DCATKIN_BUILD_BINARY_PACKAGE=ON"
+ )
+ python_foreach_impl catkin_src_configure_internal
+}
+
+src_compile() {
+ python_foreach_impl cmake-utils_src_compile
+}
+
+src_test() {
+ unset PYTHON_SCRIPTDIR
+ python_foreach_impl cmake-utils_src_test
+}
+
+catkin_src_install_internal() {
+ python_export PYTHON_SCRIPTDIR
+ cmake-utils_src_install
+ if [ ! -f "${T}/.catkin_python_symlinks_generated" ]; then
+ dodir /usr/bin
+ for i in "${D}/${PYTHON_SCRIPTDIR}"/* ; do
+ dosym ../lib/python-exec/python-exec2 "/usr/bin/${i##*/}"
+ done
+ touch "${T}/.catkin_python_symlinks_generated"
+ fi
+}
+
+src_install() {
+ python_foreach_impl catkin_src_install_internal
+
+ doenvd "${FILESDIR}/40catkin"
+
+ # needed to be considered as a workspace
+ touch "${ED}/usr/.catkin"
+
+ python_foreach_impl python_optimize
+}
+
+pkg_postinst() {
+ ewarn "Starting from version 0.7.1-r2, dev-util/catkin changed the"
+ ewarn "installation path for package.xml files on Gentoo."
+ ewarn "In order for ROS to work properly, you will need to reinstall ROS"
+ ewarn "packages that have it installed in the old location:"
+ ewarn " emerge -1O /usr/share/*/package.xml"
+ ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=595004 for more details."
+}
diff --git a/dev-util/catkin/catkin-9999.ebuild b/dev-util/catkin/catkin-9999.ebuild
index bd0fec4e9fa1..c37940ea8dfe 100644
--- a/dev-util/catkin/catkin-9999.ebuild
+++ b/dev-util/catkin/catkin-9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
SCM=""
if [ "${PV#9999}" != "${PV}" ] ; then
@@ -9,9 +9,9 @@ if [ "${PV#9999}" != "${PV}" ] ; then
EGIT_REPO_URI="https://github.com/ros/catkin"
fi
-PYTHON_COMPAT=( python3_6 pypy3 )
+PYTHON_COMPAT=( python{3_6,3_7,3_8} )
-inherit ${SCM} cmake-utils python-r1
+inherit ${SCM} cmake-utils python-r1 python-utils-r1
DESCRIPTION="Cmake macros and associated python code used to build some parts of ROS"
HOMEPAGE="http://wiki.ros.org/catkin"
@@ -37,16 +37,18 @@ RDEPEND="
"
DEPEND="${RDEPEND}
test? ( dev-python/nose[${PYTHON_USEDEP}] dev-python/mock[${PYTHON_USEDEP}] )"
+BDEPEND="
+ dev-util/cmake
+"
PATCHES=(
"${FILESDIR}/tests.patch"
- "${FILESDIR}/distutils.patch"
"${FILESDIR}/catkin_prefix_path.patch"
"${FILESDIR}/gnuinstalldirs.patch"
"${FILESDIR}/catkin_prefix_path_util_py_v2.patch"
"${FILESDIR}/package_xml.patch"
"${FILESDIR}/etc.patch"
- "${FILESDIR}/sitedir.patch"
+ "${FILESDIR}/egginfo.patch"
)
src_prepare() {
@@ -74,7 +76,7 @@ catkin_src_configure_internal() {
src_configure() {
export PYTHONPATH="${S}/python"
local mycmakeargs=(
- "$(cmake-utils_use test CATKIN_ENABLE_TESTING)"
+ "-DCATKIN_ENABLE_TESTING=$(usex test)"
"-DCATKIN_BUILD_BINARY_PACKAGE=ON"
)
python_foreach_impl catkin_src_configure_internal
@@ -108,6 +110,8 @@ src_install() {
# needed to be considered as a workspace
touch "${ED}/usr/.catkin"
+
+ python_foreach_impl python_optimize
}
pkg_postinst() {
diff --git a/dev-util/catkin/files/egginfo.patch b/dev-util/catkin/files/egginfo.patch
new file mode 100644
index 000000000000..a33e066ced66
--- /dev/null
+++ b/dev-util/catkin/files/egginfo.patch
@@ -0,0 +1,13 @@
+Index: catkin-0.8.3/cmake/catkin_python_setup.cmake
+===================================================================
+--- catkin-0.8.3.orig/cmake/catkin_python_setup.cmake
++++ catkin-0.8.3/cmake/catkin_python_setup.cmake
+@@ -143,7 +143,7 @@ function(catkin_python_setup)
+
+ assert(PYTHON_INSTALL_DIR)
+ if(${PROJECT_NAME}_SETUP_PY_SETUP_MODULE STREQUAL "setuptools")
+- set(SETUPTOOLS_EGG_INFO "egg_info --egg-base ${CMAKE_INSTALL_PREFIX}/${PYTHON_INSTALL_DIR}")
++ set(SETUPTOOLS_EGG_INFO "egg_info --egg-base \${DESTDIR}${CMAKE_INSTALL_PREFIX}/${PYTHON_INSTALL_DIR}")
+ else()
+ set(SETUPTOOLS_EGG_INFO "")
+ endif()