72 lines
2 KiB
CMake
72 lines
2 KiB
CMake
cmake_minimum_required(VERSION 3.8)
|
|
project(rbs_mill_assist)
|
|
|
|
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
add_compile_options(-Wall -Wextra -Wpedantic)
|
|
endif()
|
|
|
|
# find dependencies
|
|
find_package(ament_cmake REQUIRED)
|
|
find_package(rclcpp REQUIRED)
|
|
find_package(std_srvs REQUIRED)
|
|
find_package(gz-cmake3 REQUIRED)
|
|
find_package(gz-plugin2 REQUIRED COMPONENTS register)
|
|
set(GZ_PLUGIN_VER ${gz-plugin2_VERSION_MAJOR})
|
|
find_package(gz-common5 REQUIRED COMPONENTS profiler)
|
|
set(GZ_COMMON_VER ${gz-common5_VERSION_MAJOR})
|
|
|
|
# Harmonic
|
|
if("$ENV{GZ_VERSION}" STREQUAL "harmonic")
|
|
find_package(gz-sim8 REQUIRED)
|
|
set(GZ_SIM_VER ${gz-sim8_VERSION_MAJOR})
|
|
message(STATUS "Compiling against Gazebo Harmonic")
|
|
# Default to Garden
|
|
else()
|
|
find_package(gz-sim7 REQUIRED)
|
|
set(GZ_SIM_VER ${gz-sim7_VERSION_MAJOR})
|
|
message(STATUS "Compiling against Gazebo Garden")
|
|
endif()
|
|
|
|
add_library(VacuumGripper
|
|
SHARED
|
|
src/VacuumGripper.cpp
|
|
)
|
|
|
|
include_directories(include)
|
|
|
|
target_link_libraries(VacuumGripper
|
|
gz-sim${GZ_SIM_VER}::gz-sim${GZ_SIM_VER}
|
|
)
|
|
|
|
ament_target_dependencies(VacuumGripper
|
|
rclcpp
|
|
std_srvs
|
|
)
|
|
|
|
install(
|
|
TARGETS VacuumGripper
|
|
DESTINATION lib/${PROJECT_NAME}
|
|
)
|
|
|
|
|
|
install(DIRECTORY world urdf meshes launch config assets bt/xmls bt/config
|
|
DESTINATION share/${PROJECT_NAME})
|
|
|
|
add_subdirectory(scripts)
|
|
add_subdirectory(bt)
|
|
|
|
if(BUILD_TESTING)
|
|
find_package(ament_lint_auto REQUIRED)
|
|
# the following line skips the linter which checks for copyrights
|
|
# comment the line when a copyright and license is added to all source files
|
|
set(ament_cmake_copyright_FOUND TRUE)
|
|
# the following line skips cpplint (only works in a git repo)
|
|
# comment the line when this package is in a git repo and when
|
|
# a copyright and license is added to all source files
|
|
set(ament_cmake_cpplint_FOUND TRUE)
|
|
ament_lint_auto_find_test_dependencies()
|
|
endif()
|
|
ament_environment_hooks("${CMAKE_CURRENT_SOURCE_DIR}/hooks/${PROJECT_NAME}.dsv.in")
|
|
ament_environment_hooks("${CMAKE_CURRENT_SOURCE_DIR}/hooks/${PROJECT_NAME}.sh.in")
|
|
|
|
ament_package()
|