/
/
/
1cmake_minimum_required(VERSION 3.8)
2project(fast_slam_ros)
3
4if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
5 add_compile_options(-Wall -Wextra -Wpedantic)
6endif()
7
8# find dependencies
9find_package(ament_cmake REQUIRED)
10find_package(rclcpp REQUIRED)
11find_package (Eigen3 3.3 REQUIRED NO_MODULE)
12find_package(fast_slam REQUIRED)
13find_package(tf2_ros REQUIRED)
14find_package(tf2 REQUIRED)
15find_package(nav_msgs REQUIRED)
16find_package(geometry_msgs REQUIRED)
17
18add_executable(${PROJECT_NAME}
19 src/fast_slam_ros_bringup.cpp
20 src/fast_slam_ros.cpp
21)
22
23
24ament_target_dependencies(${PROJECT_NAME}
25 rclcpp
26 fast_slam
27 tf2_ros
28 tf2
29 nav_msgs
30 geometry_msgs
31)
32
33
34target_include_directories(${PROJECT_NAME} PUBLIC
35 "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
36 "$<INSTALL_INTERFACE:include/${PROJECT_NAME}>"
37)
38
39install(TARGETS
40 ${PROJECT_NAME}
41 DESTINATION lib/${PROJECT_NAME}
42)
43
44install(DIRECTORY launch DESTINATION share/${PROJECT_NAME})
45install(DIRECTORY rviz DESTINATION share/${PROJECT_NAME})
46
47# if(BUILD_TESTING)
48# find_package(ament_lint_auto REQUIRED)
49# set(ament_cmake_cpplint_FOUND TRUE)
50# ament_lint_auto_find_test_dependencies()
51# endif()
52
53ament_package()
54