From 17994bae86fee2e61a00563882023e2e5cd7b93988ec8a85a29136d9d72a7681 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 9 Apr 2015 13:38:04 +0000 Subject: [PATCH] Accepting request 295186 from home:a_faerber:branches:Virtualization Enable some more features and be explicit about our choices. This adds a qemu-block-ssh module subpackage. OBS-URL: https://build.opensuse.org/request/show/295186 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=245 --- qemu.changes | 21 ++++++++++ qemu.spec | 111 ++++++++++++++++++++++++++++++++++++++++++++++++--- qemu.spec.in | 111 ++++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 231 insertions(+), 12 deletions(-) diff --git a/qemu.changes b/qemu.changes index 5be66b9..a3af521 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,24 @@ +------------------------------------------------------------------- +Thu Apr 9 12:21:07 UTC 2015 - afaerber@suse.de + +- Tidy configure options: +* Move --enable-modules to build options +* Sort libusb alphabetically +* Explicitly enable attr, bluez, fdt, lzo, tpm, vhdx, vhost-net, + vnc, xen-pci-passthrough +* Enable bzip2 +* Enable libssh2 where possible and package as qemu-block-ssh +* Enable numa where a compatible numactl is available +* Enable quorum where a compatible gnutls is available +* Enable snappy where possible +* Prepare to enable glusterfs +* Explicitly enable the nop tracing backend (to be revisited) +* Explicitly disable Archipelago, as we don't have libxseg and it's + incompatibly GPL-3.0+ +* Explicitly disable libiscsi, libnfs, netmap and rbd + as we don't have packages +* Drop deprecated --enable-virtio-blk-data-plane (now default) + ------------------------------------------------------------------- Wed Apr 8 20:47:32 UTC 2015 - afaerber@suse.de diff --git a/qemu.spec b/qemu.spec index 623e51b..931ee9e 100644 --- a/qemu.spec +++ b/qemu.spec @@ -126,6 +126,9 @@ BuildRequires: e2fsprogs-devel BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: glib2-devel +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 +BuildRequires: glusterfs-devel +%endif %if 0%{?suse_version} >= 1220 BuildRequires: gtk3-devel %else @@ -134,6 +137,7 @@ BuildRequires: gtk2-devel BuildRequires: libaio BuildRequires: libaio-devel BuildRequires: libattr-devel +BuildRequires: libbz2-devel BuildRequires: libcap-devel BuildRequires: libcap-ng-devel %if 0%{?suse_version} >= 1310 @@ -145,6 +149,15 @@ BuildRequires: libgnutls-devel BuildRequires: libibverbs-devel %endif BuildRequires: libjpeg-devel +%ifarch %ix86 aarch64 +%if 0%{?suse_version} > 1320 +BuildRequires: libnuma-devel +%endif +%else +%ifnarch %arm +BuildRequires: libnuma-devel +%endif +%endif BuildRequires: libpcap-devel BuildRequires: libpixman-1-0-devel BuildRequires: libpng-devel @@ -152,11 +165,20 @@ BuildRequires: libpulse-devel %if 0%{?suse_version} >= 1315 BuildRequires: librdmacm-devel %endif +%ifnarch ppc64le +%if 0%{?suse_version} > 1320 +BuildRequires: libseccomp-devel +%endif +%endif +%if 0%{?suse_version} > 1140 +BuildRequires: libssh2-devel +%endif BuildRequires: libtool %if 0%{?suse_version} > 1310 BuildRequires: libusb-devel %endif BuildRequires: libvdeplug3-devel +BuildRequires: lzo-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif @@ -164,6 +186,9 @@ BuildRequires: mozilla-nss-devel BuildRequires: ncurses-devel BuildRequires: pwdutils BuildRequires: python +%if 0%{?suse_version} >= 1310 +BuildRequires: snappy-devel +%endif %if 0%{?suse_version} >= 1210 BuildRequires: systemd %{?systemd_requires} @@ -368,6 +393,27 @@ as PC and PowerMac systems. This sub-package contains a module for accessing network-based image files over a network connection from qemu-img tool and QEMU system emulation. +%if 0%{?suse_version} > 1140 +%package block-ssh +Summary: Universal CPU emulator -- SSH block support +Group: System/Emulators/PC +# Needs to match {qemu-system-*,qemu-img} >= 2.0.0, but is optional. +Conflicts: qemu < %version +Conflicts: qemu > %version +Conflicts: qemu-tools < %version +Conflicts: qemu-tools > %version + +%description block-ssh +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package contains a module for accessing network-based image files +over an SSH network connection from qemu-img tool and QEMU system emulation. +%endif + %package tools Summary: Universal CPU emulator -- Tools Group: System/Emulators/PC @@ -536,30 +582,73 @@ done --disable-strip \ --enable-system --disable-linux-user \ --enable-tools --enable-guest-agent \ + --enable-modules \ --enable-pie \ --enable-docs \ --audio-drv-list="pa alsa sdl oss" \ + --disable-archipelago \ + --enable-attr \ + --enable-bluez \ %if 0%{?suse_version} >= 1130 --enable-brlapi \ %endif + --enable-bzip2 \ --enable-cap-ng \ --enable-curl \ --enable-curses \ + --enable-fdt \ +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 + --disable-glusterfs \ +%endif --enable-gtk \ %if 0%{?suse_version} >= 1220 --with-gtkabi=3.0 \ %endif %if %{kvm_available} --enable-kvm \ +%endif + --disable-libiscsi \ + --disable-libnfs \ +%if 0%{?suse_version} > 1140 + --enable-libssh2 \ +%endif +%if 0%{?suse_version} > 1310 + --enable-libusb \ %endif --enable-linux-aio \ - --enable-modules \ + --enable-lzo \ + --disable-netmap \ +%ifarch %ix86 aarch64 +%if 0%{?suse_version} > 1320 + --enable-numa \ +%else + --disable-numa \ +%endif +%else +%ifarch %arm + --disable-numa \ +%else + --enable-numa \ +%endif +%endif +%if 0%{?suse_version} >= 1310 + --enable-quorum \ +%endif + --disable-rbd \ %if 0%{?suse_version} >= 1315 --enable-rdma \ %endif --enable-sdl \ --with-sdlabi=1.2 \ +%ifnarch ppc64le +%if 0%{?suse_version} > 1320 + --enable-seccomp \ +%endif +%endif --enable-smartcard-nss \ +%if 0%{?suse_version} >= 1310 + --enable-snappy \ +%endif %if 0%{?suse_version} >= 1140 %ifarch %ix86 x86_64 --enable-spice \ @@ -569,15 +658,17 @@ done %else --disable-spice \ %endif -%if 0%{?suse_version} > 1310 - --enable-libusb \ -%endif + --enable-tpm \ + --enable-trace-backends=nop \ %if 0%{?sles_version} != 11 --enable-usb-redir \ %endif + --enable-uuid \ --enable-vde \ + --enable-vhdx \ + --enable-vhost-net \ --enable-virtfs \ - --enable-virtio-blk-data-plane \ + --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-png \ --enable-vnc-sasl \ @@ -585,6 +676,7 @@ done --enable-vnc-ws \ %ifarch x86_64 --enable-xen \ + --enable-xen-pci-passthrough \ %endif make %{?_smp_mflags} V=1 @@ -701,6 +793,7 @@ fi %_datadir/%name/qemu-icon.bmp %_datadir/%name/qemu_logo_no_text.svg %dir %_sysconfdir/%name +%dir %_libdir/%name %if %{kvm_available} %if 0%{?suse_version} >= 1230 %{_udevrulesdir}/80-kvm.rules @@ -782,9 +875,14 @@ fi %files block-curl %defattr(-, root, root) -%dir %_libdir/%name %_libdir/%name/block-curl.so +%if 0%{?suse_version} > 1140 +%files block-ssh +%defattr(-, root, root) +%_libdir/%name/block-ssh.so +%endif + %files lang -f %name.lang %defattr(-, root, root) @@ -837,6 +935,7 @@ fi %verify(not mode) %_libexecdir/qemu-bridge-helper %dir %_sysconfdir/%name %config %_sysconfdir/%name/bridge.conf +%dir %_libdir/%name %files guest-agent %defattr(-, root, root) diff --git a/qemu.spec.in b/qemu.spec.in index 4aa57ad..89125bb 100644 --- a/qemu.spec.in +++ b/qemu.spec.in @@ -89,6 +89,9 @@ BuildRequires: e2fsprogs-devel BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: glib2-devel +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 +BuildRequires: glusterfs-devel +%endif %if 0%{?suse_version} >= 1220 BuildRequires: gtk3-devel %else @@ -97,6 +100,7 @@ BuildRequires: gtk2-devel BuildRequires: libaio BuildRequires: libaio-devel BuildRequires: libattr-devel +BuildRequires: libbz2-devel BuildRequires: libcap-devel BuildRequires: libcap-ng-devel %if 0%{?suse_version} >= 1310 @@ -108,6 +112,15 @@ BuildRequires: libgnutls-devel BuildRequires: libibverbs-devel %endif BuildRequires: libjpeg-devel +%ifarch %ix86 aarch64 +%if 0%{?suse_version} > 1320 +BuildRequires: libnuma-devel +%endif +%else +%ifnarch %arm +BuildRequires: libnuma-devel +%endif +%endif BuildRequires: libpcap-devel BuildRequires: libpixman-1-0-devel BuildRequires: libpng-devel @@ -115,11 +128,20 @@ BuildRequires: libpulse-devel %if 0%{?suse_version} >= 1315 BuildRequires: librdmacm-devel %endif +%ifnarch ppc64le +%if 0%{?suse_version} > 1320 +BuildRequires: libseccomp-devel +%endif +%endif +%if 0%{?suse_version} > 1140 +BuildRequires: libssh2-devel +%endif BuildRequires: libtool %if 0%{?suse_version} > 1310 BuildRequires: libusb-devel %endif BuildRequires: libvdeplug3-devel +BuildRequires: lzo-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif @@ -127,6 +149,9 @@ BuildRequires: mozilla-nss-devel BuildRequires: ncurses-devel BuildRequires: pwdutils BuildRequires: python +%if 0%{?suse_version} >= 1310 +BuildRequires: snappy-devel +%endif %if 0%{?suse_version} >= 1210 BuildRequires: systemd %{?systemd_requires} @@ -331,6 +356,27 @@ as PC and PowerMac systems. This sub-package contains a module for accessing network-based image files over a network connection from qemu-img tool and QEMU system emulation. +%if 0%{?suse_version} > 1140 +%package block-ssh +Summary: Universal CPU emulator -- SSH block support +Group: System/Emulators/PC +# Needs to match {qemu-system-*,qemu-img} >= 2.0.0, but is optional. +Conflicts: qemu < %version +Conflicts: qemu > %version +Conflicts: qemu-tools < %version +Conflicts: qemu-tools > %version + +%description block-ssh +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package contains a module for accessing network-based image files +over an SSH network connection from qemu-img tool and QEMU system emulation. +%endif + %package tools Summary: Universal CPU emulator -- Tools Group: System/Emulators/PC @@ -462,30 +508,73 @@ done --disable-strip \ --enable-system --disable-linux-user \ --enable-tools --enable-guest-agent \ + --enable-modules \ --enable-pie \ --enable-docs \ --audio-drv-list="pa alsa sdl oss" \ + --disable-archipelago \ + --enable-attr \ + --enable-bluez \ %if 0%{?suse_version} >= 1130 --enable-brlapi \ %endif + --enable-bzip2 \ --enable-cap-ng \ --enable-curl \ --enable-curses \ + --enable-fdt \ +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 + --disable-glusterfs \ +%endif --enable-gtk \ %if 0%{?suse_version} >= 1220 --with-gtkabi=3.0 \ %endif %if %{kvm_available} --enable-kvm \ +%endif + --disable-libiscsi \ + --disable-libnfs \ +%if 0%{?suse_version} > 1140 + --enable-libssh2 \ +%endif +%if 0%{?suse_version} > 1310 + --enable-libusb \ %endif --enable-linux-aio \ - --enable-modules \ + --enable-lzo \ + --disable-netmap \ +%ifarch %ix86 aarch64 +%if 0%{?suse_version} > 1320 + --enable-numa \ +%else + --disable-numa \ +%endif +%else +%ifarch %arm + --disable-numa \ +%else + --enable-numa \ +%endif +%endif +%if 0%{?suse_version} >= 1310 + --enable-quorum \ +%endif + --disable-rbd \ %if 0%{?suse_version} >= 1315 --enable-rdma \ %endif --enable-sdl \ --with-sdlabi=1.2 \ +%ifnarch ppc64le +%if 0%{?suse_version} > 1320 + --enable-seccomp \ +%endif +%endif --enable-smartcard-nss \ +%if 0%{?suse_version} >= 1310 + --enable-snappy \ +%endif %if 0%{?suse_version} >= 1140 %ifarch %ix86 x86_64 --enable-spice \ @@ -495,15 +584,17 @@ done %else --disable-spice \ %endif -%if 0%{?suse_version} > 1310 - --enable-libusb \ -%endif + --enable-tpm \ + --enable-trace-backends=nop \ %if 0%{?sles_version} != 11 --enable-usb-redir \ %endif + --enable-uuid \ --enable-vde \ + --enable-vhdx \ + --enable-vhost-net \ --enable-virtfs \ - --enable-virtio-blk-data-plane \ + --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-png \ --enable-vnc-sasl \ @@ -511,6 +602,7 @@ done --enable-vnc-ws \ %ifarch x86_64 --enable-xen \ + --enable-xen-pci-passthrough \ %endif make %{?_smp_mflags} V=1 @@ -627,6 +719,7 @@ fi %_datadir/%name/qemu-icon.bmp %_datadir/%name/qemu_logo_no_text.svg %dir %_sysconfdir/%name +%dir %_libdir/%name %if %{kvm_available} %if 0%{?suse_version} >= 1230 %{_udevrulesdir}/80-kvm.rules @@ -708,9 +801,14 @@ fi %files block-curl %defattr(-, root, root) -%dir %_libdir/%name %_libdir/%name/block-curl.so +%if 0%{?suse_version} > 1140 +%files block-ssh +%defattr(-, root, root) +%_libdir/%name/block-ssh.so +%endif + %files lang -f %name.lang %defattr(-, root, root) @@ -763,6 +861,7 @@ fi %verify(not mode) %_libexecdir/qemu-bridge-helper %dir %_sysconfdir/%name %config %_sysconfdir/%name/bridge.conf +%dir %_libdir/%name %files guest-agent %defattr(-, root, root)