|
1 |
| -cmake_minimum_required(VERSION 2.4.6) |
2 |
| -list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) |
3 |
| -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) |
4 |
| -rosbuild_init() |
5 |
| -rosbuild_gensrv() |
| 1 | +cmake_minimum_required(VERSION 2.8.3) |
| 2 | +project(laser_assembler) |
6 | 3 |
|
7 |
| -rosbuild_add_boost_directories() |
| 4 | +############################################################################## |
| 5 | +# Find dependencies |
| 6 | +############################################################################## |
8 | 7 |
|
9 |
| -find_package(Eigen REQUIRED) |
10 |
| -include_directories(${EIGEN_INCLUDE_DIRS}) |
| 8 | +set(THIS_PACKAGE_ROS_DEPS |
| 9 | +tf sensor_msgs message_filters roscpp laser_geometry filters) |
11 | 10 |
|
12 |
| -rosbuild_add_executable(laser_scan_assembler_srv src/laser_scan_assembler_srv.cpp) |
13 |
| -rosbuild_link_boost(laser_scan_assembler_srv system signals) |
14 |
| -rosbuild_add_executable(point_cloud_assembler_srv src/point_cloud_assembler_srv.cpp) |
15 |
| -rosbuild_link_boost(point_cloud_assembler_srv signals) |
16 |
| -rosbuild_add_executable(laser_scan_assembler src/laser_scan_assembler.cpp) |
17 |
| -rosbuild_link_boost(laser_scan_assembler system signals) |
18 |
| -rosbuild_add_executable(point_cloud_assembler src/point_cloud_assembler.cpp) |
19 |
| -rosbuild_link_boost(point_cloud_assembler signals) |
20 |
| -rosbuild_add_executable(point_cloud2_assembler src/point_cloud2_assembler.cpp) |
21 |
| -rosbuild_link_boost(point_cloud2_assembler signals) |
| 11 | +find_package(catkin REQUIRED COMPONENTS |
| 12 | + ${THIS_PACKAGE_ROS_DEPS} |
| 13 | + message_generation |
| 14 | + rostest) |
| 15 | +find_package(Boost REQUIRED COMPONENTS system signals) |
| 16 | +include_directories(include ${catkin_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS}) |
22 | 17 |
|
23 |
| -rosbuild_add_executable(../test/dummy_scan_producer test/dummy_scan_producer.cpp) |
24 |
| -rosbuild_link_boost(../test/dummy_scan_producer thread signals) |
| 18 | +message("catkin_libs:::::::::::::::::::::::::::::::::::::::::::") |
| 19 | +message(${catkin_LIBRARIES}) |
25 | 20 |
|
26 |
| -rosbuild_add_executable(merge_clouds src/merge_clouds.cpp) |
27 |
| -rosbuild_link_boost(merge_clouds thread signals) |
| 21 | +############################################################################## |
| 22 | +# Build service definitions |
| 23 | +############################################################################## |
| 24 | +add_service_files(FILES |
| 25 | +AssembleScans.srv |
| 26 | +AssembleScans2.srv) |
28 | 27 |
|
29 |
| -rosbuild_add_executable(../test/test_assembler test/test_assembler.cpp) |
30 |
| -rosbuild_add_gtest_build_flags(../test/test_assembler) |
| 28 | +generate_messages(DEPENDENCIES sensor_msgs std_msgs) |
31 | 29 |
|
32 |
| -rosbuild_add_rostest(${CMAKE_CURRENT_SOURCE_DIR}/test/test_laser_assembler.launch) |
| 30 | +############################################################################## |
| 31 | +# Define package |
| 32 | +############################################################################## |
33 | 33 |
|
34 |
| -set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) |
35 |
| -add_subdirectory(examples) |
| 34 | +catkin_package( |
| 35 | + INCLUDE_DIRS include |
| 36 | + CATKIN_DEPENDS ${THIS_PACKAGE_ROS_DEPS} message_runtime |
| 37 | + DEPENDS |
| 38 | + ) |
36 | 39 |
|
37 |
| -rosbuild_make_distribution(1.5.5) |
| 40 | +############################################################################## |
| 41 | +# Build |
| 42 | +############################################################################## |
| 43 | + |
| 44 | +add_executable(laser_scan_assembler_srv src/laser_scan_assembler_srv.cpp) |
| 45 | +target_link_libraries(laser_scan_assembler_srv ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 46 | +add_dependencies(laser_scan_assembler_srv ${PROJECT_NAME}_gencpp) |
| 47 | + |
| 48 | +add_executable(laser_scan_assembler src/laser_scan_assembler.cpp) |
| 49 | +target_link_libraries(laser_scan_assembler ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 50 | +add_dependencies(laser_scan_assembler ${PROJECT_NAME}_gencpp) |
| 51 | + |
| 52 | +add_executable(merge_clouds src/merge_clouds.cpp) |
| 53 | +target_link_libraries(merge_clouds ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 54 | +add_dependencies(merge_clouds ${PROJECT_NAME}_gencpp) |
| 55 | + |
| 56 | +add_executable(point_cloud_assembler_srv src/point_cloud_assembler_srv.cpp) |
| 57 | +target_link_libraries(point_cloud_assembler_srv ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 58 | +add_dependencies(point_cloud_assembler_srv ${PROJECT_NAME}_gencpp) |
| 59 | + |
| 60 | +add_executable(point_cloud_assembler src/point_cloud_assembler.cpp) |
| 61 | +target_link_libraries(point_cloud_assembler ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 62 | +add_dependencies(point_cloud_assembler ${PROJECT_NAME}_gencpp) |
| 63 | + |
| 64 | +add_executable(point_cloud2_assembler src/point_cloud2_assembler.cpp) |
| 65 | +target_link_libraries(point_cloud2_assembler ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 66 | +add_dependencies(point_cloud2_assembler ${PROJECT_NAME}_gencpp) |
| 67 | + |
| 68 | +## unit testing |
| 69 | + |
| 70 | +add_executable(periodic_snapshotter examples/periodic_snapshotter.cpp) |
| 71 | +target_link_libraries(periodic_snapshotter ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 72 | +add_dependencies(periodic_snapshotter ${PROJECT_NAME}_gencpp) |
| 73 | + |
| 74 | +add_executable(dummy_scan_producer test/dummy_scan_producer.cpp) |
| 75 | +target_link_libraries(dummy_scan_producer ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 76 | +add_dependencies(dummy_scan_producer ${PROJECT_NAME}_gencpp) |
| 77 | + |
| 78 | +catkin_add_gtest(test_assembler EXCLUDE_FROM_ALL test/test_assembler.cpp) |
| 79 | +target_link_libraries(test_assembler ${catkin_LIBRARIES} ${Boost_LIBRARIES}) |
| 80 | +add_dependencies(test_assembler ${PROJECT_NAME}_gencpp) |
| 81 | + |
| 82 | +add_rostest(test/test_laser_assembler.launch) |
| 83 | + |
| 84 | +############################################################################## |
| 85 | +# Install |
| 86 | +############################################################################## |
| 87 | + |
| 88 | +install(TARGETS |
| 89 | + laser_scan_assembler_srv |
| 90 | + laser_scan_assembler |
| 91 | + merge_clouds |
| 92 | + point_cloud_assembler_srv |
| 93 | + point_cloud_assembler |
| 94 | + point_cloud2_assembler |
| 95 | + ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} |
| 96 | + LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} |
| 97 | + RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} |
| 98 | +) |
| 99 | + |
| 100 | +# Install headers |
| 101 | +install(DIRECTORY include/${PROJECT_NAME}/ |
| 102 | + DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) |
0 commit comments