diff options
author | Manuel Bentele | 2021-09-30 14:01:50 +0200 |
---|---|---|
committer | Manuel Bentele | 2021-10-12 13:12:55 +0200 |
commit | 89fa7e5a9c9b24dcaafa2a3affde56f26945030e (patch) | |
tree | 404d9b5ead2145fb3d1986ce43588d8bd8a47a65 /core/modules/qemu-src/module.build | |
parent | [libvirt-src] Add module for libvirt source build (diff) | |
download | mltk-89fa7e5a9c9b24dcaafa2a3affde56f26945030e.tar.gz mltk-89fa7e5a9c9b24dcaafa2a3affde56f26945030e.tar.xz mltk-89fa7e5a9c9b24dcaafa2a3affde56f26945030e.zip |
[qemu-src] Add module for QEMU source build
Diffstat (limited to 'core/modules/qemu-src/module.build')
-rw-r--r-- | core/modules/qemu-src/module.build | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/core/modules/qemu-src/module.build b/core/modules/qemu-src/module.build new file mode 100644 index 00000000..5f3fce34 --- /dev/null +++ b/core/modules/qemu-src/module.build @@ -0,0 +1,61 @@ +#!/bin/bash +fetch_source() { + autoclone + git -C "${MODULE_WORK_DIR}/src/qemu" submodule update --init || perror "Failed to init and update submodules!" + + # patch EDK2 version to retrieve EDK2 submodules + git -C "${MODULE_WORK_DIR}/src/qemu/roms/edk2" checkout edk2-stable202108 || perror "Failed to checkout new EDK2 version!" + git -C "${MODULE_WORK_DIR}/src/qemu" commit -a -m "Update EDK2 to 08.2021 release" || perror "Failed to update EDK2 version!" + + git -C "${MODULE_WORK_DIR}/src/qemu" submodule update --recursive || perror "Failed to update submodules recursivly!" +} + +build() { + local SRCDIR="${MODULE_WORK_DIR}/src/qemu" + local DSTDIR="${MODULE_BUILD_DIR}" + cde "${SRCDIR}" + + # install meson (>= 0.54.0) since packaged version is too old + pip3 install "meson>=0.54.0" + + ./configure \ + --prefix="/usr" \ + --sysconfdir="/etc" \ + --libexecdir="/usr/libexec" \ + --localstatedir="/var" \ + --target-list=x86_64-softmmu \ + --enable-kvm \ + --disable-xen \ + --enable-gnutls \ + --enable-gtk \ + --enable-vnc \ + --enable-spice \ + --enable-libusb \ + --enable-usb-redir \ + --enable-lzo \ + --enable-zstd \ + --enable-linux-aio \ + --enable-opengl \ + --enable-virglrenderer \ + --enable-vhost-net \ + --enable-vhost-user \ + --enable-libudev \ + --enable-brlapi \ + --audio-drv-list="pa alsa" \ + --enable-modules || perror "'configure' failed." + make || perror "'make' failed." + DESTDIR="${DSTDIR}" make install || perror "'make install' failed." + + # change permissions for the bridge helper + chmod u+s "${DSTDIR}/usr/libexec/qemu-bridge-helper" + + # change permission of setup script + chmod +x "${DSTDIR}/usr/share/qemu/init/qemu-kvm-init" + + # delete empty run folder to prevent mltk from stopping + rm -rf "${DSTDIR}/var/run" +} + +post_copy() { + : +} |