cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
# CMake 2.4.6 doesn't include FindPkgConfig, so we provide our own copy
include($ENV{ROS_ROOT}/core/rosbuild/FindPkgConfig.cmake)

# Set the build type.  Options are:
#  Coverage       : w/ debug symbols, w/o optimization, w/ code-coverage
#  Debug          : w/ debug symbols, w/o optimization
#  Release        : w/o debug symbols, w/ optimization
#  RelWithDebInfo : w/ debug symbols, w/ optimization
#  MinSizeRel     : w/o debug symbols, w/ optimization, stripped binaries
#set(ROS_BUILD_TYPE RelWithDebInfo)

#generate the actions
rosbuild_find_ros_package(actionlib_msgs)
include(${actionlib_msgs_PACKAGE_PATH}/cmake/actionbuild.cmake)
genaction()

rosbuild_init()

#set the default path for built executables to the "bin" directory
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
#set the default path for built libraries to the "lib" directory
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

#uncomment if you have defined messages
rosbuild_genmsg()
#uncomment if you have defined services
#rosbuild_gensrv()

#common commands for building c++ executables and libraries
#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
#target_link_libraries(${PROJECT_NAME} another_library)
#rosbuild_add_boost_directories()
#rosbuild_link_boost(${PROJECT_NAME} thread)
#rosbuild_add_executable(example examples/example.cpp)
#target_link_libraries(example ${PROJECT_NAME})

include_directories( ui )

rosbuild_add_library(gripper_click_ui 
                      src/gripper_click_rviz_ui.cpp
                      src/gripper_click_line.cpp
                      src/gripper_click_dot.cpp
                      src/gripper_click_place_cartesian.cpp
                      src/gripper_click_pickup_cartesian.cpp
                      src/gripper_click_3d_gripper.cpp
                      src/gripper_click_grasp_adjust.cpp
                      ui/gripper_click_ui.cpp
                      src/gripper_click_display.cpp

#                      include/pr2_gripper_click/gripper_click_3d_gripper.h
#                      include/pr2_gripper_click/gripper_click_grasp_adjust.h
#                      include/pr2_gripper_click/gripper_click_display.h
#
#                      manifest.xml
)

rosbuild_add_library(gripper_click_rviz_plugin src/init.cpp)

find_package(wxWidgets REQUIRED)
include(${wxWidgets_USE_FILE})
include_directories( ${wxWidgets_INCLUDE_DIRS} )

pkg_check_modules(OGRE OGRE)
include_directories( ${OGRE_INCLUDE_DIRS} )
link_directories( ${OGRE_LIBRARY_DIRS} )
                                    
target_link_libraries(gripper_click_rviz_plugin ${wxWidgets_LIBRARIES} ${OGRE_LIBRARIES} gripper_click_ui)

rosbuild_add_executable(ping_gripper_click src/ping_gripper_click.cpp)
rosbuild_add_executable(ping_select_region src/ping_select_region.cpp)

rosbuild_add_executable(grasp_planning_gripper_click_node src/grasp_planning_gripper_click_node.cpp)

rosbuild_add_executable(test_action src/test_action.cpp)

rosbuild_add_executable(test_action_client src/test_action_client.cpp)
