-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
84 lines (70 loc) · 2.24 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
cmake_minimum_required(VERSION 2.8.3)
project(vicon_bridge)
find_package(catkin REQUIRED COMPONENTS
message_generation
dynamic_reconfigure
geometry_msgs
roscpp
tf
diagnostic_updater
)
find_package(Boost REQUIRED COMPONENTS thread)
# Generate messages and services
add_message_files(FILES
Marker.msg
Markers.msg
TfDistortInfo.msg
)
add_service_files(FILES
viconCalibrateSegment.srv
viconGrabPose.srv
)
generate_messages(DEPENDENCIES geometry_msgs)
# Generate dynamic parameters
generate_dynamic_reconfigure_options(
cfg/tf_distort.cfg
)
catkin_package(CATKIN_DEPENDS
dynamic_reconfigure
geometry_msgs
message_runtime
roscpp
)
# check for platform and use the right Vicon SDK
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
set(VICON_SDK vicon_sdk/Vicon_SDK_1.3_Linux/64-bit/)
set(VICON_SDK_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/${VICON_SDK})
set(VICON_SDK_LINK_DIR ${PROJECT_SOURCE_DIR}/${VICON_SDK})
elseif(CMAKE_SIZEOF_VOID_P MATCHES "4")
set(VICON_SDK vicon_sdk/Vicon_SDK_1.3_Linux/32-bit/)
set(VICON_SDK_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/${VICON_SDK})
set(VICON_SDK_LINK_DIR ${PROJECT_SOURCE_DIR}/${VICON_SDK})
else(CMAKE_SIZEOF_VOID_P MATCHES "8")
message(FATAL_ERROR "unable to detect platform")
endif (CMAKE_SIZEOF_VOID_P MATCHES "8")
find_library(VICON_SDK_LIBRARY ViconDataStreamSDK_CPP PATHS ${VICON_SDK_LINK_DIR})
include_directories(src ${catkin_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${VICON_SDK_INCLUDE_DIR})
add_library(msvc_bridge src/msvc_bridge.cpp)
add_executable(vicon_bridge src/vicon_bridge.cpp)
target_link_libraries(vicon_bridge
msvc_bridge
${VICON_SDK_LIBRARY}
${catkin_LIBRARIES}
)
add_dependencies(vicon_bridge ${PROJECT_NAME}_gencpp)
add_executable(calibrate src/calibrate_segment.cpp)
target_link_libraries(calibrate
${catkin_LIBRARIES}
)
add_dependencies(calibrate ${PROJECT_NAME}_gencpp)
add_executable(tf_distort src/tf_distort.cpp)
target_link_libraries(tf_distort
${catkin_LIBRARIES}
${Boost_LIBRARIES}
)
add_dependencies(tf_distort ${PROJECT_NAME}_gencpp ${PROJECT_NAME}_gencfg)
add_executable(testclient src/ViconDataStreamSDK_CPPTest.cpp)
target_link_libraries(testclient
${VICON_SDK_LIBRARY}
${Boost_LIBRARIES}
)