Allow ros2_rust to be built within a distro's colcon workspace #370
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I attempted to build the ros2_rust repo directly inside the colcon workspace of a ROS 2 distro and found that it doesn't work because of some
rosidl_generator_rs
behavior that wanted to discover all the RMW implementations in the environment, and that just doesn't quite work with colcon's approach to isolated builds.However, after investigating it carefully I realized the cmake code that wanted to find all the RMW implementations wasn't actually doing anything helpful. I'm guessing it's dead code that had a specific purpose many years ago, but some redesign since then made it unnecessary.
This PR reworks the dependencies so that there's no need to create a separate colcon workspace to build
ros2_rust
.