devtools: fix check of ccache for meson build
authorThomas Monjalon <thomas@monjalon.net>
Fri, 13 Sep 2019 07:26:27 +0000 (09:26 +0200)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 13 Sep 2019 10:32:32 +0000 (12:32 +0200)
The meson build test fails if ccache is not available.
The use of ccache must be optional.
And if used, the compiler to check is the last word of $CC.

Fixes: e0ae780e6569 ("devtools: test compiler availability only once")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Luca Boccassi <bluca@debian.org>
devtools/test-meson-builds.sh

index a9d9360..2eb9b23 100755 (executable)
@@ -28,6 +28,11 @@ else
        echo "ERROR: ninja is not found" >&2
        exit 1
 fi
+if command -v ccache >/dev/null 2>&1 ; then
+       CCACHE=ccache
+else
+       CCACHE=
+fi
 
 default_path=$PATH
 default_pkgpath=$PKG_CONFIG_PATH
@@ -46,7 +51,7 @@ build () # <directory> <target compiler> <meson options>
        targetcc=$1
        shift
        # skip build if compiler not available
-       command -v $CC >/dev/null 2>&1 || return 0
+       command -v ${CC##* } >/dev/null 2>&1 || return 0
        command -v $targetcc >/dev/null 2>&1 || return 0
        reset_env
        DPDK_TARGET=$($targetcc -v 2>&1 | sed -n 's,^Target: ,,p')
@@ -90,7 +95,7 @@ fi
 for c in gcc clang ; do
        command -v $c >/dev/null 2>&1 || continue
        for s in static shared ; do
-               export CC="ccache $c"
+               export CC="$CCACHE $c"
                build build-$c-$s $c --default-library=$s
        done
 done
@@ -112,7 +117,7 @@ build build-arm64-host-clang $c $use_shared \
        --cross-file $srcdir/config/arm/arm64_armv8_linux_gcc
 # all gcc/arm configurations
 for f in $srcdir/config/arm/arm*gcc ; do
-       export CC="ccache gcc"
+       export CC="$CCACHE gcc"
        build build-$(basename $f | tr '_' '-' | cut -d'-' -f-2) $c \
                $use_shared --cross-file $f
 done