84 lines
2.2 KiB
CMake
84 lines
2.2 KiB
CMake
cmake_minimum_required(VERSION 3.0.2)
|
|
project(rviz_camera_stream)
|
|
|
|
find_package(catkin REQUIRED COMPONENTS
|
|
image_transport
|
|
roscpp
|
|
roslint
|
|
rviz
|
|
sensor_msgs
|
|
)
|
|
|
|
roslint_cpp()
|
|
## Compiler flags
|
|
# if(CMAKE_COMPILER_IS_GNUCXX)
|
|
# set(CMAKE_CXX_FLAGS "-std=c++0x") ## Enable C++11
|
|
# endif()
|
|
# set(CMAKE_CXX_FLAGS "-Wall -Werror ${CMAKE_CXX_FLAGS}")
|
|
set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}")
|
|
|
|
## This plugin includes Qt widgets, so we must include Qt.
|
|
## We'll use the version that rviz used so they are compatible.
|
|
if(rviz_QT_VERSION VERSION_LESS "5")
|
|
message(STATUS "Using Qt4 based on the rviz_QT_VERSION: ${rviz_QT_VERSION}")
|
|
find_package(Qt4 ${rviz_QT_VERSION} EXACT REQUIRED QtCore QtGui)
|
|
## pull in all required include dirs, define QT_LIBRARIES, etc.
|
|
include(${QT_USE_FILE})
|
|
else()
|
|
message(STATUS "Using Qt5 based on the rviz_QT_VERSION: ${rviz_QT_VERSION}")
|
|
# find_package(Qt5 ${rviz_QT_VERSION} EXACT REQUIRED Core Widgets)
|
|
find_package(Qt5 ${rviz_QT_VERSION} REQUIRED Core Widgets)
|
|
## make target_link_libraries(${QT_LIBRARIES}) pull in all required dependencies
|
|
set(QT_LIBRARIES Qt5::Widgets)
|
|
endif()
|
|
|
|
## Avoid defining "emit", "slots",
|
|
## etc for Qt signals because they can conflict with boost signals
|
|
add_definitions(-DQT_NO_KEYWORDS)
|
|
|
|
catkin_package(
|
|
CATKIN_DEPENDS
|
|
roscpp
|
|
rviz
|
|
)
|
|
|
|
include_directories(
|
|
include
|
|
${catkin_INCLUDE_DIRS}
|
|
)
|
|
|
|
if(rviz_QT_VERSION VERSION_LESS "5")
|
|
qt4_wrap_cpp(MOC_FILES
|
|
include/${PROJECT_NAME}/camera_display.h
|
|
)
|
|
else()
|
|
qt5_wrap_cpp(MOC_FILES
|
|
include/${PROJECT_NAME}/camera_display.h
|
|
)
|
|
endif()
|
|
|
|
add_library(${PROJECT_NAME}
|
|
src/camera_display.cpp
|
|
${MOC_FILES}
|
|
)
|
|
|
|
target_link_libraries(${PROJECT_NAME}
|
|
${catkin_LIBRARIES}
|
|
${QT_LIBRARIES}
|
|
)
|
|
|
|
# install
|
|
install (TARGETS ${PROJECT_NAME}
|
|
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
|
|
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
|
|
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
|
|
)
|
|
|
|
install(FILES
|
|
plugin_description.xml
|
|
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
|
|
)
|
|
|
|
install(DIRECTORY config/ DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/config)
|
|
install(DIRECTORY launch/ DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/launch)
|