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

Last change on this file since 275 was 275, checked in by barrand, 17 years ago
  • Property svn:executable set to *
File size: 15.8 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=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
282if [ "${obuild_find_exe}" = "" ] ; then
283  echo "Variable obuild_find_exe not defined."
284  exit
285fi
286obuild_bhep_path=`"${obuild_find_exe}" bhep 'v1r4p2'`
287if [ "${obuild_bhep_path}" = "" ] ; then
288  echo "Can't find bhep package."
289  exit
290fi
291
292obuild_cxx_includes="-I\"${obuild_snova_path}\""
293obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/GeomUtils/include\""
294obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/SNgeom2/include\""
295obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_snova_path}/source/SNvertex/include\""
296obuild_cxx_includes="${obuild_cxx_includes} -I\"${obuild_bhep_path}\""
297if [ "${obuild_platform_exe}" = "" ] ; then
298  echo "Variable obuild_platform_exe not defined."
299  exit
300fi
301obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
302if [ ${obuild_platform_result} = yes ] ; then
303obuild_cxx_includes="${obuild_cxx_includes} -I${CLHEP_home}/include"
304fi
305unset obuild_platform_result
306if [ "${obuild_platform_exe}" = "" ] ; then
307  echo "Variable obuild_platform_exe not defined."
308  exit
309fi
310obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
311if [ ${obuild_platform_result} = yes ] ; then
312obuild_cxx_includes="${obuild_cxx_includes} -I${Geant4_home}/include"
313fi
314unset obuild_platform_result
315if [ "${obuild_platform_exe}" = "" ] ; then
316  echo "Variable obuild_platform_exe not defined."
317  exit
318fi
319obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
320if [ ${obuild_platform_result} = yes ] ; then
321obuild_cxx_includes="${obuild_cxx_includes} -I${HDF5_home}/include"
322fi
323unset obuild_platform_result
324
325if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
326  /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
327fi
328
329/bin/mkdir -p "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
330
331# Compile prog_snova files :
332if [ ${obuild_do_not_compile} = no ] ; then
333
334if [ ${obuild_verbose} = yes ] ; then set -x;fi
335cd "${obuild_snova_path}/${obuild_dir_bin}"
336 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\"
337obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
338cd "${obuild_snova_path}/obuild"
339
340if [ ${obuild_verbose} = yes ] ; then set +x;fi
341
342fi #do_not_compile
343
344if [ "${obuild_platform_exe}" = "" ] ; then
345  echo "Variable obuild_platform_exe not defined."
346  exit
347fi
348obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
349if [ ${obuild_platform_result} = yes ] ; then
350obuild_cxx_linker_command="c++"
351fi
352unset obuild_platform_result
353if [ "${obuild_platform_exe}" = "" ] ; then
354  echo "Variable obuild_platform_exe not defined."
355  exit
356fi
357obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
358if [ ${obuild_platform_result} = yes ] ; then
359obuild_cxx_linker_command="c++"
360fi
361unset obuild_platform_result
362if [ "${obuild_platform_exe}" = "" ] ; then
363  echo "Variable obuild_platform_exe not defined."
364  exit
365fi
366obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
367if [ ${obuild_platform_result} = yes ] ; then
368obuild_cxx_linker_command="cxx"
369fi
370unset obuild_platform_result
371if [ "${obuild_cxx_linker_command}" = "" ] ; then
372  echo "Variable obuild_cxx_linker_command not defined."
373  exit
374fi
375
376if [ "${obuild_platform_exe}" = "" ] ; then
377  echo "Variable obuild_platform_exe not defined."
378  exit
379fi
380obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
381if [ ${obuild_platform_result} = yes ] ; then
382obuild_cxx_linker_debug="-g"
383fi
384unset obuild_platform_result
385if [ "${obuild_platform_exe}" = "" ] ; then
386  echo "Variable obuild_platform_exe not defined."
387  exit
388fi
389obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
390if [ ${obuild_platform_result} = yes ] ; then
391obuild_cxx_linker_debug="-g"
392fi
393unset obuild_platform_result
394if [ "${obuild_platform_exe}" = "" ] ; then
395  echo "Variable obuild_platform_exe not defined."
396  exit
397fi
398obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
399if [ ${obuild_platform_result} = yes ] ; then
400obuild_cxx_linker_debug="-g"
401fi
402unset obuild_platform_result
403
404if [ ${obuild_debug} = yes ] ; then
405  obuild_cxx_linker_debug_local=${obuild_cxx_linker_debug}
406else
407  obuild_cxx_linker_debug_local=
408fi
409
410if [ ${obuild_optimize} = yes ] ; then
411  obuild_cxx_linker_optimize_local=${obuild_cxx_linker_optimize}
412else
413  obuild_cxx_linker_optimize_local=
414fi
415obuild_linked_paths="-L\"${obuild_snova_path}/${obuild_dir_bin}\""
416obuild_linked_libraries=" -lsnova_ui"
417obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
418obuild_linked_libraries="${obuild_linked_libraries}  -lsnova"
419obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
420obuild_linked_libraries="${obuild_linked_libraries}  -lsnvertex"
421obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
422obuild_linked_libraries="${obuild_linked_libraries}  -lsngeom"
423obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_snova_path}/${obuild_dir_bin}\""
424obuild_linked_libraries="${obuild_linked_libraries}  -lgeomutils"
425obuild_linked_paths="${obuild_linked_paths} -L\"${obuild_bhep_path}/${obuild_dir_bin}\""
426obuild_linked_libraries="${obuild_linked_libraries}  -lbhep"
427if [ "${obuild_platform_exe}" = "" ] ; then
428  echo "Variable obuild_platform_exe not defined."
429  exit
430fi
431obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
432if [ ${obuild_platform_result} = yes ] ; then
433obuild_linked_libraries="${obuild_linked_libraries} -L${HDF5_home}/lib -lhdf5.0.0.0"
434fi
435unset obuild_platform_result
436if [ "${obuild_platform_exe}" = "" ] ; then
437  echo "Variable obuild_platform_exe not defined."
438  exit
439fi
440obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
441if [ ${obuild_platform_result} = yes ] ; then
442obuild_linked_libraries="${obuild_linked_libraries} -L${zlib_home}/lib -lz"
443fi
444unset obuild_platform_result
445obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4interfaces"
446obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4vis_management"
447obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4modeling"
448obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4Tree"
449if [ "${obuild_platform_exe}" = "" ] ; then
450  echo "Variable obuild_platform_exe not defined."
451  exit
452fi
453obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
454if [ ${obuild_platform_result} = yes ] ; then
455obuild_linked_libraries="${obuild_linked_libraries} -L${Geant4_home}/lib -lG4readout -lG4run -lG4event -lG4tracking -lG4processes -lG4digits_hits -lG4track -lG4particles -lG4geometry -lG4graphics_reps -lG4materials -lG4intercoms -lG4global"
456fi
457unset obuild_platform_result
458if [ "${obuild_platform_exe}" = "" ] ; then
459  echo "Variable obuild_platform_exe not defined."
460  exit
461fi
462obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
463if [ ${obuild_platform_result} = yes ] ; then
464obuild_linked_libraries="${obuild_linked_libraries} -L${CLHEP_home}/lib -lCLHEP-2.0.3.1"
465fi
466unset obuild_platform_result
467
468# Link prog_snova :
469cd "${obuild_snova_path}/${obuild_dir_bin}"
470obuild_objs=`find ./app_prog_snova -name '*.o' -print`
471/bin/rm -f ./prog_snova
472if [ ${obuild_verbose} = yes ] ; then set -x;fi
473 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}
474obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
475if [ ${obuild_verbose} = yes ] ; then set +x;fi
476cd "${obuild_snova_path}/obuild"
477
478# Some cleanup :
479if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
480  /bin/rm -R -f "${obuild_snova_path}/${obuild_dir_bin}/app_prog_snova"
481fi
482/bin/rm -f "${obuild_snova_path}/${obuild_dir_bin}/obuild_find"
483
Note: See TracBrowser for help on using the repository browser.