XTag="-test"
+# How many parallel processes during make.
+NProc="10"
+
Build=release
+if [ "$#" -lt 1 ]; then
+ echo "Compiles and runs several test cases."
+ echo ""
+ echo "Usage: test.sh <config>"
+ echo ""
+ echo "Select a configuration via config: linux-gcc or linux-intel."
+ exit 1
+fi
+
+if [ "$1" == "-h" -o "$1" == "-help" -o "$1" == "--help" ]; then
+ echo "Compiles and runs several test cases."
+ echo ""
+ echo "Usage: test.sh <config>"
+ echo ""
+ echo "Select a configuration via config: linux-gcc or linux-intel."
+ exit 1
+fi
+
+Config="$1"
+make clean-all
-Config=linux-intel
+make -j $NProc PRECISION=dp CONFIG=$Config TAG=$XTag-debug
+make -j $NProc PRECISION=dp CONFIG=$Config BUILD=$Build TAG=$XTag-v VERIFICATION=on
+make -j $NProc PRECISION=dp CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
-module purge
-module add intel64
+BinaryVDp="../bin/lbmbenchk-$Config-$Build-dp$XTag-v"
+BinaryBDp="../bin/lbmbenchk-$Config-$Build-dp$XTag-b"
-make clean-all
-make -j CONFIG=$Config TAG=$XTag-debug
-make -j CONFIG=$Config BUILD=$Build TAG=$XTag-v
-make -j CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
-BinaryV="../bin/lbmbenchk-$Config-$Build$XTag-v"
-BinaryB="../bin/lbmbenchk-$Config-$Build$XTag-b"
+make -j $NProc PRECISION=sp CONFIG=$Config TAG=$XTag-debug
+make -j $NProc PRECISION=sp CONFIG=$Config BUILD=$Build TAG=$XTag-v VERIFICATION=on
+make -j $NProc PRECISION=sp CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
-./test-verification.sh "$BinaryV"
+BinaryVSp="../bin/lbmbenchk-$Config-$Build-sp$XTag-v"
+BinaryBSp="../bin/lbmbenchk-$Config-$Build-sp$XTag-b"
+echo "#"
+echo "# [test.sh] ./test-verification.sh \"$BinaryVDp\""
+echo "#"
-Config=linux-gcc
+./test-verification.sh "$BinaryVDp"
-module purge
-module add gcc
+ExitCodeDp="$?"
-make clean-all
+echo "#"
+echo "# [test.sh] ./test-verification.sh \"$BinaryVSp\""
+echo "#"
+
+./test-verification.sh "$BinaryVSp"
+
+ExitCodeSp="$?"
+
+ResultDp="errors occurred"
+ResultSp="errors occurred"
+
+if [ "$ExitCodeDp" == "0" ]; then ResultDp="OK"; fi
+if [ "$ExitCodeSp" == "0" ]; then ResultSp="OK"; fi
+
+echo "#"
+echo "# [test.sh] test double precision: $ResultDp single precision: $ResultSp"
+echo "#"
-make -j CONFIG=$Config TAG=$XTag-debug
-make -j CONFIG=$Config BUILD=$Build TAG=$XTag-v
-make -j CONFIG=$Config BUILD=$Build TAG=$XTag-b BENCHMARK=on
+ExitCode="0"
-BinaryV="../bin/lbmbenchk-$Config-$Build$XTag-v"
-BinaryB="../bin/lbmbenchk-$Config-$Build$XTag-b"
+if [ "$ExitCodeDp" != 0 -o "$ExitCodeSp" != 0 ]; then
+ ExitCode="1"
+fi
-./test-verification.sh "$BinaryV"
+exit "$ExitCode"