-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cleanup includes and dependencies #64
Conversation
ROS2 Foxy has a tf2_eigen version (0.13) that does not have the modern CMake target tf2_eigen::tf2_eigen yet (introduced in 0.25). |
A pity, really, because I just found out that I could replace this:
by this:
Allowing me to drop the usage of |
@marrts, @Levi-Armstrong could you please review? |
I think it is a reasonable approach at this point to make a separate branch called |
You could potentially create a target for Regarding supporting foxy, if it's not too cumbersome or hacky to continue supporting it, I think we should. Just because it is technically EOL doesn't mean everyone has moved on from that distro. Especially since 20.04 is that last OS distro that officially supports ROS1, I imagine people might linger on 20.04 for a while to be able to support both ROS1 and ROS2 systems (or maybe I'm biased because that's what I'm doing now...). It seems like what you have here works and is not overly complicated or hacky, so I would vote to continue supporting foxy in the main branch for now |
Seems reasonable to me. |
- Remove pluginlib dependency from tesseract_monitoring.
- Remove ament_target_dependencies() from tesseract_ros_examples
e0bf6cc
to
7b8b656
Compare
I have to correct myself: removing
Thanks for the tip, I just found out linking to ${tf2_eigen_TARGETS} also works. The PR is ready to merge now. |
Friendly ping |
Looks good to me. |
I cleaned up quite a number of includes and dependencies.
Something to keep in mind is that it seems that
ament_export_dependencies()
overwrites the (public) dependencies exported bytarget_link_libraries()
. And for ROS2 dependencies likevisualization_msgs
that do not produce proper CMake targets (novisualization_msgs::visualization_msgs
) one is dependent onament_target_dependencies()
to link them, and hence onament_export_dependencies()
to export them, and then also export the libraries fromtarget_link_libraries()
.