diff --git a/0061-configure-add-echo_version-helper.patch b/0061-configure-add-echo_version-helper.patch new file mode 100644 index 0000000..d568597 --- /dev/null +++ b/0061-configure-add-echo_version-helper.patch @@ -0,0 +1,61 @@ +From 79607d09f8670a92feb8e63455f6be59842f985a Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Fri, 6 May 2016 14:03:09 -0400 +Subject: [PATCH] configure: add echo_version helper + +Simplifies printing library versions, dependent on if the library +was even found + +Signed-off-by: Cole Robinson +Message-id: 3c9ab16123e06bb4109771ef6ee8acd82d449ba0.1462557436.git.crobinso@redhat.com +Signed-off-by: Gerd Hoffmann +(cherry picked from commit 02d34f62fdecb54637e5a66d254bd68fcbfa397f) +[BR: BSC#988855] +Signed-off-by: Bruce Rogers +--- + configure | 18 ++++++++---------- + 1 file changed, 8 insertions(+), 10 deletions(-) + +diff --git a/configure b/configure +index b455035..767658e 100755 +--- a/configure ++++ b/configure +@@ -4748,6 +4748,12 @@ EOF + fi + fi + ++echo_version() { ++ if test "$1" = "yes" ; then ++ echo "($2)" ++ fi ++} ++ + # prepend pixman and ftd flags after all config tests are done + QEMU_CFLAGS="$pixman_cflags $fdt_cflags $QEMU_CFLAGS" + libs_softmmu="$pixman_libs $libs_softmmu" +@@ -4805,11 +4811,7 @@ echo "GNUTLS hash $gnutls_hash" + echo "GNUTLS rnd $gnutls_rnd" + echo "libgcrypt $gcrypt" + echo "libgcrypt kdf $gcrypt_kdf" +-if test "$nettle" = "yes"; then +- echo "nettle $nettle ($nettle_version)" +-else +- echo "nettle $nettle" +-fi ++echo "nettle $nettle `echo_version $nettle $nettle_version`" + echo "nettle kdf $nettle_kdf" + echo "libtasn1 $tasn1" + echo "VTE support $vte" +@@ -4861,11 +4863,7 @@ echo "Trace backends $trace_backends" + if have_backend "simple"; then + echo "Trace output file $trace_file-" + fi +-if test "$spice" = "yes"; then +-echo "spice support $spice ($spice_protocol_version/$spice_server_version)" +-else +-echo "spice support $spice" +-fi ++echo "spice support $spice `echo_version $spice $spice_protocol_version/$spice_server_version`" + echo "rbd support $rbd" + echo "xfsctl support $xfs" + echo "smartcard support $smartcard" diff --git a/0062-configure-support-vte-2.91.patch b/0062-configure-support-vte-2.91.patch new file mode 100644 index 0000000..a39dfe5 --- /dev/null +++ b/0062-configure-support-vte-2.91.patch @@ -0,0 +1,70 @@ +From 8c4afe82d5eb1cfd33d64fa9b1a3f7fd92bc02f3 Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Fri, 6 May 2016 14:03:12 -0400 +Subject: [PATCH] configure: support vte-2.91 + +vte >= 0.37 expores API version 2.91, which is where all the active +development is. qemu builds and runs fine with that version, so use it +if it's available. + +Signed-off-by: Cole Robinson +Message-id: b4f0375647f7b368d3dbd3834aee58cb0253566a.1462557436.git.crobinso@redhat.com +Signed-off-by: Gerd Hoffmann +(cherry picked from commit c6feff9e09aa999b77a37f532adbb89682ecb1b6) +[BR: BSC#988855] +Signed-off-by: Bruce Rogers +--- + configure | 17 +++++++++++------ + 1 file changed, 11 insertions(+), 6 deletions(-) + +diff --git a/configure b/configure +index 767658e..f32cff5 100755 +--- a/configure ++++ b/configure +@@ -2395,20 +2395,25 @@ fi + + if test "$vte" != "no"; then + if test "$gtkabi" = "3.0"; then +- vtepackage="vte-2.90" +- vteversion="0.32.0" ++ vteminversion="0.32.0" ++ if $pkg_config --exists "vte-2.91"; then ++ vtepackage="vte-2.91" ++ else ++ vtepackage="vte-2.90" ++ fi + else + vtepackage="vte" +- vteversion="0.24.0" ++ vteminversion="0.24.0" + fi +- if $pkg_config --exists "$vtepackage >= $vteversion"; then ++ if $pkg_config --exists "$vtepackage >= $vteminversion"; then + vte_cflags=`$pkg_config --cflags $vtepackage` + vte_libs=`$pkg_config --libs $vtepackage` ++ vteversion=`$pkg_config --modversion $vtepackage` + libs_softmmu="$vte_libs $libs_softmmu" + vte="yes" + elif test "$vte" = "yes"; then + if test "$gtkabi" = "3.0"; then +- feature_not_found "vte" "Install libvte-2.90 devel" ++ feature_not_found "vte" "Install libvte-2.90/2.91 devel" + else + feature_not_found "vte" "Install libvte devel" + fi +@@ -4806,6 +4811,7 @@ echo "pixman $pixman" + echo "SDL support $sdl" + echo "GTK support $gtk" + echo "GTK GL support $gtk_gl" ++echo "VTE support $vte `echo_version $vte $vteversion`" + echo "GNUTLS support $gnutls" + echo "GNUTLS hash $gnutls_hash" + echo "GNUTLS rnd $gnutls_rnd" +@@ -4814,7 +4820,6 @@ echo "libgcrypt kdf $gcrypt_kdf" + echo "nettle $nettle `echo_version $nettle $nettle_version`" + echo "nettle kdf $nettle_kdf" + echo "libtasn1 $tasn1" +-echo "VTE support $vte" + echo "curses support $curses" + echo "virgl support $virglrenderer" + echo "curl support $curl" diff --git a/kvm.conf b/kvm.conf new file mode 100644 index 0000000..835d125 --- /dev/null +++ b/kvm.conf @@ -0,0 +1,3 @@ +# load kvm module at boot time +kvm + diff --git a/qemu-linux-user.changes b/qemu-linux-user.changes index 9479401..b894f8f 100644 --- a/qemu-linux-user.changes +++ b/qemu-linux-user.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6 +* Patches added: + 0061-configure-add-echo_version-helper.patch + 0062-configure-support-vte-2.91.patch + ------------------------------------------------------------------- Thu Jul 7 16:16:40 UTC 2016 - agraf@suse.com diff --git a/qemu-linux-user.spec b/qemu-linux-user.spec index 934db72..3db5cfe 100644 --- a/qemu-linux-user.spec +++ b/qemu-linux-user.spec @@ -85,6 +85,8 @@ Patch0057: 0057-xen-add-pvUSB-backend.patch Patch0058: 0058-usb-Fix-conditions-that-xen-usb.c-i.patch Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch Patch0060: 0060-scsi-megasas-initialise-local-confi.patch +Patch0061: 0061-configure-add-echo_version-helper.patch +Patch0062: 0062-configure-support-vte-2.91.patch # Please do not add patches manually here, run update_git.sh. # this is to make lint happy Source300: qemu-rpmlintrc @@ -198,6 +200,8 @@ run cross-architecture builds. %patch0058 -p1 %patch0059 -p1 %patch0060 -p1 +%patch0061 -p1 +%patch0062 -p1 %build ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ diff --git a/qemu-testsuite.changes b/qemu-testsuite.changes index 3ac6554..42d9543 100644 --- a/qemu-testsuite.changes +++ b/qemu-testsuite.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com + +- Build SLOF for SLE12 now that we have gcc fix (bsc#949000) +- Add script for loading kvm module on s390x +- Enable seccomp and iscsi support in more configurations +- Enable more support for virtio-gpu +- Fix /dev/kvm permissions problem with package install and no + reboot (bnc#867867) +- Remove libtool dependency +- Disable more aggressive stack protector for performance reasons +- Enable vte to be used again in more configurations (bsc#988855) +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6 +* Patches added: + 0061-configure-add-echo_version-helper.patch + 0062-configure-support-vte-2.91.patch + ------------------------------------------------------------------- Thu Jul 14 14:59:37 UTC 2016 - agraf@suse.com diff --git a/qemu-testsuite.spec b/qemu-testsuite.spec index 0d1ae60..fa67f90 100644 --- a/qemu-testsuite.spec +++ b/qemu-testsuite.spec @@ -28,9 +28,7 @@ %define build_slof_from_source 1 %endif %ifarch ppc64le -# Needs a compatible gcc (bsc#949000) -# TODO: include 1315 for SLE12 once possible -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315 %define build_slof_from_source 1 %endif %endif @@ -47,11 +45,25 @@ %define noarch_supported 1110 %ifarch x86_64 -%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} == 120200 ) ) +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) ) %define with_rbd 1 %endif %endif +%ifarch aarch64 +%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120100 ) +%define with_rbd 1 +%endif +%endif + +%if 0%{?suse_version} > 1320 +%define with_seccomp 1 +%endif + +%ifarch %ix86 x86_64 +%define with_seccomp 1 +%endif + Name: qemu-testsuite Url: http://www.qemu.org/ Summary: Universal CPU emulator @@ -70,6 +82,7 @@ Source6: ksm.service Source7: 60-kvm.x86.rules Source8: 80-qemu-ga.rules Source9: qemu-ga.service +Source10: kvm.conf # Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch # This patch queue is auto-generated from https://github.com/openSUSE/qemu Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch @@ -132,6 +145,8 @@ Patch0057: 0057-xen-add-pvUSB-backend.patch Patch0058: 0058-usb-Fix-conditions-that-xen-usb.c-i.patch Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch Patch0060: 0060-scsi-megasas-initialise-local-confi.patch +Patch0061: 0061-configure-add-echo_version-helper.patch +Patch0062: 0062-configure-support-vte-2.91.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -194,7 +209,7 @@ BuildRequires: libcacard-devel BuildRequires: libcap-devel BuildRequires: libcap-ng-devel BuildRequires: libdrm-devel -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libepoxy-devel %endif %if 0%{?suse_version} >= 1310 @@ -214,7 +229,7 @@ BuildRequires: librbd-devel BuildRequires: ceph-devel %endif %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libiscsi-devel %endif BuildRequires: libjpeg-devel @@ -237,13 +252,12 @@ BuildRequires: libpulse-devel %if 0%{?suse_version} >= 1315 BuildRequires: librdmacm-devel %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} BuildRequires: libseccomp-devel %endif %if 0%{?suse_version} > 1140 BuildRequires: libssh2-devel %endif -BuildRequires: libtool %if 0%{?suse_version} > 1310 BuildRequires: libusb-1_0-devel %endif @@ -252,6 +266,7 @@ BuildRequires: lzo-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif +BuildRequires: Mesa-devel BuildRequires: mozilla-nss-devel BuildRequires: ncurses-devel %if 0%{?build_x86_fw_from_source} @@ -279,7 +294,7 @@ BuildRequires: pkgconfig(udev) %if 0%{?sles_version} != 11 BuildRequires: usbredir-devel %endif -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: virglrenderer-devel >= 0.4.1 %endif %if 0%{?suse_version} >= 1210 @@ -344,7 +359,7 @@ Suggests: qemu-block-dmg %if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 Suggests: qemu-block-gluster %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) Suggests: qemu-block-iscsi %endif %if 0%{?with_rbd} @@ -548,7 +563,7 @@ This sub-package contains a module for accessing network-based image files over a GlusterFS network connection from qemu-img tool and QEMU system emulation. %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %package block-iscsi Summary: Universal CPU emulator -- iSCSI block support Group: System/Emulators/PC @@ -772,6 +787,8 @@ This package provides a service file for starting and stopping KSM. %patch0058 -p1 %patch0059 -p1 %patch0060 -p1 +%patch0061 -p1 +%patch0062 -p1 %if %{build_x86_fw_from_source} pushd roms/seabios @@ -808,6 +825,7 @@ rm -f pc-bios/slof.bin --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ --extra-cflags="%{optflags}" \ + --disable-stack-protector \ --disable-strip \ --with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \ --enable-system --disable-linux-user \ @@ -852,7 +870,7 @@ rm -f pc-bios/slof.bin %else --disable-kvm \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-libiscsi \ %else --disable-libiscsi \ @@ -884,6 +902,9 @@ rm -f pc-bios/slof.bin --enable-numa \ %endif %endif +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-opengl \ +%endif %if 0%{?with_rbd} --enable-rbd \ %else @@ -900,7 +921,7 @@ rm -f pc-bios/slof.bin %else --with-sdlabi=1.2 \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} --enable-seccomp \ %else --disable-seccomp \ @@ -930,15 +951,17 @@ rm -f pc-bios/slof.bin --enable-vde \ --enable-vhdx \ --enable-vhost-net \ -%if 0%{?suse_version} >= 1320 - --enable-virglrenderer \ +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-virglrenderer \ %endif --enable-virtfs \ --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-png \ --enable-vnc-sasl \ -%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0) +%if 0%{?suse_version} == 1320 + --disable-vte \ +%else --enable-vte \ %endif %ifarch x86_64 @@ -948,7 +971,7 @@ rm -f pc-bios/slof.bin %else --disable-xen \ %endif - --enable-xfsctl \ + --enable-xfsctl \ %if "%{name}" != "qemu-testsuite" @@ -1087,6 +1110,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules %if 0%{?with_systemd} install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service +%ifarch s390x +install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf +%endif %endif %fdupes -s $RPM_BUILD_ROOT @@ -1110,6 +1136,9 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml %if %{kvm_available} %post +if [ "$(readlink -f /proc/1/root)" = "/" ]; then + setfacl --remove-all /dev/kvm &> /dev/null || : +fi %if 0%{?with_systemd} %udev_rules_update %else @@ -1184,6 +1213,9 @@ fi %endif %ifarch s390x %{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x +%if 0%{?with_systemd} +%_libexecdir/modules-load.d/kvm.conf +%endif %endif %endif @@ -1270,7 +1302,7 @@ fi %_libdir/%name/block-gluster.so %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %files block-iscsi %defattr(-, root, root) %_libdir/%name/block-iscsi.so diff --git a/qemu.changes b/qemu.changes index 3ac6554..42d9543 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com + +- Build SLOF for SLE12 now that we have gcc fix (bsc#949000) +- Add script for loading kvm module on s390x +- Enable seccomp and iscsi support in more configurations +- Enable more support for virtio-gpu +- Fix /dev/kvm permissions problem with package install and no + reboot (bnc#867867) +- Remove libtool dependency +- Disable more aggressive stack protector for performance reasons +- Enable vte to be used again in more configurations (bsc#988855) +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6 +* Patches added: + 0061-configure-add-echo_version-helper.patch + 0062-configure-support-vte-2.91.patch + ------------------------------------------------------------------- Thu Jul 14 14:59:37 UTC 2016 - agraf@suse.com diff --git a/qemu.spec b/qemu.spec index f994453..d4a833d 100644 --- a/qemu.spec +++ b/qemu.spec @@ -28,9 +28,7 @@ %define build_slof_from_source 1 %endif %ifarch ppc64le -# Needs a compatible gcc (bsc#949000) -# TODO: include 1315 for SLE12 once possible -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315 %define build_slof_from_source 1 %endif %endif @@ -47,11 +45,25 @@ %define noarch_supported 1110 %ifarch x86_64 -%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} == 120200 ) ) +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) ) %define with_rbd 1 %endif %endif +%ifarch aarch64 +%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120100 ) +%define with_rbd 1 +%endif +%endif + +%if 0%{?suse_version} > 1320 +%define with_seccomp 1 +%endif + +%ifarch %ix86 x86_64 +%define with_seccomp 1 +%endif + Name: qemu Url: http://www.qemu.org/ Summary: Universal CPU emulator @@ -70,6 +82,7 @@ Source6: ksm.service Source7: 60-kvm.x86.rules Source8: 80-qemu-ga.rules Source9: qemu-ga.service +Source10: kvm.conf # Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch # This patch queue is auto-generated from https://github.com/openSUSE/qemu Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch @@ -132,6 +145,8 @@ Patch0057: 0057-xen-add-pvUSB-backend.patch Patch0058: 0058-usb-Fix-conditions-that-xen-usb.c-i.patch Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch Patch0060: 0060-scsi-megasas-initialise-local-confi.patch +Patch0061: 0061-configure-add-echo_version-helper.patch +Patch0062: 0062-configure-support-vte-2.91.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -194,7 +209,7 @@ BuildRequires: libcacard-devel BuildRequires: libcap-devel BuildRequires: libcap-ng-devel BuildRequires: libdrm-devel -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libepoxy-devel %endif %if 0%{?suse_version} >= 1310 @@ -214,7 +229,7 @@ BuildRequires: librbd-devel BuildRequires: ceph-devel %endif %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libiscsi-devel %endif BuildRequires: libjpeg-devel @@ -237,13 +252,12 @@ BuildRequires: libpulse-devel %if 0%{?suse_version} >= 1315 BuildRequires: librdmacm-devel %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} BuildRequires: libseccomp-devel %endif %if 0%{?suse_version} > 1140 BuildRequires: libssh2-devel %endif -BuildRequires: libtool %if 0%{?suse_version} > 1310 BuildRequires: libusb-1_0-devel %endif @@ -252,6 +266,7 @@ BuildRequires: lzo-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif +BuildRequires: Mesa-devel BuildRequires: mozilla-nss-devel BuildRequires: ncurses-devel %if 0%{?build_x86_fw_from_source} @@ -279,7 +294,7 @@ BuildRequires: pkgconfig(udev) %if 0%{?sles_version} != 11 BuildRequires: usbredir-devel %endif -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: virglrenderer-devel >= 0.4.1 %endif %if 0%{?suse_version} >= 1210 @@ -344,7 +359,7 @@ Suggests: qemu-block-dmg %if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 Suggests: qemu-block-gluster %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) Suggests: qemu-block-iscsi %endif %if 0%{?with_rbd} @@ -548,7 +563,7 @@ This sub-package contains a module for accessing network-based image files over a GlusterFS network connection from qemu-img tool and QEMU system emulation. %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %package block-iscsi Summary: Universal CPU emulator -- iSCSI block support Group: System/Emulators/PC @@ -772,6 +787,8 @@ This package provides a service file for starting and stopping KSM. %patch0058 -p1 %patch0059 -p1 %patch0060 -p1 +%patch0061 -p1 +%patch0062 -p1 %if %{build_x86_fw_from_source} pushd roms/seabios @@ -808,6 +825,7 @@ rm -f pc-bios/slof.bin --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ --extra-cflags="%{optflags}" \ + --disable-stack-protector \ --disable-strip \ --with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \ --enable-system --disable-linux-user \ @@ -852,7 +870,7 @@ rm -f pc-bios/slof.bin %else --disable-kvm \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-libiscsi \ %else --disable-libiscsi \ @@ -884,6 +902,9 @@ rm -f pc-bios/slof.bin --enable-numa \ %endif %endif +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-opengl \ +%endif %if 0%{?with_rbd} --enable-rbd \ %else @@ -900,7 +921,7 @@ rm -f pc-bios/slof.bin %else --with-sdlabi=1.2 \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} --enable-seccomp \ %else --disable-seccomp \ @@ -930,15 +951,17 @@ rm -f pc-bios/slof.bin --enable-vde \ --enable-vhdx \ --enable-vhost-net \ -%if 0%{?suse_version} >= 1320 - --enable-virglrenderer \ +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-virglrenderer \ %endif --enable-virtfs \ --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-png \ --enable-vnc-sasl \ -%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0) +%if 0%{?suse_version} == 1320 + --disable-vte \ +%else --enable-vte \ %endif %ifarch x86_64 @@ -948,7 +971,7 @@ rm -f pc-bios/slof.bin %else --disable-xen \ %endif - --enable-xfsctl \ + --enable-xfsctl \ %if "%{name}" != "qemu-testsuite" @@ -1087,6 +1110,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules %if 0%{?with_systemd} install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service +%ifarch s390x +install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf +%endif %endif %fdupes -s $RPM_BUILD_ROOT @@ -1110,6 +1136,9 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml %if %{kvm_available} %post +if [ "$(readlink -f /proc/1/root)" = "/" ]; then + setfacl --remove-all /dev/kvm &> /dev/null || : +fi %if 0%{?with_systemd} %udev_rules_update %else @@ -1184,6 +1213,9 @@ fi %endif %ifarch s390x %{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x +%if 0%{?with_systemd} +%_libexecdir/modules-load.d/kvm.conf +%endif %endif %endif @@ -1270,7 +1302,7 @@ fi %_libdir/%name/block-gluster.so %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %files block-iscsi %defattr(-, root, root) %_libdir/%name/block-iscsi.so diff --git a/qemu.spec.in b/qemu.spec.in index 069b27a..ef14f6d 100644 --- a/qemu.spec.in +++ b/qemu.spec.in @@ -28,9 +28,7 @@ %define build_slof_from_source 1 %endif %ifarch ppc64le -# Needs a compatible gcc (bsc#949000) -# TODO: include 1315 for SLE12 once possible -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315 %define build_slof_from_source 1 %endif %endif @@ -47,7 +45,7 @@ %define noarch_supported 1110 %ifarch x86_64 -%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} == 120200 ) ) +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) ) %define with_rbd 1 %endif %endif @@ -58,6 +56,14 @@ %endif %endif +%if 0%{?suse_version} > 1320 +%define with_seccomp 1 +%endif + +%ifarch %ix86 x86_64 +%define with_seccomp 1 +%endif + Name: qemu Url: http://www.qemu.org/ Summary: Universal CPU emulator @@ -76,6 +82,7 @@ Source6: ksm.service Source7: 60-kvm.x86.rules Source8: 80-qemu-ga.rules Source9: qemu-ga.service +Source10: kvm.conf # Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch # This patch queue is auto-generated from https://github.com/openSUSE/qemu PATCH_FILES @@ -141,7 +148,7 @@ BuildRequires: libcacard-devel BuildRequires: libcap-devel BuildRequires: libcap-ng-devel BuildRequires: libdrm-devel -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libepoxy-devel %endif %if 0%{?suse_version} >= 1310 @@ -161,7 +168,7 @@ BuildRequires: librbd-devel BuildRequires: ceph-devel %endif %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: libiscsi-devel %endif BuildRequires: libjpeg-devel @@ -184,13 +191,12 @@ BuildRequires: libpulse-devel %if 0%{?suse_version} >= 1315 BuildRequires: librdmacm-devel %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} BuildRequires: libseccomp-devel %endif %if 0%{?suse_version} > 1140 BuildRequires: libssh2-devel %endif -BuildRequires: libtool %if 0%{?suse_version} > 1310 BuildRequires: libusb-1_0-devel %endif @@ -199,6 +205,7 @@ BuildRequires: lzo-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif +BuildRequires: Mesa-devel BuildRequires: mozilla-nss-devel BuildRequires: ncurses-devel %if 0%{?build_x86_fw_from_source} @@ -226,7 +233,7 @@ BuildRequires: pkgconfig(udev) %if 0%{?sles_version} != 11 BuildRequires: usbredir-devel %endif -%if 0%{?suse_version} >= 1320 +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) BuildRequires: virglrenderer-devel >= 0.4.1 %endif %if 0%{?suse_version} >= 1210 @@ -291,7 +298,7 @@ Suggests: qemu-block-dmg %if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 Suggests: qemu-block-gluster %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) Suggests: qemu-block-iscsi %endif %if 0%{?with_rbd} @@ -495,7 +502,7 @@ This sub-package contains a module for accessing network-based image files over a GlusterFS network connection from qemu-img tool and QEMU system emulation. %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %package block-iscsi Summary: Universal CPU emulator -- iSCSI block support Group: System/Emulators/PC @@ -697,6 +704,7 @@ rm -f pc-bios/slof.bin --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ --extra-cflags="%{optflags}" \ + --disable-stack-protector \ --disable-strip \ --with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \ --enable-system --disable-linux-user \ @@ -741,7 +749,7 @@ rm -f pc-bios/slof.bin %else --disable-kvm \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-libiscsi \ %else --disable-libiscsi \ @@ -773,6 +781,9 @@ rm -f pc-bios/slof.bin --enable-numa \ %endif %endif +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-opengl \ +%endif %if 0%{?with_rbd} --enable-rbd \ %else @@ -789,7 +800,7 @@ rm -f pc-bios/slof.bin %else --with-sdlabi=1.2 \ %endif -%if 0%{?suse_version} > 1320 +%if 0%{?with_seccomp} --enable-seccomp \ %else --disable-seccomp \ @@ -819,15 +830,17 @@ rm -f pc-bios/slof.bin --enable-vde \ --enable-vhdx \ --enable-vhost-net \ -%if 0%{?suse_version} >= 1320 - --enable-virglrenderer \ +%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) + --enable-virglrenderer \ %endif --enable-virtfs \ --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-png \ --enable-vnc-sasl \ -%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0) +%if 0%{?suse_version} == 1320 + --disable-vte \ +%else --enable-vte \ %endif %ifarch x86_64 @@ -837,7 +850,7 @@ rm -f pc-bios/slof.bin %else --disable-xen \ %endif - --enable-xfsctl \ + --enable-xfsctl \ %if "%{name}" != "qemu-testsuite" @@ -977,6 +990,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules %if 0%{?with_systemd} install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service +%ifarch s390x +install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf +%endif %endif %fdupes -s $RPM_BUILD_ROOT @@ -1001,6 +1017,9 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml %if %{kvm_available} %post +if [ "$(readlink -f /proc/1/root)" = "/" ]; then + setfacl --remove-all /dev/kvm &> /dev/null || : +fi %if 0%{?with_systemd} %udev_rules_update %else @@ -1075,6 +1094,9 @@ fi %endif %ifarch s390x %{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x +%if 0%{?with_systemd} +%_libexecdir/modules-load.d/kvm.conf +%endif %endif %endif @@ -1161,7 +1183,7 @@ fi %_libdir/%name/block-gluster.so %endif -%if 0%{?suse_version} > 1320 +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) %files block-iscsi %defattr(-, root, root) %_libdir/%name/block-iscsi.so