cmake_minimum_required(VERSION 3.0.2)
project(uav_agent)

# Find catkin macros and libraries
# Added prometheus_msgs, geometry_msgs, and message_generation
find_package(catkin REQUIRED COMPONENTS
  rospy
  std_msgs
  #prometheus_msgs
  iscas_msgs
  geometry_msgs
  message_generation
)

# Service files to be built
#add_message_files(
#  FILES
#  DetectResult.msg
#)

# add_service_files(
#   FILES
#   LoadMission.srv
# )

# Generate services with dependencies
# generate_messages(
#   DEPENDENCIES
#   prometheus_msgs
#   iscas_msgs
#   geometry_msgs
# )

# catkin_package() settings
# Added CATKIN_DEPENDS for runtime dependencies
catkin_package(
  CATKIN_DEPENDS 
  rospy 
  std_msgs 
  #prometheus_msgs 
  iscas_msgs 
  geometry_msgs 
  message_runtime
)

# Other install rules
# install(PROGRAMS
#   AI_Agent/scripts/ai_agent/ros_uav_agent_node/uav_agent_ros_node.py
#   DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
# )
catkin_install_python(PROGRAMS
  scripts/ai_agent/ros_uav_agent_node/uav_agent_ros_node.py
  DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

install(DIRECTORY
  launch/
  DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
)

# install(DIRECTORY
#   missions/
#   DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
# )

install(DIRECTORY
  scripts/ai_agent/config/
  DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
)

# 8. 可选：添加测试（按需启用，新手可忽略）
# if(CATKIN_ENABLE_TESTING)
#   # 示例：用 rostest 测试节点（需编写 .test 文件）
#   find_package(rostest REQUIRED)
#   add_rostest(test/your_test.test)
# endif()