mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-04 08:47:45 +08:00
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/ros-pkg@560 f169173b-cf89-36c8-b27e-44dbe73f0c83
75 lines
3.0 KiB
CMake
75 lines
3.0 KiB
CMake
cmake_minimum_required(VERSION 2.4.6)
|
|
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
|
|
|
|
project(rtabmap-pkg)
|
|
|
|
# Set the build type. Options are:
|
|
# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage
|
|
# Debug : w/ debug symbols, w/o optimization
|
|
# Release : w/o debug symbols, w/ optimization
|
|
# RelWithDebInfo : w/ debug symbols, w/ optimization
|
|
# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries
|
|
#set(ROS_BUILD_TYPE RelWithDebInfo)
|
|
|
|
rosbuild_init()
|
|
|
|
#set the default path for built executables to the "bin" directory
|
|
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
|
|
#set the default path for built libraries to the "lib" directory
|
|
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
|
|
|
|
# For CMake 2.6
|
|
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)
|
|
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)
|
|
SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib)
|
|
|
|
#uncomment if you have defined messages
|
|
rosbuild_genmsg()
|
|
#uncomment if you have defined services
|
|
rosbuild_gensrv()
|
|
|
|
#common commands for building c++ executables and libraries
|
|
#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
|
|
#target_link_libraries(${PROJECT_NAME} another_library)
|
|
#rosbuild_add_boost_directories()
|
|
#rosbuild_link_boost(${PROJECT_NAME} thread)
|
|
#rosbuild_add_executable(example examples/example.cpp)
|
|
#target_link_libraries(example ${PROJECT_NAME})
|
|
|
|
find_package(OpenCV REQUIRED)
|
|
|
|
rosbuild_add_executable(rtabmap src/CoreNode.cpp src/CoreWrapper.cpp)
|
|
target_link_libraries(rtabmap ${OpenCV_LIBS})
|
|
|
|
rosbuild_add_executable(rtabmap_out src/OutputNode.cpp)
|
|
rosbuild_add_executable(abtr_velocity src/AbtrVelocityNode.cpp)
|
|
rosbuild_add_executable(twist_to_turtle_vel src/CmdVelToTurtleVelNode.cpp)
|
|
rosbuild_add_executable(twist_to_pose src/Twist2Pose.cpp)
|
|
rosbuild_add_executable(twist_to_twist_stamped src/Twist2TwistStamped.cpp)
|
|
|
|
# Input nodes
|
|
rosbuild_add_boost_directories()
|
|
rosbuild_add_executable(input_image_audio_node src/ImageAudioInputNode.cpp)
|
|
target_link_libraries(input_image_audio_node ${OpenCV_LIBS})
|
|
rosbuild_link_boost(input_image_audio_node signals)
|
|
|
|
rosbuild_add_executable(input_image_audio_twist_node src/ImageAudioTwistInputNode.cpp)
|
|
target_link_libraries(input_image_audio_twist_node ${OpenCV_LIBS})
|
|
rosbuild_link_boost(input_image_audio_twist_node signals)
|
|
|
|
rosbuild_add_executable(input_image_twist_node src/ImageTwistInputNode.cpp)
|
|
target_link_libraries(input_image_twist_node ${OpenCV_LIBS})
|
|
rosbuild_link_boost(input_image_twist_node signals)
|
|
|
|
FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui)
|
|
IF(QT4_FOUND AND QT_QTCORE_FOUND AND QT_QTGUI_FOUND)
|
|
INCLUDE(${QT_USE_FILE})
|
|
rosbuild_add_executable(rtabmap_gui src/GuiNode.cpp src/GuiWrapper.cpp src/PreferencesDialogROS.cpp)
|
|
target_link_libraries(rtabmap_gui ${QT_LIBRARIES} ${OpenCV_LIBS} "-lrtabmap_gui")
|
|
|
|
rosbuild_add_executable(visual_attention src/VisualAttentionNode.cpp)
|
|
target_link_libraries(visual_attention ${QT_LIBRARIES} ${OpenCV_LIBS})
|
|
ELSE()
|
|
MESSAGE(STATUS "[WARNING] Qt4 not found, the GUI node will not be compiled...")
|
|
ENDIF()
|