* [gentoo-commits] repo/gentoo:master commit in: dev-ros/rospack/files/, dev-ros/rospack/
@ 2017-04-23 13:54 Alexis Ballier
0 siblings, 0 replies; only message in thread
From: Alexis Ballier @ 2017-04-23 13:54 UTC (permalink / raw
To: gentoo-commits
commit: a31fbc56824b5b8c3cedf1be833608ec0cd6b2f5
Author: Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 23 13:54:10 2017 +0000
Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Sun Apr 23 13:54:32 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a31fbc56
dev-ros/rospack: Drop python-single-r1 hack, build libraries linking to different python implementations and install a compat symlink for now.
Package-Manager: Portage-2.3.5, Repoman-2.3.2
dev-ros/rospack/files/multipy.patch | 40 ++++++++++++++++++++++++++++++++++++
dev-ros/rospack/rospack-2.4.1.ebuild | 18 +++++++++++-----
dev-ros/rospack/rospack-9999.ebuild | 18 +++++++++++-----
3 files changed, 66 insertions(+), 10 deletions(-)
diff --git a/dev-ros/rospack/files/multipy.patch b/dev-ros/rospack/files/multipy.patch
new file mode 100644
index 00000000000..8350cc0a8da
--- /dev/null
+++ b/dev-ros/rospack/files/multipy.patch
@@ -0,0 +1,40 @@
+Install separate libraries linking to different python implementations.
+
+Index: rospack-2.4.1/CMakeLists.txt
+===================================================================
+--- rospack-2.4.1.orig/CMakeLists.txt
++++ rospack-2.4.1/CMakeLists.txt
+@@ -23,28 +23,28 @@ endif()
+
+ include_directories(include ${TinyXML2_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS})
+
+-add_library(rospack
++add_library(rospack-py${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}
+ src/rospack.cpp
+ ${backcompat_source}
+ src/rospack_cmdline.cpp
+ src/utils.cpp
+ )
+-target_link_libraries(rospack ${TinyXML2_LIBRARIES} ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})
++target_link_libraries(rospack-py${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR} ${TinyXML2_LIBRARIES} ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})
+
+ add_executable(rospackexe src/rospack_main.cpp)
+ # Set the name, and make it a "global" executable
+ set_target_properties(rospackexe PROPERTIES
+ OUTPUT_NAME rospack
+ RUNTIME_OUTPUT_DIRECTORY ${CATKIN_DEVEL_PREFIX}/bin)
+-target_link_libraries(rospackexe rospack ${Boost_LIBRARIES})
++target_link_libraries(rospackexe rospack-py${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR} ${Boost_LIBRARIES})
+ add_executable(rosstackexe src/rosstack_main.cpp)
+-target_link_libraries(rosstackexe rospack ${Boost_LIBRARIES})
++target_link_libraries(rosstackexe rospack-py${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR} ${Boost_LIBRARIES})
+ # Set the name, and make it a "global" executable
+ set_target_properties(rosstackexe PROPERTIES
+ OUTPUT_NAME rosstack
+ RUNTIME_OUTPUT_DIRECTORY ${CATKIN_DEVEL_PREFIX}/bin)
+
+-install(TARGETS rospack rospackexe rosstackexe
++install(TARGETS rospack-py${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR} rospackexe rosstackexe
+ ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
+ LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
+ RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION})
diff --git a/dev-ros/rospack/rospack-2.4.1.ebuild b/dev-ros/rospack/rospack-2.4.1.ebuild
index b7223c71000..7d49abfd959 100644
--- a/dev-ros/rospack/rospack-2.4.1.ebuild
+++ b/dev-ros/rospack/rospack-2.4.1.ebuild
@@ -5,13 +5,10 @@ EAPI=5
ROS_REPO_URI="https://github.com/ros/rospack"
KEYWORDS="~amd64 ~arm"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
inherit ros-catkin
-# Do it that way to avoid ros-catkin pulling in python-r1
-PYTHON_COMPAT=( python{2_7,3_4} )
-inherit python-single-r1
-
DESCRIPTION="Retrieves information about ROS packages available on the filesystem"
LICENSE="BSD"
@@ -30,4 +27,15 @@ DEPEND="${RDEPEND}
dev-python/nose
)"
-PATCHES=( "${FILESDIR}/gentoo.patch" )
+PATCHES=(
+ "${FILESDIR}/gentoo.patch"
+ "${FILESDIR}/multipy.patch"
+)
+
+src_install() {
+ ros-catkin_src_install
+ # Assume greatest alphabetically is what we want as default implementation
+ for i in "${ED}"/usr/$(get_libdir)/librospack*.so ; do
+ dosym $(basename "${i}") /usr/$(get_libdir)/librospack.so
+ done
+}
diff --git a/dev-ros/rospack/rospack-9999.ebuild b/dev-ros/rospack/rospack-9999.ebuild
index b7223c71000..7d49abfd959 100644
--- a/dev-ros/rospack/rospack-9999.ebuild
+++ b/dev-ros/rospack/rospack-9999.ebuild
@@ -5,13 +5,10 @@ EAPI=5
ROS_REPO_URI="https://github.com/ros/rospack"
KEYWORDS="~amd64 ~arm"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
inherit ros-catkin
-# Do it that way to avoid ros-catkin pulling in python-r1
-PYTHON_COMPAT=( python{2_7,3_4} )
-inherit python-single-r1
-
DESCRIPTION="Retrieves information about ROS packages available on the filesystem"
LICENSE="BSD"
@@ -30,4 +27,15 @@ DEPEND="${RDEPEND}
dev-python/nose
)"
-PATCHES=( "${FILESDIR}/gentoo.patch" )
+PATCHES=(
+ "${FILESDIR}/gentoo.patch"
+ "${FILESDIR}/multipy.patch"
+)
+
+src_install() {
+ ros-catkin_src_install
+ # Assume greatest alphabetically is what we want as default implementation
+ for i in "${ED}"/usr/$(get_libdir)/librospack*.so ; do
+ dosym $(basename "${i}") /usr/$(get_libdir)/librospack.so
+ done
+}
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2017-04-23 13:54 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-23 13:54 [gentoo-commits] repo/gentoo:master commit in: dev-ros/rospack/files/, dev-ros/rospack/ Alexis Ballier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox