source: snovis/trunk/obuild/sh/build_dll_G4Lab @ 276

Last change on this file since 276 was 276, checked in by barrand, 17 years ago
  • Property svn:executable set to *
File size: 14.5 KB
Line 
1#!/bin/sh -f
2
3#
4# File produced by the obuild tool version 1.0
5# for the package snovis with version v1r1.
6#
7
8#////////////////////////////////////////////////
9# Usage :
10#   UNIX> cd some_path/pack/version/obuild
11# ( UNIX> chmod a+x sh/build_G4Lab )
12#   UNIX> sh/build_G4Lab
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_snovis_path=`dirname "${obuild_pwd}"`
78unset obuild_pwd
79
80# Create the bin directory :
81/bin/mkdir -p "${obuild_snovis_path}/${obuild_dir_bin}"
82
83if [ ! -e "${obuild_snovis_path}/${obuild_dir_bin}/obuild_platform" ] ; then
84  if [ ! -e "${obuild_snovis_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_snovis_path}/${obuild_dir_bin}/obuild_platform" "${obuild_snovis_path}/obuild/cpp/obuild_platform.cpp"
98  unset obuild_platform_compiler
99  if [ ! -e "${obuild_snovis_path}/${obuild_dir_bin}/obuild_platform" ] ; then
100    echo "Program obuild_platform not found."
101    exit
102  fi
103fi
104obuild_platform_exe="${obuild_snovis_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
138OSC_home="/usr/local/OpenScientist/v16r0"
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
251
252obuild_cxx_includes="-I\"${obuild_snovis_path}/source\""
253if [ "${obuild_platform_exe}" = "" ] ; then
254  echo "Variable obuild_platform_exe not defined."
255  exit
256fi
257obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
258if [ ${obuild_platform_result} = yes ] ; then
259obuild_cxx_includes="${obuild_cxx_includes} -I${OSC_home}/Resources/AIDA/src/cpp"
260fi
261unset obuild_platform_result
262if [ "${obuild_platform_exe}" = "" ] ; then
263  echo "Variable obuild_platform_exe not defined."
264  exit
265fi
266obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
267if [ ${obuild_platform_result} = yes ] ; then
268obuild_cxx_includes="${obuild_cxx_includes} -I${OSC_home}/Resources/Slash -I${OSC_home}/Resources/expat/include -I${OSC_home}/Resources/Lib/include -I${OSC_home}/Resources/OnX/include"
269fi
270unset obuild_platform_result
271if [ "${obuild_platform_exe}" = "" ] ; then
272  echo "Variable obuild_platform_exe not defined."
273  exit
274fi
275obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
276if [ ${obuild_platform_result} = yes ] ; then
277obuild_cxx_includes="${obuild_cxx_includes} -I${OSC_home}/Resources/BatchLab -I${OSC_home}/Resources/OnXLab"
278fi
279unset obuild_platform_result
280if [ "${obuild_platform_exe}" = "" ] ; then
281  echo "Variable obuild_platform_exe not defined."
282  exit
283fi
284obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
285if [ ${obuild_platform_result} = yes ] ; then
286obuild_cxx_includes="${obuild_cxx_includes} -I${OSC_home}/Resources/CoinGL/include -I${OSC_home}/Resources/HEPVis/include"
287fi
288unset obuild_platform_result
289
290if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
291  /bin/rm -R -f "${obuild_snovis_path}/${obuild_dir_bin}/dll_G4Lab"
292fi
293
294/bin/mkdir -p "${obuild_snovis_path}/${obuild_dir_bin}/dll_G4Lab"
295
296# Compile G4Lab files :
297if [ ${obuild_do_not_compile} = no ] ; then
298
299if [ ${obuild_verbose} = yes ] ; then set -x;fi
300cd "${obuild_snovis_path}/${obuild_dir_bin}"
301 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./dll_G4Lab/Callbacks.o \"../source/G4Lab/cxx/Callbacks.cxx\"
302obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
303cd "${obuild_snovis_path}/obuild"
304
305if [ ${obuild_verbose} = yes ] ; then set +x;fi
306
307fi #do_not_compile
308
309if [ "${obuild_platform_exe}" = "" ] ; then
310  echo "Variable obuild_platform_exe not defined."
311  exit
312fi
313obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
314if [ ${obuild_platform_result} = yes ] ; then
315obuild_linked_libraries="-L${OSC_home}/lib -lHEPVisPlotter -lHEPVisDetector -lHEPVisGeometry -lHEPVisUtils  -losc_dvi2bitmap -losc_jpeg -losc_freetype2 -losc_Coin -lLibUtils"
316fi
317unset obuild_platform_result
318if [ "${obuild_platform_exe}" = "" ] ; then
319  echo "Variable obuild_platform_exe not defined."
320  exit
321fi
322obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
323if [ ${obuild_platform_result} = yes ] ; then
324obuild_linked_libraries="${obuild_linked_libraries} -L${OSC_home}/lib -lOnXCore -lLibXML -losc_expat -lLibZip -lz -lLibUtils -ldl"
325fi
326unset obuild_platform_result
327
328if [ "${obuild_platform_exe}" = "" ] ; then
329  echo "Variable obuild_platform_exe not defined."
330  exit
331fi
332obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
333if [ ${obuild_platform_result} = yes ] ; then
334obuild_cxx_dll_builder_command="c++"
335fi
336unset obuild_platform_result
337if [ "${obuild_platform_exe}" = "" ] ; then
338  echo "Variable obuild_platform_exe not defined."
339  exit
340fi
341obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
342if [ ${obuild_platform_result} = yes ] ; then
343obuild_cxx_dll_builder_command="c++"
344fi
345unset obuild_platform_result
346if [ "${obuild_platform_exe}" = "" ] ; then
347  echo "Variable obuild_platform_exe not defined."
348  exit
349fi
350obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
351if [ ${obuild_platform_result} = yes ] ; then
352obuild_cxx_dll_builder_command="cxx"
353fi
354unset obuild_platform_result
355if [ "${obuild_cxx_dll_builder_command}" = "" ] ; then
356  echo "Variable obuild_cxx_dll_builder_command not defined."
357  exit
358fi
359
360if [ "${obuild_platform_exe}" = "" ] ; then
361  echo "Variable obuild_platform_exe not defined."
362  exit
363fi
364obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
365if [ ${obuild_platform_result} = yes ] ; then
366obuild_cxx_dll_builder_options="-bundle -twolevel_namespace -Wl,-headerpad_max_install_names -Wl,-headerpad,800"
367fi
368unset obuild_platform_result
369if [ "${obuild_platform_exe}" = "" ] ; then
370  echo "Variable obuild_platform_exe not defined."
371  exit
372fi
373obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
374if [ ${obuild_platform_result} = yes ] ; then
375obuild_cxx_dll_builder_options="-shared"
376fi
377unset obuild_platform_result
378if [ "${obuild_platform_exe}" = "" ] ; then
379  echo "Variable obuild_platform_exe not defined."
380  exit
381fi
382obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
383if [ ${obuild_platform_result} = yes ] ; then
384obuild_cxx_dll_builder_options="-shared"
385fi
386unset obuild_platform_result
387
388if [ "${obuild_platform_exe}" = "" ] ; then
389  echo "Variable obuild_platform_exe not defined."
390  exit
391fi
392obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
393if [ ${obuild_platform_result} = yes ] ; then
394obuild_cxx_dll_builder_prefix="lib"
395fi
396unset obuild_platform_result
397if [ "${obuild_platform_exe}" = "" ] ; then
398  echo "Variable obuild_platform_exe not defined."
399  exit
400fi
401obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
402if [ ${obuild_platform_result} = yes ] ; then
403obuild_cxx_dll_builder_prefix="lib"
404fi
405unset obuild_platform_result
406
407if [ "${obuild_platform_exe}" = "" ] ; then
408  echo "Variable obuild_platform_exe not defined."
409  exit
410fi
411obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
412if [ ${obuild_platform_result} = yes ] ; then
413obuild_cxx_dll_builder_suffix="bundle"
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} 'Linux'`
421if [ ${obuild_platform_result} = yes ] ; then
422obuild_cxx_dll_builder_suffix="so"
423fi
424unset obuild_platform_result
425if [ "${obuild_platform_exe}" = "" ] ; then
426  echo "Variable obuild_platform_exe not defined."
427  exit
428fi
429obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
430if [ ${obuild_platform_result} = yes ] ; then
431obuild_cxx_dll_builder_suffix="so"
432fi
433unset obuild_platform_result
434
435if [ ${obuild_debug} = yes ] ; then
436  obuild_cxx_dll_builder_debug_local=${obuild_cxx_dll_builder_debug}
437else
438  obuild_cxx_dll_builder_debug_local=
439fi
440
441if [ ${obuild_optimize} = yes ] ; then
442  obuild_cxx_dll_builder_optimize_local=${obuild_cxx_dll_builder_optimize}
443else
444  obuild_cxx_dll_builder_optimize_local=
445fi
446# Create the dll G4Lab :
447cd "${obuild_snovis_path}/${obuild_dir_bin}"
448obuild_objs=`find ./dll_G4Lab -name '*.o' -print`
449/bin/rm -f ./${obuild_cxx_dll_builder_prefix}G4Lab.${obuild_cxx_dll_builder_suffix}
450if [ ${obuild_verbose} = yes ] ; then set -x;fi
451 eval ${obuild_cxx_dll_builder_command} ${obuild_cxx_dll_builder_options} -o \"${obuild_snovis_path}/${obuild_dir_bin}/${obuild_cxx_dll_builder_prefix}G4Lab.${obuild_cxx_dll_builder_suffix}\" ${obuild_objs} ${obuild_linked_paths} ${obuild_linked_libraries}
452obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
453if [ ${obuild_verbose} = yes ] ; then set +x;fi
454cd "${obuild_snovis_path}/obuild"
455
456# Some cleanup :
457if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
458  /bin/rm -R -f "${obuild_snovis_path}/${obuild_dir_bin}/dll_G4Lab"
459fi
460/bin/rm -f "${obuild_snovis_path}/${obuild_dir_bin}/obuild_find"
461
Note: See TracBrowser for help on using the repository browser.