tools/lib/lockdep/tests: Display compiler warning and error messages
authorBart Van Assche <bvanassche@acm.org>
Fri, 7 Dec 2018 01:11:25 +0000 (17:11 -0800)
committerIngo Molnar <mingo@kernel.org>
Tue, 11 Dec 2018 13:54:47 +0000 (14:54 +0100)
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 of it
succeeded.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sasha Levin <sasha.levin@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Waiman Long <longman@redhat.com>
Cc: johannes.berg@intel.com
Cc: tj@kernel.org
Link: https://lkml.kernel.org/r/20181207011148.251812-2-bvanassche@acm.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
tools/lib/lockdep/run_tests.sh

index 2e570a1..9f31f84 100755 (executable)
@@ -1,13 +1,17 @@
 #! /bin/bash
 # SPDX-License-Identifier: GPL-2.0
 
-make &> /dev/null
+if ! make >/dev/null; then
+    echo "Building liblockdep failed."
+    echo "FAILED!"
+    exit 1
+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 +23,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!"