cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)

set(ROS_BUILD_TYPE Debug)

rosbuild_init()

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

#rosbuild_genmsg()

#rosbuild_add_executable(move_arm_monitor src/move_arm_setup.cpp src/move_arm_monitor.cpp)
#rosbuild_link_boost(move_arm_monitor thread)

rosbuild_add_executable(move_arm_simple_action src/move_arm_simple_action.cpp)
rosbuild_link_boost(move_arm_simple_action thread)

#automated regression test for move_arm
rosbuild_add_executable(move_arm_regression_test_joint_goal test/regression_test_joint_goal.cpp)
rosbuild_link_boost(move_arm_regression_test_joint_goal thread)
rosbuild_declare_test(move_arm_regression_test_joint_goal)
target_link_libraries(move_arm_regression_test_joint_goal gtest)

#automated regression test for move_arm
rosbuild_add_executable(move_arm_regression_test_pose_goal test/regression_test_pose_goal.cpp)
rosbuild_link_boost(move_arm_regression_test_pose_goal thread)
rosbuild_declare_test(move_arm_regression_test_pose_goal)
target_link_libraries(move_arm_regression_test_pose_goal gtest)
#rosbuild_add_rostest(test_move_arm.xml)

rosbuild_add_executable(move_arm_regression_test_pose_goal_no_ik test/regression_test_pose_goal_no_ik.cpp)
rosbuild_link_boost(move_arm_regression_test_pose_goal_no_ik thread)
rosbuild_declare_test(move_arm_regression_test_pose_goal_no_ik)
target_link_libraries(move_arm_regression_test_pose_goal_no_ik gtest)

#automated regression test for move_arm
rosbuild_add_executable(move_arm_regression_test_invalid_joint_goal test/regression_test_invalid_joint_goal.cpp)
rosbuild_link_boost(move_arm_regression_test_invalid_joint_goal thread)
rosbuild_declare_test(move_arm_regression_test_invalid_joint_goal)
target_link_libraries(move_arm_regression_test_invalid_joint_goal gtest)

#automated regression test for move_arm
rosbuild_add_executable(move_arm_regression_test_joint_goal_point_head test/regression_test_joint_goal_point_head.cpp)
rosbuild_link_boost(move_arm_regression_test_joint_goal_point_head thread)
rosbuild_declare_test(move_arm_regression_test_joint_goal_point_head)
target_link_libraries(move_arm_regression_test_joint_goal_point_head gtest)
#rosbuild_add_rostest(test_move_arm.xml)

#automated regression test for move_arm
rosbuild_add_executable(move_arm_regression_test_pose_goal_param test/regression_test_pose_goal_param.cpp)
rosbuild_link_boost(move_arm_regression_test_pose_goal_param thread)
rosbuild_declare_test(move_arm_regression_test_pose_goal_param)
target_link_libraries(move_arm_regression_test_pose_goal_param gtest)

rosbuild_add_executable(move_arm_regression_test_under_table_pose_goal test/regression_test_under_table_pose_goal.cpp)
rosbuild_link_boost(move_arm_regression_test_under_table_pose_goal thread)
rosbuild_declare_test(move_arm_regression_test_under_table_pose_goal)
target_link_libraries(move_arm_regression_test_under_table_pose_goal gtest)

rosbuild_add_executable(move_arm_regression_test_under_table_pose_goal_no_ik test/regression_test_under_table_pose_goal_no_ik.cpp)
rosbuild_link_boost(move_arm_regression_test_under_table_pose_goal_no_ik thread)
rosbuild_declare_test(move_arm_regression_test_under_table_pose_goal_no_ik)
target_link_libraries(move_arm_regression_test_under_table_pose_goal_no_ik gtest)

rosbuild_add_executable(move_arm_regression_test_simple_pose test/regression_test_simple_pose.cpp)
rosbuild_link_boost(move_arm_regression_test_simple_pose thread)
rosbuild_declare_test(move_arm_regression_test_simple_pose)
target_link_libraries(move_arm_regression_test_simple_pose gtest)

rosbuild_add_executable(move_arm_regression_test_joint_goal_both_arms test/regression_test_joint_goal_both_arms.cpp)
rosbuild_link_boost(move_arm_regression_test_joint_goal_both_arms thread)
rosbuild_declare_test(move_arm_regression_test_joint_goal_both_arms)
target_link_libraries(move_arm_regression_test_joint_goal_both_arms gtest)

rosbuild_add_executable(move_arm_regression_test_pose_goal_both_arms test/regression_test_pose_goal_both_arms.cpp)
rosbuild_link_boost(move_arm_regression_test_pose_goal_both_arms thread)
rosbuild_declare_test(move_arm_regression_test_pose_goal_both_arms)
target_link_libraries(move_arm_regression_test_pose_goal_both_arms gtest)

rosbuild_add_executable(move_arm_regression_test_pose_goal_floorobj_no_ik test/regression_test_pose_goal_floorobj_no_ik.cpp)
rosbuild_link_boost(move_arm_regression_test_pose_goal_floorobj_no_ik thread)
rosbuild_declare_test(move_arm_regression_test_pose_goal_floorobj_no_ik)
target_link_libraries(move_arm_regression_test_pose_goal_floorobj_no_ik gtest)

