OSDN Git Service

Merge remote-tracking branch 'remotes/kraxel/tags/audio-20180625-pull-request' into...
[qmiga/qemu.git] / tests / vm / freebsd
1 #!/usr/bin/env python
2 #
3 # FreeBSD VM image
4 #
5 # Copyright 2017 Red Hat Inc.
6 #
7 # Authors:
8 #  Fam Zheng <famz@redhat.com>
9 #
10 # This code is licensed under the GPL version 2 or later.  See
11 # the COPYING file in the top-level directory.
12 #
13
14 import os
15 import sys
16 import subprocess
17 import basevm
18
19 class FreeBSDVM(basevm.BaseVM):
20     name = "freebsd"
21     BUILD_SCRIPT = """
22         set -e;
23         cd $(mktemp -d /var/tmp/qemu-test.XXXXXX);
24         tar -xf /dev/vtbd1;
25         ./configure {configure_opts};
26         gmake -j{jobs};
27         gmake check;
28     """
29
30     def build_image(self, img):
31         cimg = self._download_with_cache("http://download.patchew.org/freebsd-11.1-amd64.img.xz",
32                 sha256sum='adcb771549b37bc63826c501f05121a206ed3d9f55f49145908f7e1432d65891')
33         img_tmp_xz = img + ".tmp.xz"
34         img_tmp = img + ".tmp"
35         subprocess.check_call(["cp", "-f", cimg, img_tmp_xz])
36         subprocess.check_call(["xz", "-df", img_tmp_xz])
37         if os.path.exists(img):
38             os.remove(img)
39         os.rename(img_tmp, img)
40
41 if __name__ == "__main__":
42     sys.exit(basevm.main(FreeBSDVM))