meson: catch programs which ignore arguments
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 22 Jul 2019 08:59:19 +0000 (10:59 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 22 Jul 2019 12:08:37 +0000 (14:08 +0200)
Don't try to use <<<. It seems to not work properly with old bash
versions or something.

tools/meson-check-help.sh

index a0e304c..efe7ed4 100755 (executable)
@@ -10,14 +10,20 @@ if "$1"  --help | grep -v 'default:' | grep -E -q '.{80}.'; then
     exit 1
 fi
 
+# --help prints something. Also catches case where args are ignored.
+if ! "$1"  --help | grep -q .; then
+    echo "$(basename "$1") --help output is empty."
+    exit 2
+fi
+
 # no --help output to stdout
 if "$1" --help 2>&1 1>/dev/null | grep .; then
     echo "$(basename "$1") --help prints to stderr"
-    exit 2
+    exit 3
 fi
 
 # error output to stderr
 if ! "$1" --no-such-parameter 2>&1 1>/dev/null | grep -q .; then
     echo "$(basename "$1") with an unknown parameter does not print to stderr"
-    exit 3
+    exit 4
 fi