@@ -5,46 +5,7 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "(GNU|Clang)")
55  add_compile_options (-Wall -Wextra -Wpedantic)
66endif ()
77
8- find_package (ament_cmake REQUIRED)
9- find_package (backward_ros REQUIRED)
10- 
11- find_package (angles REQUIRED)
12- find_package (control_msgs REQUIRED)
13- find_package (control_toolbox REQUIRED)
14- find_package (controller_interface REQUIRED)
15- find_package (Eigen3 REQUIRED)
16- find_package (generate_parameter_library REQUIRED)
17- find_package (geometry_msgs REQUIRED)
18- find_package (hardware_interface REQUIRED)
19- find_package (joint_trajectory_controller REQUIRED)
20- find_package (kinematics_interface REQUIRED)
21- find_package (pluginlib REQUIRED)
22- find_package (rclcpp REQUIRED)
23- find_package (rclcpp_lifecycle REQUIRED)
24- find_package (realtime_tools REQUIRED)
25- find_package (tf2 REQUIRED)
26- find_package (tf2_eigen REQUIRED)
27- find_package (tf2_geometry_msgs REQUIRED)
28- find_package (tf2_kdl REQUIRED)
29- find_package (tf2_ros REQUIRED)
30- find_package (trajectory_msgs REQUIRED)
31- 
32- generate_parameter_library(admittance_controller_parameters
33-   src/admittance_controller_parameters.yaml
34- )
35- 
36- add_library (admittance_controller SHARED
37-   src/admittance_controller.cpp
38- )
39- target_compile_features (admittance_controller PUBLIC  cxx_std_17)
40- target_include_directories (admittance_controller PUBLIC 
41-   $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR} /include >
42-   $<INSTALL_INTERFACE:include /admittance_controller>
43- )
44- target_link_libraries (admittance_controller PUBLIC 
45-   admittance_controller_parameters
46- )
47- ament_target_dependencies(admittance_controller PUBLIC 
8+ set (THIS_PACKAGE_INCLUDE_DEPENDS
489  angles
4910  control_msgs
5011  control_toolbox
@@ -67,6 +28,29 @@ ament_target_dependencies(admittance_controller PUBLIC
6728  trajectory_msgs
6829)
6930
31+ find_package (ament_cmake REQUIRED)
32+ find_package (backward_ros REQUIRED)
33+ foreach (Dependency IN ITEMS ${THIS_PACKAGE_INCLUDE_DEPENDS} )
34+   find_package (${Dependency}  REQUIRED)
35+ endforeach ()
36+ 
37+ generate_parameter_library(admittance_controller_parameters
38+   src/admittance_controller_parameters.yaml
39+ )
40+ 
41+ add_library (admittance_controller SHARED
42+   src/admittance_controller.cpp
43+ )
44+ target_compile_features (admittance_controller PUBLIC  cxx_std_17)
45+ target_include_directories (admittance_controller PUBLIC 
46+   $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR} /include >
47+   $<INSTALL_INTERFACE:include /admittance_controller>
48+ )
49+ target_link_libraries (admittance_controller PUBLIC 
50+   admittance_controller_parameters
51+ )
52+ ament_target_dependencies(admittance_controller PUBLIC  ${THIS_PACKAGE_INCLUDE_DEPENDS} )
53+ 
7054# Causes the visibility macros to use dllexport rather than dllimport, 
7155# which is appropriate when building the dll but not consuming it. 
7256target_compile_definitions (admittance_controller PRIVATE  "ADMITTANCE_CONTROLLER_BUILDING_DLL" )
@@ -119,26 +103,5 @@ install(TARGETS admittance_controller admittance_controller_parameters
119103)
120104
121105ament_export_targets(export_admittance_controller HAS_LIBRARY_TARGET)
122- ament_export_dependencies(
123-   angles
124-   control_msgs
125-   control_toolbox
126-   controller_interface
127-   Eigen3
128-   generate_parameter_library
129-   geometry_msgs
130-   hardware_interface
131-   joint_trajectory_controller
132-   kinematics_interface
133-   pluginlib
134-   rclcpp
135-   rclcpp_lifecycle
136-   realtime_tools
137-   tf2
138-   tf2_eigen
139-   tf2_geometry_msgs
140-   tf2_kdl
141-   tf2_ros
142-   trajectory_msgs
143- )
106+ ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS} )
144107ament_package()
0 commit comments