%bcond_without glusterfs # GlusterFS backend
%bcond_without rdma # RDMA-based migration support
%bcond_with gtk2 # GTK+ 2.x instead of 3.x
-%bcond_without gtk3 # Do not build GTK UI
+%bcond_with gtk3 # Do not build GTK+ UI
+%bcond_with vte # VTE support in GTK+ UI
%bcond_without spice # SPICE support
%bcond_with esd # EsounD audio support
%bcond_without oss # OSS audio support
%bcond_without pulseaudio # PulseAudio audio support
%bcond_without xen # Xen backend driver support
%bcond_without bluetooth # bluetooth support
-%bcond_without brlapi # brlapi support
+%bcond_with brlapi # brlapi support
%bcond_without smartcard # smartcard-nss support
%bcond_without iscsi # iscsi support
%bcond_without libnfs # NFS support
%bcond_without usbredir # usb network redirection support
%bcond_without system_seabios # system seabios binary
%bcond_without snappy # snappy compression library
+%bcond_with lttng # lttng-ust trace backend support
+%bcond_with systemtap # SystemTap/dtrace trace backend support
%if %{with gtk2}
%undefine with_gtk3
Summary: QEMU CPU Emulator
Summary(pl.UTF-8): QEMU - emulator procesora
Name: qemu
-Version: 2.1.3
+Version: 2.2.0
Release: 1
License: GPL v2+
Group: Applications/Emulators
Source0: http://wiki.qemu-project.org/download/%{name}-%{version}.tar.bz2
-# Source0-md5: 950706eda86044446c536514b44934fa
+# Source0-md5: f7a5e2da22d057eb838a91da7aff43c8
Source2: %{name}.binfmt
# Loads kvm kernel modules at boot
Source3: kvm-modules-load.conf
Patch400: %{name}-kde_virtual_workspaces_hack.patch
URL: http://www.qemu-project.org/
%{?with_opengl:BuildRequires: OpenGL-GLX-devel}
-%{?with_sdl:BuildRequires: SDL2-devel}
+%{?with_sdl:BuildRequires: SDL2-devel >= 2.0}
BuildRequires: alsa-lib-devel
BuildRequires: bcc
%{?with_bluetooth:BuildRequires: bluez-libs-devel}
%{?with_libnfs:BuildRequires: libnfs-devel >= 1.9.3}
BuildRequires: libpng-devel
%{?with_rdma:BuildRequires: librdmacm-devel}
-%{?with_seccomp:BuildRequires: libseccomp-devel >= 2.1.0}
+%{?with_seccomp:BuildRequires: libseccomp-devel >= 2.1.1}
BuildRequires: libssh2-devel >= 1.2.8
BuildRequires: libusb-devel >= 1.0.13
BuildRequires: libuuid-devel
+%{?with_lttng:BuildRequires: lttng-ust-devel}
BuildRequires: lzo-devel >= 2
BuildRequires: ncurses-devel
%{?with_smartcard:BuildRequires: nss-devel >= 3.12.8}
BuildRequires: spice-protocol >= 0.12.3
BuildRequires: spice-server-devel >= 0.12.0
%endif
+%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
BuildRequires: texi2html
BuildRequires: texinfo
%{?with_usbredir:BuildRequires: usbredir-devel >= 0.6}
+%{?with_lttng:BuildRequires: userspace-rcu-devel}
BuildRequires: vde2-devel
BuildRequires: which
%{?with_xen:BuildRequires: xen-devel >= 3.4}
BuildRequires: zlib-devel
%if %{with gtk2}
BuildRequires: gtk+2-devel >= 2:2.18.0
-BuildRequires: vte0-devel >= 0.24.0
+%{?with_vte:BuildRequires: vte0-devel >= 0.24.0}
%endif
%if %{with gtk3}
BuildRequires: gtk+3-devel >= 3.0.0
-BuildRequires: vte-devel >= 0.32.0
+%{?with_vte:BuildRequires: vte2.90-devel >= 0.32.0}
%endif
Requires: %{name}-img = %{version}-%{release}
Requires: %{name}-system-aarch64 = %{version}-%{release}
Requires: %{name}-system-s390x = %{version}-%{release}
Requires: %{name}-system-sh4 = %{version}-%{release}
Requires: %{name}-system-sparc = %{version}-%{release}
+Requires: %{name}-system-tricore = %{version}-%{release}
Requires: %{name}-system-unicore32 = %{version}-%{release}
Requires: %{name}-system-x86 = %{version}-%{release}
Requires: %{name}-system-xtensa = %{version}-%{release}
%endif \
%if %{with gtk2} \
Requires: gtk+2 >= 2:2.18.0 \
-Requires: vte0 >= 0.24.0 \
+%{?with_vte:Requires: vte0 >= 0.24.0} \
%endif \
%if %{with gtk3} \
Requires: gtk+3 >= 3.0.0 \
-Requires: vte >= 0.32.0 \
+%{?with_vte:Requires: vte2.90 >= 0.32.0} \
%endif
# some PPC/SPARC boot image in ELF format
Ten pakiet zawiera emulator systemu z procesorem SPARC/SPARC64.
+%package system-tricore
+Summary: QEMU system emulator for TriCore
+Summary(pl.UTF-8): QEMU - emulator systemu z procesorem TriCore
+Group: Development/Tools
+Requires: %{name}-common = %{version}-%{release}
+%systempkg_req
+
+%description system-tricore
+QEMU is a generic and open source processor emulator which achieves a
+good emulation speed by using dynamic translation.
+
+This package provides the system emulator with TriCore CPU.
+
+%description system-sparc -l pl.UTF-8
+QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
+dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
+
+Ten pakiet zawiera emulator systemu z procesorem TriCore.
+
%package system-unicore32
Summary: QEMU system emulator for UniCore32
Summary(pl.UTF-8): QEMU - emulator systemu z procesorem UniCore32
Summary(pl.UTF-8): Moduł QEMU dla urządeń blokowych typu 'iscsi'
Group: Development/Tools
Requires: %{name}-common = %{version}-%{release}
-Requires: libiscsi >= 1.4.0
+Requires: libiscsi >= 1.9.0
%description module-block-iscsi
'iscsi' block device support for QEMU.
%build
./configure \
- --extra-cflags="%{rpmcflags} -I/usr/include/ncurses" \
- --extra-ldflags="%{rpmldflags}" \
+ --extra-cflags="%{rpmcflags} %{rpmcppflags} -fPIE -DPIE" \
+ --extra-ldflags="%{rpmldflags} -pie -Wl,-z,relro -Wl,-z,now" \
--prefix=%{_prefix} \
--libdir=%{_libdir} \
--libexecdir=%{_libexecdir} \
%{__enable_disable spice} \
%{__enable_disable smartcard smartcard-nss} \
--enable-tpm \
+ --enable-trace-backends="nop%{?with_systemtap:,dtrace}%{?with_lttng:,ust}" \
%{__enable_disable usbredir usb-redir} \
--enable-uuid \
--enable-vde \
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
+ %{!?with_vte:--disable-vte} \
--enable-kvm \
%{__enable_disable xen} \
--enable-modules \
%if %{without gtk2} && %{without gtk3}
--disable-gtk
%else
- --enable-gtk \
--with-gtkabi="%{?with_gtk2:2.0}%{!?with_gtk2:3.0}"
%endif
%dir %{_datadir}/qemu
%{_datadir}/%{name}/keymaps
%{_datadir}/%{name}/qemu-icon.bmp
+%{_datadir}/%{name}/trace-events
# various bios images
# all should be probably moved to the right system subpackage
%{_datadir}/%{name}/sgabios.bin
%{_datadir}/%{name}/slof.bin
%{_datadir}/%{name}/spapr-rtas.bin
-%{_datadir}/%{name}/u-boot.e500
%{_datadir}/%{name}/vgabios-cirrus.bin
%{_datadir}/%{name}/vgabios-qxl.bin
%{_datadir}/%{name}/vgabios-stdvga.bin
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-ppc
%attr(755,root,root) %{_bindir}/qemu-system-ppc64
+#%attr(755,root,root) %{_bindir}/qemu-system-ppc64le
%attr(755,root,root) %{_bindir}/qemu-system-ppcemb
+%{_datadir}/%{name}/u-boot.e500
%files system-s390x
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-sparc
%attr(755,root,root) %{_bindir}/qemu-system-sparc64
+%files system-tricore
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/qemu-system-tricore
+
%files system-unicore32
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-unicore32