The image is prepared following instructions as in: https://wiki.qemu.org/Hosts/BSD Signed-off-by: Fam Zheng <famz@redhat.com>
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env python
 | 
						|
#
 | 
						|
# OpenBSD VM image
 | 
						|
#
 | 
						|
# Copyright 2017 Red Hat Inc.
 | 
						|
#
 | 
						|
# Authors:
 | 
						|
#  Fam Zheng <famz@redhat.com>
 | 
						|
#
 | 
						|
# This code is licensed under the GPL version 2 or later.  See
 | 
						|
# the COPYING file in the top-level directory.
 | 
						|
#
 | 
						|
 | 
						|
import os
 | 
						|
import sys
 | 
						|
import subprocess
 | 
						|
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):
 | 
						|
        cimg = self._download_with_cache("http://download.patchew.org/openbsd-6.1-amd64.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])
 | 
						|
        if os.path.exists(img):
 | 
						|
            os.remove(img)
 | 
						|
        os.rename(img_tmp, img)
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    sys.exit(basevm.main(OpenBSDVM))
 |