# ==============================================================================
# CMakeLists.txt for rovo_description
# ==============================================================================
# Copyright (c) 2017-2026 MyBotShop
# All rights reserved.
#
# This package provides URDF/Xacro robot descriptions for the ROVO3 platform.
# ==============================================================================

cmake_minimum_required(VERSION 3.14)
project(rovo_description VERSION 2.0.0 LANGUAGES CXX)

# ==============================================================================
# Build Configuration
# ==============================================================================

if(NOT CMAKE_CXX_STANDARD)
  set(CMAKE_CXX_STANDARD 17)
  set(CMAKE_CXX_STANDARD_REQUIRED ON)
endif()

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
  add_compile_options(-Wall -Wextra -Wpedantic)
endif()

# ==============================================================================
# Dependencies
# ==============================================================================

find_package(ament_cmake REQUIRED)
find_package(urdf REQUIRED)
find_package(xacro REQUIRED)

# ==============================================================================
# Installation
# ==============================================================================

install(
  DIRECTORY
    config
    launch
    meshes
    xacro
  DESTINATION share/${PROJECT_NAME}
)

# ==============================================================================
# Testing
# ==============================================================================

if(BUILD_TESTING)
  find_package(ament_lint_auto REQUIRED)
  ament_lint_auto_find_test_dependencies()
endif()

# ==============================================================================
# Package Configuration
# ==============================================================================

ament_export_dependencies(urdf xacro)
ament_package()
