11 for d in "$WORKSPACE/build"
15 rm -rf "$d" || die "Could not remote $d"
22 echo "No Sanitizer type selected - run Address"
29 if [ "${SANITIZER}" = "address" ]
31 SANITIZER_OPTIONS="-Denable_address_sanitizer=ON -Denable_undefined_sanitizer=OFF -Denable_thread_sanitizer=OFF"
32 elif [ "${SANITIZER}" = "thread" ]
34 export TSAN_OPTIONS="memory_limit_mb=1500"
35 SANITIZER_OPTIONS="-Denable_address_sanitizer=OFF -Denable_undefined_sanitizer=OFF -Denable_thread_sanitizer=ON"
36 elif [ "${SANITIZER}" = "undefined" ]
38 export UBSAN_OPTIONS="print_stacktrace=1"
39 SANITIZER_OPTIONS="-Denable_address_sanitizer=OFF -Denable_undefined_sanitizer=ON -Denable_thread_sanitizer=OFF"
41 die "Unknown Sanitizer type selected ${SANITIZER} - Exiting"
46 ### Check the node installation
52 echo "$pkg is installed. Good."
54 die "please install $pkg before proceeding"
58 ### Cleanup previous runs
60 ! [ -z "$WORKSPACE" ] || die "No WORKSPACE"
61 [ -d "$WORKSPACE" ] || die "WORKSPACE ($WORKSPACE) does not exist"
65 for d in "$WORKSPACE/build"
67 mkdir "$d" || die "Could not create $d"
70 NUMPROC="$(nproc)" || NUMPROC=1
74 ctest -D ExperimentalStart || true
76 cmake -Denable_documentation=OFF -Denable_lua=ON -Denable_java=OFF \
77 -Denable_compile_optimizations=ON -Denable_compile_warnings=ON \
78 -Denable_jedule=ON -Denable_mallocators=OFF \
79 -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_model-checking=OFF \
80 -Denable_memcheck=OFF -Denable_memcheck_xml=OFF -Denable_smpi_ISP_testsuite=ON -Denable_coverage=OFF\
81 -Denable_fortran=OFF ${SANITIZER_OPTIONS} $WORKSPACE
84 ctest --no-compress-output -D ExperimentalTest || true
86 if [ -f Testing/TAG ] ; then
87 xsltproc $WORKSPACE/tools/jenkins/ctest2junit.xsl Testing/$(head -n 1 < Testing/TAG)/Test.xml > CTestResults_${SANITIZER}.xml
88 mv CTestResults_${SANITIZER}.xml $WORKSPACE