cmake_minimum_required(VERSION 3.8)
project(qnbot_replay)

find_package(ament_cmake REQUIRED)
find_package(ament_cmake_python REQUIRED)
find_package(rosidl_default_generators REQUIRED)
find_package(action_msgs REQUIRED)

# ============ 生成 Action 接口 ============
file(GLOB ACTION_FILES "action/*.action")

foreach(ACTION_FILE ${ACTION_FILES})
  file(RELATIVE_PATH REL_ACTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}" "${ACTION_FILE}")
  list(APPEND REL_ACTION_FILES "${REL_ACTION_FILE}")
endforeach()

message(STATUS "Found action files: ${REL_ACTION_FILES}")

rosidl_generate_interfaces(${PROJECT_NAME}
  ${REL_ACTION_FILES}
  DEPENDENCIES
  action_msgs
)

# ============ 安装 Python 模块 ============
ament_python_install_package(qnbot_replay_py)

# 安装 Python 可执行脚本入口点
install(PROGRAMS
  scripts/replay_action_server
  DESTINATION lib/${PROJECT_NAME}
)

# ============ 安装 recordings 数据文件 ============
install(DIRECTORY recordings/
  DESTINATION share/${PROJECT_NAME}/recordings
)

ament_package()
