diff --git a/obs-packaging/qemu-vanilla/qemu-vanilla.spec-template b/obs-packaging/qemu-vanilla/qemu-vanilla.spec-template index fa3b90defb..ee96c919fb 100644 --- a/obs-packaging/qemu-vanilla/qemu-vanilla.spec-template +++ b/obs-packaging/qemu-vanilla/qemu-vanilla.spec-template @@ -14,6 +14,7 @@ License : BSD-2-Clause BSD-3-Clause GPL-2.0 GPL-2.0+ LGPL-2.0+ LGPL-2.1 Requires: qemu-vanilla-bin Requires: qemu-vanilla-data BuildRequires : automake +BuildRequires : bc BuildRequires : bison BuildRequires : flex BuildRequires : gcc-c++ diff --git a/obs-packaging/qemu-vanilla/update.sh b/obs-packaging/qemu-vanilla/update.sh index 4060974ba6..542f1503df 100755 --- a/obs-packaging/qemu-vanilla/update.sh +++ b/obs-packaging/qemu-vanilla/update.sh @@ -23,6 +23,9 @@ SCRIPT_DIR=$(dirname $0) PKG_NAME="qemu-vanilla" VERSION=$qemu_vanilla_version +PATCHES_VERSION="$(echo $VERSION | cut -d "." -f 1,2).x" +ln -sfT "${SCRIPT_DIR}/../../qemu/patches/${PATCHES_VERSION}" "${SCRIPT_DIR}/patches" + GENERATED_FILES=(qemu-vanilla.dsc qemu-vanilla.spec debian.rules _service debian.control) STATIC_FILES=(debian.compat "${SCRIPT_DIR}/../../scripts/configure-hypervisor.sh" qemu-vanilla-rpmlintrc) diff --git a/qemu/default-configs/i386-softmmu.mak b/qemu/default-configs/i386-softmmu.mak new file mode 100644 index 0000000000..7da5415c25 --- /dev/null +++ b/qemu/default-configs/i386-softmmu.mak @@ -0,0 +1,148 @@ +# Boards +CONFIG_ACPI_PCI=y +CONFIG_I440FX=y +CONFIG_ISAPC=n +CONFIG_Q35=y + +# VM port +CONFIG_VMMOUSE=n +CONFIG_VMPORT=n + +# VMWARE +CONFIG_VMW_PVSCSI_SCSI_PCI=n +CONFIG_VMXNET3_PCI=n + +# Audio and sound cards +CONFIG_AC97=n +CONFIG_ADLIB=n +CONFIG_CS4231A=n +CONFIG_ES1370=n +CONFIG_GUS=n +CONFIG_HDA=n +CONFIG_SB16=n +CONFIG_SD=n + +# Automotive +CONFIG_CAN_BUS=n +CONFIG_CAN_PCI=n +CONFIG_CAN_SJA1000=n + +# Network +CONFIG_E1000_PCI=n +CONFIG_E1000E_PCI_EXPRESS=n +CONFIG_EEPRO100_PCI=n +CONFIG_NE2000_COMMON=n +CONFIG_NE2000_ISA=n +CONFIG_NE2000_PCI=n +CONFIG_PCNET_COMMON=n +CONFIG_PCNET_PCI=n +CONFIG_ROCKER=n +CONFIG_RTL8139_PCI=n + +# USB +CONFIG_USB=n +CONFIG_USB_AUDIO=n +CONFIG_USB_BLUETOOTH=n +CONFIG_USB_EHCI=n +CONFIG_USB_EHCI_PCI=n +CONFIG_USB_NETWORK=n +CONFIG_USB_OHCI=n +CONFIG_USB_OHCI_PCI=n +CONFIG_USB_SERIAL=n +CONFIG_USB_SMARTCARD=n +CONFIG_USB_STORAGE_BOT=n +CONFIG_USB_STORAGE_MTP=n +CONFIG_USB_STORAGE_UAS=n +CONFIG_USB_TABLET_WACOM=n +CONFIG_USB_UHCI=n +CONFIG_USB_XHCI=n +CONFIG_USB_XHCI_NEC=n + +# ISA +CONFIG_IDE_ISA=n +CONFIG_ISA_DEBUG=n +CONFIG_ISA_IPMI_BT=n +CONFIG_ISA_IPMI_KCS=n + +# VGA +CONFIG_ATI_VGA=n +CONFIG_VGA=n +CONFIG_VGA_CIRRUS=n +CONFIG_VGA_ISA=n +CONFIG_VGA_PCI=n +CONFIG_VHOST_USER_VGA=n +CONFIG_VIRTIO_VGA=n +CONFIG_VMWARE_VGA=n + +# Displays +CONFIG_BOCHS_DISPLAY=n +CONFIG_DDC=n +CONFIG_QXL=n + +# Graphics +CONFIG_OPENGL=n +CONFIG_SPICE=n +CONFIG_X11=n + +# test devices +CONFIG_HYPERV_TESTDEV=n +CONFIG_ISA_TESTDEV=n +CONFIG_PCI_TESTDEV=n + +# XEN +CONFIG_XEN=n + +# PCIe +CONFIG_XIO3130=n + +# SCSI +CONFIG_ESP=n +CONFIG_ESP_PCI=n +CONFIG_LSI_SCSI_PCI=n +CONFIG_MEGASAS_SCSI_PCI=n +CONFIG_MPTSAS_SCSI_PCI=n + +# i2c +CONFIG_BITBANG_I2C=n + +# UART +CONFIG_SERIAL_PCI_MULTI=n + +# PCI +CONFIG_EDU=n +CONFIG_I82801B11=n +CONFIG_IOH3420=n +CONFIG_IPACK=n +CONFIG_PXB=n + +# SD +CONFIG_SDHCI=n +CONFIG_SDHCI_PCI=n + +# watchdog +CONFIG_WDT_IB6300ESB=n +CONFIG_WDT_IB700=n + +# Apple +CONFIG_APPLESMC=n + +# Timer +CONFIG_HPET=n + +# IPMI +CONFIG_IPMI=n +CONFIG_IPMI_EXTERN=n +CONFIG_IPMI_LOCAL=n + +# misc +CONFIG_IVSHMEM_DEVICE=n +CONFIG_PVPANIC=n +CONFIG_SEV=n +CONFIG_SGA=n + +#vhost +CONFIG_VHOST_USER_INPUT=n + +# TPM +CONFIG_TPM_CRB=n +CONFIG_TPM_TIS=n diff --git a/qemu/patches/4.1.x/0003-configure-get-right-version-of-python.patch b/qemu/patches/4.1.x/0003-configure-get-right-version-of-python.patch new file mode 100644 index 0000000000..9497f8614f --- /dev/null +++ b/qemu/patches/4.1.x/0003-configure-get-right-version-of-python.patch @@ -0,0 +1,29 @@ +From cf8c67cfaac7cdef766032cf012c7c586c4826d2 Mon Sep 17 00:00:00 2001 +From: Julio Montes +Date: Fri, 23 Aug 2019 14:04:03 +0000 +Subject: [PATCH] configure: get right version of python + +In some systems the version of python is printed out together with the +version of GCC, omit GCC version to get the right version of python. + +Signed-off-by: Julio Montes +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 714e7fb6a1..f22262dc60 100755 +--- a/configure ++++ b/configure +@@ -1864,7 +1864,7 @@ if ! $python -c 'import sys; sys.exit(sys.version_info < (2,7))'; then + fi + + # Preserve python version since some functionality is dependent on it +-python_version=$($python -V 2>&1 | sed -e 's/Python\ //') ++python_version=$($python -V 2>&1 | head -1 | cut -d' ' -f2) + + # Suppress writing compiled files + python="$python -B" +-- +2.17.2 + diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 2a30a3dbe6..6fd77f203b 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -263,7 +263,7 @@ parts: qemu: plugin: make - after: [scripts-dump, qemu-patches-dump, qemu-aarch64-patches-dump, yq] + after: [scripts-dump, qemu-patches-dump, qemu-aarch64-patches-dump, yq, qemu-configs-dump] build-packages: - gcc - python @@ -282,6 +282,7 @@ parts: override-build: | yq=$(realpath ../../yq/build/yq) pkg_name="qemu" + configs_dir="${SNAPCRAFT_STAGE}/qemu/default-configs" versions_url=https://raw.githubusercontent.com/kata-containers/runtime/${SNAPCRAFT_PROJECT_VERSION}/versions.yaml # arch-specific definition @@ -296,7 +297,7 @@ parts: *) branch="$(curl -sSL ${versions_url} | ${yq} r - assets.hypervisor.qemu.tag)" url="$(curl -sSL ${versions_url} | ${yq} r - assets.hypervisor.qemu.url)" - patch_dir="${SNAPCRAFT_STAGE}/qemu/patches/4.0.x" + patch_dir="${SNAPCRAFT_STAGE}/qemu/patches/$(echo ${branch} | cut -d. -f1-2 | tr -d v).x" commit="" ;; esac @@ -329,6 +330,9 @@ parts: --libexecdir=/snap/${SNAPCRAFT_PROJECT_NAME}/current/usr/libexec/qemu" \ | xargs ./configure + # Copy QEMU configurations (Kconfigs) + cp -a ${configs_dir} . + # build and install make -j $(($(nproc)-1)) make install DESTDIR=${SNAPCRAFT_PART_INSTALL} @@ -359,6 +363,13 @@ parts: '*' : qemu-aarch64/patches/ prime: - -* + qemu-configs-dump: + source: qemu/default-configs/ + plugin: dump + organize: + '*' : qemu/default-configs/ + prime: + - -* apps: runtime: