source: build/snova/trunk/obuild/sh/build_lib_snvertex@ 275

Last change on this file since 275 was 275, checked in by barrand, 19 years ago
  • Property svn:executable set to *
File size: 17.2 KB
Line 
1#!/bin/sh -f
2
3#
4# File produced by the obuild tool version 1.0
5# for the package snova with version v2r0p0.
6#
7
8#////////////////////////////////////////////////
9# Usage :
10# UNIX> cd some_path/pack/version/obuild
11# ( UNIX> chmod a+x sh/build_snvertex )
12# UNIX> sh/build_snvertex
13#
14#////////////////////////////////////////////////
15
16obuild_verbose=no
17obuild_debug=no
18obuild_optimize=yes
19obuild_do_not_compile=no
20obuild_dir_bin_o_cleanup=yes
21
22obuild_set_x=no
23while test $# -ge 1 ; do
24 case $1 in
25 -h)
26 echo "Options :"
27 echo " -v : verbose."
28 echo " -d : build in debug mode."
29 echo " -g : build in debug mode."
30 echo " -x : execute script with set -x."
31 echo " -l : link only, do not (re)compile."
32 echo " -k : do not remove result of compilations (.o, .obj)."
33 echo ""
34 exit ;;
35 -v) obuild_verbose=yes ;;
36 -x) obuild_set_x=yes ;;
37 -d) obuild_debug=yes ;;
38 -g) obuild_debug=yes ;;
39 -l) obuild_do_not_compile=yes ;;
40 -k) obuild_dir_bin_o_cleanup=no ;;
41 *) echo "unknown option : $1";exit ;;
42 esac
43 shift
44done
45
46if [ ${obuild_set_x} = yes ] ; then
47 set -x
48fi
49
50if [ ${obuild_debug} = yes ] ; then
51 obuild_optimize=no
52fi
53
54if [ "${OBUILD_PLATFORM}" = "" ] ; then
55 obuild_platform=`uname`
56else
57 obuild_platform=${OBUILD_PLATFORM}
58fi
59
60if [ "${obuild_platform}" = "" ] ; then
61 echo "obuild_platform variable not defined."
62 exit
63fi
64
65if [ "${OBUILD_DIR_BIN}" = "" ] ; then
66 obuild_dir_bin=bin_obuild
67else
68 obuild_dir_bin=${OBUILD_DIR_BIN}
69fi
70
71if [ "${obuild_dir_bin}" = "" ] ; then
72 echo "obuild_dir_bin variable not defined."
73 exit
74fi
75
76obuild_pwd=`pwd`
77obuild_snova_path=`dirname "${obuild_pwd}"`
78unset obuild_pwd
79
80# Create the bin directory :
81/bin/mkdir -p "${obuild_snova_path}/${obuild_dir_bin}"
82
83if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_platform" ] ; then
84 if [ ! -e "${obuild_snova_path}/obuild/cpp/obuild_platform.cpp" ] ; then
85 echo "Program source obuild_platform.cpp not found."
86 exit
87 fi
88 if [ "${obuild_cxx_command}" = "" ] ; then
89 if [ "${OBUILD_CXX}" != "" ] ; then
90 obuild_platform_compiler=${OBUILD_CXX}
91 else
92 obuild_platform_compiler=c++
93 fi
94 else
95 obuild_platform_compiler=${obuild_cxx_command}
96 fi
97 ${obuild_platform_compiler} -o "${obuild_snova_path}/${obuild_dir_bin}/obuild_platform" "${obuild_snova_path}/obuild/cpp/obuild_platform.cpp"
98 unset obuild_platform_compiler
99 if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_platform" ] ; then
100 echo "Program obuild_platform not found."
101 exit
102 fi
103fi
104obuild_platform_exe="${obuild_snova_path}/${obuild_dir_bin}/obuild_platform"
105if [ "${obuild_platform_exe}" = "" ] ; then
106 echo "Variable obuild_platform_exe not defined."
107 exit
108fi
109obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
110if [ ${obuild_platform_result} = yes ] ; then
111CLHEP_home="/usr/local/CLHEP/2.0.3.1"
112fi
113unset obuild_platform_result
114if [ "${obuild_platform_exe}" = "" ] ; then
115 echo "Variable obuild_platform_exe not defined."
116 exit
117fi
118obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
119if [ ${obuild_platform_result} = yes ] ; then
120Geant4_home="/usr/local/geant4/8.2"
121fi
122unset obuild_platform_result
123if [ "${obuild_platform_exe}" = "" ] ; then
124 echo "Variable obuild_platform_exe not defined."
125 exit
126fi
127obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
128if [ ${obuild_platform_result} = yes ] ; then
129HDF5_home="/usr/local/HDF5/1.6.5"
130fi
131unset obuild_platform_result
132if [ "${obuild_platform_exe}" = "" ] ; then
133 echo "Variable obuild_platform_exe not defined."
134 exit
135fi
136obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
137if [ ${obuild_platform_result} = yes ] ; then
138zlib_home="/usr"
139fi
140unset obuild_platform_result
141if [ "${obuild_platform_exe}" = "" ] ; then
142 echo "Variable obuild_platform_exe not defined."
143 exit
144fi
145obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
146if [ ${obuild_platform_result} = yes ] ; then
147obuild_cxx_command="c++"
148fi
149unset obuild_platform_result
150if [ "${obuild_platform_exe}" = "" ] ; then
151 echo "Variable obuild_platform_exe not defined."
152 exit
153fi
154obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
155if [ ${obuild_platform_result} = yes ] ; then
156obuild_cxx_command="c++"
157fi
158unset obuild_platform_result
159if [ "${obuild_platform_exe}" = "" ] ; then
160 echo "Variable obuild_platform_exe not defined."
161 exit
162fi
163obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
164if [ ${obuild_platform_result} = yes ] ; then
165obuild_cxx_command="cxx"
166fi
167unset obuild_platform_result
168if [ "${obuild_cxx_command}" = "" ] ; then
169 echo "Variable obuild_cxx_command not defined."
170 exit
171fi
172
173if [ "${obuild_platform_exe}" = "" ] ; then
174 echo "Variable obuild_platform_exe not defined."
175 exit
176fi
177obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
178if [ ${obuild_platform_result} = yes ] ; then
179obuild_cxx_optimize="-O"
180fi
181unset obuild_platform_result
182if [ "${obuild_platform_exe}" = "" ] ; then
183 echo "Variable obuild_platform_exe not defined."
184 exit
185fi
186obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
187if [ ${obuild_platform_result} = yes ] ; then
188obuild_cxx_optimize="-O"
189fi
190unset obuild_platform_result
191if [ "${obuild_platform_exe}" = "" ] ; then
192 echo "Variable obuild_platform_exe not defined."
193 exit
194fi
195obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
196if [ ${obuild_platform_result} = yes ] ; then
197obuild_cxx_optimize="-O"
198fi
199unset obuild_platform_result
200
201if [ "${obuild_platform_exe}" = "" ] ; then
202 echo "Variable obuild_platform_exe not defined."
203 exit
204fi
205obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
206if [ ${obuild_platform_result} = yes ] ; then
207obuild_cxx_debug="-g"
208fi
209unset obuild_platform_result
210if [ "${obuild_platform_exe}" = "" ] ; then
211 echo "Variable obuild_platform_exe not defined."
212 exit
213fi
214obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
215if [ ${obuild_platform_result} = yes ] ; then
216obuild_cxx_debug="-g"
217fi
218unset obuild_platform_result
219if [ "${obuild_platform_exe}" = "" ] ; then
220 echo "Variable obuild_platform_exe not defined."
221 exit
222fi
223obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
224if [ ${obuild_platform_result} = yes ] ; then
225obuild_cxx_debug="-g"
226fi
227unset obuild_platform_result
228
229if [ "${obuild_platform_exe}" = "" ] ; then
230 echo "Variable obuild_platform_exe not defined."
231 exit
232fi
233obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
234if [ ${obuild_platform_result} = yes ] ; then
235obuild_cxx_options="-fPIC"
236fi
237unset obuild_platform_result
238
239if [ ${obuild_debug} = yes ] ; then
240 obuild_cxx_debug_local=${obuild_cxx_debug}
241else
242 obuild_cxx_debug_local=
243fi
244
245if [ ${obuild_optimize} = yes ] ; then
246 obuild_cxx_optimize_local=${obuild_cxx_optimize}
247else
248 obuild_cxx_optimize_local=
249fi
250
251if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" ] ; then
252 if [ ! -e "${obuild_snova_path}/obuild/cpp/obuild_find.cpp" ] ; then
253 echo "Program source obuild_find.cpp not found."
254 exit
255 fi
256 if [ "${obuild_cxx_command}" = "" ] ; then
257 if [ "${OBUILD_CXX}" != "" ] ; then
258 obuild_find_compiler=${OBUILD_CXX}
259 else
260 obuild_find_compiler=c++
261 fi
262 else
263 obuild_find_compiler=${obuild_cxx_command}
264 fi
265 ${obuild_find_compiler} -o "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" "${obuild_snova_path}/obuild/cpp/obuild_find.cpp"
266 unset obuild_find_compiler
267 if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" ] ; then
268 echo "Program obuild_find not found."
269 exit
270 fi
271fi
272obuild_find_exe="${obuild_snova_path}/${obuild_dir_bin}/obuild_find"
273if [ "${obuild_find_exe}" = "" ] ; then
274 echo "Variable obuild_find_exe not defined."
275 exit
276fi
277obuild_bhep_path=`"${obuild_find_exe}" bhep 'v1r4p2'`
278if [ "${obuild_bhep_path}" = "" ] ; then
279 echo "Can't find bhep package."
280 exit
281fi
282
283obuild_cxx_includes="-I\"${obuild_snova_path}/source/SNvertex/include\""
284obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/GeomUtils/include\""
285obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/SNgeom2/include\""
286obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_bhep_path}\""
287if [ "${obuild_platform_exe}" = "" ] ; then
288 echo "Variable obuild_platform_exe not defined."
289 exit
290fi
291obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
292if [ ${obuild_platform_result} = yes ] ; then
293obuild_cxx_includes="${obuild_cxx_includes} -I${CLHEP_home}/include"
294fi
295unset obuild_platform_result
296
297if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
298 /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/lib_snvertex"
299fi
300
301/bin/mkdir -p "${obuild_snova_path}/${obuild_dir_bin}/lib_snvertex"
302
303# Compile snvertex files :
304if [ ${obuild_do_not_compile} = no ] ; then
305
306if [ ${obuild_verbose} = yes ] ; then set -x;fi
307cd "${obuild_snova_path}/${obuild_dir_bin}"
308 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/CALO_basic_VG.o \"../source/SNvertex/src/CALO_basic_VG.cc\"
309obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
310cd "${obuild_snova_path}/obuild"
311
312cd "${obuild_snova_path}/${obuild_dir_bin}"
313 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/base_VG.o \"../source/SNvertex/src/base_VG.cc\"
314obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
315cd "${obuild_snova_path}/obuild"
316
317cd "${obuild_snova_path}/${obuild_dir_bin}"
318 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/base_VG_factory.o \"../source/SNvertex/src/base_VG_factory.cc\"
319obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
320cd "${obuild_snova_path}/obuild"
321
322cd "${obuild_snova_path}/${obuild_dir_bin}"
323 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/base_geom_VG.o \"../source/SNvertex/src/base_geom_VG.cc\"
324obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
325cd "${obuild_snova_path}/obuild"
326
327cd "${obuild_snova_path}/${obuild_dir_bin}"
328 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/box_VG.o \"../source/SNvertex/src/box_VG.cc\"
329obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
330cd "${obuild_snova_path}/obuild"
331
332cd "${obuild_snova_path}/${obuild_dir_bin}"
333 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/cylinder_VG.o \"../source/SNvertex/src/cylinder_VG.cc\"
334obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
335cd "${obuild_snova_path}/obuild"
336
337cd "${obuild_snova_path}/${obuild_dir_bin}"
338 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/dummy_snvertex.o \"../source/SNvertex/src/dummy_snvertex.cc\"
339obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
340cd "${obuild_snova_path}/obuild"
341
342cd "${obuild_snova_path}/${obuild_dir_bin}"
343 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/from_file_VG.o \"../source/SNvertex/src/from_file_VG.cc\"
344obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
345cd "${obuild_snova_path}/obuild"
346
347cd "${obuild_snova_path}/${obuild_dir_bin}"
348 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/snvertex_utils.o \"../source/SNvertex/src/snvertex_utils.cc\"
349obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
350cd "${obuild_snova_path}/obuild"
351
352cd "${obuild_snova_path}/${obuild_dir_bin}"
353 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/source_simple_VG.o \"../source/SNvertex/src/source_simple_VG.cc\"
354obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
355cd "${obuild_snova_path}/obuild"
356
357cd "${obuild_snova_path}/${obuild_dir_bin}"
358 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_snvertex/spot_VG.o \"../source/SNvertex/src/spot_VG.cc\"
359obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
360cd "${obuild_snova_path}/obuild"
361
362if [ ${obuild_verbose} = yes ] ; then set +x;fi
363
364fi #do_not_compile
365
366if [ "${obuild_platform_exe}" = "" ] ; then
367 echo "Variable obuild_platform_exe not defined."
368 exit
369fi
370obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
371if [ ${obuild_platform_result} = yes ] ; then
372obuild_cxx_shared_lib_builder_command="c++"
373fi
374unset obuild_platform_result
375if [ "${obuild_platform_exe}" = "" ] ; then
376 echo "Variable obuild_platform_exe not defined."
377 exit
378fi
379obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
380if [ ${obuild_platform_result} = yes ] ; then
381obuild_cxx_shared_lib_builder_command="c++"
382fi
383unset obuild_platform_result
384if [ "${obuild_platform_exe}" = "" ] ; then
385 echo "Variable obuild_platform_exe not defined."
386 exit
387fi
388obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
389if [ ${obuild_platform_result} = yes ] ; then
390obuild_cxx_shared_lib_builder_command="cxx"
391fi
392unset obuild_platform_result
393if [ "${obuild_cxx_shared_lib_builder_command}" = "" ] ; then
394 echo "Variable obuild_cxx_shared_lib_builder_command not defined."
395 exit
396fi
397
398if [ "${obuild_platform_exe}" = "" ] ; then
399 echo "Variable obuild_platform_exe not defined."
400 exit
401fi
402obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
403if [ ${obuild_platform_result} = yes ] ; then
404obuild_cxx_shared_lib_builder_options="-dynamiclib -twolevel_namespace -undefined dynamic_lookup -dynamic -single_module"
405fi
406unset obuild_platform_result
407if [ "${obuild_platform_exe}" = "" ] ; then
408 echo "Variable obuild_platform_exe not defined."
409 exit
410fi
411obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
412if [ ${obuild_platform_result} = yes ] ; then
413obuild_cxx_shared_lib_builder_options="-shared"
414fi
415unset obuild_platform_result
416if [ "${obuild_platform_exe}" = "" ] ; then
417 echo "Variable obuild_platform_exe not defined."
418 exit
419fi
420obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
421if [ ${obuild_platform_result} = yes ] ; then
422obuild_cxx_shared_lib_builder_options="-shared -expect_unresolved *"
423fi
424unset obuild_platform_result
425
426if [ "${obuild_platform_exe}" = "" ] ; then
427 echo "Variable obuild_platform_exe not defined."
428 exit
429fi
430obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
431if [ ${obuild_platform_result} = yes ] ; then
432obuild_cxx_shared_lib_builder_suffix="dylib"
433fi
434unset obuild_platform_result
435if [ "${obuild_platform_exe}" = "" ] ; then
436 echo "Variable obuild_platform_exe not defined."
437 exit
438fi
439obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
440if [ ${obuild_platform_result} = yes ] ; then
441obuild_cxx_shared_lib_builder_suffix="so"
442fi
443unset obuild_platform_result
444if [ "${obuild_platform_exe}" = "" ] ; then
445 echo "Variable obuild_platform_exe not defined."
446 exit
447fi
448obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
449if [ ${obuild_platform_result} = yes ] ; then
450obuild_cxx_shared_lib_builder_suffix="so"
451fi
452unset obuild_platform_result
453
454if [ ${obuild_debug} = yes ] ; then
455 obuild_cxx_shared_lib_builder_debug_local=${obuild_cxx_shared_lib_builder_debug}
456else
457 obuild_cxx_shared_lib_builder_debug_local=
458fi
459
460if [ ${obuild_optimize} = yes ] ; then
461 obuild_cxx_shared_lib_builder_optimize_local=${obuild_cxx_shared_lib_builder_optimize}
462else
463 obuild_cxx_shared_lib_builder_optimize_local=
464fi
465# Create the shared library snvertex :
466cd "${obuild_snova_path}/${obuild_dir_bin}"
467obuild_objs=`find ./lib_snvertex -name '*.o' -print`
468/bin/rm -f ./libsnvertex.${obuild_cxx_shared_lib_builder_suffix}
469
470if [ ${obuild_verbose} = yes ] ; then set -x;fi
471 ${obuild_cxx_shared_lib_builder_command} ${obuild_cxx_shared_lib_builder_debug_local} ${obuild_cxx_shared_lib_builder_optimize_local} ${obuild_cxx_shared_lib_builder_options} -o "${obuild_snova_path}/${obuild_dir_bin}/libsnvertex.${obuild_cxx_shared_lib_builder_suffix}" ${obuild_objs} ${obuild_linked_paths} ${obuild_linked_libraries}
472obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
473if [ ${obuild_verbose} = yes ] ; then set +x;fi
474cd "${obuild_snova_path}/obuild"
475
476# Some cleanup :
477if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
478 /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/lib_snvertex"
479fi
480/bin/rm -f "${obuild_snova_path}/${obuild_dir_bin}/obuild_find"
481
Note: See TracBrowser for help on using the repository browser.