forked from roboticslibrary/rl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
152 lines (135 loc) · 3.62 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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
find_package(Boost REQUIRED)
find_package(OpenGL REQUIRED)
find_package(SoQt)
if(RL_USE_QT5 AND SoQt5_FOUND)
find_package(Qt5 COMPONENTS Core Gui OpenGL PrintSupport Widgets QUIET)
endif()
if(Qt5_FOUND)
set(QT_LIBRARIES ${Qt5Core_LIBRARIES} ${Qt5Gui_LIBRARIES} ${Qt5OpenGL_LIBRARIES} ${Qt5PrintSupport_LIBRARIES} ${Qt5Widgets_LIBRARIES})
set(QT_FOUND Qt5_FOUND)
else()
set(QT_USE_IMPORTED_TARGETS ON)
find_package(Qt4 COMPONENTS QtCore QtGui QtOpenGL)
set(QT_USE_QTMAIN ON)
include(${QT_USE_FILE})
endif()
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Bullet)
find_package(ccd)
find_package(FCL)
find_package(ODE)
find_package(PQP)
find_package(SOLID3)
if(QT_FOUND AND SoQt_FOUND AND (Bullet_FOUND OR (CCD_FOUND AND FCL_FOUND) OR ODE_FOUND OR PQP_FOUND OR SOLID3_FOUND))
set(
HDRS
ConfigurationDelegate.h
ConfigurationModel.h
ConfigurationSpaceModel.h
ConfigurationSpaceScene.h
ConfigurationSpaceThread.h
GraphicsView.h
MainWindow.h
PlannerModel.h
SoGradientBackground.h
Thread.h
Viewer.h
)
set(
SRCS
ConfigurationDelegate.cpp
ConfigurationModel.cpp
ConfigurationSpaceModel.cpp
ConfigurationSpaceScene.cpp
ConfigurationSpaceThread.cpp
GraphicsView.cpp
MainWindow.cpp
PlannerModel.cpp
rlPlanDemo.cpp
SoGradientBackground.cpp
Thread.cpp
Viewer.cpp
)
add_executable(
rlPlanDemo
WIN32
${HDRS}
${SRCS}
${rl_BINARY_DIR}/robotics-library.rc
)
target_compile_definitions(
rlPlanDemo
PUBLIC
${SoQt_DEFINITIONS}
)
target_include_directories(
rlPlanDemo
PUBLIC
${Boost_INCLUDE_DIRS}
${OPENGL_INCLUDE_DIR}
${SoQt_INCLUDE_DIRS}
)
target_link_libraries(
rlPlanDemo
plan
kin
sg
${OPENGL_LIBRARIES}
${QT_LIBRARIES}
${SoQt_LIBRARIES}
)
set_target_properties(
rlPlanDemo
PROPERTIES
VERSION ${VERSION}
)
if(MSVC)
set_target_properties(
rlPlanDemo
PROPERTIES
DEBUG_POSTFIX d
)
endif()
install(
TARGETS rlPlanDemo
COMPONENT demos
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
if(MSVC AND BUILD_SHARED_LIBS AND NOT CMAKE_VERSION VERSION_LESS 3.1)
install(FILES $<TARGET_PDB_FILE:rlPlanDemo> DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS Debug RelWithDebInfo COMPONENT demos)
endif()
if(UNIX)
configure_file(rlPlanDemo.desktop.in rlPlanDemo.desktop @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/rlPlanDemo.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications COMPONENT demos)
endif()
set(
CPACK_NSIS_CREATE_ICONS_EXTRA
${CPACK_NSIS_CREATE_ICONS_EXTRA}
"CreateShortCut \\\\
\\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\rlPlanDemo.lnk\\\" \\\\
\\\"$INSTDIR\\\\${CMAKE_INSTALL_BINDIR}\\\\rlPlanDemo.exe\\\" \\\\
\\\"\\\\
\\\$\\\\\\\"$INSTDIR\\\\${CMAKE_INSTALL_DATADIR}\\\\rl-${VERSION}\\\\examples\\\\rlplan\\\\unimation-puma560_boxes_rrtConCon.mdl.xml\\\$\\\\\\\"\\\\
\\\" \\\\
\\\"\\\" \\\"\\\" \\\"\\\" \\\"\\\" \\\\
\\\"Path planning demo with Unimation Puma 560 and RRT algorithm\\\""
PARENT_SCOPE
)
set(CPACK_NSIS_DELETE_ICONS_EXTRA ${CPACK_NSIS_DELETE_ICONS_EXTRA} "Delete \\\"$SMPROGRAMS\\\\$START_MENU\\\\rlPlanDemo.lnk\\\"" PARENT_SCOPE)
set(
WIX_SHORTCUTS
${WIX_SHORTCUTS}
"<Shortcut
Arguments=\""[INSTALL_ROOT]${CMAKE_INSTALL_DATADIR}\\rl-${VERSION}\\examples\\rlplan\\unimation-puma560_boxes_rrtConCon.mdl.xml"\"
Description=\"Path planning demo with Unimation Puma 560 and RRT algorithm\"
Id=\"CM_SP_bin.rlPlanDemo.exe\"
Name=\"rlPlanDemo\"
Target=\"[#CM_FP_bin.rlPlanDemo.exe]\"
WorkingDirectory=\"CM_DP_bin\"
/>"
PARENT_SCOPE
)
endif()