1 cmake_minimum_required(VERSION 2.8.3)
3 EXECUTE_PROCESS( COMMAND uname -m COMMAND tr -d '\n' OUTPUT_VARIABLE ARCHITECTURE )
5 ## Find catkin macros and libraries
6 ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
7 ## is used, also find other catkin packages
8 find_package(catkin REQUIRED sensor_msgs cv_bridge roscpp rospy std_msgs image_transport dynamic_reconfigure message_generation rosruby tf)
11 ## System dependencies are found with CMake's conventions
12 # find_package(Boost REQUIRED COMPONENTS system)
15 ## Uncomment this if the package has a setup.py. This macro ensures
16 ## modules and global scripts declared therein get installed
17 ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
20 ################################################
21 ## Declare ROS messages, services and actions ##
22 ################################################
24 ## To declare and build messages, services or actions from within this
25 ## package, follow these steps:
26 ## * Let MSG_DEP_SET be the set of packages whose message types you use in
27 ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
28 ## * In the file package.xml:
29 ## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
30 ## * If MSG_DEP_SET isn't empty the following dependencies might have been
31 ## pulled in transitively but can be declared for certainty nonetheless:
32 ## * add a build_depend tag for "message_generation"
33 ## * add a run_depend tag for "message_runtime"
34 ## * In this file (CMakeLists.txt):
35 ## * add "message_generation" and every package in MSG_DEP_SET to
36 ## find_package(catkin REQUIRED COMPONENTS ...)
37 ## * add "message_runtime" and every package in MSG_DEP_SET to
38 ## catkin_package(CATKIN_DEPENDS ...)
39 ## * uncomment the add_*_files sections below as needed
40 ## and list every .msg/.srv/.action file to be processed
41 ## * uncomment the generate_messages entry below
42 ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
44 ## Generate messages in the 'msg' folder
52 ## Generate services in the 'srv' folder
58 ## Generate actions in the 'action' folder
65 ## Generate added messages and services with any dependencies listed here
68 std_msgs # Or other packages containing msgs
72 rosruby_generate_messages(fiducial_msgs)
74 generate_dynamic_reconfigure_options(
75 config/PathFollowing.cfg
76 config/WildThumper.cfg
79 ###################################
80 ## catkin specific configuration ##
81 ###################################
82 ## The catkin_package macro generates cmake config files for your package
83 ## Declare things to be passed to dependent projects
84 ## INCLUDE_DIRS: uncomment this if you package contains header files
85 ## LIBRARIES: libraries you create in this project that dependent projects also need
86 ## CATKIN_DEPENDS: catkin_packages dependent projects also need
87 ## DEPENDS: system dependencies of this project that dependent projects also need
89 # INCLUDE_DIRS include
90 # LIBRARIES wild_thumper
91 # CATKIN_DEPENDS sensor_msgs
93 CATKIN_DEPENDS message_runtime
100 ## Specify additional locations of header files
101 ## Your package locations should be listed before other locations
103 ${catkin_INCLUDE_DIRS}
106 ## Declare a cpp library
107 # add_library(wild_thumper
108 # src/${PROJECT_NAME}/wild_thumper.cpp
111 ## Declare a cpp executable
112 add_executable(path_following src/path_following.cpp)
114 ## Add cmake target dependencies of the executable/library
115 ## as an example, message headers may need to be generated before nodes
116 add_dependencies(path_following ${PROJECT_NAME}_gencfg)
118 ## Specify libraries to link a library or executable target against
119 target_link_libraries(path_following
123 if(${ARCHITECTURE} EQUAL "armv7l")
124 add_executable(wt_node src/wt_node.cpp)
125 target_link_libraries(wt_node
135 # all install targets should use catkin DESTINATION variables
136 # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html
138 ## Mark executable scripts (Python etc.) for installation
139 ## in contrast to setup.py, you can choose the destination
141 # scripts/my_python_script
142 # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
145 ## Mark executables and/or libraries for installation
146 # install(TARGETS wild_thumper wild_thumper_node
147 # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
148 # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
149 # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
152 ## Mark cpp header files for installation
153 # install(DIRECTORY include/${PROJECT_NAME}/
154 # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
155 # FILES_MATCHING PATTERN "*.h"
156 # PATTERN ".svn" EXCLUDE
159 ## Mark other files for installation (e.g. launch and bag files, etc.)
163 # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
170 ## Add gtest based cpp test target and link libraries
171 # catkin_add_gtest(${PROJECT_NAME}-test test/test_wild_thumper.cpp)
172 # if(TARGET ${PROJECT_NAME}-test)
173 # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME})
176 ## Add folders to be run by python nosetests
177 # catkin_add_nosetests(test)