source: build/snova/trunk/obuild/sh/build_app_prog_snova@ 151

Last change on this file since 151 was 151, checked in by barrand, 19 years ago
  • Property svn:executable set to *
File size: 16.9 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_prog_snova )
12# UNIX> sh/build_prog_snova
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=${obuild_platform}_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} 'Darwin'`
128if [ ${obuild_platform_result} = yes ] ; then
129obuild_cxx_command="c++"
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} 'Linux'`
137if [ ${obuild_platform_result} = yes ] ; then
138obuild_cxx_command="c++"
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} 'OSF1'`
146if [ ${obuild_platform_result} = yes ] ; then
147obuild_cxx_command="cxx"
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} 'Windows_NT'`
155if [ ${obuild_platform_result} = yes ] ; then
156obuild_cxx_command="cl.exe"
157fi
158unset obuild_platform_result
159if [ "${obuild_cxx_command}" = "" ] ; then
160 echo "Variable obuild_cxx_command not defined."
161 exit
162fi
163
164if [ "${obuild_platform_exe}" = "" ] ; then
165 echo "Variable obuild_platform_exe not defined."
166 exit
167fi
168obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
169if [ ${obuild_platform_result} = yes ] ; then
170obuild_cxx_optimize="-O"
171fi
172unset obuild_platform_result
173if [ "${obuild_platform_exe}" = "" ] ; then
174 echo "Variable obuild_platform_exe not defined."
175 exit
176fi
177obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
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} 'OSF1'`
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} 'Windows_NT'`
196if [ ${obuild_platform_result} = yes ] ; then
197obuild_cxx_optimize="/O2"
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
228if [ "${obuild_platform_exe}" = "" ] ; then
229 echo "Variable obuild_platform_exe not defined."
230 exit
231fi
232obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
233if [ ${obuild_platform_result} = yes ] ; then
234obuild_cxx_debug="/ZI /Od"
235fi
236unset obuild_platform_result
237
238if [ "${obuild_platform_exe}" = "" ] ; then
239 echo "Variable obuild_platform_exe not defined."
240 exit
241fi
242obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
243if [ ${obuild_platform_result} = yes ] ; then
244obuild_cxx_options="-fPIC"
245fi
246unset obuild_platform_result
247if [ "${obuild_platform_exe}" = "" ] ; then
248 echo "Variable obuild_platform_exe not defined."
249 exit
250fi
251obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
252if [ ${obuild_platform_result} = yes ] ; then
253obuild_cxx_options="/nologo /DWIN32 /MD /GX /GR /W3"
254fi
255unset obuild_platform_result
256
257if [ ${obuild_debug} = yes ] ; then
258 obuild_cxx_debug_local=${obuild_cxx_debug}
259else
260 obuild_cxx_debug_local=
261fi
262
263if [ ${obuild_optimize} = yes ] ; then
264 obuild_cxx_optimize_local=${obuild_cxx_optimize}
265else
266 obuild_cxx_optimize_local=
267fi
268
269if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" ] ; then
270 if [ ! -e "${obuild_snova_path}/obuild/cpp/obuild_find.cpp" ] ; then
271 echo "Program source obuild_find.cpp not found."
272 exit
273 fi
274 if [ "${obuild_cxx_command}" = "" ] ; then
275 if [ "${OBUILD_CXX}" != "" ] ; then
276 obuild_find_compiler=${OBUILD_CXX}
277 else
278 obuild_find_compiler=c++
279 fi
280 else
281 obuild_find_compiler=${obuild_cxx_command}
282 fi
283 ${obuild_find_compiler} -o "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" "${obuild_snova_path}/obuild/cpp/obuild_find.cpp"
284 unset obuild_find_compiler
285 if [ ! -e "${obuild_snova_path}/${obuild_dir_bin}/obuild_find" ] ; then
286 echo "Program obuild_find not found."
287 exit
288 fi
289fi
290obuild_find_exe="${obuild_snova_path}/${obuild_dir_bin}/obuild_find"
291if [ "${obuild_find_exe}" = "" ] ; then
292 echo "Variable obuild_find_exe not defined."
293 exit
294fi
295obuild_bhep_path=`"${obuild_find_exe}" bhep 'v1r4p2'`
296if [ "${obuild_bhep_path}" = "" ] ; then
297 echo "Can't find bhep package."
298 exit
299fi
300if [ "${obuild_find_exe}" = "" ] ; then
301 echo "Variable obuild_find_exe not defined."
302 exit
303fi
304obuild_HDF5_path=`"${obuild_find_exe}" HDF5 'v1r*'`
305if [ "${obuild_HDF5_path}" = "" ] ; then
306 echo "Can't find HDF5 package."
307 exit
308fi
309if [ "${obuild_find_exe}" = "" ] ; then
310 echo "Variable obuild_find_exe not defined."
311 exit
312fi
313obuild_bhep_path=`"${obuild_find_exe}" bhep 'v1r4p2'`
314if [ "${obuild_bhep_path}" = "" ] ; then
315 echo "Can't find bhep package."
316 exit
317fi
318if [ "${obuild_find_exe}" = "" ] ; then
319 echo "Variable obuild_find_exe not defined."
320 exit
321fi
322obuild_HDF5_path=`"${obuild_find_exe}" HDF5 'v1r*'`
323if [ "${obuild_HDF5_path}" = "" ] ; then
324 echo "Can't find HDF5 package."
325 exit
326fi
327if [ "${obuild_find_exe}" = "" ] ; then
328 echo "Variable obuild_find_exe not defined."
329 exit
330fi
331obuild_zlib_path=`"${obuild_find_exe}" zlib 'v1r*'`
332if [ "${obuild_zlib_path}" = "" ] ; then
333 echo "Can't find zlib package."
334 exit
335fi
336
337obuild_cxx_includes="-I\"${obuild_snova_path}\""
338obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/GeomUtils/include\""
339obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/SNgeom2/include\""
340obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/SNvertex/include\""
341obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_bhep_path}\""
342if [ "${obuild_platform_exe}" = "" ] ; then
343 echo "Variable obuild_platform_exe not defined."
344 exit
345fi
346obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
347if [ ${obuild_platform_result} = yes ] ; then
348obuild_cxx_includes="${obuild_cxx_includes} -I${CLHEP_home}/include"
349fi
350unset obuild_platform_result
351if [ "${obuild_platform_exe}" = "" ] ; then
352 echo "Variable obuild_platform_exe not defined."
353 exit
354fi
355obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
356if [ ${obuild_platform_result} = yes ] ; then
357obuild_cxx_includes="${obuild_cxx_includes} -I${Geant4_home}/include"
358fi
359unset obuild_platform_result
360obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_HDF5_path}/include\""
361
362if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
363 /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
364fi
365
366/bin/mkdir -p "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
367
368# Compile prog_snova files :
369if [ ${obuild_do_not_compile} = no ] ; then
370
371if [ ${obuild_verbose} = yes ] ; then set -x;fi
372cd "${obuild_snova_path}/${obuild_dir_bin}"
373 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./app_prog_snova/prog_snova2.o \"../source/snova/prog_snova2.cxx\"
374obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
375cd "${obuild_snova_path}/obuild"
376
377if [ ${obuild_verbose} = yes ] ; then set +x;fi
378
379fi #do_not_compile
380
381if [ "${obuild_platform_exe}" = "" ] ; then
382 echo "Variable obuild_platform_exe not defined."
383 exit
384fi
385obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
386if [ ${obuild_platform_result} = yes ] ; then
387obuild_cxx_linker_command="c++"
388fi
389unset obuild_platform_result
390if [ "${obuild_platform_exe}" = "" ] ; then
391 echo "Variable obuild_platform_exe not defined."
392 exit
393fi
394obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
395if [ ${obuild_platform_result} = yes ] ; then
396obuild_cxx_linker_command="c++"
397fi
398unset obuild_platform_result
399if [ "${obuild_platform_exe}" = "" ] ; then
400 echo "Variable obuild_platform_exe not defined."
401 exit
402fi
403obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
404if [ ${obuild_platform_result} = yes ] ; then
405obuild_cxx_linker_command="cxx"
406fi
407unset obuild_platform_result
408if [ "${obuild_platform_exe}" = "" ] ; then
409 echo "Variable obuild_platform_exe not defined."
410 exit
411fi
412obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
413if [ ${obuild_platform_result} = yes ] ; then
414obuild_cxx_linker_command="link.exe"
415fi
416unset obuild_platform_result
417if [ "${obuild_cxx_linker_command}" = "" ] ; then
418 echo "Variable obuild_cxx_linker_command not defined."
419 exit
420fi
421
422if [ "${obuild_platform_exe}" = "" ] ; then
423 echo "Variable obuild_platform_exe not defined."
424 exit
425fi
426obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
427if [ ${obuild_platform_result} = yes ] ; then
428obuild_cxx_linker_debug="-g"
429fi
430unset obuild_platform_result
431if [ "${obuild_platform_exe}" = "" ] ; then
432 echo "Variable obuild_platform_exe not defined."
433 exit
434fi
435obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
436if [ ${obuild_platform_result} = yes ] ; then
437obuild_cxx_linker_debug="-g"
438fi
439unset obuild_platform_result
440if [ "${obuild_platform_exe}" = "" ] ; then
441 echo "Variable obuild_platform_exe not defined."
442 exit
443fi
444obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
445if [ ${obuild_platform_result} = yes ] ; then
446obuild_cxx_linker_debug="-g"
447fi
448unset obuild_platform_result
449if [ "${obuild_platform_exe}" = "" ] ; then
450 echo "Variable obuild_platform_exe not defined."
451 exit
452fi
453obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
454if [ ${obuild_platform_result} = yes ] ; then
455obuild_cxx_linker_debug="/DEBUG"
456fi
457unset obuild_platform_result
458
459if [ "${obuild_platform_exe}" = "" ] ; then
460 echo "Variable obuild_platform_exe not defined."
461 exit
462fi
463obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
464if [ ${obuild_platform_result} = yes ] ; then
465obuild_cxx_linker_options="/nologo"
466fi
467unset obuild_platform_result
468
469if [ ${obuild_debug} = yes ] ; then
470 obuild_cxx_linker_debug_local=${obuild_cxx_linker_debug}
471else
472 obuild_cxx_linker_debug_local=
473fi
474
475if [ ${obuild_optimize} = yes ] ; then
476 obuild_cxx_linker_optimize_local=${obuild_cxx_linker_optimize}
477else
478 obuild_cxx_linker_optimize_local=
479fi
480obuild_linked_paths="-L\"${obuild_snova_path}/${obuild_dir_bin}\""
481obuild_linked_libraries=" -lsnova"
482obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
483obuild_linked_libraries="${obuild_linked_libraries} -lsnvertex"
484obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
485obuild_linked_libraries="${obuild_linked_libraries} -lsngeom"
486obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
487obuild_linked_libraries="${obuild_linked_libraries} -lgeomutils"
488obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_bhep_path}/${obuild_dir_bin}\""
489obuild_linked_libraries="${obuild_linked_libraries} -lbhep"
490obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_HDF5_path}/${obuild_dir_bin}\""
491obuild_linked_libraries="${obuild_linked_libraries} -losc_HDF5"
492obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_zlib_path}/${obuild_dir_bin}\""
493obuild_linked_libraries="${obuild_linked_libraries} -losc_z"
494if [ "${obuild_platform_exe}" = "" ] ; then
495 echo "Variable obuild_platform_exe not defined."
496 exit
497fi
498obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
499if [ ${obuild_platform_result} = yes ] ; then
500obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4readout -lG4run -lG4event -lG4tracking -lG4processes -lG4digits_hits -lG4track -lG4particles -lG4geometry -lG4graphics_reps -lG4materials -lG4intercoms -lG4global"
501fi
502unset obuild_platform_result
503if [ "${obuild_platform_exe}" = "" ] ; then
504 echo "Variable obuild_platform_exe not defined."
505 exit
506fi
507obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
508if [ ${obuild_platform_result} = yes ] ; then
509obuild_linked_libraries="${obuild_linked_libraries} -L${CLHEP_home}/lib -lCLHEP"
510fi
511unset obuild_platform_result
512
513# Link prog_snova :
514cd "${obuild_snova_path}/${obuild_dir_bin}"
515obuild_objs=`find ./app_prog_snova -name '*.o' -print`
516/bin/rm -f ./prog_snova
517if [ ${obuild_verbose} = yes ] ; then set -x;fi
518 eval ${obuild_cxx_linker_command} ${obuild_cxx_linker_debug_local} ${obuild_cxx_linker_optimize_local} ${obuild_cxx_linker_options} -o \"${obuild_snova_path}/${obuild_dir_bin}/prog_snova\" ${obuild_objs} ${obuild_linked_paths} ${obuild_linked_libraries}
519obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
520if [ ${obuild_verbose} = yes ] ; then set +x;fi
521cd "${obuild_snova_path}/obuild"
522
523# Some cleanup :
524if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
525 /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
526fi
527/bin/rm -f "${obuild_snova_path}/${obuild_dir_bin}/obuild_find"
528
Note: See TracBrowser for help on using the repository browser.