Skip to content

Commit ad1c848

Browse files
authored
Simplify CMakelists of ca_gazebo (#216)
* Simplify CMakelists of ca_gazebo * Change target name to fix linter * Fix catkin_lint
1 parent 4f4ea0a commit ad1c848

File tree

7 files changed

+65
-168
lines changed

7 files changed

+65
-168
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ script:
4949
- catkin_make run_tests -j1 && catkin_test_results
5050
# Lint package files ONLY for create_autonomy
5151
- sudo apt-get install -y python-catkin-lint
52-
- catkin lint -W2 --strict --explain $CREATE_AUTONOMY_SRC --ignore plugin_missing_install --ignore target_name_collision
52+
- catkin lint -W2 --strict --explain $CREATE_AUTONOMY_SRC
5353
# Tips
5454
#
5555
# C++:

ca_bumper2pc/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#catkin_lint: ignore plugin_missing_install
12
cmake_minimum_required(VERSION 2.8.3)
23
project(ca_bumper2pc)
34
find_package(catkin REQUIRED COMPONENTS

ca_gazebo/CMakeLists.txt

Lines changed: 56 additions & 162 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#catkin_lint: ignore duplicate_cmd
2+
#catkin_lint: ignore uninstalled_export_lib
13
cmake_minimum_required(VERSION 2.8.3)
24
project(ca_gazebo)
35

@@ -17,22 +19,23 @@ find_package(catkin REQUIRED
1719
tf2_ros
1820
)
1921

20-
set(trajectory_actor_plugin_name TrajectoryActorPlugin)
21-
22-
###################################
23-
## catkin specific configuration ##
24-
###################################
22+
set(SERVICESIM_PLUGIN_LIST
23+
AttachModelPlugin
24+
CollisionActorPlugin
25+
FollowActorPlugin
26+
TrajectoryActorPlugin
27+
VicinityPlugin
28+
)
2529

26-
catkin_package(
27-
INCLUDE_DIRS include
28-
LIBRARIES
29-
create_bumper_plugin
30-
model_pose_publisher_plugin
31-
traffic_light_plugin
32-
${trajectory_actor_plugin_name}
33-
world_time_publisher
34-
CATKIN_DEPENDS
35-
ca_msgs
30+
set(PLUGIN_LIST
31+
cliff_msg_publisher
32+
create_bumper_plugin
33+
create_cliff_plugin
34+
create_virtual_wall_plugin
35+
model_pose_publisher_plugin
36+
traffic_light_plugin
37+
virtual_wall_detector
38+
world_time_publisher
3639
)
3740

3841
###########
@@ -45,150 +48,55 @@ include_directories(
4548
${GAZEBO_INCLUDE_DIRS}
4649
)
4750

48-
#############################
49-
## Trajectory Actor plugin ##
50-
#############################
51+
########################
52+
## ServiceSim plugins ##
53+
########################
5154

52-
# Create the libTrajectoryActorPlugin.so library.
53-
add_library(${trajectory_actor_plugin_name} SHARED
54-
src/servicesim/TrajectoryActorPlugin.cc
55-
)
56-
target_link_libraries(${trajectory_actor_plugin_name}
57-
${GAZEBO_LIBRARIES}
58-
${catkin_LIBRARIES}
59-
)
60-
install(TARGETS ${trajectory_actor_plugin_name}
61-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
62-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
63-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
64-
)
55+
foreach(PLUGIN ${SERVICESIM_PLUGIN_LIST})
56+
catkin_package(
57+
INCLUDE_DIRS include
58+
LIBRARIES ${PLUGIN}
59+
CATKIN_DEPENDS ca_msgs
60+
)
6561

66-
#############################
67-
## Follow Actor plugin ##
68-
#############################
62+
add_library(${PLUGIN} SHARED src/servicesim/${PLUGIN}.cc)
6963

70-
# Create the libFollowActorPlugin.so library.
71-
set(follow_actor_plugin_name FollowActorPlugin)
72-
add_library(${follow_actor_plugin_name} SHARED
73-
src/servicesim/FollowActorPlugin.cc
74-
)
75-
add_dependencies(${follow_actor_plugin_name}
76-
${catkin_EXPORTED_TARGETS}
77-
)
78-
target_link_libraries(${follow_actor_plugin_name}
79-
${GAZEBO_LIBRARIES}
80-
${roscpp_LIBRARIES}
81-
${catkin_LIBRARIES}
82-
)
83-
install(TARGETS ${follow_actor_plugin_name}
84-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
85-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
86-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
87-
)
64+
add_dependencies(${PLUGIN} ${catkin_EXPORTED_TARGETS})
8865

89-
#############################
90-
## Collision Actor plugin ##
91-
#############################
66+
target_link_libraries(${PLUGIN}
67+
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
9268

93-
# Create the libCollisionActorPlugin.so library.
94-
set(collision_actor_plugin_name CollisionActorPlugin)
95-
add_library(${collision_actor_plugin_name} SHARED
96-
src/servicesim/CollisionActorPlugin.cc
97-
)
98-
target_link_libraries(${collision_actor_plugin_name}
99-
${GAZEBO_LIBRARIES}
100-
${roscpp_LIBRARIES}
101-
)
102-
install(TARGETS ${collision_actor_plugin_name}
103-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
104-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
105-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
106-
)
69+
install(TARGETS ${PLUGIN}
70+
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
71+
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
72+
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
73+
)
74+
endforeach()
10775

108-
#############################
109-
## Attach Model plugin ##
110-
#############################
76+
###################################
77+
###### iRobot Create plugins ######
78+
###################################
11179

112-
# Create the libAttachModelPlugin.so library.
113-
set(attach_model_plugin_name AttachModelPlugin)
114-
add_library(${attach_model_plugin_name} SHARED
115-
src/servicesim/AttachModelPlugin.cc
116-
)
117-
target_link_libraries(${attach_model_plugin_name}
118-
${GAZEBO_LIBRARIES}
119-
${roscpp_LIBRARIES}
120-
)
121-
install(TARGETS ${attach_model_plugin_name}
122-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
123-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
124-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
125-
)
80+
foreach(PLUGIN ${PLUGIN_LIST})
81+
catkin_package(
82+
INCLUDE_DIRS include
83+
LIBRARIES ${PLUGIN}
84+
CATKIN_DEPENDS ca_msgs
85+
)
12686

127-
#############################
128-
###### Vicinity plugin ######
129-
#############################
87+
add_library(${PLUGIN} src/${PLUGIN}.cpp)
13088

131-
# Create the libVicinityPlugin.so library.
132-
set(vicinity_plugin_name VicinityPlugin)
133-
add_library(${vicinity_plugin_name} SHARED
134-
src/servicesim/VicinityPlugin.cc
135-
)
136-
add_dependencies(${vicinity_plugin_name}
137-
${catkin_EXPORTED_TARGETS}
138-
)
139-
target_link_libraries(${vicinity_plugin_name}
140-
${GAZEBO_LIBRARIES}
141-
${catkin_LIBRARIES}
142-
)
143-
install(TARGETS ${vicinity_plugin_name}
144-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
145-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
146-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
147-
)
89+
add_dependencies(${PLUGIN} ${catkin_EXPORTED_TARGETS})
14890

149-
###################################
150-
###### iRobot Create plugins ######
151-
###################################
91+
target_link_libraries(${PLUGIN}
92+
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
15293

153-
add_library(cliff_msg_publisher src/cliff_msg_publisher.cpp)
154-
add_dependencies(cliff_msg_publisher ${catkin_EXPORTED_TARGETS})
155-
target_link_libraries(cliff_msg_publisher
156-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
157-
158-
add_library(create_bumper_plugin src/create_bumper_plugin.cpp)
159-
add_dependencies(create_bumper_plugin ${catkin_EXPORTED_TARGETS})
160-
target_link_libraries(create_bumper_plugin
161-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
162-
163-
add_library(create_cliff_plugin src/create_cliff_plugin.cpp)
164-
add_dependencies(create_cliff_plugin ${catkin_EXPORTED_TARGETS})
165-
target_link_libraries(create_cliff_plugin
166-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
167-
168-
add_library(create_virtual_wall_plugin src/create_virtual_wall_plugin.cpp)
169-
add_dependencies(create_virtual_wall_plugin ${catkin_EXPORTED_TARGETS})
170-
target_link_libraries(create_virtual_wall_plugin
171-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
172-
173-
add_library(model_pose_publisher_plugin src/model_pose_publisher_plugin.cpp)
174-
add_dependencies(model_pose_publisher_plugin ${catkin_EXPORTED_TARGETS})
175-
target_link_libraries(model_pose_publisher_plugin
176-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
177-
178-
add_library(traffic_light_plugin src/traffic_light_plugin.cpp)
179-
add_dependencies(traffic_light_plugin ${catkin_EXPORTED_TARGETS})
180-
target_link_libraries(traffic_light_plugin
181-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
182-
183-
add_library(virtual_wall_detector src/virtual_wall_detector.cpp)
184-
add_dependencies(virtual_wall_detector ${catkin_EXPORTED_TARGETS})
185-
target_link_libraries(virtual_wall_detector
186-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
187-
188-
add_library(world_time_publisher src/world_time_publisher.cpp)
189-
add_dependencies(world_time_publisher ${catkin_EXPORTED_TARGETS})
190-
target_link_libraries(world_time_publisher
191-
${catkin_LIBRARIES} ${GAZEBO_LIBRARIES})
94+
install(TARGETS ${TARGET}
95+
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
96+
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
97+
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
98+
)
99+
endforeach()
192100

193101
#############
194102
## Install ##
@@ -206,20 +114,6 @@ install(DIRECTORY include/${PROJECT_NAME}/
206114
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
207115
)
208116

209-
install(TARGETS
210-
cliff_msg_publisher
211-
create_bumper_plugin
212-
create_cliff_plugin
213-
create_virtual_wall_plugin
214-
model_pose_publisher_plugin
215-
traffic_light_plugin
216-
virtual_wall_detector
217-
world_time_publisher
218-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
219-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
220-
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
221-
)
222-
223117
install(DIRECTORY scripts
224118
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
225119
USE_SOURCE_PERMISSIONS

ca_node/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#catkin_lint: ignore plugin_missing_install
12
cmake_minimum_required(VERSION 2.8.3)
23
project(ca_node)
34

@@ -14,7 +15,7 @@ find_package(Boost REQUIRED system thread)
1415

1516
catkin_package(
1617
LIBRARIES ${PROJECT_NAME}let ca_driver
17-
CATKIN_DEPENDS
18+
CATKIN_DEPENDS
1819
ca_description
1920
ca_msgs
2021
ecl_threads

navigation/ca_move_base/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@ catkin_package(
2020

2121
include_directories(${catkin_INCLUDE_DIRS})
2222

23-
add_executable(send_goal src/send_robot_goal.cpp)
23+
add_executable(send_move_base_goal src/send_robot_goal.cpp)
2424

2525
## Specify libraries to link a library or executable target against
26-
target_link_libraries(send_goal
26+
target_link_libraries(send_move_base_goal
2727
${catkin_LIBRARIES}
2828
)
2929

30-
install(TARGETS send_goal
30+
install(TARGETS send_move_base_goal
3131
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
3232
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
3333
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}

navigation/ca_move_base/launch/send_goal.launch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<arg name="robot_id" default="$(optenv ID 1)" doc="Unique identifier of the robot [1-Inf.)"/>
77
<arg name="ns" value="create$(arg robot_id)" doc="Namespace of the robot. By default: create1."/>
88

9-
<node pkg="ca_move_base" type="send_goal" name="navigation_goals"
9+
<node pkg="ca_move_base" type="send_move_base_goal" name="navigation_goals"
1010
ns="$(arg ns)" output="screen"
1111
args="$(arg x) $(arg y) $(arg Y)"/>
1212
</launch>

navigation/ca_safety_controller/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#catkin_lint: ignore plugin_missing_install
12
cmake_minimum_required(VERSION 2.8.3)
23
project(ca_safety_controller)
34

0 commit comments

Comments
 (0)