source: snovis/trunk/obuild/sh/build_lib_G4LabUIOnX @ 268

Last change on this file since 268 was 246, 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_G4LabUIOnX )
12#   UNIX> sh/build_G4LabUIOnX
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_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_platform_exe}" = "" ] ; then
169  echo "Variable obuild_platform_exe not defined."
170  exit
171fi
172obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
173if [ ${obuild_platform_result} = yes ] ; then
174obuild_cxx_command="cl.exe"
175fi
176unset obuild_platform_result
177if [ "${obuild_cxx_command}" = "" ] ; then
178  echo "Variable obuild_cxx_command not defined."
179  exit
180fi
181
182if [ "${obuild_platform_exe}" = "" ] ; then
183  echo "Variable obuild_platform_exe not defined."
184  exit
185fi
186obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
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} 'Linux'`
196if [ ${obuild_platform_result} = yes ] ; then
197obuild_cxx_optimize="-O"
198fi
199unset obuild_platform_result
200if [ "${obuild_platform_exe}" = "" ] ; then
201  echo "Variable obuild_platform_exe not defined."
202  exit
203fi
204obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
205if [ ${obuild_platform_result} = yes ] ; then
206obuild_cxx_optimize="-O"
207fi
208unset obuild_platform_result
209if [ "${obuild_platform_exe}" = "" ] ; then
210  echo "Variable obuild_platform_exe not defined."
211  exit
212fi
213obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
214if [ ${obuild_platform_result} = yes ] ; then
215obuild_cxx_optimize="/O2"
216fi
217unset obuild_platform_result
218
219if [ "${obuild_platform_exe}" = "" ] ; then
220  echo "Variable obuild_platform_exe not defined."
221  exit
222fi
223obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
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} 'Linux'`
233if [ ${obuild_platform_result} = yes ] ; then
234obuild_cxx_debug="-g"
235fi
236unset obuild_platform_result
237if [ "${obuild_platform_exe}" = "" ] ; then
238  echo "Variable obuild_platform_exe not defined."
239  exit
240fi
241obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
242if [ ${obuild_platform_result} = yes ] ; then
243obuild_cxx_debug="-g"
244fi
245unset obuild_platform_result
246if [ "${obuild_platform_exe}" = "" ] ; then
247  echo "Variable obuild_platform_exe not defined."
248  exit
249fi
250obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
251if [ ${obuild_platform_result} = yes ] ; then
252obuild_cxx_debug="/ZI /Od"
253fi
254unset obuild_platform_result
255
256if [ "${obuild_platform_exe}" = "" ] ; then
257  echo "Variable obuild_platform_exe not defined."
258  exit
259fi
260obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
261if [ ${obuild_platform_result} = yes ] ; then
262obuild_cxx_options="-fPIC"
263fi
264unset obuild_platform_result
265if [ "${obuild_platform_exe}" = "" ] ; then
266  echo "Variable obuild_platform_exe not defined."
267  exit
268fi
269obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Windows_NT'`
270if [ ${obuild_platform_result} = yes ] ; then
271obuild_cxx_options="/nologo /DWIN32 /MD /GX /GR /W3"
272fi
273unset obuild_platform_result
274
275if [ ${obuild_debug} = yes ] ; then
276  obuild_cxx_debug_local=${obuild_cxx_debug}
277else
278  obuild_cxx_debug_local=
279fi
280
281if [ ${obuild_optimize} = yes ] ; then
282  obuild_cxx_optimize_local=${obuild_cxx_optimize}
283else
284  obuild_cxx_optimize_local=
285fi
286
287
288obuild_cxx_includes="-I\"${obuild_snovis_path}/source\""
289if [ "${obuild_platform_exe}" = "" ] ; then
290  echo "Variable obuild_platform_exe not defined."
291  exit
292fi
293obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
294if [ ${obuild_platform_result} = yes ] ; then
295obuild_cxx_includes="${obuild_cxx_includes} -I${CLHEP_home}/include"
296fi
297unset obuild_platform_result
298if [ "${obuild_platform_exe}" = "" ] ; then
299  echo "Variable obuild_platform_exe not defined."
300  exit
301fi
302obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
303if [ ${obuild_platform_result} = yes ] ; then
304obuild_cxx_includes="${obuild_cxx_includes} -I${Geant4_home}/include"
305fi
306unset obuild_platform_result
307if [ "${obuild_platform_exe}" = "" ] ; then
308  echo "Variable obuild_platform_exe not defined."
309  exit
310fi
311obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
312if [ ${obuild_platform_result} = yes ] ; then
313obuild_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"
314fi
315unset obuild_platform_result
316if [ "${obuild_platform_exe}" = "" ] ; then
317  echo "Variable obuild_platform_exe not defined."
318  exit
319fi
320obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'UNIX'`
321if [ ${obuild_platform_result} = yes ] ; then
322obuild_cxx_includes="${obuild_cxx_includes} -I${OSC_home}/Resources/BatchLab -I${OSC_home}/Resources/OnXLab"
323fi
324unset obuild_platform_result
325
326if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
327  /bin/rm -R -f "${obuild_snovis_path}/${obuild_dir_bin}/lib_G4LabUIOnX"
328fi
329
330/bin/mkdir -p "${obuild_snovis_path}/${obuild_dir_bin}/lib_G4LabUIOnX"
331
332# Compile G4LabUIOnX files :
333if [ ${obuild_do_not_compile} = no ] ; then
334
335if [ ${obuild_verbose} = yes ] ; then set -x;fi
336cd "${obuild_snovis_path}/${obuild_dir_bin}"
337 eval ${obuild_cxx_command} -c ${obuild_cxx_debug_local} ${obuild_cxx_optimize_local} ${obuild_cxx_options} ${obuild_cxx_macros} ${obuild_cxx_includes} -o ./lib_G4LabUIOnX/UIOnX.o \"../source/G4Lab/cxx/UIOnX.cxx\"
338obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
339cd "${obuild_snovis_path}/obuild"
340
341if [ ${obuild_verbose} = yes ] ; then set +x;fi
342
343fi #do_not_compile
344
345if [ "${obuild_platform_exe}" = "" ] ; then
346  echo "Variable obuild_platform_exe not defined."
347  exit
348fi
349obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
350if [ ${obuild_platform_result} = yes ] ; then
351obuild_cxx_shared_lib_builder_command="c++"
352fi
353unset obuild_platform_result
354if [ "${obuild_platform_exe}" = "" ] ; then
355  echo "Variable obuild_platform_exe not defined."
356  exit
357fi
358obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
359if [ ${obuild_platform_result} = yes ] ; then
360obuild_cxx_shared_lib_builder_command="c++"
361fi
362unset obuild_platform_result
363if [ "${obuild_platform_exe}" = "" ] ; then
364  echo "Variable obuild_platform_exe not defined."
365  exit
366fi
367obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
368if [ ${obuild_platform_result} = yes ] ; then
369obuild_cxx_shared_lib_builder_command="cxx"
370fi
371unset obuild_platform_result
372if [ "${obuild_cxx_shared_lib_builder_command}" = "" ] ; then
373  echo "Variable obuild_cxx_shared_lib_builder_command not defined."
374  exit
375fi
376
377if [ "${obuild_platform_exe}" = "" ] ; then
378  echo "Variable obuild_platform_exe not defined."
379  exit
380fi
381obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
382if [ ${obuild_platform_result} = yes ] ; then
383obuild_cxx_shared_lib_builder_options="-dynamiclib -twolevel_namespace -undefined dynamic_lookup -dynamic -single_module"
384fi
385unset obuild_platform_result
386if [ "${obuild_platform_exe}" = "" ] ; then
387  echo "Variable obuild_platform_exe not defined."
388  exit
389fi
390obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
391if [ ${obuild_platform_result} = yes ] ; then
392obuild_cxx_shared_lib_builder_options="-shared"
393fi
394unset obuild_platform_result
395if [ "${obuild_platform_exe}" = "" ] ; then
396  echo "Variable obuild_platform_exe not defined."
397  exit
398fi
399obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
400if [ ${obuild_platform_result} = yes ] ; then
401obuild_cxx_shared_lib_builder_options="-shared -expect_unresolved *"
402fi
403unset obuild_platform_result
404
405if [ "${obuild_platform_exe}" = "" ] ; then
406  echo "Variable obuild_platform_exe not defined."
407  exit
408fi
409obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Darwin'`
410if [ ${obuild_platform_result} = yes ] ; then
411obuild_cxx_shared_lib_builder_suffix="dylib"
412fi
413unset obuild_platform_result
414if [ "${obuild_platform_exe}" = "" ] ; then
415  echo "Variable obuild_platform_exe not defined."
416  exit
417fi
418obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'Linux'`
419if [ ${obuild_platform_result} = yes ] ; then
420obuild_cxx_shared_lib_builder_suffix="so"
421fi
422unset obuild_platform_result
423if [ "${obuild_platform_exe}" = "" ] ; then
424  echo "Variable obuild_platform_exe not defined."
425  exit
426fi
427obuild_platform_result=`"${obuild_platform_exe}" ${obuild_platform} 'OSF1'`
428if [ ${obuild_platform_result} = yes ] ; then
429obuild_cxx_shared_lib_builder_suffix="so"
430fi
431unset obuild_platform_result
432
433if [ ${obuild_debug} = yes ] ; then
434  obuild_cxx_shared_lib_builder_debug_local=${obuild_cxx_shared_lib_builder_debug}
435else
436  obuild_cxx_shared_lib_builder_debug_local=
437fi
438
439if [ ${obuild_optimize} = yes ] ; then
440  obuild_cxx_shared_lib_builder_optimize_local=${obuild_cxx_shared_lib_builder_optimize}
441else
442  obuild_cxx_shared_lib_builder_optimize_local=
443fi
444# Create the shared library G4LabUIOnX :
445cd "${obuild_snovis_path}/${obuild_dir_bin}"
446obuild_objs=`find ./lib_G4LabUIOnX -name '*.o' -print`
447/bin/rm -f ./libG4LabUIOnX.${obuild_cxx_shared_lib_builder_suffix}
448
449if [ ${obuild_verbose} = yes ] ; then set -x;fi
450 ${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_snovis_path}/${obuild_dir_bin}/libG4LabUIOnX.${obuild_cxx_shared_lib_builder_suffix}" ${obuild_objs} ${obuild_linked_paths} ${obuild_linked_libraries}
451obuild_status=$?;if [ ${obuild_status} != 0 ] ; then exit ${obuild_status};fi
452if [ ${obuild_verbose} = yes ] ; then set +x;fi
453cd "${obuild_snovis_path}/obuild"
454
455# Some cleanup :
456if [ ${obuild_dir_bin_o_cleanup} = yes ] ; then
457  /bin/rm -R -f "${obuild_snovis_path}/${obuild_dir_bin}/lib_G4LabUIOnX"
458fi
459/bin/rm -f "${obuild_snovis_path}/${obuild_dir_bin}/obuild_find"
460
Note: See TracBrowser for help on using the repository browser.