Makefile 15.3 KB
Newer Older
Florent Lamiraux's avatar
Florent Lamiraux committed
1
2
3
4
5
6
#
# Copyright (c) 2014 CNRS-LAAS
# Author: Florent Lamiraux
#

FCL_REPO=https://github.com/flexible-collision-library
Florent Lamiraux's avatar
Florent Lamiraux committed
7
8
LAAS_REPO=https://github.com/laas
HPP_REPO=https://github.com/humanoid-path-planner
9
SOT_REPO=https://github.com/stack-of-tasks
10
GEPETTO_REPO=https://github.com/Gepetto
11
TRAC_REPO=ssh://trac.laas.fr/git/jrl/robots/ros-hrp2
12
FLORENT_REPO=https://github.com/florent-lamiraux
Florent Lamiraux's avatar
Florent Lamiraux committed
13

14
15
16
17
SRC_DIR=${DEVEL_HPP_DIR}/src
ifndef INSTALL_HPP_DIR
INSTALL_HPP_DIR=${DEVEL_HPP_DIR}/install
endif
18

Florent Lamiraux's avatar
Florent Lamiraux committed
19
20
21
# Whether to compute humanoid specific part
HUMANOID=TRUE

22
BUILD_TYPE=Release
23
DISABLE_TESTS=OFF
24
25
26
27
ifeq (${BUILD_TYPE},Debug)
  BUILD_FOLDER=build
else
  BUILD_FOLDER=build-rel
28
  DISABLE_TESTS=ON
29
endif
Florent Lamiraux's avatar
Florent Lamiraux committed
30

Joseph Mirabel's avatar
Joseph Mirabel committed
31
OSG_PACKAGE=osg-dae
32
#OSG_PACKAGE=OpenSceneGraph-3.4.0
33

Florent Lamiraux's avatar
Florent Lamiraux committed
34
35
36
37
WGET=wget --quiet
UNZIP=unzip -qq
TAR=tar
GIT_QUIET=--quiet
38
39
# Qt version should be either 4 or 5
QT_VERSION=4
40
INSTALL_DOCUMENTATION=ON
Florent Lamiraux's avatar
Florent Lamiraux committed
41

42
43
44
##################################
# {{{ Dependencies

45
pinocchio_branch=v2.1.0
46
47
pinocchio_repository=${SOT_REPO}
pinocchio_extra_flags= -DBUILD_PYTHON_INTERFACE=OFF -DBUILD_UNIT_TESTS=OFF
Florent Lamiraux's avatar
Florent Lamiraux committed
48

49
hpp-template-corba_branch=v1.1.5
50
hpp-template-corba_repository=${HPP_REPO}
51

52
53
54
# }}}
##################################
# {{{ Packages supporting HPP_VERSION
55

56
# Either a version tag (e.g. v4.3.0), master or devel
57
HPP_VERSION=devel
58
59
60
HPP_EXTRA_FLAGS=-DDISABLE_TESTS=${DISABLE_TESTS}

hpp-util_branch=${HPP_VERSION}
Florent Lamiraux's avatar
Florent Lamiraux committed
61
62
hpp-util_repository=${HPP_REPO}

63
64
65
66
67
68
hpp-fcl_branch=${HPP_VERSION}
hpp-fcl_repository=${HPP_REPO}
hpp-fcl_extra_flags= -DCMAKE_BUILD_TYPE=Release

hpp-statistics_branch=${HPP_VERSION}
hpp-statistics_repository=${HPP_REPO}
69

70
hpp-pinocchio_branch=${HPP_VERSION}
71
hpp-pinocchio_repository=${HPP_REPO}
72
hpp-pinocchio_extra_flags=${HPP_EXTRA_FLAGS}
73

74
hpp-constraints_branch=${HPP_VERSION}
75
hpp-constraints_repository=${FLORENT_REPO}
76
hpp-constraints_extra_flags=${HPP_EXTRA_FLAGS}
77

78
hpp-core_branch=${HPP_VERSION}
79
hpp-core_repository=${HPP_REPO}
80
hpp-core_extra_flags=${HPP_EXTRA_FLAGS}
Florent Lamiraux's avatar
Florent Lamiraux committed
81

82
hpp-corbaserver_branch=${HPP_VERSION}
83
hpp-corbaserver_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
84

85
hpp-walkgen_branch=${HPP_VERSION}
Joseph Mirabel's avatar
Joseph Mirabel committed
86
87
hpp-walkgen_repository=${HPP_REPO}

