78 lines
1.4 KiB
CMake
78 lines
1.4 KiB
CMake
cmake_minimum_required(VERSION 3.5)
|
|
project(sweet_rviz_panel)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(ament_cmake REQUIRED)
|
|
find_package(rclcpp REQUIRED)
|
|
find_package(rviz_common REQUIRED)
|
|
find_package(rviz_rendering REQUIRED)
|
|
find_package(pluginlib REQUIRED)
|
|
find_package(geometry_msgs REQUIRED)
|
|
find_package(nav_msgs REQUIRED)
|
|
find_package(tf2 REQUIRED)
|
|
find_package(Qt5 REQUIRED COMPONENTS Widgets)
|
|
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_AUTOUIC ON)
|
|
set(CMAKE_AUTORCC ON)
|
|
|
|
set(HEADERS
|
|
include/sweet_rviz_panel/qcustomplot.h
|
|
include/sweet_rviz_panel/sweet_rviz_panel.hpp
|
|
)
|
|
|
|
set(SOURCES
|
|
src/sweet_rviz_panel.cpp
|
|
src/qcustomplot.cpp
|
|
)
|
|
|
|
add_library(${PROJECT_NAME} SHARED
|
|
${SOURCES}
|
|
${HEADERS}
|
|
)
|
|
|
|
target_include_directories(${PROJECT_NAME}
|
|
PUBLIC
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
|
$<INSTALL_INTERFACE:include>
|
|
)
|
|
|
|
ament_target_dependencies(${PROJECT_NAME}
|
|
rclcpp
|
|
rviz_common
|
|
rviz_rendering
|
|
pluginlib
|
|
geometry_msgs
|
|
nav_msgs
|
|
tf2
|
|
)
|
|
|
|
target_link_libraries(${PROJECT_NAME}
|
|
Qt5::Widgets
|
|
)
|
|
|
|
pluginlib_export_plugin_description_file(
|
|
rviz_common
|
|
plugin_description.xml
|
|
)
|
|
|
|
install(
|
|
TARGETS ${PROJECT_NAME}
|
|
ARCHIVE DESTINATION lib
|
|
LIBRARY DESTINATION lib
|
|
RUNTIME DESTINATION bin
|
|
)
|
|
|
|
install(
|
|
DIRECTORY include/
|
|
DESTINATION include
|
|
)
|
|
|
|
install(
|
|
FILES plugin_description.xml
|
|
DESTINATION share/${PROJECT_NAME}
|
|
)
|
|
|
|
ament_package() |