From 160ac38e061d560f8667fcd21574c997576e9dc7 Mon Sep 17 00:00:00 2001 From: "P. J. Reed" Date: Fri, 3 Apr 2020 14:46:22 -0500 Subject: [PATCH] Use project name as basename for interfaces As noted by Dirk Thomas in ros2/rosidl#441, libraries for generated interfaces must use ${PROJECT_NAME} as their basename. This PR modifies rtabmap_ros so that it does so. It also tweaks a couple of rosdep keys because nav2_common was used in some launch files but not included, and message_runtime does not exist in ROS 2. Fixes #397 --- CMakeLists.txt | 31 ++++++++++++++++--------------- package.xml | 2 +- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3fa6bbb9..9b80769a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -117,10 +117,11 @@ find_package(rviz_default_plugins REQUIRED) ) ## Generate messages and services - rosidl_generate_interfaces(rtabmap_msgs + rosidl_generate_interfaces(${PROJECT_NAME}_msgs ${msg_files} ${srv_files} DEPENDENCIES geometry_msgs std_msgs sensor_msgs std_srvs visualization_msgs image_geometry + LIBRARY_NAME ${PROJECT_NAME} ) ament_export_dependencies(rosidl_default_runtime) @@ -270,9 +271,9 @@ target_link_libraries(rtabmap_ros ${RTABMap_LIBRARIES}) target_link_libraries(rtabmap_sync rtabmap_ros ${RTABMap_LIBRARIES}) target_link_libraries(rtabmap_plugins rtabmap_ros ${RTABMap_LIBRARIES}) -rosidl_target_interfaces(rtabmap_ros rtabmap_msgs "rosidl_typesupport_cpp") -rosidl_target_interfaces(rtabmap_sync rtabmap_msgs "rosidl_typesupport_cpp") -rosidl_target_interfaces(rtabmap_plugins rtabmap_msgs "rosidl_typesupport_cpp") +rosidl_target_interfaces(rtabmap_ros ${PROJECT_NAME}_msgs "rosidl_typesupport_cpp") +rosidl_target_interfaces(rtabmap_sync ${PROJECT_NAME}_msgs "rosidl_typesupport_cpp") +rosidl_target_interfaces(rtabmap_plugins ${PROJECT_NAME}_msgs "rosidl_typesupport_cpp") rclcpp_components_register_nodes(rtabmap_plugins "rtabmap_ros::RGBDOdometry") rclcpp_components_register_nodes(rtabmap_plugins "rtabmap_ros::StereoOdometry") @@ -421,34 +422,34 @@ get_rmw_typesupport(typesupport_impls "${rmw_implementation}" LANGUAGE "cpp") foreach(typesupport_impl ${typesupport_impls}) rosidl_target_interfaces(rtabmap_rgbd_odometry - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_stereo_odometry - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_icp_odometry - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_rgbd_relay - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_rgbd_sync - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_stereo_sync - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_pointcloud_to_depthimage - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap_point_cloud_xyzrgb - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmap - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) rosidl_target_interfaces(rtabmapviz - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) endforeach() @@ -507,7 +508,7 @@ IF(rviz_default_plugins_FOUND) foreach(typesupport_impl ${typesupport_impls}) rosidl_target_interfaces(rtabmap_rviz_plugins - rtabmap_msgs ${typesupport_impl} + ${PROJECT_NAME}_msgs ${typesupport_impl} ) endforeach() diff --git a/package.xml b/package.xml index 59610e2e..99abdc75 100644 --- a/package.xml +++ b/package.xml @@ -53,6 +53,7 @@ std_msgs std_srvs nav_msgs + nav2_common stereo_msgs geometry_msgs visualization_msgs @@ -70,7 +71,6 @@ octomap image_geometry find_object_2d - message_runtime pluginlib libpcl-all-dev