88
hpp-wholebody-step_branch=${HPP_VERSION}
Florent Lamiraux's avatar
Florent Lamiraux committed
89
90
hpp-wholebody-step_repository=${HPP_REPO}

Joseph Mirabel's avatar
Joseph Mirabel committed
91
hpp-doc_branch=${HPP_VERSION}
92
hpp-doc_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
93

94
hpp-manipulation_branch=${HPP_VERSION}
95
hpp-manipulation_repository=${HPP_REPO}
96

97
hpp-manipulation-urdf_branch=${HPP_VERSION}
98
hpp-manipulation-urdf_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
99

100
hpp-manipulation-corba_branch=${HPP_VERSION}
101
hpp-manipulation-corba_repository=${HPP_REPO}
102

103
104
105
106
107
ifeq (${HUMANOID}, TRUE)
  hpp-manipulation_extra_flags=-DHPP_MANIPULATION_HAS_WHOLEBODY_STEP=TRUE
else
  hpp-manipulation_extra_flags=-DHPP_MANIPULATION_HAS_WHOLEBODY_STEP=FALSE
endif
108

109
hpp_tutorial_branch=${HPP_VERSION}
110
hpp_tutorial_repository=${HPP_REPO}
111

112
113
hpp-gepetto-viewer_branch=${HPP_VERSION}
hpp-gepetto-viewer_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
114

115
116
hpp-plot_branch=${HPP_VERSION}
hpp-plot_repository=${HPP_REPO}
117

118
119
hpp-gui_branch=${HPP_VERSION}
hpp-gui_repository=${HPP_REPO}
120

121
122
123
# }}}
##################################
# {{{ Robot specific package + test packages
124

125
hrp2-14-description_branch=devel
126
hrp2-14-description_repository=${TRAC_REPO}
127

128
hpp-hrp2_branch=devel
129
hpp-hrp2_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
130

131
132
robot_capsule_urdf_branch=groovy
robot_capsule_urdf_repository=${LAAS_REPO}
133

134
135
robot_model_py_branch=groovy
robot_model_py_repository=${LAAS_REPO}
136

137
iai_maps_branch=devel
138
139
140
141
iai_maps_repository=${HPP_REPO}

hpp_benchmark_branch=master
hpp_benchmark_repository=${HPP_REPO}
142

143
hpp-environments_branch=devel
144
145
hpp-environments_repository=${HPP_REPO}

146
universal_robot_branch=kinetic
Florent Lamiraux's avatar
Florent Lamiraux committed
147
148
universal_robot_repository=${HPP_REPO}

