If compilation of liblockdep fails, display an error message and exit
immediately. Display compiler warning and error messages that are
generated while building a test. Only run a test if compilation
succeeded.

Signed-off-by: Bart Van Assche <bvanass...@acm.org>
---
 tools/lib/lockdep/run_tests.sh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/tools/lib/lockdep/run_tests.sh b/tools/lib/lockdep/run_tests.sh
index 2e570a188f16..eef3fe4a24fe 100755
--- a/tools/lib/lockdep/run_tests.sh
+++ b/tools/lib/lockdep/run_tests.sh
@@ -1,13 +1,16 @@
 #! /bin/bash
 # SPDX-License-Identifier: GPL-2.0
 
-make &> /dev/null
+if ! make >/dev/null; then
+    echo "Building liblockdep failed."
+    echo "FAILED!"
+fi
 
 for i in `ls tests/*.c`; do
        testname=$(basename "$i" .c)
-       gcc -o tests/$testname -pthread $i liblockdep.a -Iinclude 
-D__USE_LIBLOCKDEP &> /dev/null
        echo -ne "$testname... "
-       if [ $(timeout 1 ./tests/$testname 2>&1 | wc -l) -gt 0 ]; then
+       if gcc -o "tests/$testname" -pthread "$i" liblockdep.a -Iinclude 
-D__USE_LIBLOCKDEP &&
+               [ "$(timeout 1 "./tests/$testname" 2>&1 | wc -l)" -gt 0 ]; then
                echo "PASSED!"
        else
                echo "FAILED!"
@@ -19,9 +22,9 @@ done
 
 for i in `ls tests/*.c`; do
        testname=$(basename "$i" .c)
-       gcc -o tests/$testname -pthread -Iinclude $i &> /dev/null
        echo -ne "(PRELOAD) $testname... "
-       if [ $(timeout 1 ./lockdep ./tests/$testname 2>&1 | wc -l) -gt 0 ]; then
+       if gcc -o "tests/$testname" -pthread -Iinclude "$i" &&
+               [ "$(timeout 1 ./lockdep "./tests/$testname" 2>&1 | wc -l)" -gt 
0 ]; then
                echo "PASSED!"
        else
                echo "FAILED!"
-- 
2.20.0.rc0.387.gc7a69e6b6c-goog

Reply via email to