make-check-wrap revision 3ce85a5f5264e7118beb6524e120fd8b53a13da4
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#!/bin/bash
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# Build a make check target, prepending test commands with specified command
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# and arguments.
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# Args: [make_arg...] [-- wrap_cmd wrap_arg...]
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# Copyright (C) 2014 Red Hat
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# This program is free software; you can redistribute it and/or modify
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# it under the terms of the GNU General Public License as published by
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# the Free Software Foundation; either version 3 of the License, or
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# (at your option) any later version.
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# This program is distributed in the hope that it will be useful,
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# but WITHOUT ANY WARRANTY; without even the implied warranty of
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync# GNU General Public License for more details.
d5d12f5d4455786efdce0a22f09ec396bcb60718vboxsync#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
set -o nounset -o pipefail -o errexit
declare -a argv=("make")
declare arg
while [ $# != 0 ]; do
arg="$1"
shift
if [ "$arg" == "--" ]; then
break
fi
argv+=("$arg")
done
if [ $# != 0 ]; then
# If Makefile supports LOG_COMPILER
if grep -q -w LOG_COMPILER Makefile; then
printf -v arg 'LOG_COMPILER=%q' $1
argv+=("$arg")
shift
if [ $# != 0 ]; then
printf -v arg ' %q' "$@"
argv+=("LOG_FLAGS=$arg")
fi
else
printf -v arg ' %q' "$@"
argv+=("AUX_TESTS_ENVIRONMENT=$arg")
fi
fi
"${argv[@]}"