Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #!/bin/bash
0002 usage(){ cat << EOU
0003 sphoton_test.sh
0004 ===============
0005 
0006 ::
0007 
0008    ~/o/sysrap/tests/sphoton_test.sh
0009    TEST=make_record_array ~/o/sysrap/tests/sphoton_test.sh
0010 
0011    TEST=set_lpos ~/o/sysrap/tests/sphoton_test.sh
0012 
0013    CPPSTD=c++20 ~/o/sysrap/tests/sphoton_test.sh
0014 
0015 
0016 
0017 EOU
0018 }
0019 
0020 cd $(dirname $(realpath $BASH_SOURCE))
0021 
0022 name=sphoton_test
0023 
0024 #defarg="info_build_run_ana"
0025 defarg="info_build_run_pdb"
0026 arg=${1:-$defarg}
0027 
0028 export FOLD=/tmp/$name
0029 mkdir -p $FOLD
0030 bin=$FOLD/$name
0031 script=$name.py
0032 
0033 vars="BASH_SOURCE PWD FOLD CUDA_PREFIX name bin script TEST cppstd CPPSTD opt"
0034 
0035 cppstd=c++17
0036 CPPSTD=${CPPSTD:-$cppstd}
0037 
0038 opt=""
0039 if [ "$CPPSTD" == "c++20" ]; then
0040     opt=-Wno-volatile
0041 fi 
0042 
0043 
0044 cuda_prefix=/usr/local/cuda
0045 CUDA_PREFIX=${CUDA_PREFIX:-$cuda_prefix}
0046 
0047 #test=make_record_array
0048 #test=set_flag
0049 #test=add_flagmask
0050 #test=ChangeTimeInsitu
0051 #test=index
0052 #test=demoarray
0053 #test=GetIndexBeyondCursorContiguousIdentity
0054 #test=GetContiguousIIndexStartIndices
0055 test=localize
0056 
0057 TEST=${TEST:-$test}
0058 export TEST
0059 
0060 
0061 if [ "${arg/info}" != "$arg" ]; then
0062     for var in $vars ; do printf "%30s : %s \n" "$var" "${!var}" ; done
0063 fi
0064 
0065 if [ "${arg/build}" != "$arg" ]; then
0066     gcc $name.cc -std=$CPPSTD -lstdc++ $opt -lm -lcrypto -lssl \
0067            -I.. \
0068            -I$CUDA_PREFIX/include \
0069            -I$OPTICKS_PREFIX/externals/glm/glm \
0070            -o $bin
0071     [ $? -ne 0 ] && echo $BASH_SOURCE compile error && exit 1
0072 fi
0073 
0074 if [ "${arg/run}" != "$arg" ]; then
0075     $bin
0076     [ $? -ne 0 ] && echo $BASH_SOURCE run error && exit 2
0077 fi
0078 
0079 if [ "${arg/pdb}" != "$arg" ]; then
0080     ${IPYTHON:-ipython} --pdb -i $script
0081     [ $? -ne 0 ] && echo $BASH_SOURCE pdb error && exit 3
0082 fi
0083 
0084 if [ "${arg/ana}" != "$arg" ]; then
0085     ${PYTHON:-python} $script
0086     [ $? -ne 0 ] && echo $BASH_SOURCE ana error && exit 4
0087 fi
0088 
0089 exit 0
0090