149
hpp_universal_robot_branch=devel
150
hpp_universal_robot_repository=${HPP_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
151

152
153
154
hpp-baxter_branch=master
hpp-baxter_repository=${HPP_REPO}

Florent Lamiraux's avatar
Florent Lamiraux committed
155
156
157
hpp_romeo_branch=master
hpp_romeo_repository=${HPP_REPO}

158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195

# }}}
##################################
# {{{ Packages for rbprm

hpp-affordance_branch=${HPP_VERSION}
hpp-affordance_repository=${HPP_REPO}
hpp-affordance_extra_flags=${HPP_EXTRA_FLAGS}

hpp-affordance-corba_branch=${HPP_VERSION}
hpp-affordance-corba_repository=${HPP_REPO}
hpp-affordance-corba_extra_flags=${HPP_EXTRA_FLAGS}

hpp-rbprm_branch=devel
hpp-rbprm_repository=${HPP_REPO}
hpp-rbprm_extra_flags=${HPP_EXTRA_FLAGS}

hpp-rbprm-robot-data_branch=master
hpp-rbprm-robot-data_repository=${HPP_REPO}

hpp-rbprm-corba_branch=devel
hpp-rbprm-corba_repository=${HPP_REPO}
hpp-rbprm-corba_extra_flags=${HPP_EXTRA_FLAGS}

hpp-centroidal-dynamics_branch=master
hpp-centroidal-dynamics_repository=${HPP_REPO}

hpp-bezier-com-traj_branch=master
hpp-bezier-com-traj_repository=${HPP_REPO}
hpp-bezier-com-traj_extra_flags= -DBUILD_PYTHON_INTERFACE=ON

hpp-spline_branch=master
hpp-spline_repository=${HPP_REPO}
hpp-spline_extra_flags= -DBUILD_PYTHON_INTERFACE=ON

eigenpy_branch=master
eigenpy_repository=${SOT_REPO}

196
197
198
199
200
201
202
203
204
205
# }}}
##################################
# {{{ Packages for gepetto-gui

collada-dom_branch=master
collada-dom_repository=${HPP_REPO}
collada-dom_extra_flags=-DBUILD_SHARED_LIBS=TRUE -DOPT_COLLADA15=FALSE

osg-dae_branch=master
osg-dae_repository=${GEPETTO_REPO}
Joseph Mirabel's avatar
Joseph Mirabel committed
206
osg-dae_extra_flags= -DCOLLADA_DYNAMIC_LIBRARY=${INSTALL_HPP_DIR}/lib/libcollada14dom.so -DCOLLADA_INCLUDE_DIR=${INSTALL_HPP_DIR}/include/collada-dom
207
OpenSceneGraph-3.4.0_extra_flags= -DDESIRED_QT_VERSION=${QT_VERSION} -DCOLLADA_DYNAMIC_LIBRARY=${INSTALL_HPP_DIR}/lib/libcollada14dom.so -DCOLLADA_INCLUDE_DIR=${INSTALL_HPP_DIR}/include/collada-dom -DLIB_POSTFIX=""
208

209
gepetto-viewer_branch=devel
210
gepetto-viewer_repository=${GEPETTO_REPO}
Joseph Mirabel's avatar
Joseph Mirabel committed
211

212
gepetto-viewer-corba_branch=devel
213
214
gepetto-viewer-corba_repository=${GEPETTO_REPO}
ifeq (${QT_VERSION}, 5)
215
  gepetto-viewer_extra_flags= -DPROJECT_USE_QT4=OFF
216
else
217
  gepetto-viewer_extra_flags= -DPROJECT_USE_QT4=ON
Florent Lamiraux's avatar
Florent Lamiraux committed
218
219
endif

220
pythonqt_branch=qt${QT_VERSION}
221
pythonqt_repository=${GEPETTO_REPO}
222
223
pythonqt_extra_flags= -DPythonQt_Wrap_QtAll=ON -DPythonQt_Extensions=ON

224
qgv_branch=devel
225
qgv_repository=${HPP_REPO}
Joseph Mirabel's avatar
Joseph Mirabel committed
226
227
228
229
230
ifeq (${QT_VERSION}, 5)
	qgv_extra_flags=-DBINDINGS_QT5=ON -DBINDINGS_QT4=OFF
else
	qgv_extra_flags=-DBINDINGS_QT5=OFF -DBINDINGS_QT4=ON
endif
231
232
233
234
235

# }}}
##################################
# {{{ High-level targets

236
all: hpp_tutorial.install hpp-gepetto-viewer.install
237
	${MAKE} hpp-doc.install
Florent Lamiraux's avatar
Florent Lamiraux committed
238

239
# For test on gepgitlab, install robot packages first
240
test-ci: universal_robot.install  hpp-environments.install
241
	${MAKE} hpp_tutorial.install hpp-gepetto-viewer.install hpp-rbprm-corba.install \
242
	hpp_universal_robot.install && \
243
244
245
	${MAKE} hpp-doc.install

# For benchmark, install robot packages first
246
benchmark: universal_robot.install \
247
	hpp-environments.install hrp2-14-description.install
248
	${MAKE} hpp_tutorial.install hpp-gepetto-viewer.install; \
249
	${MAKE} hpp-baxter.install hpp_romeo.install \
250
	hpp_universal_robot.install hpp-plot.install hpp-gui.install; \
251
	${MAKE} hpp_benchmark.checkout; \
252
	${MAKE} hpp-doc.install
253

254
255
256
257
rbprm: hpp-rbprm-corba.install hpp-gepetto-viewer.install
	${MAKE} hpp-doc.install


258
259
260
261
# }}}
##################################
# {{{ Dependencies declaration

262
hpp-doc.configure.dep: hpp-doc.checkout
263
hpp-fcl.configure.dep: hpp-fcl.checkout
Joseph Mirabel's avatar
Joseph Mirabel committed
264
hpp-walkgen.configure.dep: hpp-util.install hpp-core.install \
265
	hpp-walkgen.checkout
266
267
hpp-util.configure.dep: hpp-util.checkout
hpp-model-urdf.configure.dep: hpp-model.install hpp-model-urdf.checkout
268
pinocchio.configure.dep: hpp-fcl.install pinocchio.checkout
269
270
hpp-pinocchio.configure.dep: pinocchio.install hpp-util.install \
	hpp-pinocchio.checkout
Florent Lamiraux's avatar
Florent Lamiraux committed
271
hpp-statistics.configure.dep: hpp-util.install hpp-statistics.checkout
272
273
hpp-core.configure.dep: hpp-constraints.install hpp-statistics.install \
	hpp-core.checkout
Guilhem Saurel's avatar
Guilhem Saurel committed
274
hpp-constraints.configure.dep: hpp-pinocchio.install hpp-statistics.install \
275
	hpp-constraints.checkout
Joseph Mirabel's avatar
Joseph Mirabel committed
276
hpp-wholebody-step.configure.dep: hpp-constraints.install hpp-walkgen.install \
277
	hpp-wholebody-step.checkout
278
279
280
281
ifeq (${HUMANOID}, TRUE)
hpp-manipulation.configure.dep: hpp-core.install hpp-constraints.install \
	hpp-wholebody-step.install hpp-manipulation.checkout
hpp-manipulation-corba.configure.dep: hpp-manipulation-urdf.install \
282
	hpp-manipulation.install hpp-manipulation-corba.checkout
Florent Lamiraux's avatar
Florent Lamiraux committed
283
hpp-plot.configure.dep: hpp-corbaserver.install hpp-manipulation-corba.install \
284
	qgv.install hpp-plot.checkout
285
else
286
hpp-manipulation.configure.dep: hpp-core.install hpp-constraints.install \
Florent Lamiraux's avatar
Florent Lamiraux committed
287
	hpp-manipulation.checkout
288
hpp-manipulation-corba.configure.dep: hpp-manipulation-urdf.install \
289
290
	hpp-manipulation.install hpp-corbaserver.install \
	hpp-template-corba.install hpp-manipulation-corba.checkout
Florent Lamiraux's avatar
Florent Lamiraux committed
291
292
hpp-plot.configure.dep: hpp-corbaserver.install hpp-manipulation-corba.install \
	qgv.install hpp-plot.checkout
293
endif
294
hpp-manipulation-urdf.configure.dep:hpp-manipulation.install \
295
	hpp-manipulation-urdf.checkout
296
hpp-corbaserver.configure.dep: hpp-core.install hpp-template-corba.install \
297
298
	hpp-constraints.install hpp-corbaserver.checkout
hpp-template-corba.configure.dep: hpp-util.install hpp-template-corba.checkout
Florent Lamiraux's avatar
Florent Lamiraux committed
299
300
qgv.configure.dep: qgv.checkout
pythonqt.configure.dep: pythonqt.checkout
301
302
303
robot_model_py.configure.dep: robot_model_py.checkout
robot_capsule_urdf.configure.dep: robot_model_py.install \
	robot_capsule_urdf.checkout
304
305
306
307
hpp-hrp2.configure.dep: hrp2-14-description.install hpp-corbaserver.install \
	hpp-hrp2.checkout
hrp2-14-description.configure.dep: robot_capsule_urdf.install \
	robot_model_py.install hrp2-14-description.checkout
308
test-hpp.configure.dep: hpp-wholebody-step.install \
309
	hpp-gepetto-viewer.install hpp-hrp2.install test-hpp.checkout
310
iai_maps.configure.dep: iai_maps.checkout
311
hpp_tutorial.configure.dep: hpp-gepetto-viewer.install iai_maps.install \
312
	hpp-manipulation-corba.install hpp_tutorial.checkout
313
hpp_benchmark.configure.dep: hpp_benchmark.checkout
314
collada-dom.configure.dep: collada-dom.checkout
Joseph Mirabel's avatar
Joseph Mirabel committed
315
316
osg-dae.configure.dep: collada-dom.install \
	osg-dae.checkout
317
318
OpenSceneGraph-3.4.0.configure.dep: collada-dom.install \
	OpenSceneGraph-3.4.0.checkout
319
gepetto-viewer.configure.dep: pythonqt.install gepetto-viewer.checkout
320
gepetto-viewer-corba.configure.dep: gepetto-viewer.install \
321
	pythonqt.install gepetto-viewer-corba.checkout
322
hpp-gepetto-viewer.configure.dep: gepetto-viewer-corba.install \
Florent Lamiraux's avatar
Florent Lamiraux committed
323
	hpp-corbaserver.install \
324
	hpp-gepetto-viewer.checkout
325
hpp-gui.configure.dep: hpp-gui.checkout
326
universal_robot.configure.dep: universal_robot.checkout
327
328
hpp_universal_robot.configure.dep: universal_robot.install \
	hpp_universal_robot.checkout
Florent Lamiraux's avatar
Florent Lamiraux committed
329
hpp-environments.configure.dep: hpp-environments.checkout
330
331
hpp-baxter.configure.dep: hpp-baxter.checkout
hpp_romeo.configure.dep: hpp_romeo.checkout
332
333
334
335
336
337
338
339
340
341
342
343
hpp-affordance.configure.dep: hpp-core.install hpp-fcl.install hpp-affordance.checkout
hpp-affordance-corba.configure.dep: hpp-affordance.install hpp-template-corba.install \
 hpp-corbaserver.install hpp-affordance-corba.checkout
hpp-rbprm.configure.dep: hpp-core.install hpp-centroidal-dynamics.install \
hpp-affordance.install hpp-spline.install hpp-bezier-com-traj.install hpp-rbprm.checkout
hpp-rbprm-robot-data.configure.dep: hpp-rbprm-robot-data.checkout
hpp-rbprm-corba.configure.dep: hpp-rbprm.install hpp-affordance-corba.install \
 hpp-corbaserver.install hpp-rbprm-robot-data.install hpp-rbprm-corba.checkout
hpp-centroidal-dynamics.configure.dep: eigenpy.install hpp-centroidal-dynamics.checkout
hpp-bezier-com-traj.configure.dep: hpp-centroidal-dynamics.install hpp-spline.install hpp-bezier-com-traj.checkout
hpp-spline.configure.dep: hpp-spline.checkout
eigenpy.configure.dep: eigenpy.checkout
Joseph Mirabel's avatar
Joseph Mirabel committed
344
hpp-tools.configure.dep: hpp-tools.checkout
345

346
347
348
349
# }}}
##################################
# {{{ Targets

350
status:
351
352
353
	@for child_dir in $$(ls ${SRC_DIR}); do \
		test -d "$$child_dir" || continue; \
		test -d "$$child_dir/.git" || continue; \
Florent Lamiraux's avatar
Florent Lamiraux committed
354
		${MAKE} "$$child_dir".status; \
355
	done
356

Florent Lamiraux's avatar
Florent Lamiraux committed
357
358
359
360
361
362
363
log:
	@for child_dir in $$(ls ${SRC_DIR}); do \
		test -d "$$child_dir" || continue; \
		test -d "$$child_dir/.git" || continue; \
		${MAKE} "$$child_dir".log; \
	done

364
update:
365
366
367
368
369
	@for child_dir in $$(ls ${SRC_DIR}); do \
		test -d "$$child_dir" || continue; \
		test -d "$$child_dir/.git" || continue; \
		${MAKE} "$$child_dir".update; \
	done
Florent Lamiraux's avatar
Florent Lamiraux committed
370
371
372

%.checkout:
	if [ -d $(@:.checkout=) ]; then \
373
		echo "$(@:.checkout=) already checkout out."; \
Florent Lamiraux's avatar
Florent Lamiraux committed
374
	else \
Florent Lamiraux's avatar
Florent Lamiraux committed
375
		git clone ${GIT_QUIET} --recursive -b ${$(@:.checkout=)_branch} ${$(@:.checkout=)_repository}/$(@:.checkout=); \
Florent Lamiraux's avatar
Florent Lamiraux committed
376
377
378
	fi \

%.update:
379
380
381
382
383
384
385
	if [ "${$(@:.update=)_repository}" = "" ]; then \
		echo "$(@:.update=) is not referenced"; \
	else \
		cd ${SRC_DIR}/$(@:.update=);\
		git remote rm origin;\
		git remote add origin ${$(@:.update=)_repository}/$(@:.update=);\
		git fetch origin;\
Florent Lamiraux's avatar
Florent Lamiraux committed
386
387
388
		git checkout -q --detach;\
		git branch -f ${$(@:.update=)_branch} origin/${$(@:.update=)_branch};\
		git checkout -q ${$(@:.update=)_branch};\
389
390
391
		git submodule update; \
	fi

Florent Lamiraux's avatar
Florent Lamiraux committed
392

Florent Lamiraux's avatar
Florent Lamiraux committed
393
394
%.configure: %.configure.dep
	${MAKE} $(@:.configure=).configure_nodep
395

Florent Lamiraux's avatar
Florent Lamiraux committed
396
397
398
%.configure_nodep:%.checkout
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/${BUILD_FOLDER}; \
399
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
400
401
402
			-DINSTALL_DOCUMENTATION=${INSTALL_DOCUMENTATION} \
			-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-g -O3 -DNDEBUG" \
			${$(@:.configure_nodep=)_extra_flags} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
403

Florent Lamiraux's avatar
Florent Lamiraux committed
404
%.install:%.configure
405
406
	${MAKE} -C ${SRC_DIR}/$(@:.install=)/${BUILD_FOLDER} install

Florent Lamiraux's avatar
Florent Lamiraux committed
407
408
%.install_nodep:%.configure_nodep
	${MAKE} -C ${SRC_DIR}/$(@:.install_nodep=)/${BUILD_FOLDER} install
Florent Lamiraux's avatar
Florent Lamiraux committed
409
410

%.uninstall:
411
	${MAKE} -C ${SRC_DIR}/$(@:.uninstall=)/${BUILD_FOLDER} uninstall
Florent Lamiraux's avatar
Florent Lamiraux committed
412
413

%.clean:
414
	${MAKE} -C ${SRC_DIR}/$(@:.clean=)/${BUILD_FOLDER} clean
Florent Lamiraux's avatar
Florent Lamiraux committed
415

416
%.very-clean:
417
	rm -rf ${SRC_DIR}/$(@:.very-clean=)/${BUILD_FOLDER}/*
418

Florent Lamiraux's avatar
Florent Lamiraux committed
419
%.status:
Florent Lamiraux's avatar
Florent Lamiraux committed
420
421
422
423
	@cd ${SRC_DIR}/$(@:.status=); \
	echo \
	"\033[1;36m------- Folder $(@:.status=) ---------------\033[0m"; \
	git --no-pager -c status.showUntrackedFiles=no status --short --branch;\
Florent Lamiraux's avatar
Florent Lamiraux committed
424

Florent Lamiraux's avatar
Florent Lamiraux committed
425
426
427
428
429
430
431
%.log:
	@cd ${SRC_DIR}/$(@:.log=); \
	if [ -f .git/refs/heads/${$(@:.log=)_branch} ]; then \
		echo -n "$(@:.log=): "; \
		cat .git/refs/heads/${$(@:.log=)_branch}; \
	fi

432
433
434
435
436
437
438
439
440
OpenSceneGraph-3.4.0.checkout:
	if [ -d $(@:.checkout=) ]; then \
		echo "$(@:.checkout=) already checkout out."; \
	else \
		wget http://www.openscenegraph.org/downloads/stable_releases/OpenSceneGraph-3.4.0/source/OpenSceneGraph-3.4.0.zip;\
		cd ${SRC_DIR}; unzip OpenSceneGraph-3.4.0.zip;\
		rm -f OpenSceneGraph-3.4.0.zip;\
	fi

441
robot_model_py.configure: robot_model_py.configure.dep
Florent Lamiraux's avatar
Florent Lamiraux committed
442
	cd ${SRC_DIR}/$(@:.configure=)/xml_reflection;\
443
444
	mkdir -p ${BUILD_FOLDER}; \
	cd ${BUILD_FOLDER}; \
445
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
446
	cd ${SRC_DIR}/$(@:.configure=)/urdf_parser_py;\
447
448
	mkdir -p ${BUILD_FOLDER}; \
	cd ${BUILD_FOLDER}; \
449
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Marine Heckler's avatar
Marine Heckler committed
450

Florent Lamiraux's avatar
Florent Lamiraux committed
451
robot_model_py.install: robot_model_py.configure
452
453
	${MAKE} -C ${SRC_DIR}/$(@:.install=)/xml_reflection/${BUILD_FOLDER} install; \
	${MAKE} -C ${SRC_DIR}/$(@:.install=)/urdf_parser_py/${BUILD_FOLDER} install;
Florent Lamiraux's avatar
Florent Lamiraux committed
454
455
456
457

universal_robot.configure_nodep:
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
458
	cmake -DCMAKE_INSTALL_PREFIX=${DEVEL_HPP_DIR}/install -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-g -O3 -DNDEBUG" ${$(@:.configure_nodep=)_extra_flags} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
459
460
461
462
463
464
465
466

universal_robot.install_nodep:universal_robot.configure_nodep
	cd ${SRC_DIR}/$(@:.install_nodep=)/ur_description/${BUILD_FOLDER};\
	make install

universal_robot.install:universal_robot.configure
	cd ${SRC_DIR}/$(@:.install=)/ur_description/${BUILD_FOLDER};\
	make install
Florent Lamiraux's avatar
Florent Lamiraux committed
467

468
469
470
# }}}

# vim: foldmethod=marker foldlevel=0