devtools: add verbose option to meson build test
authorBruce Richardson <bruce.richardson@intel.com>
Tue, 26 Feb 2019 14:15:33 +0000 (14:15 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 1 Mar 2019 14:19:35 +0000 (15:19 +0100)
When running ninja, the commands are, by default, always printed on top of
each other. For those who want more detail in the output, two levels of
verbose output has been added to the test-meson-builds script. When "-v" is
passed, or the "TEST_MESON_BUILD_VERBOSE" flag is set in the environment,
then the output of ninja is passed through "cat" to prevent each line
overwriting the next. If "-vv" is passed, or
"TEST_MESON_BUILD_VERY_VERBOSE" is set in the environment, then ninja is
called with the "-v" flag to print out each command in full as it is
executing.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
devtools/test-meson-builds.sh

index e59474d53bd8fd81568f9cb857ab3042a1d00664..f82a0fd6c7c51ed084d9cf7f17abdcc07009f5e6 100755 (executable)
@@ -30,10 +30,26 @@ build () # <directory> <meson options>
                $MESON $options $srcdir $builddir
                unset CC
        fi
-       echo "$ninja_cmd -C $builddir"
-       $ninja_cmd -C $builddir
+       if [ -n "$TEST_MESON_BUILD_VERY_VERBOSE" ] ; then
+               # for full output from ninja use "-v"
+               echo "$ninja_cmd -v -C $builddir"
+               $ninja_cmd -v -C $builddir
+       elif [ -n "$TEST_MESON_BUILD_VERBOSE" ] ; then
+               # for keeping the history of short cmds, pipe through cat
+               echo "$ninja_cmd -C $builddir | cat"
+               $ninja_cmd -C $builddir | cat
+       else
+               echo "$ninja_cmd -C $builddir"
+               $ninja_cmd -C $builddir
+       fi
 }
 
+if [ "$1" == "-vv" ] ; then
+       TEST_MESON_BUILD_VERY_VERBOSE=1
+elif [ "$1" == "-v" ] ; then
+       TEST_MESON_BUILD_VERBOSE=1
+fi
+
 # shared and static linked builds with gcc and clang
 for c in gcc clang ; do
        for s in static shared ; do