13568f98cSFam Zheng#!/bin/sh 23568f98cSFam Zheng# 33568f98cSFam Zheng# Common routines for docker test scripts. 43568f98cSFam Zheng# 53568f98cSFam Zheng# Copyright (c) 2016 Red Hat Inc. 63568f98cSFam Zheng# 73568f98cSFam Zheng# Authors: 83568f98cSFam Zheng# Fam Zheng <famz@redhat.com> 93568f98cSFam Zheng# 103568f98cSFam Zheng# This work is licensed under the terms of the GNU GPL, version 2 113568f98cSFam Zheng# or (at your option) any later version. See the COPYING file in 123568f98cSFam Zheng# the top-level directory. 133568f98cSFam Zheng 143568f98cSFam Zhengrequires() 153568f98cSFam Zheng{ 163568f98cSFam Zheng for c in $@; do 173568f98cSFam Zheng if ! echo "$FEATURES" | grep -wq -e "$c"; then 183568f98cSFam Zheng echo "Prerequisite '$c' not present, skip" 193568f98cSFam Zheng exit 0 203568f98cSFam Zheng fi 213568f98cSFam Zheng done 223568f98cSFam Zheng} 233568f98cSFam Zheng 24e4ce964dSAlex Bennéeconfigure_qemu() 253568f98cSFam Zheng{ 269445c28eSFam Zheng config_opts="--enable-werror \ 279445c28eSFam Zheng ${TARGET_LIST:+--target-list=${TARGET_LIST}} \ 2805790dafSFam Zheng --prefix=$INSTALL_DIR \ 2924e0131fSAlex Bennée $QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS \ 309445c28eSFam Zheng $@" 319445c28eSFam Zheng echo "Configure options:" 329445c28eSFam Zheng echo $config_opts 330c153b4cSPhilippe Mathieu-Daudé $QEMU_SRC/configure $config_opts || \ 340c153b4cSPhilippe Mathieu-Daudé { cat config.log && test_fail "Failed to run 'configure'"; } 35e4ce964dSAlex Bennée} 36e4ce964dSAlex Bennée 37e4ce964dSAlex Bennéebuild_qemu() 38e4ce964dSAlex Bennée{ 39e4ce964dSAlex Bennée configure_qemu $@ 400c153b4cSPhilippe Mathieu-Daudé make $MAKEFLAGS 413568f98cSFam Zheng} 4282659e84SFam Zheng 43*3f9747a7SAlex Bennéecheck_qemu() 44*3f9747a7SAlex Bennée{ 45*3f9747a7SAlex Bennée # default to make check unless the caller specifies 46*3f9747a7SAlex Bennée if test -z "$@"; then 47*3f9747a7SAlex Bennée INVOCATION="check" 48*3f9747a7SAlex Bennée else 49*3f9747a7SAlex Bennée INVOCATION="$@" 50*3f9747a7SAlex Bennée fi 51*3f9747a7SAlex Bennée make $MAKEFLAGS $INVOCATION 52*3f9747a7SAlex Bennée} 53*3f9747a7SAlex Bennée 5482659e84SFam Zhengtest_fail() 5582659e84SFam Zheng{ 5682659e84SFam Zheng echo "$@" 5782659e84SFam Zheng exit 1 5882659e84SFam Zheng} 5982659e84SFam Zheng 6082659e84SFam Zhengprep_fail() 6182659e84SFam Zheng{ 6282659e84SFam Zheng echo "$@" 6382659e84SFam Zheng exit 2 6482659e84SFam Zheng} 6562838478SPaolo Bonzini 6662838478SPaolo Bonziniinstall_qemu() 6762838478SPaolo Bonzini{ 6862838478SPaolo Bonzini make install $MAKEFLAGS DESTDIR=$PWD/=destdir 6962838478SPaolo Bonzini ret=$? 7062838478SPaolo Bonzini rm -rf $PWD/=destdir 7162838478SPaolo Bonzini return $ret 7262838478SPaolo Bonzini} 73