Skip to content

Commit

Permalink
Fix dependencies in tf2_ros.
Browse files Browse the repository at this point in the history
This will allow overlays on it to work properly.

Signed-off-by: Chris Lalancette <[email protected]>
Signed-off-by: Dirk Thomas <[email protected]>
  • Loading branch information
clalancette committed Jun 17, 2020
1 parent 0420401 commit c73b6ba
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 12 deletions.
74 changes: 62 additions & 12 deletions tf2_ros/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,26 @@ if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
endif()

find_package(ament_cmake REQUIRED)
find_package(builtin_interfaces REQUIRED)
find_package(geometry_msgs REQUIRED)
find_package(message_filters REQUIRED)
find_package(rcl_interfaces REQUIRED)
find_package(rclcpp REQUIRED)
find_package(rclcpp_action REQUIRED)
find_package(rclcpp_components REQUIRED)
find_package(tf2 REQUIRED)
find_package(tf2_msgs REQUIRED)

set(dependencies
builtin_interfaces
geometry_msgs
message_filters
rclcpp
rclcpp_action
tf2
tf2_msgs
)

# tf2_ros library
add_library(${PROJECT_NAME} SHARED
src/buffer.cpp
Expand All @@ -32,12 +44,7 @@ target_include_directories(${PROJECT_NAME} PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
ament_target_dependencies(${PROJECT_NAME}
"geometry_msgs"
"message_filters"
"rclcpp"
"rclcpp_action"
"tf2"
"tf2_msgs"
${dependencies}
)

target_compile_definitions(${PROJECT_NAME} PRIVATE "TF2_ROS_BUILDING_DLL")
Expand All @@ -48,12 +55,24 @@ target_link_libraries(buffer_server
${PROJECT_NAME}
)
ament_target_dependencies(buffer_server
${dependencies}
)

add_library(static_transform_broadcaster_node SHARED
src/static_transform_broadcaster_node.cpp
)
target_compile_definitions(static_transform_broadcaster_node PRIVATE "STATIC_TRANSFORM_BROADCASTER_BUILDING_DLL")
target_include_directories(static_transform_broadcaster_node PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_link_libraries(static_transform_broadcaster_node ${PROJECT_NAME})
ament_target_dependencies(static_transform_broadcaster_node
"geometry_msgs"
"rclcpp"
"rclcpp_action"
"tf2"
"rclcpp_components"
"tf2_msgs"
)
rclcpp_components_register_nodes(static_transform_broadcaster_node "tf2_ros::StaticTransformBroadcasterNode")

# static_transform_publisher
add_executable(static_transform_publisher
Expand All @@ -66,6 +85,7 @@ target_link_libraries(static_transform_publisher
ament_target_dependencies(static_transform_publisher
"geometry_msgs"
"rclcpp"
"tf2"
"tf2_msgs"
)

Expand All @@ -92,7 +112,9 @@ target_link_libraries(tf2_echo
${PROJECT_NAME}
)
ament_target_dependencies(tf2_echo
"geometry_msgs"
"rclcpp"
"tf2"
)

add_executable(tf2_monitor
Expand All @@ -102,8 +124,7 @@ target_link_libraries(tf2_monitor
${PROJECT_NAME}
)
ament_target_dependencies(tf2_monitor
"rclcpp"
"tf2_msgs"
${dependencies}
)

# Install rules
Expand Down Expand Up @@ -138,37 +159,62 @@ install(DIRECTORY include/${PROJECT_NAME}/
if(BUILD_TESTING)
find_package(ament_cmake_gtest REQUIRED)
ament_add_gtest(test_buffer test/test_buffer.cpp)
ament_target_dependencies(test_buffer
${dependencies}
)
target_link_libraries(test_buffer ${PROJECT_NAME})

ament_add_gtest(test_buffer_server test/test_buffer_server.cpp)
ament_target_dependencies(test_buffer_server
${dependencies}
)
target_link_libraries(test_buffer_server ${PROJECT_NAME})

ament_add_gtest(test_buffer_client test/test_buffer_client.cpp)
ament_target_dependencies(test_buffer_client
${dependencies}
)
target_link_libraries(test_buffer_client ${PROJECT_NAME})

# Adds a tf2_ros message_filter unittest that uses
# multiple target frames and a non-zero time tolerance
ament_add_gtest(${PROJECT_NAME}_test_message_filter test/message_filter_test.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_message_filter
${dependencies}
)
target_link_libraries(${PROJECT_NAME}_test_message_filter ${PROJECT_NAME})

ament_add_gtest(${PROJECT_NAME}_test_transform_listener test/test_transform_listener.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_transform_listener
${dependencies}
)
target_link_libraries(${PROJECT_NAME}_test_transform_listener ${PROJECT_NAME})

ament_add_gtest(${PROJECT_NAME}_test_static_transform_broadcaster test/test_static_transform_broadcaster.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_static_transform_broadcaster
rclcpp
)
target_link_libraries(${PROJECT_NAME}_test_static_transform_broadcaster ${PROJECT_NAME})

ament_add_gtest(${PROJECT_NAME}_test_transform_broadcaster test/test_transform_broadcaster.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_transform_broadcaster
rclcpp
)
target_link_libraries(${PROJECT_NAME}_test_transform_broadcaster ${PROJECT_NAME})

ament_add_gtest(${PROJECT_NAME}_test_time_reset test/time_reset_test.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_time_reset
rclcpp
${dependencies}
rosgraph_msgs
)
target_link_libraries(${PROJECT_NAME}_test_time_reset ${PROJECT_NAME})

ament_add_gtest(${PROJECT_NAME}_test_listener test/listener_unittest.cpp)
ament_target_dependencies(${PROJECT_NAME}_test_listener
builtin_interfaces
geometry_msgs
rclcpp
tf2
)
target_link_libraries(${PROJECT_NAME}_test_listener ${PROJECT_NAME})

Expand All @@ -177,5 +223,9 @@ endif()
ament_export_include_directories(include)
ament_export_libraries(${PROJECT_NAME} static_transform_broadcaster_node)
ament_export_targets(${PROJECT_NAME} static_transform_broadcaster_node)
ament_export_dependencies(geometry_msgs message_filters rclcpp rclcpp_action rclcpp_components tf2 tf2_msgs)
ament_export_dependencies(
${dependencies}
rcl_interfaces
rclcpp_components
)
ament_package()
2 changes: 2 additions & 0 deletions tf2_ros/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@

<buildtool_depend>ament_cmake</buildtool_depend>

<depend>builtin_interfaces</depend>
<depend>geometry_msgs</depend>
<depend>message_filters</depend>
<depend>rcl_interfaces</depend>
<depend>rclcpp</depend>
<depend>rclcpp_action</depend>
<depend>rclcpp_components</depend>
Expand Down

0 comments on commit c73b6ba

Please sign in to comment.