IPv6 support is now merged.
[rsync.git] / runtests.sh
index 64ba317304b67515c7b7d42391b308629bebe045..d6a9a482d24743d3b77c9e1c651a3ed58762981b 100755 (executable)
 # Perhaps we need a common way to cleanup tests.  At the moment just
 # clobbering the directory when we're done should be enough.
 
+# If any of the targets fail, then (GNU?) Make returns 2, instead of
+# the return code from the failing command.  This is fine, but it
+# means that the build farm just shows "2" for failed tests, not the
+# number of tests that actually failed.  For more details we might
+# need to grovel through the log files to find a line saying how many
+# failed.
+
 
 set -e
 
@@ -203,4 +210,11 @@ echo "      $passed passed"
 [ "$missing" -gt 0 ] && echo "      $missing missing"
 echo '------------------------------------------------------------'
 
-exit `expr $failed + $missing`
+# OK, so expr exits with 0 if the result is neither null nor zero; and
+# 1 if the expression is null or zero.  This is the opposite of what
+# we want, and if we just call expr then this script will always fail,
+# because -e is set.
+
+result=`expr $failed + $missing || true`
+echo "overall result is $result"
+exit $result