File indexing completed on 2026-04-09 07:49:22
0001
0002 usage(){ cat << EOU
0003
0004 ~/o/sysrap/tests/stra_test.sh
0005
0006 EOU
0007 }
0008
0009 cd $(dirname $(realpath $BASH_SOURCE))
0010
0011 name=stra_test
0012 export FOLD=/tmp/$name
0013 mkdir -p $FOLD
0014 bin=$FOLD/$name
0015
0016 defarg="info_build_run"
0017 arg=${1:-$defarg}
0018 opt=-g
0019
0020
0021 test=Elements
0022 export TEST=${TEST:-$test}
0023
0024 vars="BASH_SOURCE arg opt FOLD test TEST"
0025
0026
0027
0028 gdb__()
0029 {
0030 if [ -z "$BP" ]; then
0031 H="";
0032 B="";
0033 T="-ex r";
0034 else
0035 H="-ex \"set breakpoint pending on\"";
0036 B="";
0037 for bp in $BP;
0038 do
0039 B="$B -ex \"break $bp\" ";
0040 done;
0041 T="-ex \"info break\" -ex r";
0042 fi;
0043 local runline="gdb $H $B $T --args $* ";
0044 echo $runline;
0045 date;
0046 eval $runline;
0047 date
0048 }
0049
0050
0051
0052 if [ "${arg/info}" != "$arg" ]; then
0053 for var in $vars ; do printf "%20s : %s \n" "$var" "${!var}" ; done
0054 fi
0055
0056 if [ "${arg/build}" != "$arg" ]; then
0057 gcc $name.cc $opt -std=c++11 -lstdc++ -I.. -I$OPTICKS_PREFIX/externals/glm/glm -o $bin
0058 [ $? -ne 0 ] && echo $BASH_SOURCE build error && exit 1
0059 fi
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 gdb__ $bin
0068 [ $? -ne 0 ] && echo $BASH_SOURCE dbg error && exit 3
0069 fi
0070
0071 exit 0
0072
0073