Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:14

0001 #!/bin/bash
0002 usage(){ cat << EOU
0003 S4MaterialPropertyVector_test.sh
0004 ==================================
0005 
0006 ::
0007 
0008     ~/o/sysrap/tests/S4MaterialPropertyVector_test.sh
0009 
0010 
0011 EOU
0012 }
0013 
0014 
0015 name=S4MaterialPropertyVector_test
0016 cd $(dirname $(realpath $BASH_SOURCE))
0017 
0018 get-cmake-prefix(){ echo $CMAKE_PREFIX_PATH | tr ":" "\n" | grep $1 ; }
0019 GEANT4_PREFIX=$(get-cmake-prefix Geant4)
0020 CLHEP_PREFIX=$(get-cmake-prefix CLHEP)
0021 
0022 
0023 defarg="info_build_run_ana"
0024 arg=${1:-$defarg}
0025 
0026 
0027 tmp=/tmp/$USER/opticks
0028 export TMP=${TMP:-$tmp}
0029 export FOLD=$TMP/$name
0030 mkdir -p $FOLD
0031 
0032 bin=$FOLD/$name
0033 script=$name.py
0034 
0035 #test=VV_CombinedArray
0036 test=ConvertToArray
0037 export TEST=${TEST:-$test}
0038 
0039 vars="BASH_SOURCE name PWD defarg arg FOLD bin script GEANT4_PREFIX CLHEP_PREFIX test TEST"
0040 
0041 if [ "${arg/info}" != "$arg" ]; then
0042     for var in $vars ; do printf "%20s : %s \n" "$var" "${!var}" ; done
0043 fi
0044 
0045 if [ "${arg/build}" != "$arg" ]; then
0046     gcc $name.cc \
0047         -std=c++17 -lstdc++ -lm -g \
0048         -I.. \
0049         -I${CLHEP_PREFIX}/include \
0050         -I${GEANT4_PREFIX}/include/Geant4 \
0051         -L${GEANT4_PREFIX}/lib64 \
0052         -lG4global \
0053         -L${CLHEP_PREFIX}/lib \
0054         -lCLHEP \
0055         -o $bin
0056 
0057     [ $? -ne 0 ] && echo $BASH_SOURCE : build error && exit 1
0058 fi
0059 
0060 
0061 if [ "${arg/run}" != "$arg" ]; then
0062     $bin
0063     [ $? -ne 0 ] && echo $BASH_SOURCE : run error && exit 2
0064 fi
0065 
0066 if [ "${arg/dbg}" != "$arg" ]; then
0067     source dbg__.sh
0068     dbg__ $bin
0069     [ $? -ne 0 ] && echo $BASH_SOURCE : run error && exit 2
0070 fi
0071 
0072 
0073 
0074 if [ "${arg/pdb}" != "$arg" ]; then
0075     ${IPYTHON:-ipython} --pdb -i $script
0076     [ $? -ne 0 ] && echo $BASH_SOURCE : pdb error && exit 3
0077 fi
0078 
0079 if [ "${arg/ana}" != "$arg" ]; then
0080     ${PYTHON:-python} $script
0081     [ $? -ne 0 ] && echo $BASH_SOURCE : ana error && exit 4
0082 fi
0083 
0084 exit 0
0085 
0086