|
| 1 | +cmake_minimum_required(VERSION 2.8.3) |
| 2 | +project(grasp_learning) |
| 3 | + |
| 4 | + |
| 5 | +# Check for c++11 support |
| 6 | +INCLUDE(CheckCXXCompilerFlag)#modulo del compilatore |
| 7 | +CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)#se è supportato |
| 8 | +CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) |
| 9 | +IF(COMPILER_SUPPORTS_CXX11) |
| 10 | + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")#aggiunge la macro alla compilazione |
| 11 | +ELSEIF(COMPILER_SUPPORTS_CXX0X) |
| 12 | + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") |
| 13 | +ELSE() |
| 14 | + MESSAGE(ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")#l'ERROR fa Piantare il cmake |
| 15 | +ENDIF() |
| 16 | + |
| 17 | + |
| 18 | + |
| 19 | +# Set optimized building: |
| 20 | +IF(CMAKE_COMPILER_IS_GNUCXX AND NOT CMAKE_BUILD_TYPE MATCHES "Debug") |
| 21 | +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3") |
| 22 | +ENDIF(CMAKE_COMPILER_IS_GNUCXX AND NOT CMAKE_BUILD_TYPE MATCHES "Debug") |
| 23 | + |
| 24 | + |
| 25 | +find_package(orocos_kdl REQUIRED) |
| 26 | + |
| 27 | + |
| 28 | + |
| 29 | +## Find catkin macros and libraries |
| 30 | +## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) |
| 31 | +## is used, also find other catkin packages |
| 32 | +find_package(catkin REQUIRED COMPONENTS |
| 33 | + roscpp |
| 34 | + rospy |
| 35 | + roslib |
| 36 | + sensor_msgs |
| 37 | + std_msgs |
| 38 | + urdf |
| 39 | + kdl_conversions |
| 40 | + kdl_parser |
| 41 | + visualization_msgs |
| 42 | + rviz_visual_tools |
| 43 | + rviz |
| 44 | + eigen_conversions |
| 45 | + message_generation |
| 46 | +) |
| 47 | + |
| 48 | +## System dependencies are found with CMake's conventions |
| 49 | +# find_package(Boost REQUIRED COMPONENTS system) |
| 50 | + |
| 51 | + |
| 52 | +## Uncomment this if the package has a setup.py. This macro ensures |
| 53 | +## modules and global scripts declared therein get installed |
| 54 | +## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html |
| 55 | +# catkin_python_setup() |
| 56 | + |
| 57 | +################################################ |
| 58 | +## Declare ROS messages, services and actions ## |
| 59 | +################################################ |
| 60 | + |
| 61 | +## To declare and build messages, services or actions from within this |
| 62 | +## package, follow these steps: |
| 63 | +## * Let MSG_DEP_SET be the set of packages whose message types you use in |
| 64 | +## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). |
| 65 | +## * In the file package.xml: |
| 66 | +## * add a build_depend tag for "message_generation" |
| 67 | +## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET |
| 68 | +## * If MSG_DEP_SET isn't empty the following dependency has been pulled in |
| 69 | +## but can be declared for certainty nonetheless: |
| 70 | +## * add a run_depend tag for "message_runtime" |
| 71 | +## * In this file (CMakeLists.txt): |
| 72 | +## * add "message_generation" and every package in MSG_DEP_SET to |
| 73 | +## find_package(catkin REQUIRED COMPONENTS ...) |
| 74 | +## * add "message_runtime" and every package in MSG_DEP_SET to |
| 75 | +## catkin_package(CATKIN_DEPENDS ...) |
| 76 | +## * uncomment the add_*_files sections below as needed |
| 77 | +## and list every .msg/.srv/.action file to be processed |
| 78 | +## * uncomment the generate_messages entry below |
| 79 | +## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) |
| 80 | + |
| 81 | +## Generate messages in the 'msg' folder |
| 82 | +add_message_files( |
| 83 | + FILES |
| 84 | + box_dimension.msg |
| 85 | +) |
| 86 | + |
| 87 | +## Generate services in the 'srv' folder |
| 88 | +add_service_files( |
| 89 | + FILES |
| 90 | + |
| 91 | +) |
| 92 | + |
| 93 | +## Generate actions in the 'action' folder |
| 94 | +# add_action_files( |
| 95 | +# FILES |
| 96 | +# Action1.action |
| 97 | +# Action2.action |
| 98 | +# ) |
| 99 | + |
| 100 | +## Generate added messages and services with any dependencies listed here |
| 101 | +generate_messages( |
| 102 | + DEPENDENCIES |
| 103 | + std_msgs |
| 104 | +) |
| 105 | + |
| 106 | +################################################ |
| 107 | +## Declare ROS dynamic reconfigure parameters ## |
| 108 | +################################################ |
| 109 | + |
| 110 | +## To declare and build dynamic reconfigure parameters within this |
| 111 | +## package, follow these steps: |
| 112 | +## * In the file package.xml: |
| 113 | +## * add a build_depend and a run_depend tag for "dynamic_reconfigure" |
| 114 | +## * In this file (CMakeLists.txt): |
| 115 | +## * add "dynamic_reconfigure" to |
| 116 | +## find_package(catkin REQUIRED COMPONENTS ...) |
| 117 | +## * uncomment the "generate_dynamic_reconfigure_options" section below |
| 118 | +## and list every .cfg file to be processed |
| 119 | + |
| 120 | +## Generate dynamic reconfigure parameters in the 'cfg' folder |
| 121 | +# generate_dynamic_reconfigure_options( |
| 122 | +# cfg/DynReconf1.cfg |
| 123 | +# cfg/DynReconf2.cfg |
| 124 | +# ) |
| 125 | + |
| 126 | +################################### |
| 127 | +## catkin specific configuration ## |
| 128 | +################################### |
| 129 | +## The catkin_package macro generates cmake config files for your package |
| 130 | +## Declare things to be passed to dependent projects |
| 131 | +## INCLUDE_DIRS: uncomment this if you package contains header files |
| 132 | +## LIBRARIES: libraries you create in this project that dependent projects also need |
| 133 | +## CATKIN_DEPENDS: catkin_packages dependent projects also need |
| 134 | +## DEPENDS: system dependencies of this project that dependent projects also need |
| 135 | +catkin_package( |
| 136 | +# INCLUDE_DIRS include |
| 137 | +# LIBRARIES stima |
| 138 | +CATKIN_DEPENDS roscpp rospy sensor_msgs std_msgs message_runtime |
| 139 | +# DEPENDS system_lib |
| 140 | +DEPENDS orocos_kdl |
| 141 | + |
| 142 | + |
| 143 | +) |
| 144 | + |
| 145 | +########### |
| 146 | +## Build ## |
| 147 | +########### |
| 148 | + |
| 149 | +## Specify additional locations of header files |
| 150 | +## Your package locations should be listed before other locations |
| 151 | +# include_directories(include) |
| 152 | +include_directories( |
| 153 | + ${catkin_INCLUDE_DIRS} |
| 154 | + ${orocos_kdl_INCLUDE_DIRS} |
| 155 | + include |
| 156 | +) |
| 157 | + |
| 158 | + |
| 159 | + |
| 160 | + |
| 161 | +link_directories(${orocos_kdl_LIBRARY_DIRS}) |
| 162 | + |
| 163 | + |
| 164 | + |
| 165 | + |
| 166 | +## Declare a C++ library |
| 167 | +# add_library(stima |
| 168 | +# src/${PROJECT_NAME}/stima.cpp |
| 169 | +# ) |
| 170 | + |
| 171 | +## Add cmake target dependencies of the library |
| 172 | +## as an example, code may need to be generated before libraries |
| 173 | +## either from message generation or dynamic reconfigure |
| 174 | +# add_dependencies(stima ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) |
| 175 | + |
| 176 | +## Declare a C++ executable |
| 177 | +add_executable(random_box_discrete_ src/Random_box_.cpp) |
| 178 | +target_link_libraries (random_box_discrete_ ${catkin_LIBRARIES} ${Eigen_LIBRARIES}) |
| 179 | + |
| 180 | +add_executable(jacobian_urdf_model_ src/jacobian_urdf_model_.cpp) |
| 181 | +target_link_libraries (jacobian_urdf_model_ ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 182 | + |
| 183 | +add_executable(grasp_quality_ src/grasp_quality_.cpp) |
| 184 | +target_link_libraries (grasp_quality_ ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 185 | + |
| 186 | +add_executable(grasp_quality_2 src/grasp_quality_2.cpp) |
| 187 | +target_link_libraries (grasp_quality_2 ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 188 | + |
| 189 | +add_executable(grasp_quality_measure_PCR_PGR src/grasp_quality_measure_PCR_PGR.cpp) |
| 190 | +target_link_libraries (grasp_quality_measure_PCR_PGR ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 191 | + |
| 192 | +add_executable(index_quality_PCR_PGR src/index_quality_PCR_PGR.cpp) |
| 193 | +target_link_libraries (index_quality_PCR_PGR ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 194 | + |
| 195 | +add_executable(PGR_3 src/PGR_3.cpp) |
| 196 | +target_link_libraries(PGR_3 ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 197 | + |
| 198 | +add_executable(PGR_4 src/PGR_4.cpp) |
| 199 | +target_link_libraries(PGR_4 ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 200 | + |
| 201 | +add_executable(PGR_5 src/PGR_5.cpp) |
| 202 | +target_link_libraries(PGR_5 ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 203 | + |
| 204 | + |
| 205 | +add_executable(svm src/svm.cpp) |
| 206 | +target_link_libraries(svm ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 207 | + |
| 208 | +add_executable(show_Rviz src/show_Rviz.cpp) |
| 209 | +target_link_libraries(show_Rviz ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 210 | + |
| 211 | + |
| 212 | + |
| 213 | + |
| 214 | +add_executable(collision_avoidance src/collision_avoidance.cpp) |
| 215 | +target_link_libraries(collision_avoidance ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 216 | + |
| 217 | + |
| 218 | +add_executable(test_show_hand_point src/test_show_hand_point.cpp) |
| 219 | +target_link_libraries(test_show_hand_point ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 220 | + |
| 221 | + |
| 222 | + |
| 223 | +add_executable(test_show_on_Rviz_box src/test_show_on_Rviz_box.cpp) |
| 224 | +target_link_libraries(test_show_on_Rviz_box ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 225 | + |
| 226 | + |
| 227 | +add_executable(populate_grasp_dataset src/populate_grasp_dataset.cpp) |
| 228 | +target_link_libraries(populate_grasp_dataset ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ) |
| 229 | + |
| 230 | + |
| 231 | +# add_executable(comunication_vision src/comunication_vision.cpp) |
| 232 | +# target_link_libraries(comunication_vision ${catkin_LIBRARIES}) |
| 233 | + |
| 234 | +add_executable(comunication_robot src/comunication_robot.cpp) |
| 235 | +target_link_libraries(comunication_robot ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 236 | + |
| 237 | +add_executable(discrete_angle src/discrete_angle.cpp) |
| 238 | +target_link_libraries(discrete_angle ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 239 | + |
| 240 | + |
| 241 | +add_executable(test_file_2_fingers src/test_file_2_fingers.cpp) |
| 242 | +target_link_libraries(test_file_2_fingers ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 243 | + |
| 244 | +add_executable(test_file_4_fingers src/test_file_4_fingers.cpp) |
| 245 | +target_link_libraries(test_file_4_fingers ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 246 | + |
| 247 | +add_executable(test_file_6_fingers src/test_file_6_fingers.cpp) |
| 248 | +target_link_libraries(test_file_6_fingers ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 249 | + |
| 250 | + |
| 251 | + |
| 252 | +add_executable(media_varianza src/media_varianza.cpp) |
| 253 | +target_link_libraries(media_varianza ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 254 | + |
| 255 | + |
| 256 | +add_executable(filter_database_nan src/filter_database_nan.cpp) |
| 257 | +target_link_libraries(filter_database_nan ${catkin_LIBRARIES} ${Eigen_LIBRARIES} ${orocos_kdl_LIBRARIES}) |
| 258 | + |
| 259 | + |
| 260 | +add_executable(box_poses src/box_poses.cpp) |
| 261 | +target_link_libraries(box_poses ${catkin_LIBRARIES} ${Eigen_LIBRARIES}) |
| 262 | + |
| 263 | + |
| 264 | +add_executable(grasp_quality_ROA src/grasp_quality_ROA.cpp) |
| 265 | +target_link_libraries(grasp_quality_ROA ${catkin_LIBRARIES} ${Eigen_LIBRARIES}) |
| 266 | + |
| 267 | + |
| 268 | + |
| 269 | + |
| 270 | +## Add cmake target dependencies of the executable |
| 271 | +## same as for the library above |
| 272 | +# add_dependencies(stima_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) |
| 273 | + |
| 274 | +## Specify libraries to link a library or executable target against |
| 275 | +# target_link_libraries(stima_node |
| 276 | +# ${catkin_LIBRARIES} |
| 277 | +# ) |
| 278 | + |
| 279 | +############# |
| 280 | +## Install ## |
| 281 | +############# |
| 282 | + |
| 283 | +# all install targets should use catkin DESTINATION variables |
| 284 | +# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html |
| 285 | + |
| 286 | +## Mark executable scripts (Python etc.) for installation |
| 287 | +## in contrast to setup.py, you can choose the destination |
| 288 | +# install(PROGRAMS |
| 289 | +# scripts/my_python_script |
| 290 | +# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} |
| 291 | +# ) |
| 292 | + |
| 293 | +## Mark executables and/or libraries for installation |
| 294 | +# install(TARGETS stima stima_node |
| 295 | +# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} |
| 296 | +# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} |
| 297 | +# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} |
| 298 | +# ) |
| 299 | + |
| 300 | +## Mark cpp header files for installation |
| 301 | +# install(DIRECTORY include/${PROJECT_NAME}/ |
| 302 | +# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} |
| 303 | +# FILES_MATCHING PATTERN "*.h" |
| 304 | +# PATTERN ".svn" EXCLUDE |
| 305 | +# ) |
| 306 | + |
| 307 | +## Mark other files for installation (e.g. launch and bag files, etc.) |
| 308 | +# install(FILES |
| 309 | +# # myfile1 |
| 310 | +# # myfile2 |
| 311 | +# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} |
| 312 | +# ) |
| 313 | + |
| 314 | +############# |
| 315 | +## Testing ## |
| 316 | +############# |
| 317 | + |
| 318 | +## Add gtest based cpp test target and link libraries |
| 319 | +# catkin_add_gtest(${PROJECT_NAME}-test test/test_stima.cpp) |
| 320 | +# if(TARGET ${PROJECT_NAME}-test) |
| 321 | +# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) |
| 322 | +# endif() |
| 323 | + |
| 324 | +## Add folders to be run by python nosetests |
| 325 | +# catkin_add_nosetests(test) |
0 commit comments