###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2023 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 2.8.0
+SUMMARY = Machine emulator and virtualizer
+
+# If you update the version also qemu-ga !!!
+VER = 7.1.0
THISAPP = qemu-$(VER)
-DL_FILE = $(THISAPP).tar.bz2
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
-SUP_ARCH = i586 x86_64
PROG = qemu
-PAK_VER = 22
+PAK_VER = 37
+
+DEPS = alsa libusbredir spice libseccomp
-DEPS = "libusbredir sdl spice"
+SERVICES =
+
+TARGETS = \
+ i386-linux-user \
+ x86_64-linux-user \
+ arm-linux-user \
+ aarch64-linux-user \
+ riscv64-linux-user \
+ i386-softmmu \
+ x86_64-softmmu \
+ arm-softmmu \
+ aarch64-softmmu \
+ riscv64-softmmu
###############################################################################
# Top-level Rules
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 17940dce063b6ce450a12e719a6c9c43
+$(DL_FILE)_BLAKE2 = e05f91ce4993c7591a2df08b5fb017f8b8ec2141ab7bfd55d14730ea6b793ac1091de539992058392a5522d4e58beee92a87752707be58e3619b8213ef9f35bf
install : $(TARGET)
download :$(patsubst %,$(DIR_DL)/%,$(objects))
-md5 : $(subst %,%_MD5,$(objects))
+b2 : $(subst %,%_BLAKE2,$(objects))
-dist:
+dist:
@$(PAK)
###############################################################################
-# Downloading, checking, md5sum
+# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+$(subst %,%_BLAKE2,$(objects)) :
+ @$(B2SUM)
###############################################################################
# Installation Details
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \
- --enable-kvm --disable-bluez --disable-attr \
- --target-list="i386-linux-user x86_64-linux-user arm-linux-user i386-softmmu x86_64-softmmu arm-softmmu" \
- --extra-cflags="$(CFLAGS)" --enable-spice --enable-usb-redir
+ cd $(DIR_APP) && ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --enable-kvm \
+ --disable-attr \
+ --target-list="$(TARGETS)" \
+ --extra-cflags="$(CFLAGS)" \
+ --enable-spice \
+ --enable-usb-redir \
+ --enable-seccomp \
+ --disable-docs \
+ --disable-sdl
+
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
# install wrapper for old kvm parameter handling
install -m 755 $(DIR_SRC)/config/qemu/qemu /usr/bin/qemu
- # disable PaX MPROTECT and RANDMMAP
- paxctl -m -r /usr/bin/qemu-system-arm
- paxctl -m -r /usr/bin/qemu-system-i386
- paxctl -m -r /usr/bin/qemu-system-x86_64
- paxctl -m -r /usr/bin/qemu-arm
- paxctl -m -r /usr/bin/qemu-i386
- paxctl -m -r /usr/bin/qemu-x86_64
# install an udev script to set the permissions of /dev/kvm
cp -avf $(DIR_SRC)/config/qemu/65-kvm.rules /lib/udev/rules.d/65-kvm.rules