Makefile 17.2 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
qgv_repository=${HPP_REPO}
Joseph Mirabel's avatar
Joseph Mirabel committed
232
233
234
235
236
ifeq (${QT_VERSION}, 5)
	qgv_extra_flags=-DBINDINGS_QT5=ON -DBINDINGS_QT4=OFF
else
	qgv_extra_flags=-DBINDINGS_QT5=OFF -DBINDINGS_QT4=ON
endif
237
238
239
240
241

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

242
all: hpp_tutorial.install hpp-gepetto-viewer.install
243
	${MAKE} hpp-doc.install
Florent Lamiraux's avatar
Florent Lamiraux committed
244

245
246
247
# For test on gepgitlab, install robot packages first
test-ci: baxter_common.install romeo.install universal_robot.install \
	hpp-environments.install
248
	${MAKE} hpp_tutorial.install hpp-gepetto-viewer.install hpp-rbprm-corba.install \
249
	hpp_universal_robot.install && \
250
251
252
253
	${MAKE} hpp-doc.install

# For benchmark, install robot packages first
benchmark: baxter_common.install romeo.install universal_robot.install \
254
	hpp-environments.install hrp2-14-description.install
255
	${MAKE} hpp_tutorial.install hpp-gepetto-viewer.install; \
256
	${MAKE} hpp-baxter.install hpp_romeo.install \
257
	hpp_universal_robot.install hpp-plot.install hpp-gui.install; \
258
	${MAKE} hpp_benchmark.checkout; \
259
	${MAKE} hpp-doc.install
260

261
262
263
264
rbprm: hpp-rbprm-corba.install hpp-gepetto-viewer.install
	${MAKE} hpp-doc.install


265
266
267
268
# }}}
##################################
# {{{ Dependencies declaration

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

356
357
358
359
# }}}
##################################
# {{{ Targets

360
status:
361
362
363
	@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
364
		${MAKE} "$$child_dir".status; \
365
	done
366

Florent Lamiraux's avatar
Florent Lamiraux committed
367
368
369
370
371
372
373
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

374
update:
375
376
377
378
379
	@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
380
381
382

%.checkout:
	if [ -d $(@:.checkout=) ]; then \
383
		echo "$(@:.checkout=) already checkout out."; \
Florent Lamiraux's avatar
Florent Lamiraux committed
384
	else \
Florent Lamiraux's avatar
Florent Lamiraux committed
385
		git clone ${GIT_QUIET} --recursive -b ${$(@:.checkout=)_branch} ${$(@:.checkout=)_repository}/$(@:.checkout=); \
Florent Lamiraux's avatar
Florent Lamiraux committed
386
387
388
	fi \

%.update:
389
390
391
392
393
394
395
	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
396
397
398
		git checkout -q --detach;\
		git branch -f ${$(@:.update=)_branch} origin/${$(@:.update=)_branch};\
		git checkout -q ${$(@:.update=)_branch};\
399
400
401
		git submodule update; \
	fi

Florent Lamiraux's avatar
Florent Lamiraux committed
402

Florent Lamiraux's avatar
Florent Lamiraux committed
403
404
%.configure: %.configure.dep
	${MAKE} $(@:.configure=).configure_nodep
405

Florent Lamiraux's avatar
Florent Lamiraux committed
406
407
408
%.configure_nodep:%.checkout
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/${BUILD_FOLDER}; \
409
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
410
411
412
			-DINSTALL_DOCUMENTATION=${INSTALL_DOCUMENTATION} \
			-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-g -O3 -DNDEBUG" \
			${$(@:.configure_nodep=)_extra_flags} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
413

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

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

%.uninstall:
421
	${MAKE} -C ${SRC_DIR}/$(@:.uninstall=)/${BUILD_FOLDER} uninstall
Florent Lamiraux's avatar
Florent Lamiraux committed
422
423

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

426
%.very-clean:
427
	rm -rf ${SRC_DIR}/$(@:.very-clean=)/${BUILD_FOLDER}/*
428

Florent Lamiraux's avatar
Florent Lamiraux committed
429
%.status:
Florent Lamiraux's avatar
Florent Lamiraux committed
430
431
432
433
	@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
434

Florent Lamiraux's avatar
Florent Lamiraux committed
435
436
437
438
439
440
441
%.log:
	@cd ${SRC_DIR}/$(@:.log=); \
	if [ -f .git/refs/heads/${$(@:.log=)_branch} ]; then \
		echo -n "$(@:.log=): "; \
		cat .git/refs/heads/${$(@:.log=)_branch}; \
	fi

442
443
444
445
446
447
448
449
450
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

451
robot_model_py.configure: robot_model_py.configure.dep
Florent Lamiraux's avatar
Florent Lamiraux committed
452
	cd ${SRC_DIR}/$(@:.configure=)/xml_reflection;\
453
454
	mkdir -p ${BUILD_FOLDER}; \
	cd ${BUILD_FOLDER}; \
455
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
456
	cd ${SRC_DIR}/$(@:.configure=)/urdf_parser_py;\
457
458
	mkdir -p ${BUILD_FOLDER}; \
	cd ${BUILD_FOLDER}; \
459
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Marine Heckler's avatar
Marine Heckler committed
460

Florent Lamiraux's avatar
Florent Lamiraux committed
461
robot_model_py.install: robot_model_py.configure
462
463
	${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
464
465
466
467

universal_robot.configure_nodep:
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/ur_description/${BUILD_FOLDER}; \
468
	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
469
470
471
472
473
474
475
476

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
477
478
479
480

baxter_common.configure_nodep:
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/baxter_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/baxter_description/${BUILD_FOLDER}; \
481
	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
482
483
	mkdir -p ${SRC_DIR}/$(@:.configure_nodep=)/rethink_ee_description/${BUILD_FOLDER}; \
	cd ${SRC_DIR}/$(@:.configure_nodep=)/rethink_ee_description/${BUILD_FOLDER}; \
484
	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
485
486
487
488
489
490
491
492
493
494
495
496
497
498

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
499
	. ${INSTALL_HPP_DIR}/setup.sh; \
Florent Lamiraux's avatar
Florent Lamiraux committed
500
501
502
	cd ${SRC_DIR}/romeo/romeo_description;\
	mkdir -p ${BUILD_FOLDER}; \
	cd ${SRC_DIR}/romeo/romeo_description/${BUILD_FOLDER}; \
503
	cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_HPP_DIR} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ..
Florent Lamiraux's avatar
Florent Lamiraux committed
504
505
506

romeo.install: romeo.configure
	${MAKE} -C ${SRC_DIR}/romeo/romeo_description/${BUILD_FOLDER} install
507
508
509
510

# }}}

# vim: foldmethod=marker foldlevel=0