The image is prepared following instructions as in: https://wiki.qemu.org/Hosts/BSD
Signed-off-by: Fam Zheng <f...@redhat.com> --- tests/vm/openbsd | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100755 tests/vm/openbsd diff --git a/tests/vm/openbsd b/tests/vm/openbsd new file mode 100755 index 0000000000..b308aa252b --- /dev/null +++ b/tests/vm/openbsd @@ -0,0 +1,46 @@ +#!/usr/bin/env python +# +# OpenBSD VM image +# +# Copyright (C) 2017 Red Hat Inc. +# +# Authors: +# Fam Zheng <f...@redhat.com> +# +# This work is licensed under the terms of the GNU GPL, version 2. See +# the COPYING file in the top-level directory. +# + +import os +import sys +import logging +import subprocess +import tempfile +import time +import basevm + +class OpenBSDVM(basevm.BaseVM): + name = "openbsd" + BUILD_SCRIPT = """ + set -e; + cd $(mktemp -d /var/tmp/qemu-test.XXXXXX); + tar -xf /dev/rsd1c; + ./configure --cc=x86_64-unknown-openbsd6.1-gcc-4.9.4 --python=python2.7 {configure_opts}; + gmake -j{jobs}; + # XXX: "gmake check" seems to always hang or fail + #gmake check; + """ + + def build_image(self, img, rebuild=False): + if os.path.exists(img) and not rebuild: + return + cimg = self._download_with_cache("http://download.patchew.org/openbsd.img.xz", + sha256sum='8c6cedc483e602cfee5e04f0406c64eb99138495e8ca580bc0293bcf0640c1bf') + img_tmp_xz = img + ".tmp.xz" + img_tmp = img + ".tmp" + subprocess.check_call(["cp", "-f", cimg, img_tmp_xz]) + subprocess.check_call(["xz", "-df", img_tmp_xz]) + os.rename(img_tmp, img) + +if __name__ == "__main__": + sys.exit(basevm.main(OpenBSDVM)) -- 2.13.4