2 # ----------------------------------------------------------------
3 # This script sets the default environment variables for
4 # Alice Geant4 based prototype
5 # Options: -g verbose mode
6 # local recomended local configuration
8 # by I. Hrivnacova, 18.8.1998
10 # sh version modified by I. Gonzalez 2.3.2000
13 # ==================================================================
14 # Alice configuration options:
15 # Please define your selection with the variables below.
16 # ==================================================================
22 # If set: the provided Geant4 version and not the default one is set
23 #export AG4_VERSION=2.0_opt_global
26 # ====== AG4_VISUALIZE
27 # Set/Unset to get/avoid Geant4 visualisation.
28 export AG4_VISUALIZE=1
33 # Set/Unset to get OPACS as a Geant4 visualisation driver.
38 # ====== AG4_MAKESHLIB
39 # If set: shared libraris are created
40 export AG4_MAKESHLIB=1
45 # Resolve input parameters
52 -g) VERBOSE="YES"; shift 1;;
53 local) LOCAL="YES"; shift 1;;
59 # ==================================================================
61 # ==================================================================
64 if [ "$LOCAL" = "NO" ]; then
70 # ALICE base directory
71 ALICE_BASE=/afs/cern.ch/alice/offline
74 # Geant4 base directory
75 G4_BASE=${ALICE_BASE}/geant4
78 # LHC++ base directory
79 LHCXX_BASE=/afs/cern.ch/sw/lhcxx/specific/@sys
83 ROOT_BASE=/afs/cern.ch/alice/library/root
84 # to be removed after aCC support will be defined
85 # in the offline in a standard way
86 if [ `uname` = "HP-UX" ]; then
87 ROOT_BASE=/afs/cern.ch/alice/library/.hp_ux102/root.2.23.aCC
91 # IRST code check tool base directory
92 export IRST_BASE=/afs/cern.ch/alice/offline/geant4/tools/IRST
96 # recommended local installation
100 # ALICE base directory
104 # Geant4 base directory
108 # LHC++ base directory
112 # Root base directory
113 ROOT_BASE=$HOME/dev/root
116 # IRST code check tool base directory
117 export IRST_BASE=$HOME/dev/tools/IRST
122 #....................................... SKIP ................................
124 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
125 # You should not need to change
126 # the lines below this one
127 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
130 # Alice Geant4 install directory
132 export AG4_INSTALL=$ALICE_ROOT/AliGeant4
133 export G3G4_NOREFLECTION=1
135 # Set variables depending on other variables
136 # if opacs is selected then select also visualize
137 if [ $AG4_OPACS ]; then
138 export AG4_VISUALIZE=1
142 if [ "$VERBOSE" = "YES" ]; then
144 echo " =========================================="
145 echo " ALICE Geant4 environment configuration"
146 echo " =========================================="
149 # Some output on the selections...
152 if [ $AG4_VISUALIZE ]; then
153 echo "Geant4 visualisation is selected."
155 echo "Geant4 visualisation is NOT selected."
157 if [ $AG4_OPACS ]; then
158 echo "OPACS driver is selected."
160 echo "OPACS driver is NOT selected."
162 if [ $AG4_NOPHYSICS ]; then
163 echo "Only geantino or charged geantino can be shooted."
165 echo "Full physics has been selected."
167 if [ $AG4_ODBMS ]; then
168 echo "The environment for using Objectivity will be set."
170 echo "No Geant4 Persistency."
176 # ROOT Alice definitions & options
177 # ==================================
179 if [ "$ROOTSYS" = "" ]; then
180 export ROOTSYS=$ROOT_BASE
182 if [ "$VERBOSE" = "YES" ]; then
186 echo "ROOTSYS set to $ROOTSYS"
191 # ==================================
193 if [ "$VERBOSE" = "YES" ]; then
195 echo "Geant4 env. variables..."
196 echo "============================"
198 if [ "$AG4_VERSION" = "" ]; then
199 export G4INSTALL=$G4_BASE/geant4
201 export G4INSTALL=$G4_BASE/g4dev/geant4.$AG4_VERSION
204 if [ "$AG4_MAKESHLIB" = "" ]; then
205 unset G4LIB_BUILD_SHARED
207 export G4LIB_BUILD_SHARED=1
210 # path to data files needed by hadronic processes
211 export G4LEVELGAMMADATA=$G4INSTALL/data/PhotonEvaporation
213 # This is architecture dependent...
215 if [ "$SYSTEM" = "HP-UX" ]; then
216 export G4SYSTEM="HP-aCC"
217 #export G4USE_OSPACE=1 # compiling with Object Space STL
219 if [ "$SYSTEM" = "Linux" ]; then
220 export G4SYSTEM="Linux-g++"
222 if [ "$SYSTEM" = "OSF1" ]; then
223 export G4SYSTEM="DEC-cxx"
224 #export G4NO_STD_NAMESPACE=1 # compiling with non ISO/ANSI setup
226 if [ "$SYSTEM" = "SunOS" ]; then
227 export G4SYSTEM="SUN-CC"
228 export G4USE_OSPACE=1 # compiling with Object Space STL
230 if [ "$VERBOSE" = "YES" ]; then
231 echo "Architecture is $SYSTEM"
232 echo "Geant4 is istalled in $G4INSTALL"
233 echo "Geant4 architecture type is $G4SYSTEM"
234 if [ $G4USE_OSPACE ]; then
235 echo "ObjectSpace will be used for STL"
242 # ==================================
245 if [ -d $LHCXX_BASE/CLHEP/1.7.0.0 ]; then
246 export CLHEP_BASE_DIR=$LHCXX_BASE/CLHEP/1.7.0.0
248 echo "WARNING: CLHEP has not been found in the default path."
249 if [ "$VERBOSE" = "YES" ]; then
250 echo " Please set the variable CLHEP_BASE_DIR to its base path"
251 echo " Example: export CLHEP_BASE_DIR=/afs/cern.ch/sw/lhcxx/specific/@sys/CLHEP/pro"
254 if [ "$VERBOSE" = "YES" ]; then
255 echo "CLHEP base directory: $CLHEP_BASE_DIR"
261 # ==================================
264 if [ $AG4_VISUALIZE ]; then
265 if [ "$VERBOSE" = "YES" ]; then
266 echo "G4 Visualization env. variables..."
272 if [ "$VERBOSE" = "YES" ]; then
275 export G4UI_USE_TCSH=1
280 if [ "$VERBOSE" = "YES" ]; then
281 echo "* X11 with Motif..."
283 export G4UI_BUILD_XM_DRIVER=1
284 export G4UI_BUILD_XM_SESSION=1
290 if [ "$VERBOSE" = "YES" ]; then
291 echo "* Fukui Renderer (DAWN)..."
293 export G4VIS_BUILD_DAWN_DRIVER=1
294 export G4VIS_BUILD_DAWNFILE_DRIVER=1
295 export G4VIS_USE_DAWN=1
296 export G4VIS_USE_DAWNFILE=1
297 #export G4DAWNFILE_VIEWER=david
298 export DAWN_HOME=${G4_BASE}/tools/bin
299 if [ "`echo ${PATH} | grep ${DAWN_HOME} `" = "" ]; then
300 export PATH=$PATH:$DAWN_HOME
302 export G4DAWN_MULTI_WINDOW=1
303 if [ `uname` = "Linux" ]; then
304 export G4DAWN_NAMED_PIPE=1
307 if [ "$VERBOSE" = "YES" ]; then
308 if [ $G4VIS_USE_DAWN ]; then
309 echo " Dawn driver activated"
311 if [ $G4VIS_USE_DAWNFILE ]; then
312 echo " Dawn file driver activated"
314 if [ $G4DAWNFILE_VIEWER ]; then
315 echo " Dawn file viewer set to ${G4DAWNFILE_VIEWER}"
317 if [ $DAWN_HOME ]; then
318 echo " Dawn home path set to ${DAWN_HOME}"
320 if [ $G4DAWN_MULTI_WINDOW ]; then
321 echo " Dawn multi window selected"
323 if [ $G4DAWN_NAMED_PIPE ]; then
324 echo " Dawn named pipe selected"
330 # Set colors for overlappings
331 export DAVID_RAINBOW_FLAG=1
332 #export DAVID_HIGHLIGHT_COLOR_R=r
333 #export DAVID_HIGHLIGHT_COLOR_G=g
334 #export DAVID_HIGHLIGHT_COLOR_B=b
336 # If set volumes names are shown
337 export DAVID_DISPLAY_PVNAME=1
338 # If set supresses the call to dawn
339 #export DAVID_NO_VIEW=1
340 export DAVID_EPSILON_3D=0.001
342 if [ "$1" = "-g" ]; then
343 if [ $DAVID_RAINBOW_FLAG ]; then
344 echo " DAVID Rainbow mode is ON"
346 if [ $DAVID_HIGHLIGHT_COLOR_R ]; then
347 echo " DAVID Highlight color (Red) set to ${DAVID_HIGHLIGHT_COLOR_R}"
349 if [ $DAVID_HIGHLIGHT_COLOR_G ]; then
350 echo " DAVID Highlight color (Green) set to ${DAVID_HIGHLIGHT_COLOR_G}"
352 if [ $DAVID_HIGHLIGHT_COLOR_B ]; then
353 echo " DAVID Highlight color (Blue) set to ${DAVID_HIGHLIGHT_COLOR_B}"
355 if [ $DAVID_DISPLAY_PVNAME ]; then
356 echo " DAVID will display intersected volumes name"
358 if [ $DAVID_DISPLAY_PVNAME ]; then
359 echo " Dawn will not be called from DAVID"
361 if [ $DAVID_EPSILON_3D ]; then
362 echo " DAVID tolerance set to ${DAVID_EPSILON_3D}"
369 if [ "$VERBOSE" = "YES" ]; then
372 export G4VIS_BUILD_OPENGLX_DRIVER=1
373 export G4VIS_BUILD_OPENGLXM_DRIVER=1
374 export G4VIS_USE_OPENGLX=1
375 export G4VIS_USE_OPENGLXM=1
376 export OGLHOME=/usr/local
377 export OGLLIBS="-L$OGLHOME/lib -lMesaGLU -lMesaGL"
378 if [ "$SYSTEM" = "HP-UX" ]; then
379 export OGLLIBS="-L/usr/lib $OGLLIBS"
381 if [ "$SYSTEM" = "OSF1" ]; then
382 # temporarily excluded
383 # due to problems with Root
384 unset G4VIS_BUILD_OPENGLX_DRIVER
385 unset G4VIS_BUILD_OPENGLXM_DRIVER
386 unset G4VIS_USE_OPENGLX
387 unset G4VIS_USE_OPENGLXM
391 if [ "$VERBOSE" = "YES" ]; then
392 if [ $G4VIS_USE_OPENGLX ]; then
393 echo " OpenGL and X11 driver activated"
395 if [ $G4VIS_USE_OPENGLXM ]; then
396 echo " OpenGL with Motif extension driver activated"
398 if [ $OGLHOME ]; then
399 echo " OpenGL path set to ${OGLHOME}"
401 if [ $OGLLIBS ]; then
402 echo " OpenGL libraries set to ${OGLLIBS}"
409 if [ "$VERBOSE" = "YES" ]; then
410 echo "* OpenInventor..."
412 #export G4VIS_USE_OPENINVENTOR=1
413 #export OIHOME=whatever
414 #export HEPVISDIR=something
415 if [ "$VERBOSE" = "YES" ]; then
416 if [ $G4VIS_USE_OPENINVENTOR ]; then
417 echo " OpenInventor driver activated"
418 echo " OpenInventor path is ${OIHOME}"
419 echo " HepVis path is ${HEPVISDIR}"
426 if [ "$VERBOSE" = "YES" ]; then
429 export G4VIS_BUILD_VRML_DRIVER=1
430 export G4VIS_BUILD_VRMLFILE_DRIVER=1
431 export G4VIS_USE_VRML=1
432 export G4VIS_USE_VRMLFILE=1
433 #Set preferred vrml viewer to be invoked in this mode
434 export G4VRMLFILE_VIEWER=vrweb
435 #Set host name for VRML1 visualization.... the g4vrmlview machine!
436 export G4VRML_HOST_NAME=nohost
437 #Command to run java listener for VRML driver
438 #alias javavrml "java -classpath $G4_BASE/tools/bin/java g4vrmlview vrweb"
440 if [ "$VERBOSE" = "YES" ]; then
441 if [ $G4VIS_USE_VRML ]; then
442 echo " VRML driver activated"
443 echo " Host Name for remote visualization is ${G4VRML_HOST_NAME}"
445 if [ $G4VIS_USE_VRMLFILE ]; then
446 echo " VRML file driver activated"
447 echo " VRML viewer set to ${G4VRMLFILE_VIEWER}"
454 if [ "$VERBOSE" = "YES" ]; then
455 echo "* Ray Tracer..."
457 #export G4VIS_BUILD_RAYTRACER_DRIVER=1
458 #export G4VIS_USE_RAYTRACER=1
459 if [ "$VERBOSE" = "YES" ]; then
460 if [ $G4VIS_USE_RAYTRACER ]; then
461 echo " Ray tracing driver activated"
468 if [ "$VERBOSE" = "YES" ]; then
469 echo "* Geant Adaptative GUI (GAG)..."
471 export G4UI_BUILD_GAG_SESSION=1
472 export G4UI_USE_GAG=1
473 export MOMOPATH=${G4_BASE}/tools/GAG/tcltk
474 if [ "`echo ${PATH} | grep ${MOMOPATH} `" = "" ]; then
475 export PATH=$PATH:$MOMOPATH
477 NCLASSPATH=".:${G4_BASE}/tools/swing-1.0.3/swingall.jar:${G4_BASE}/tools/GAG/java/GAG.jar"
478 if [ "$CLASSPATH" = "" ]; then
479 export CLASSPATH=$NCLASSPATH
481 if [ "`echo ${CLASSPATH} | grep ${NCLASSPATH} `" = "" ]; then
482 export CLASSPATH="${CLASSPATH}:${NCLASSPATH}"
486 if [ "$VERBOSE" = "YES" ]; then
487 if [ $G4UI_USE_GAG ]; then
488 echo " GAG UI activated"
489 echo " Momo path set to $MOMOPATH"
490 echo " NOTE: Run "\'tmomo\' "to use Momo (TK/Tcl version)"
491 echo " The path to the java GAG code was updated"
492 echo " NOTE: Run "\'java gag\'" to use GAG (java version)"
498 if [ "$VERBOSE" = "YES" ]; then
499 echo Unsetting G4 Visualization env. variables...
503 unset G4UI_BUILD_XM_DRIVER
504 unset G4UI_BUILD_XM_SESSION
508 unset G4VIS_BUILD_DAWN_DRIVER
509 unset G4VIS_BUILD_DAWNFILE_DRIVER
511 unset G4VIS_USE_DAWNFILE
512 unset G4DAWNFILE_VIEWER
514 unset G4DAWN_MULTI_WINDOW
515 if [ "$SYSTEM" = "Linux" ]; then
516 unset G4DAWN_NAMED_PIPE
520 unset DAVID_RAINBOW_FLAG
521 unset DAVID_HIGHLIGHT_COLOR_R
522 unset DAVID_HIGHLIGHT_COLOR_G
523 unset DAVID_HIGHLIGHT_COLOR_B
524 unset DAVID_DISPLAY_PVNAME
526 unset DAVID_EPSILON_3D
529 unset G4VIS_BUILD_OPENGLX_DRIVER
530 unset G4VIS_BUILD_OPENGLXM_DRIVER
531 unset G4VIS_USE_OPENGLX
532 unset G4VIS_USE_OPENGLXM
537 #unset G4VIS_USE_OPENINVENTOR
540 unset G4VIS_BUILD_VRML_DRIVER
541 unset G4VIS_BUILD_VRMLFILE_DRIVER
543 unset G4VIS_USE_VRMLFILE 1
544 unset G4VRMLFILE_VIEWER
545 unset G4VRML_HOST_NAME
548 unset G4UI_BUILD_GAG_SESSION
557 if [ $AG4_OPACS ]; then
558 if [ "$VERBOSE" = "YES" ]; then
561 export AG4_VISUALIZE=1
564 # OpenGL: needed by OPACS
566 export G4VIS_BUILD_OPENGLX_DRIVER=1
567 export G4VIS_USE_OPENGLX=1
568 export OGLHOME=/usr/local
569 export OGLLIBS="-L$OGLHOME/lib -lMesaGLU -lMesaGL"
570 if [ "$SYSTEM" = "HP-UX" ]; then
571 export OGLLIBS="-L/usr/lib $OGLLIBS"
577 export G4VIS_BUILD_OPACS_DRIVER=1
578 export G4UI_BUILD_WO_DRIVER=1
579 export G4UI_BUILD_WO_SESSION=1
580 export G4VIS_USE_OPACS=1
582 export OPACS_HOME=$G4_BASE/tools/OPACS
583 #export OPACS_HOME=/afs/cern.ch/rd44/dev/OPACS
584 if [ "$SYSTEM" = "Linux" ]; then
585 export G4_OPACS_WIDGET_SET=lesstif
587 export G4_OPACS_WIDGET_SET=Xm
589 . $OPACS_HOME/OPACS/v3/setup.sh
590 export WOENVIRONMENT=$AG4_INSTALL/bin/Alice.odb
591 export OPATH="$OPATH $G4INSTALL/environments/OPACS/usr"
592 if [ "$VERBOSE" = "YES" ]; then
593 if [ $G4VIS_USE_OPACS ]; then
594 echo " OPACS driver activated"
595 echo " OPACS path set to $OPACS_HOME"
599 if [ "$VERBOSE" = "YES" ]; then
600 echo "* Unsetting OPACS driver env. variables ..."
602 unset G4VIS_BUILD_OPACS_DRIVER
603 unset G4UI_BUILD_WO_DRIVER
604 unset G4UI_BUILD_WO_SESSION
605 unset G4VIS_USE_OPACS
608 unset G4_OPACS_WIDGET_SET
615 # path to AliGeant4 config scripts
617 if [ "`echo ${PATH} | grep ${AG4_INSTALL}/config `" = "" ]; then
618 if [ "$VERBOSE" = "YES" ]; then
619 echo Adding ${AG4_INSTALL}/config to the path...
621 export PATH=${PATH}:${AG4_INSTALL}/config
625 # path to shared libraries
627 if [ "$SYSTEM" = "HP-UX" ]; then
629 SHLIBVARNAME=SHLIB_PATH
631 if [ "$SYSTEM" = "Linux" ]; then
632 SHLIBVAR=$LD_LIBRARY_PATH
633 SHLIBVARNAME=LD_LIBRARY_PATH
635 if [ "$SYSTEM" = "OSF1" ]; then
636 SHLIBVAR=$LD_LIBRARY_PATH
637 SHLIBVARNAME=LD_LIBRARY_PATH
639 if [ "$SYSTEM" = "SunOS" ]; then
640 SHLIBVAR=$LD_LIBRARY_PATH
641 SHLIBVARNAME=LD_LIBRARY_PATH
644 if [ "`echo ${SHLIBVAR} | grep ${G4INSTALL}/lib/${G4SYSTEM} `" = "" ]; then
645 if [ "$VERBOSE" = "YES" ]; then
646 echo Adding ${G4INSTALL}/lib/${G4SYSTEM} to the shared libraries path...
648 SHLIBVAR="${G4INSTALL}/lib/${G4SYSTEM}:${SHLIBVAR}"
650 if [ "`echo ${SHLIBVAR} | grep ${CLHEP_BASE_DIR}/lib `" = "" ]; then
651 if [ "$VERBOSE" = "YES" ]; then
652 echo Adding ${CLHEP_BASE_DIR}/lib to the shared libraries path...
654 SHLIBVAR="${SHLIBVAR}:${CLHEP_BASE_DIR}/lib"
657 export $SHLIBVARNAME=$SHLIBVAR
661 # Remove unneeded variables. If this is not done the vars. remain in the env.
674 echo "Default ALICE environment for GEANT4 has been set."