Skip to content
Snippets Groups Projects
CMakeLists.txt 1.56 KiB
Newer Older
cmake_minimum_required(VERSION 3.18)
Fabian Reister's avatar
Fabian Reister committed

Fabian Reister's avatar
Fabian Reister committed
# default settings
set(ARMARX_ENABLE_DEPENDENCY_VERSION_CHECK_DEFAULT FALSE)
Fabian Reister's avatar
Fabian Reister committed

Christian Dreher's avatar
Christian Dreher committed
find_package("ArmarXCore" REQUIRED)
Fabian Reister's avatar
Fabian Reister committed
include(${ArmarXCore_USE_FILE})

# Name for the project
Fabian Reister's avatar
Fabian Reister committed
armarx_enable_modern_cmake_project()
armarx_project(navigation NAMESPACE armarx)
Fabian Reister's avatar
Fabian Reister committed

# Specify each ArmarX Package dependency with the following macro
Fabian Reister's avatar
Fabian Reister committed
armarx_find_package(PUBLIC RobotAPI REQUIRED)
armarx_find_package(PUBLIC armarx::control)
armarx_find_package(PUBLIC ArmarXGui)
armarx_find_package(PUBLIC MemoryX QUIET)
armarx_find_package(PUBLIC VisionX QUIET)
Fabian Reister's avatar
Fabian Reister committed
armarx_find_package(PUBLIC ArmarXSimulation QUIET)
# System dependencies
# - required
Fabian Reister's avatar
Fabian Reister committed
armarx_find_package(PUBLIC OpenMP QUIET)
armarx_find_package(PUBLIC Ceres QUIET)
armarx_find_package(PUBLIC VTK QUIET)
Fabian Reister's avatar
Fabian Reister committed
armarx_find_package(PUBLIC SemanticObjectRelations QUIET)
armarx_find_package(PUBLIC OpenCV QUIET)  # Required as RobotAPI is a legacy project.
armarx_find_package(PUBLIC range-v3 QUIET)
Fabian Reister's avatar
Fabian Reister committed
# human aware navigation
armarx_find_package(PUBLIC teb_local_planner QUIET)
armarx_find_package(PUBLIC teb_extension QUIET)
Fabian Reister's avatar
Fabian Reister committed
# FetchContent_Declare(
#     inotify_cpp
#     GIT_REPOSITORY https://github.com/erikzenker/inotify-cpp.git
#     GIT_TAG v1.0.0
# )
# FetchContent_MakeAvailable(inotify_cpp)

add_definitions(-Werror=init-self)
add_definitions(-Werror=uninitialized)
add_definitions(-Werror=missing-field-initializers)
add_definitions(-Werror=reorder)
add_definitions(-Werror=narrowing)
Fabian Reister's avatar
Fabian Reister committed

Fabian Reister's avatar
Fabian Reister committed
add_subdirectory(source)
Fabian Reister's avatar
Fabian Reister committed
add_subdirectory(examples)
Fabian Reister's avatar
Fabian Reister committed

Fabian Reister's avatar
Fabian Reister committed
armarx_install_project()