[ros-users] [Discourse.ros.org] [Next Generation ROS] Software reuse in ROS1 and ROS2

Paul Bovbel ros.discourse at gmail.com
Fri Jul 21 15:47:35 UTC 2017

As a follow up on https://discourse.ros.org/t/ros-2-collaboration-bulletin-board/2239/8, to try to understand expected best-practices.

What's the best approach for reusing software components between ROS1 and ROS2? I understand the basic concept of tearing out ROS1/ROS2 specific code, and reusing underlying implementation, but how does this work in terms of a build/release story.

1. Are we expecting to end up with a <package>2 of everything? rviz2, xacro2?
2. Are we are going to have separate distros ROS1-only and ROS2-only on the buildfarm? How do you create a package-level dependency between a package in a ROS2 distro and a package in a ROS1 distro?
3. Would it be possible to build one set of sources in both ROS1 and ROS2 distros? I imagine this would involve something along the lines of https://github.com/ros2/ros2/wiki/catment

I'm basing some assumptions from the recent binary release of https://github.com/ros2/ros1_bridge, which necessitates:

* macros like https://github.com/ros2/ros1_bridge/blob/master/cmake/find_ros1_package.cmake, which don't (currently) work great with overlays
* some pretty heavy patching at bloom-time https://github.com/ros2-gbp/ros1_bridge-release/tree/patches/debian/r2b2/ros1_bridge

[Visit Topic](https://discourse.ros.org/t/software-reuse-in-ros1-and-ros2/2262/1) or reply to this email to respond.

More information about the ros-users mailing list