83 lines
2.6 KiB
CMake
Executable File
83 lines
2.6 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.5.1)
|
|
cmake_policy(SET CMP0048 NEW)
|
|
project(sbpl_lattice_planner)
|
|
|
|
##############################################################################
|
|
# Find dependencies
|
|
##############################################################################
|
|
|
|
set(THIS_PACKAGE_ROS_DEPS roscpp costmap_2d nav_core pluginlib tf tf2
|
|
geometry_msgs nav_msgs)
|
|
find_package(catkin REQUIRED COMPONENTS
|
|
${THIS_PACKAGE_ROS_DEPS} message_generation)
|
|
|
|
# Find SBPL
|
|
# find_package(SBPL REQUIRED)
|
|
find_package(PkgConfig REQUIRED)
|
|
pkg_check_modules(SBPL REQUIRED sbpl)
|
|
# include_directories(${SBPL_INCLUDE_DIRS})
|
|
link_directories(${SBPL_LIBRARY_DIRS})
|
|
|
|
# include_directories(include ${catkin_INCLUDE_DIRS} ${SBPL_INCLUDE_DIRS})
|
|
|
|
##############################################################################
|
|
# Generate messages
|
|
##############################################################################
|
|
|
|
add_message_files(FILES
|
|
SBPLLatticePlannerStats.msg
|
|
OccupancyGrid.msg)
|
|
generate_messages(DEPENDENCIES geometry_msgs nav_msgs)
|
|
|
|
##############################################################################
|
|
# Define package
|
|
##############################################################################
|
|
|
|
catkin_package(
|
|
INCLUDE_DIRS include
|
|
LIBRARIES ${PROJECT_NAME}
|
|
CATKIN_DEPENDS ${THIS_PACKAGE_ROS_DEPS} message_runtime
|
|
# DEPENDS SBPL
|
|
)
|
|
|
|
##############################################################################
|
|
# Build
|
|
##############################################################################
|
|
include_directories(
|
|
include
|
|
${catkin_INCLUDE_DIRS}
|
|
${SBPL_INCLUDE_DIRS}
|
|
)
|
|
add_library(${PROJECT_NAME} src/sbpl_lattice_planner.cpp)
|
|
target_link_libraries(${PROJECT_NAME} ${SBPL_LIBRARIES})
|
|
add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
|
|
target_compile_options(${PROJECT_NAME} PUBLIC "-Wno-terminate") # suppress warning from included SBPL header
|
|
|
|
##############################################################################
|
|
# Install
|
|
##############################################################################
|
|
|
|
install(TARGETS ${PROJECT_NAME}
|
|
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
|
|
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
|
|
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
|
|
)
|
|
|
|
install(DIRECTORY include/${PROJECT_NAME}/
|
|
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
|
|
FILES_MATCHING PATTERN "*.h"
|
|
PATTERN ".svn" EXCLUDE
|
|
)
|
|
|
|
install(FILES bgp_plugin.xml
|
|
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
|
|
)
|
|
|
|
install(DIRECTORY
|
|
launch
|
|
matlab
|
|
rviz
|
|
worlds
|
|
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
|
|
)
|