Files
mir_amr/navigations/dwb_local_planner/CMakeLists.txt
2026-05-28 10:29:58 +07:00

81 lines
2.6 KiB
CMake
Executable File

cmake_minimum_required(VERSION 3.0.2)
project(dwb_local_planner)
set_directory_properties(PROPERTIES COMPILE_OPTIONS "-std=c++11;-Wall;-Werror")
find_package(catkin REQUIRED COMPONENTS
dwb_msgs
geometry_msgs
nav_2d_msgs
nav_2d_utils
nav_core2
nav_msgs
pluginlib
roscpp
sensor_msgs
tf
visualization_msgs
)
catkin_package(
INCLUDE_DIRS include
LIBRARIES dwb_local_planner debug_dwb_local_planner trajectory_utils
CATKIN_DEPENDS
dwb_msgs geometry_msgs nav_2d_msgs nav_2d_utils nav_core2
nav_msgs pluginlib roscpp sensor_msgs tf visualization_msgs
)
include_directories(
include
${catkin_INCLUDE_DIRS}
)
add_library(dwb_local_planner src/dwb_local_planner.cpp
src/backwards_compatibility.cpp
src/publisher.cpp
src/illegal_trajectory_tracker.cpp
)
target_link_libraries(dwb_local_planner ${catkin_LIBRARIES})
add_dependencies(dwb_local_planner ${catkin_EXPORTED_TARGETS})
add_library(debug_dwb_local_planner src/debug_dwb_local_planner.cpp)
target_link_libraries(debug_dwb_local_planner ${catkin_LIBRARIES} dwb_local_planner)
add_dependencies(debug_dwb_local_planner ${catkin_EXPORTED_TARGETS})
add_library(trajectory_utils src/trajectory_utils.cpp)
target_link_libraries(trajectory_utils ${catkin_LIBRARIES})
add_executable(${PROJECT_NAME}_planner_node src/planner_node.cpp)
target_link_libraries(${PROJECT_NAME}_planner_node ${catkin_LIBRARIES} debug_dwb_local_planner)
add_dependencies(${PROJECT_NAME}_planner_node ${catkin_EXPORTED_TARGETS})
set_target_properties(${PROJECT_NAME}_planner_node PROPERTIES OUTPUT_NAME planner_node PREFIX "")
if(CATKIN_ENABLE_TESTING)
find_package(rostest REQUIRED)
find_package(roslint REQUIRED)
roslint_cpp()
roslint_add_test()
catkin_add_gtest(utils_test test/utils_test.cpp)
target_link_libraries(utils_test trajectory_utils)
endif()
install(TARGETS ${PROJECT_NAME}_planner_node
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
install(TARGETS dwb_local_planner debug_dwb_local_planner trajectory_utils
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION}
)
install(DIRECTORY include/${PROJECT_NAME}/
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
)
install(FILES plugins.xml
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
)
install(DIRECTORY launch/
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/launch
FILES_MATCHING PATTERN "*.launch"
)