]>
Commit | Line | Data |
---|---|---|
3568f98c FZ |
1 | #!/bin/sh |
2 | # | |
3 | # Common routines for docker test scripts. | |
4 | # | |
5 | # Copyright (c) 2016 Red Hat Inc. | |
6 | # | |
7 | # Authors: | |
8 | # Fam Zheng <famz@redhat.com> | |
9 | # | |
10 | # This work is licensed under the terms of the GNU GPL, version 2 | |
11 | # or (at your option) any later version. See the COPYING file in | |
12 | # the top-level directory. | |
13 | ||
6945018a AB |
14 | # This might be set by ENV of a docker container... it is always |
15 | # overriden by TARGET_LIST if the user sets it. | |
16 | DEF_TARGET_LIST=${DEF_TARGET_LIST:-"x86_64-softmmu,aarch64-softmmu"} | |
17 | ||
3568f98c FZ |
18 | requires() |
19 | { | |
20 | for c in $@; do | |
21 | if ! echo "$FEATURES" | grep -wq -e "$c"; then | |
22 | echo "Prerequisite '$c' not present, skip" | |
23 | exit 0 | |
24 | fi | |
25 | done | |
26 | } | |
27 | ||
e4ce964d | 28 | configure_qemu() |
3568f98c | 29 | { |
9445c28e FZ |
30 | config_opts="--enable-werror \ |
31 | ${TARGET_LIST:+--target-list=${TARGET_LIST}} \ | |
05790daf | 32 | --prefix=$INSTALL_DIR \ |
24e0131f | 33 | $QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS \ |
9445c28e FZ |
34 | $@" |
35 | echo "Configure options:" | |
36 | echo $config_opts | |
0c153b4c PMD |
37 | $QEMU_SRC/configure $config_opts || \ |
38 | { cat config.log && test_fail "Failed to run 'configure'"; } | |
e4ce964d AB |
39 | } |
40 | ||
41 | build_qemu() | |
42 | { | |
43 | configure_qemu $@ | |
0c153b4c | 44 | make $MAKEFLAGS |
3568f98c | 45 | } |
82659e84 | 46 | |
3f9747a7 AB |
47 | check_qemu() |
48 | { | |
49 | # default to make check unless the caller specifies | |
50 | if test -z "$@"; then | |
51 | INVOCATION="check" | |
52 | else | |
53 | INVOCATION="$@" | |
54 | fi | |
56c115a9 | 55 | |
7ff5c1fa | 56 | make $MAKEFLAGS $INVOCATION |
3f9747a7 AB |
57 | } |
58 | ||
82659e84 FZ |
59 | test_fail() |
60 | { | |
61 | echo "$@" | |
62 | exit 1 | |
63 | } | |
64 | ||
65 | prep_fail() | |
66 | { | |
67 | echo "$@" | |
68 | exit 2 | |
69 | } | |
62838478 PB |
70 | |
71 | install_qemu() | |
72 | { | |
73 | make install $MAKEFLAGS DESTDIR=$PWD/=destdir | |
74 | ret=$? | |
75 | rm -rf $PWD/=destdir | |
76 | return $ret | |
77 | } |