Makefile 17 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
Florent Lamiraux's avatar
Florent Lamiraux committed
11
RETHINK_ROBOTICS_REPO=https://github.com/RethinkRobotics
12
TRAC_REPO=ssh://trac.laas.fr/git/jrl/robots/ros-hrp2
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
75
76
hpp-constraints_branch=${HPP_VERSION}
hpp-constraints_repository=${HPP_REPO}
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

Florent Lamiraux's avatar
Florent Lamiraux committed
152
baxter_common_branch=master
153
baxter_common_repository=${RETHINK_ROBOTICS_REPO}
Florent Lamiraux's avatar
Florent Lamiraux committed
154

155
156
157
hpp-baxter_branch=master
hpp-baxter_repository=${HPP_REPO}

Florent Lamiraux's avatar
Florent Lamiraux committed
158
159
160
161
162
163
hpp_romeo_branch=master
hpp_romeo_repository=${HPP_REPO}

romeo_branch=master
romeo_repository=${HPP_REPO}

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
196
197
198
199
200
201

# }}}
##################################
# {{{ 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}

202
203
204
205
206
207
208
209
210
211
# }}}
##################################
# {{{ 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
212
osg-dae_extra_flags= -DCOLLADA_DYNAMIC_LIBRARY=${INSTALL_HPP_DIR}/lib/libcollada14dom.so -DCOLLADA_INCLUDE_DIR=${INSTALL_HPP_DIR}/include/collada-dom
213
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=""
214

215
gepetto-viewer_branch=devel
216
gepetto-viewer_repository=${GEPETTO_REPO}
Joseph Mirabel's avatar
Joseph Mirabel committed
217

218
gepetto-viewer-corba_branch=devel
219
220
221
gepetto-viewer-corba_repository=${GEPETTO_REPO}
ifeq (${QT_VERSION}, 5)
  gepetto-viewer-corba_extra_flags= -DUSE_QT4=OFF
222
223
else
  gepetto-viewer-corba_extra_flags= -DUSE_QT4=ON
Florent Lamiraux's avatar
Florent Lamiraux committed
224
225
endif

226
pythonqt_branch=qt${QT_VERSION}
227
pythonqt_repository=${GEPETTO_REPO}
228
229
pythonqt_extra_flags= -DPythonQt_Wrap_QtAll=ON -DPythonQt_Extensions=ON

230
qgv_branch=devel
231
232
233
234
235
236
qgv_repository=${HPP_REPO}

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

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

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

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

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


260
261
262
263
# }}}
##################################
# {{{ Dependencies declaration

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

350
351
352
353
# }}}
##################################
# {{{ Targets

354
status:
355
356
357
	@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
358
		${MAKE} "$$child_dir".status; \
359
	done
360

Florent Lamiraux's avatar
Florent Lamiraux committed
361
362
363
364
365
366
367
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

368
update:
369
370
371
372
373
	@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
374
375
376

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

%.update:
383
384
385
386
387
388
389
	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
390
391
392
		git checkout -q --detach;\
		git branch -f ${$(@:.update=)_branch} origin/${$(@:.update=)_branch};\
		git checkout -q ${$(@:.update=)_branch};\
393
394
395
		git submodule update; \
	fi

Florent Lamiraux's avatar
Florent Lamiraux committed
396

Florent Lamiraux's avatar
Florent Lamiraux committed
397
398
%.configure: %.configure.dep
	${MAKE} $(@:.configure=).configure_nodep
399

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

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

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

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

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

420
%.very-clean:
421
	rm -rf ${SRC_DIR}/$(@:.very-clean=)/${BUILD_FOLDER}/*
422

Florent Lamiraux's avatar
Florent Lamiraux committed
423
%.status:
Florent Lamiraux's avatar
Florent Lamiraux committed
424
425
426
427
	@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
428

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

436
437
438
439
440
441
442
443
444
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

445
robot_model_py.configure: robot_model_py.configure.dep
Florent Lamiraux's avatar
Florent Lamiraux committed
446
	cd ${SRC_DIR}/$(@:.configure=)/xml_reflection;\
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} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
450
	cd ${SRC_DIR}/$(@:.configure=)/urdf_parser_py;\
451
452
	mkdir -p ${BUILD_FOLDER}; \
	cd ${BUILD_FOLDER}; \
453
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Marine Heckler's avatar
Marine Heckler committed
454

Florent Lamiraux's avatar
Florent Lamiraux committed
455
robot_model_py.install: robot_model_py.configure
456
457
	${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
458
459
460
461

universal_robot.configure_nodep:
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
462
	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
463
464
465
466
467
468
469
470

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
471
472
473
474

baxter_common.configure_nodep:
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/baxter_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/baxter_description/${BUILD_FOLDER}; \
475
	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
476
477
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/rethink_ee_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/rethink_ee_description/${BUILD_FOLDER}; \
478
	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
479
480
481
482
483
484
485
486
487
488
489
490
491
492

baxter_common.install_nodep:baxter_common.configure_nodep
	cd ${SRC_DIR}/$(@:.install_nodep=)/baxter_description/${BUILD_FOLDER};\
	make install; \
	cd ${SRC_DIR}/$(@:.install_nodep=)/rethink_ee_description/${BUILD_FOLDER};\
	make install

baxter_common.install:baxter_common.configure
	cd ${SRC_DIR}/$(@:.install=)/baxter_description/${BUILD_FOLDER};\
	make install; \
	cd ${SRC_DIR}/$(@:.install=)/rethink_ee_description/${BUILD_FOLDER};\
	make install

romeo.configure: romeo.configure.dep
493
	. ${INSTALL_HPP_DIR}/setup.sh; \
Florent Lamiraux's avatar
Florent Lamiraux committed
494
495
496
	cd ${SRC_DIR}/romeo/romeo_description;\
	mkdir -p ${BUILD_FOLDER}; \
	cd ${SRC_DIR}/romeo/romeo_description/${BUILD_FOLDER}; \
497
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
498
499
500

romeo.install: romeo.configure
	${MAKE} -C ${SRC_DIR}/romeo/romeo_description/${BUILD_FOLDER} install
501
502
503
504

# }}}

# vim: foldmethod=marker foldlevel=0