dcavalca / rpms / qemu

Forked from rpms/qemu 10 months ago
Clone

Blame qemu.spec

Paolo Bonzini 2803fc
%ifarch %{ix86}
Paolo Bonzini 2803fc
%global kvm_package   system-x86
b26fb5
# need_qemu_kvm should only ever be used by x86
Paolo Bonzini 2803fc
%global need_qemu_kvm 1
Paolo Bonzini 2803fc
%endif
Paolo Bonzini 2803fc
%ifarch x86_64
Paolo Bonzini 2803fc
%global kvm_package   system-x86
b26fb5
# need_qemu_kvm should only ever be used by x86
Paolo Bonzini 2803fc
%global need_qemu_kvm 1
Paolo Bonzini 2803fc
%endif
8dd6b5
%ifarch %{power64}
Paolo Bonzini 2803fc
%global kvm_package   system-ppc
Paolo Bonzini 2803fc
%endif
Paolo Bonzini 31c633
%ifarch s390x
Paolo Bonzini 31c633
%global kvm_package   system-s390x
Paolo Bonzini 31c633
%endif
Peter Robinson 441340
%ifarch armv7hl
Peter Robinson 441340
%global kvm_package   system-arm
Peter Robinson 441340
%endif
21cd6f
%ifarch aarch64
21cd6f
%global kvm_package   system-aarch64
d43799
%endif
Michal Toman 504e25
%ifarch %{mips}
Michal Toman 504e25
%global kvm_package   system-mips
Michal Toman 504e25
%endif
d283ab
%ifarch riscv64
d283ab
%global kvm_package   system-riscv
d283ab
%endif
d43799
Daniel P. Berrange 083532
%global user_static 1
Daniel P. Berrangé 0b61e5
%if 0%{?rhel}
Daniel P. Berrangé 0b61e5
%global user_static 0
Daniel P. Berrangé 0b61e5
%endif
Daniel P. Berrange 083532
d43799
%global have_kvm 0
d43799
%if 0%{?kvm_package:1}
d43799
%global have_kvm 1
21cd6f
%endif
Paolo Bonzini 2803fc
3930e8
# Matches numactl ExcludeArch
3930e8
%global have_numactl 1
Daniel P. Berrangé 3c0f9e
%ifarch %{arm}
3930e8
%global have_numactl 0
3930e8
%endif
3930e8
3930e8
# Matches spice ExclusiveArch
7da5fc
%global have_spice 0
3930e8
%ifarch %{ix86} x86_64 %{arm} aarch64
7da5fc
%global have_spice 1
b26fb5
%endif
b26fb5
3930e8
# Matches xen ExclusiveArch
7da5fc
%global have_xen 0
efaa1c
%if 0%{?fedora}
3930e8
%ifarch %{ix86} x86_64 armv7hl aarch64
b26fb5
%global have_xen 1
b26fb5
%endif
efaa1c
%endif
efaa1c
efaa1c
%global have_liburing 0
efaa1c
%if 0%{?fedora}
efaa1c
%ifnarch %{arm}
efaa1c
%global have_liburing 1
efaa1c
%endif
efaa1c
%endif
efaa1c
efaa1c
%global have_virgl 0
efaa1c
%if 0%{?fedora}
efaa1c
%global have_virgl 1
efaa1c
%endif
efaa1c
efaa1c
%global have_pmem 0
efaa1c
%ifarch x86_64 %{power64}
efaa1c
%global have_pmem 1
efaa1c
%endif
efaa1c
b26fb5
57dbb7
# Matches edk2.spec ExclusiveArch
7da5fc
%global have_edk2 0
57dbb7
%ifarch %{ix86} x86_64 %{arm} aarch64
57dbb7
%global have_edk2 1
57dbb7
%endif
57dbb7
820948
# If we can run qemu-sanity-check, hostqemu gets defined.
820948
%ifarch %{arm}
820948
%global hostqemu arm-softmmu/qemu-system-arm
820948
%endif
820948
%ifarch aarch64
Daniel P. Berrangé 458e07
%global hostqemu aarch64-softmmu/qemu-system-aarch64
820948
%endif
820948
%ifarch %{ix86}
820948
%global hostqemu i386-softmmu/qemu-system-i386
820948
%endif
820948
%ifarch x86_64
820948
%global hostqemu x86_64-softmmu/qemu-system-x86_64
820948
%endif
820948
Daniel P. Berrangé 13e7c3
%global qemu_sanity_check 0
Daniel P. Berrangé 13e7c3
%ifarch x %{?kernel_arches}
Daniel P. Berrangé 13e7c3
%if 0%{?hostqemu:1}
Daniel P. Berrangé 13e7c3
%global qemu_sanity_check 1
Daniel P. Berrangé 13e7c3
%endif
Daniel P. Berrangé 13e7c3
%endif
Daniel P. Berrangé 13e7c3
Daniel P. Berrangé d9af2b
# QEMU sanity check doesn't know how to pick machine type
Daniel P. Berrangé d9af2b
# which is needed on ARM as there is no defualt
Daniel P. Berrangé d9af2b
# https://bugzilla.redhat.com/show_bug.cgi?id=1875763
Daniel P. Berrangé d9af2b
%ifarch %{arm} aarch64
Daniel P. Berrangé d9af2b
%global qemu_sanity_check 0
Daniel P. Berrangé d9af2b
%endif
Daniel P. Berrangé d9af2b
3c6a0c
# All modules should be listed here.
Daniel P. Berrangé a4b3db
%ifarch %{ix86} %{arm}
Daniel P. Berrangé a4b3db
%define with_block_rbd 0
Daniel P. Berrangé a4b3db
%else
Daniel P. Berrangé a4b3db
%define with_block_rbd 1
Daniel P. Berrangé a4b3db
%endif
d3ff78
%global with_block_gluster 1
Daniel P. Berrangé e1923c
Daniel P. Berrangé e6e2c6
%ifarch %{arm}
Daniel P. Berrangé e6e2c6
%define with_rdma 0
Daniel P. Berrangé e6e2c6
%else
Daniel P. Berrangé e6e2c6
%define with_rdma 1
Daniel P. Berrangé e6e2c6
%endif
Daniel P. Berrangé e6e2c6
Daniel P. Berrangé f1fa58
%define evr %{epoch}:%{version}-%{release}
Daniel P. Berrangé f1fa58
Daniel P. Berrangé f1fa58
%define requires_block_curl Requires: %{name}-block-curl = %{evr}
Daniel P. Berrangé f1fa58
%define requires_block_dmg Requires: %{name}-block-dmg = %{evr}
Daniel P. Berrangé e1923c
%if %{with_block_gluster}
Daniel P. Berrangé f1fa58
%define requires_block_gluster Requires: %{name}-block-gluster = %{evr}
Daniel P. Berrangé e1923c
%define obsoletes_block_gluster %{nil}
Daniel P. Berrangé e1923c
%else
Daniel P. Berrangé e1923c
%define requires_block_gluster %{nil}
Daniel P. Berrangé e1923c
%define obsoletes_block_gluster Obsoletes: %{name}-block-gluster < %{evr}
Daniel P. Berrangé e1923c
%endif
Daniel P. Berrangé f1fa58
%define requires_block_iscsi Requires: %{name}-block-iscsi = %{evr}
Daniel P. Berrangé f1fa58
%define requires_block_nfs Requires: %{name}-block-nfs = %{evr}
Daniel P. Berrangé a4b3db
%if %{with_block_rbd}
Daniel P. Berrangé f1fa58
%define requires_block_rbd Requires: %{name}-block-rbd = %{evr}
Daniel P. Berrangé a60ad6
%define obsoletes_block_rbd %{nil}
Daniel P. Berrangé a4b3db
%else
Daniel P. Berrangé f1fa58
%define requires_block_rbd %{nil}
Daniel P. Berrangé a60ad6
%define obsoletes_block_rbd Obsoletes: %{name}-block-rbd < %{evr}
Daniel P. Berrangé f1fa58
%endif
Daniel P. Berrangé f1fa58
%define requires_block_ssh Requires: %{name}-block-ssh = %{evr}
Daniel P. Berrangé f1fa58
%define requires_audio_alsa Requires: %{name}-audio-alsa = %{evr}
Daniel P. Berrangé f1fa58
%define requires_audio_oss Requires: %{name}-audio-oss = %{evr}
Daniel P. Berrangé f1fa58
%define requires_audio_pa Requires: %{name}-audio-pa = %{evr}
Daniel P. Berrangé f1fa58
%define requires_audio_sdl Requires: %{name}-audio-sdl = %{evr}
d20fa7
%define requires_char_baum Requires: %{name}-char-baum = %{evr}
d20fa7
%define requires_device_usb_redirect Requires: %{name}-device-usb-redirect = %{evr}
d20fa7
%define requires_device_usb_smartcard Requires: %{name}-device-usb-smartcard = %{evr}
Daniel P. Berrangé 941a4c
%define requires_ui_curses Requires: %{name}-ui-curses = %{evr}
Daniel P. Berrangé f1fa58
%define requires_ui_gtk Requires: %{name}-ui-gtk = %{evr}
Daniel P. Berrangé f1fa58
%define requires_ui_sdl Requires: %{name}-ui-sdl = %{evr}
28222c
%define requires_ui_egl_headless Requires: %{name}-ui-egl-headless = %{evr}
28222c
%define requires_ui_opengl Requires: %{name}-ui-opengl = %{evr}
28222c
%define requires_device_display_virtio_gpu Requires: %{name}-device-display-virtio-gpu = %{evr}
28222c
%define requires_device_display_virtio_gpu_pci Requires: %{name}-device-display-virtio-gpu-pci = %{evr}
28222c
%define requires_device_display_virtio_vga Requires: %{name}-device-display-virtio-vga = %{evr}
993f41
993f41
%if %{have_spice}
fddfbd
%define requires_ui_spice_app Requires: %{name}-ui-spice-app = %{evr}
28222c
%define requires_ui_spice_core Requires: %{name}-ui-spice-core = %{evr}
a840dd
%define requires_device_display_qxl Requires: %{name}-device-display-qxl = %{evr}
28222c
%define requires_audio_spice Requires: %{name}-audio-spice = %{evr}
28222c
%define requires_char_spice Requires: %{name}-char-spice = %{evr}
993f41
%else
ff9bb1
%define requires_ui_spice_app %{nil}
28222c
%define requires_ui_spice_core %{nil}
2b132a
%define requires_device_display_qxl %{nil}
28222c
%define requires_audio_spice %{nil}
28222c
%define requires_char_spice %{nil}
993f41
%endif
Daniel P. Berrangé f1fa58
Daniel P. Berrangé f1fa58
%global requires_all_modules \
Daniel P. Berrangé f1fa58
%{requires_block_curl} \
Daniel P. Berrangé f1fa58
%{requires_block_dmg} \
Daniel P. Berrangé f1fa58
%{requires_block_gluster} \
Daniel P. Berrangé f1fa58
%{requires_block_iscsi} \
Daniel P. Berrangé f1fa58
%{requires_block_nfs} \
Daniel P. Berrangé f1fa58
%{requires_block_rbd} \
Daniel P. Berrangé f1fa58
%{requires_block_ssh} \
Daniel P. Berrangé f1fa58
%{requires_audio_alsa} \
Daniel P. Berrangé f1fa58
%{requires_audio_oss} \
Daniel P. Berrangé f1fa58
%{requires_audio_pa} \
Daniel P. Berrangé f1fa58
%{requires_audio_sdl} \
28222c
%{requires_audio_spice} \
Daniel P. Berrangé f1fa58
%{requires_ui_curses} \
Daniel P. Berrangé f1fa58
%{requires_ui_gtk} \
Thierry Vignaud 167698
%{requires_ui_sdl} \
28222c
%{requires_ui_egl_headless} \
28222c
%{requires_ui_opengl} \
d20fa7
%{requires_ui_spice_app} \
28222c
%{requires_ui_spice_core} \
d20fa7
%{requires_char_baum} \
28222c
%{requires_char_spice} \
d20fa7
%{requires_device_display_qxl} \
28222c
%{requires_device_display_virtio_gpu} \
28222c
%{requires_device_display_virtio_gpu_pci} \
28222c
%{requires_device_display_virtio_vga} \
d20fa7
%{requires_device_usb_redirect} \
d20fa7
%{requires_device_usb_smartcard} \
ecbe00
Daniel P. Berrangé a60ad6
# Modules which can be conditionally built
Daniel P. Berrangé a60ad6
%global obsoletes_some_modules \
Daniel P. Berrangé e1923c
%{obsoletes_block_gluster} \
Daniel P. Berrangé a60ad6
%{obsoletes_block_rbd}
Daniel P. Berrangé a60ad6
409720
# Release candidate version tracking
5a84be
#global rcver rc4
1a4355
%if 0%{?rcver:1}
1a4355
%global rcrel .%{rcver}
1a4355
%global rcstr -%{rcver}
1a4355
%endif
409720
3400e7
David Woodhouse 5c3734
Summary: QEMU is a FAST! processor emulator
David Woodhouse 5c3734
Name: qemu
28222c
Version: 5.2.0
1abc8e
Release: 4%{?rcrel}%{?dist}
Glauber Costa 9235f9
Epoch: 2
Daniel P. Berrangé 1d16c1
License: GPLv2 and BSD and MIT and CC-BY
Matthias Saou 67348d
URL: http://www.qemu.org/
Dan Horák 330491
1c7073
Source0: http://wiki.qemu-project.org/download/%{name}-%{version}%{?rcstr}.tar.xz
Daniel P. Berrangé dc03f3
c75224
# guest agent service
Daniel P. Berrange 1ad1f9
Source10: qemu-guest-agent.service
Paolo Bonzini bfe7b8
Source17: qemu-ga.sysconfig
c75224
# guest agent udev rules
Daniel P. Berrange 1ad1f9
Source11: 99-qemu-guest-agent.rules
c75224
# /etc/qemu/bridge.conf
Paolo Bonzini 773d5b
Source12: bridge.conf
c75224
# qemu-kvm back compat wrapper installed as /usr/bin/qemu-kvm
96a5f8
Source13: qemu-kvm.sh
5bdb06
# /etc/modprobe.d/kvm.conf, for x86
5bdb06
Source20: kvm-x86.modprobe.conf
d19693
# /etc/security/limits.d/95-kvm-ppc64-memlock.conf
d4c450
Source21: 95-kvm-ppc64-memlock.conf
Daniel P. Berrangé b91dae
Daniel P. Berrangé 70ef32
28222c
BuildRequires: meson
Tom Stellard 3fa99d
BuildRequires: gcc
837eb7
# documentation deps
837eb7
BuildRequires: texinfo
Daniel P. Berrangé 13e7c3
%if %{qemu_sanity_check}
837eb7
BuildRequires: qemu-sanity-check-nodeps
Daniel P. Berrangé 4e321e
BuildRequires: kernel
70b667
%endif
Daniel P. Berrangé 744e70
# chrpath calls in specfile
837eb7
BuildRequires: chrpath
837eb7
837eb7
# -display sdl support
b44086
BuildRequires: SDL2-devel
837eb7
# used in various places for compression
b6dd5a
BuildRequires: zlib-devel
837eb7
# used in various places for crypto
b6dd5a
BuildRequires: gnutls-devel
837eb7
# VNC sasl auth support
b6dd5a
BuildRequires: cyrus-sasl-devel
837eb7
# aio implementation for block drivers
Justin M. Forbes 3a5505
BuildRequires: libaio-devel
837eb7
# pulseaudio audio output
Mark McLoughlin 6d887b
BuildRequires: pulseaudio-libs-devel
Daniel P. Berrange ecee1e
# alsa audio output
Daniel P. Berrange ecee1e
BuildRequires: alsa-lib-devel
Paolo Bonzini 0fb2b2
# qemu-pr-helper multipath support (requires libudev too)
Paolo Bonzini 0fb2b2
BuildRequires: device-mapper-multipath-devel
Paolo Bonzini 0fb2b2
BuildRequires: systemd-devel
837eb7
# iscsi drive support
Paolo Bonzini 625ba4
BuildRequires: libiscsi-devel
837eb7
# NFS drive support
409720
BuildRequires: libnfs-devel
837eb7
# snappy compression for memory dump
409720
BuildRequires: snappy-devel
837eb7
# lzo compression for memory dump
409720
BuildRequires: lzo-devel
Daniel P. Berrangé 744e70
# curses display backend
Mark McLoughlin 62fb37
BuildRequires: ncurses-devel
Daniel P. Berrangé 744e70
# 9pfs filesystem
2af28c
BuildRequires: libattr-devel
Daniel P. Berrangé 744e70
# qemu-bridge-helper, qemu-pr-helper and more
837eb7
BuildRequires: libcap-ng-devel
837eb7
# spice usb redirection support
Daniel P. Berrangé 744e70
BuildRequires: usbredir-devel
7da5fc
%if %{have_spice}
837eb7
# spice graphics support
Daniel P. Berrangé 744e70
BuildRequires: spice-protocol
Daniel P. Berrangé 744e70
BuildRequires: spice-server-devel
Paolo Bonzini 2803fc
%endif
837eb7
# seccomp containment support
Daniel P. Berrangé 744e70
BuildRequires: libseccomp-devel
Daniel P. Berrangé 744e70
# network block driver
Daniel P. Berrange 4a7239
BuildRequires: libcurl-devel
Daniel P. Berrangé a4b3db
%if %{with_block_rbd}
Daniel P. Berrangé 744e70
# RBD block driver
Daniel P. Berrangé 744e70
BuildRequires: librbd-devel
Daniel P. Berrangé a4b3db
%endif
Daniel P. Berrange 7b1d66
# We need both because the 'stap' binary is probed for by configure
Daniel P. Berrange 7b1d66
BuildRequires: systemtap
Daniel P. Berrange 7b1d66
BuildRequires: systemtap-sdt-devel
Daniel P. Berrangé 744e70
# VNC JPEG support
Daniel P. Berrange eaebe4
BuildRequires: libjpeg-devel
Daniel P. Berrangé 744e70
# VNC PNG support
Daniel P. Berrange eaebe4
BuildRequires: libpng-devel
Daniel P. Berrangé 744e70
# Braille device support
Daniel P. Berrange eaebe4
BuildRequires: brlapi-devel
Daniel P. Berrangé 744e70
# FDT device tree support
Daniel P. Berrange eaebe4
BuildRequires: libfdt-devel
Daniel P. Berrangé 744e70
# QEMU display pixel manipulation
7e50c4
BuildRequires: pixman-devel
Daniel P. Berrangé e1923c
%if %{with_block_gluster}
Daniel P. Berrangé 744e70
# gluster block driver
Daniel P. Berrangé 744e70
BuildRequires: glusterfs-api-devel
Daniel P. Berrangé e1923c
%endif
Daniel P. Berrangé 744e70
# USB passthrough
7fae7f
BuildRequires: libusbx-devel
7fae7f
# SSH block driver
160bf4
BuildRequires: libssh-devel
7fae7f
# GTK frontend
7fae7f
BuildRequires: gtk3-devel
6f5575
BuildRequires: vte291-devel
b9a8d0
# GTK translations
b9a8d0
BuildRequires: gettext
76dcac
# RDMA migration
Daniel P. Berrangé e6e2c6
%if %{with_rdma}
3930e8
BuildRequires: rdma-core-devel
Daniel P. Berrangé e6e2c6
%endif
7da5fc
%if %{have_xen}
837eb7
# Xen support
3400e7
BuildRequires: xen-devel
3400e7
%endif
3930e8
%if %{have_numactl}
Daniel P. Berrangé 744e70
# memdev hostmem backend
Daniel P. Berrange 145f8d
BuildRequires: numactl-devel
ad339a
%endif
Daniel P. Berrangé 744e70
# reading bzip2 compressed dmg images
8055ee
BuildRequires: bzip2-devel
Daniel P. Berrangé 744e70
# opengl bits
1ae1f0
BuildRequires: libepoxy-devel
Daniel P. Berrangé 744e70
# TLS test suite
88b379
BuildRequires: libtasn1-devel
Daniel P. Berrangé 744e70
# smartcard device
Daniel P. Berrangé 744e70
BuildRequires: libcacard-devel
efaa1c
%if %{have_virgl}
Daniel P. Berrangé 744e70
# virgl 3d support
88b379
BuildRequires: virglrenderer-devel
748c8c
%endif
Daniel P. Berrangé 744e70
# gtk GL support, vhost-user-gpu
fa6cd1
BuildRequires: mesa-libgbm-devel
Daniel P. Berrangé 744e70
# preferred disassembler for TCG
700f12
BuildRequires: capstone-devel
Daniel P. Berrangé 744e70
# parallels disk images require libxml2
3c6a0c
BuildRequires: libxml2-devel
efaa1c
%if %{have_pmem}
Daniel P. Berrangé 744e70
# nvdimm
007776
BuildRequires: libpmem-devel
0af132
%endif
Daniel P. Berrangé 744e70
# qemu-ga
007776
BuildRequires: libudev-devel
Daniel P. Berrangé 744e70
# qauth infrastructure
d3ff78
BuildRequires: pam-devel
Daniel P. Berrangé 744e70
# user-mode networking
17efd8
BuildRequires: libslirp-devel
Daniel P. Berrangé 744e70
# Documentation build
d3ff78
BuildRequires: python3-sphinx
Daniel P. Berrangé 744e70
# Test suite ./scripts/tap-driver.pl
d3ff78
BuildRequires: perl-Test-Harness
Daniel P. Berrangé 744e70
# For making python shebangs versioned
f35188
BuildRequires: /usr/bin/pathfix.py
f35188
BuildRequires: python3-devel
efaa1c
%if %{have_liburing}
Daniel P. Berrangé 744e70
# liburing support. Library isn't built for arm
8833af
BuildRequires: liburing-devel
176558
%endif
Daniel P. Berrangé 744e70
# zstd compression support
8833af
BuildRequires: libzstd-devel
76b4bc
# `hostname` used by test suite
76b4bc
BuildRequires: hostname
Daniel P. Berrangé 744e70
# nvdimm dax
f4bee9
BuildRequires: daxctl-devel
5bc112
# used by some linux user impls
5bc112
BuildRequires: libdrm-devel
8055ee
Daniel P. Berrangé 0b61e5
%if %{user_static}
Daniel P. Berrange 083532
BuildRequires: glibc-static pcre-static glib2-static zlib-static
Daniel P. Berrangé 0b61e5
%endif
Daniel P. Berrange 083532
7e50c4
c27704
Requires: %{name}-user = %{epoch}:%{version}-%{release}
3c6a0c
Requires: %{name}-system-aarch64 = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-alpha = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-arm = %{epoch}:%{version}-%{release}
f4bee9
Requires: %{name}-system-avr = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-cris = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-m68k = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-microblaze = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-mips = %{epoch}:%{version}-%{release}
3c6a0c
Requires: %{name}-system-nios2 = %{epoch}:%{version}-%{release}
1c7073
Requires: %{name}-system-or1k = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-ppc = %{epoch}:%{version}-%{release}
3c6a0c
Requires: %{name}-system-riscv = %{epoch}:%{version}-%{release}
e1b832
Requires: %{name}-system-rx = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-s390x = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-sh4 = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-sparc = %{epoch}:%{version}-%{release}
3c6a0c
Requires: %{name}-system-tricore = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-x86 = %{epoch}:%{version}-%{release}
c27704
Requires: %{name}-system-xtensa = %{epoch}:%{version}-%{release}
Glauber Costa 9235f9
Requires: %{name}-img = %{epoch}:%{version}-%{release}
Glauber Costa 8571d0
Glauber Costa 485711
David Woodhouse 5c3734
%description
Matthias Saou 67348d
QEMU is a generic and open source processor emulator which achieves a good
Matthias Saou 67348d
emulation speed by using dynamic translation. QEMU has two operating modes:
David Woodhouse 5c3734
Matthias Saou 67348d
 * Full system emulation. In this mode, QEMU emulates a full system (for
Matthias Saou 67348d
   example a PC), including a processor and various peripherials. It can be
Matthias Saou 67348d
   used to launch different Operating Systems without rebooting the PC or
Matthias Saou 67348d
   to debug system code.
David Woodhouse 5c3734
 * User mode emulation. In this mode, QEMU can launch Linux processes compiled
Matthias Saou 67348d
   for one CPU on another CPU.
David Woodhouse 5c3734
Matthias Saou 67348d
As QEMU requires no host kernel patches to run, it is safe and easy to use.
David Woodhouse 5c3734
c27704
Glauber Costa 9235f9
%package  common
Glauber Costa 9235f9
Summary: QEMU common files needed by all QEMU targets
514d6b
Requires: ipxe-roms-qemu
Mark McLoughlin 6d739f
Requires(post): /usr/bin/getent
Mark McLoughlin 6d739f
Requires(post): /usr/sbin/groupadd
Mark McLoughlin 6d739f
Requires(post): /usr/sbin/useradd
5439f9
Requires(post): systemd-units
5439f9
Requires(preun): systemd-units
5439f9
Requires(postun): systemd-units
28222c
Obsoletes: %{name}-system-lm32 <= %{epoch}:%{version}-%{release}
Adam Williamson 3f5e11
Obsoletes: %{name}-system-lm32-core <= %{epoch}:%{version}-%{release}
28222c
Obsoletes: %{name}-system-moxie <= %{epoch}:%{version}-%{release}
Adam Williamson 3f5e11
Obsoletes: %{name}-system-moxie-core <= %{epoch}:%{version}-%{release}
28222c
Obsoletes: %{name}-system-unicore32 <= %{epoch}:%{version}-%{release}
Adam Williamson 3f5e11
Obsoletes: %{name}-system-unicore32-core <= %{epoch}:%{version}-%{release}
Daniel P. Berrangé a60ad6
%{obsoletes_some_modules}
Glauber Costa 9235f9
%description common
Glauber Costa 9235f9
This package provides the common files needed by all QEMU targets
Glauber Costa 485711
c27704
Daniel P. Berrange 1ad1f9
%package guest-agent
Daniel P. Berrange 1ad1f9
Summary: QEMU guest agent
Daniel P. Berrange 1ad1f9
Requires(post): systemd-units
Daniel P. Berrange 1ad1f9
Requires(preun): systemd-units
Daniel P. Berrange 1ad1f9
Requires(postun): systemd-units
Daniel P. Berrange 1ad1f9
%description guest-agent
Daniel P. Berrange 1ad1f9
This package provides an agent to run inside guests, which communicates
Daniel P. Berrange 1ad1f9
with the host over a virtio-serial channel named "org.qemu.guest_agent.0"
Daniel P. Berrange 1ad1f9
Daniel P. Berrange 1ad1f9
This package does not need to be installed on the host OS.
Daniel P. Berrange 1ad1f9
Daniel P. Berrange 1ad1f9
48e07c
%package  img
48e07c
Summary: QEMU command line tool for manipulating disk images
48e07c
%description img
48e07c
This package provides a command line tool for manipulating disk images
Daniel P. Berrange 1ad1f9
Daniel P. Berrange 1ad1f9
ecbe00
%package  block-curl
ecbe00
Summary: QEMU CURL block driver
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-curl
ecbe00
This package provides the additional CURL block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to access remote disks over
ecbe00
http, https, ftp and other transports provided by the CURL library.
ecbe00
ecbe00
ecbe00
%package  block-dmg
ecbe00
Summary: QEMU block driver for DMG disk images
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-dmg
ecbe00
This package provides the additional DMG block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to open '.dmg' files.
ecbe00
ecbe00
Daniel P. Berrangé e1923c
%if %{with_block_gluster}
ecbe00
%package  block-gluster
ecbe00
Summary: QEMU Gluster block driver
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-gluster
ecbe00
This package provides the additional Gluster block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to access remote Gluster storage.
Daniel P. Berrangé e1923c
%endif
ecbe00
ecbe00
ecbe00
%package  block-iscsi
ecbe00
Summary: QEMU iSCSI block driver
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-iscsi
ecbe00
This package provides the additional iSCSI block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to access iSCSI volumes.
ecbe00
ecbe00
151958
%package  block-nfs
151958
Summary: QEMU NFS block driver
151958
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
151958
151958
%description block-nfs
151958
This package provides the additional NFS block driver for QEMU.
151958
151958
Install this package if you want to access remote NFS storage.
151958
3c6a0c
Daniel P. Berrangé a4b3db
%if %{with_block_rbd}
ecbe00
%package  block-rbd
ecbe00
Summary: QEMU Ceph/RBD block driver
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-rbd
ecbe00
This package provides the additional Ceph/RBD block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to access remote Ceph volumes
ecbe00
using the rbd protocol.
Daniel P. Berrangé a4b3db
%endif
ecbe00
ecbe00
%package  block-ssh
ecbe00
Summary: QEMU SSH block driver
ecbe00
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
ecbe00
%description block-ssh
ecbe00
This package provides the additional SSH block driver for QEMU.
ecbe00
ecbe00
Install this package if you want to access remote disks using
ecbe00
the Secure Shell (SSH) protocol.
ecbe00
ecbe00
3c6a0c
%package  audio-alsa
3c6a0c
Summary: QEMU ALSA audio driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description audio-alsa
3c6a0c
This package provides the additional ALSA audio driver for QEMU.
3c6a0c
3c6a0c
%package  audio-oss
3c6a0c
Summary: QEMU OSS audio driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description audio-oss
3c6a0c
This package provides the additional OSS audio driver for QEMU.
3c6a0c
3c6a0c
%package  audio-pa
3c6a0c
Summary: QEMU PulseAudio audio driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description audio-pa
3c6a0c
This package provides the additional PulseAudi audio driver for QEMU.
3c6a0c
3c6a0c
%package  audio-sdl
3c6a0c
Summary: QEMU SDL audio driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description audio-sdl
3c6a0c
This package provides the additional SDL audio driver for QEMU.
3c6a0c
3c6a0c
3c6a0c
%package  ui-curses
3c6a0c
Summary: QEMU curses UI driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description ui-curses
3c6a0c
This package provides the additional curses UI for QEMU.
3c6a0c
3c6a0c
%package  ui-gtk
3c6a0c
Summary: QEMU GTK UI driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-opengl%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description ui-gtk
3c6a0c
This package provides the additional GTK UI for QEMU.
3c6a0c
3c6a0c
%package  ui-sdl
3c6a0c
Summary: QEMU SDL UI driver
3c6a0c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-opengl%{?_isa} = %{epoch}:%{version}-%{release}
3c6a0c
%description ui-sdl
3c6a0c
This package provides the additional SDL UI for QEMU.
3c6a0c
28222c
%package  ui-egl-headless
28222c
Summary: QEMU EGL headless driver
0038f8
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-opengl%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description ui-egl-headless
28222c
This package provides the additional egl-headless UI for QEMU.
28222c
28222c
%package  ui-opengl
28222c
Summary: QEMU OpenGL driver
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description ui-opengl
28222c
This package provides the additional opengl UI for QEMU.
0038f8
3c6a0c
f4bee9
%package  char-baum
f4bee9
Summary: QEMU Baum chardev driver
f4bee9
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
f4bee9
%description char-baum
f4bee9
This package provides the Baum chardev driver for QEMU.
f4bee9
f4bee9
28222c
%package device-display-virtio-gpu
28222c
Summary: QEMU virtio-gpu display device
f4bee9
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description device-display-virtio-gpu
28222c
This package provides the virtio-gpu display device for QEMU.
28222c
%package device-display-virtio-gpu-pci
28222c
Summary: QEMU virtio-gpu-pci display device
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description device-display-virtio-gpu-pci
28222c
This package provides the virtio-gpu-pci display device for QEMU.
28222c
%package device-display-virtio-vga
28222c
Summary: QEMU virtio-vga display device
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description device-display-virtio-vga
28222c
This package provides the virtio-vga display device for QEMU.
f4bee9
f4bee9
%package device-usb-redirect
f4bee9
Summary: QEMU usbredir device
f4bee9
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
f4bee9
%description device-usb-redirect
f4bee9
This package provides the usbredir device for QEMU.
f4bee9
f4bee9
%package device-usb-smartcard
f4bee9
Summary: QEMU USB smartcard device
f4bee9
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
f4bee9
%description device-usb-smartcard
f4bee9
This package provides the USB smartcard device for QEMU.
f4bee9
f4bee9
28222c
%if %{have_spice}
28222c
%package  ui-spice-core
28222c
Summary: QEMU spice-core UI driver
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-opengl%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description ui-spice-core
28222c
This package provides the additional spice-core UI for QEMU.
28222c
28222c
%package  ui-spice-app
28222c
Summary: QEMU spice-app UI driver
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-spice-core%{?_isa} = %{epoch}:%{version}-%{release}
a30637
Requires: %{name}-char-spice%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description ui-spice-app
28222c
This package provides the additional spice-app UI for QEMU.
28222c
28222c
%package device-display-qxl
28222c
Summary: QEMU QXL display device
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-spice-core%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description device-display-qxl
28222c
This package provides the QXL display device for QEMU.
28222c
28222c
%package  char-spice
28222c
Summary: QEMU spice chardev driver
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-spice-core%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description char-spice
28222c
This package provides the spice chardev driver for QEMU.
28222c
28222c
%package  audio-spice
28222c
Summary: QEMU spice audio driver
28222c
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
18c8d5
Requires: %{name}-ui-spice-core%{?_isa} = %{epoch}:%{version}-%{release}
28222c
%description audio-spice
28222c
This package provides the spice audio driver for QEMU.
28222c
%endif
28222c
28222c
48e07c
%if %{have_kvm}
48e07c
%package kvm
48e07c
Summary: QEMU metapackage for KVM support
48e07c
Requires: qemu-%{kvm_package} = %{epoch}:%{version}-%{release}
48e07c
%description kvm
48e07c
This is a meta-package that provides a qemu-system-<arch> package for native
48e07c
architectures where kvm can be enabled. For example, in an x86 system, this
48e07c
will install qemu-system-x86
ecbe00
ecbe00
ecbe00
%package kvm-core
ecbe00
Summary: QEMU metapackage for KVM support
ecbe00
Requires: qemu-%{kvm_package}-core = %{epoch}:%{version}-%{release}
ecbe00
%description kvm-core
ecbe00
This is a meta-package that provides a qemu-system-<arch>-core package
ecbe00
for native architectures where kvm can be enabled. For example, in an
ecbe00
x86 system, this will install qemu-system-x86-core
48e07c
%endif
979ec1
979ec1
c27704
%package user
Glauber Costa 9235f9
Summary: QEMU user mode emulation of qemu targets
Glauber Costa 9235f9
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Daniel P. Berrange 083532
# On upgrade, make qemu-user get replaced with qemu-user + qemu-user-binfmt
Daniel P. Berrange 9e7157
Obsoletes: %{name}-user < 2:2.6.0-5%{?dist}
c27704
%description user
Glauber Costa 9235f9
This package provides the user mode emulation of qemu targets
Glauber Costa 9235f9
c27704
Daniel P. Berrange 083532
%package user-binfmt
Daniel P. Berrange 083532
Summary: QEMU user mode emulation of qemu targets
Daniel P. Berrange 083532
Requires: %{name}-user = %{epoch}:%{version}-%{release}
Daniel P. Berrange 083532
Requires(post): systemd-units
Daniel P. Berrange 083532
Requires(postun): systemd-units
Daniel P. Berrange 083532
# qemu-user-binfmt + qemu-user-static both provide binfmt rules
Daniel P. Berrange 083532
Conflicts: %{name}-user-static
Daniel P. Berrange 083532
# On upgrade, make qemu-user get replaced with qemu-user + qemu-user-binfmt
Daniel P. Berrange 9e7157
Obsoletes: %{name}-user < 2:2.6.0-5%{?dist}
Daniel P. Berrange 083532
%description user-binfmt
Daniel P. Berrange 083532
This package provides the user mode emulation of qemu targets
Daniel P. Berrange 083532
Daniel P. Berrange 083532
%if %{user_static}
Daniel P. Berrange 083532
%package user-static
Daniel P. Berrange 083532
Summary: QEMU user mode emulation of qemu targets static build
Daniel P. Berrange 083532
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Daniel P. Berrange 083532
Requires(post): systemd-units
Daniel P. Berrange 083532
Requires(postun): systemd-units
Daniel P. Berrange 083532
# qemu-user-binfmt + qemu-user-static both provide binfmt rules
Daniel P. Berrange 083532
Conflicts: %{name}-user-binfmt
Daniel P. Berrange 083532
Provides: %{name}-user-binfmt
Daniel P. Berrange 083532
%description user-static
Daniel P. Berrange 083532
This package provides the user mode emulation of qemu targets built as
Daniel P. Berrange 083532
static binaries
Daniel P. Berrange 083532
%endif
Daniel P. Berrange 083532
ecbe00
3758f8
%package system-aarch64
3758f8
Summary: QEMU system emulator for AArch64
3758f8
Requires: %{name}-system-aarch64-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
3758f8
%description system-aarch64
3758f8
This package provides the QEMU system emulator for AArch64.
ecbe00
3758f8
%package system-aarch64-core
3758f8
Summary: QEMU system emulator for AArch64
Glauber Costa 9235f9
Requires: %{name}-common = %{epoch}:%{version}-%{release}
7da5fc
%if %{have_edk2}
3758f8
Requires: edk2-aarch64
57dbb7
%endif
3758f8
%description system-aarch64-core
3758f8
This package provides the QEMU system emulator for AArch64.
Glauber Costa 9235f9
c27704
c27704
%package system-alpha
Paolo Bonzini c32efe
Summary: QEMU system emulator for Alpha
ecbe00
Requires: %{name}-system-alpha-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-alpha
3758f8
This package provides the QEMU system emulator for Alpha systems.
Paolo Bonzini c32efe
ecbe00
%package system-alpha-core
ecbe00
Summary: QEMU system emulator for Alpha
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-alpha-core
3758f8
This package provides the QEMU system emulator for Alpha systems.
ecbe00
c27704
c27704
%package system-arm
Paolo Bonzini 40e61a
Summary: QEMU system emulator for ARM
ecbe00
Requires: %{name}-system-arm-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-arm
3758f8
This package provides the QEMU system emulator for ARM systems.
ecbe00
ecbe00
%package system-arm-core
ecbe00
Summary: QEMU system emulator for ARM
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-arm-core
3758f8
This package provides the QEMU system emulator for ARM boards.
Glauber Costa 485711
c27704
f4bee9
%package system-avr
f4bee9
Summary: QEMU system emulator for AVR
f4bee9
Requires: %{name}-system-avr-core = %{epoch}:%{version}-%{release}
f4bee9
%{requires_all_modules}
f4bee9
%description system-avr
f4bee9
This package provides the QEMU system emulator for AVR systems.
f4bee9
f4bee9
%package system-avr-core
c9c298
Summary: QEMU system emulator for AVR
f4bee9
Requires: %{name}-common = %{epoch}:%{version}-%{release}
f4bee9
%description system-avr-core
f4bee9
This package provides the QEMU system emulator for AVR systems.
f4bee9
f4bee9
c27704
%package system-cris
Paolo Bonzini 40e61a
Summary: QEMU system emulator for CRIS
ecbe00
Requires: %{name}-system-cris-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-cris
ecbe00
This package provides the system emulator for CRIS systems.
ecbe00
ecbe00
%package system-cris-core
ecbe00
Summary: QEMU system emulator for CRIS
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-cris-core
Paolo Bonzini 40e61a
This package provides the system emulator for CRIS boards.
Paolo Bonzini 40e61a
c27704
3758f8
%package system-hppa
3758f8
Summary: QEMU system emulator for HPPA
3758f8
Requires: %{name}-system-hppa-core = %{epoch}:%{version}-%{release}
3758f8
%{requires_all_modules}
3758f8
%description system-hppa
3758f8
This package provides the QEMU system emulator for HPPA.
3758f8
3758f8
%package system-hppa-core
3758f8
Summary: QEMU system emulator for hppa
3758f8
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
%description system-hppa-core
3758f8
This package provides the QEMU system emulator for HPPA.
3758f8
3758f8
c27704
%package system-m68k
Paolo Bonzini 40e61a
Summary: QEMU system emulator for ColdFire (m68k)
ecbe00
Requires: %{name}-system-m68k-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-m68k
3758f8
This package provides the QEMU system emulator for ColdFire boards.
Paolo Bonzini 40e61a
ecbe00
%package system-m68k-core
ecbe00
Summary: QEMU system emulator for ColdFire (m68k)
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-m68k-core
3758f8
This package provides the QEMU system emulator for ColdFire boards.
ecbe00
c27704
c27704
%package system-microblaze
Paolo Bonzini c32efe
Summary: QEMU system emulator for Microblaze
ecbe00
Requires: %{name}-system-microblaze-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-microblaze
3758f8
This package provides the QEMU system emulator for Microblaze boards.
Paolo Bonzini c32efe
ecbe00
%package system-microblaze-core
ecbe00
Summary: QEMU system emulator for Microblaze
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-microblaze-core
3758f8
This package provides the QEMU system emulator for Microblaze boards.
3758f8
3758f8
3758f8
%package system-mips
3758f8
Summary: QEMU system emulator for MIPS
3758f8
Requires: %{name}-system-mips-core = %{epoch}:%{version}-%{release}
3758f8
%{requires_all_modules}
3758f8
%description system-mips
3758f8
This package provides the QEMU system emulator for MIPS systems.
3758f8
3758f8
%package system-mips-core
3758f8
Summary: QEMU system emulator for MIPS
3758f8
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
%description system-mips-core
3758f8
This package provides the QEMU system emulator for MIPS systems.
3758f8
3758f8
3758f8
%package system-nios2
3758f8
Summary: QEMU system emulator for nios2
3758f8
Requires: %{name}-system-nios2-core = %{epoch}:%{version}-%{release}
3758f8
%{requires_all_modules}
3758f8
%description system-nios2
3758f8
This package provides the QEMU system emulator for NIOS2.
ecbe00
3758f8
%package system-nios2-core
3758f8
Summary: QEMU system emulator for nios2
3758f8
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
%description system-nios2-core
3758f8
This package provides the QEMU system emulator for NIOS2.
ecbe00
c27704
1c7073
%package system-or1k
Paolo Bonzini 40e61a
Summary: QEMU system emulator for OpenRisc32
1c7073
Requires: %{name}-system-or1k-core = %{epoch}:%{version}-%{release}
0db325
Obsoletes: %{name}-system-or32 < 2:2.9.0
3c6a0c
%{requires_all_modules}
1c7073
%description system-or1k
3758f8
This package provides the QEMU system emulator for OpenRisc32 boards.
Daniel P. Berrange 36ffed
1c7073
%package system-or1k-core
ecbe00
Summary: QEMU system emulator for OpenRisc32
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
0db325
Obsoletes: %{name}-system-or32-core < 2:2.9.0
1c7073
%description system-or1k-core
3758f8
This package provides the QEMU system emulator for OpenRisc32 boards.
ecbe00
3758f8
3758f8
%package system-ppc
3758f8
Summary: QEMU system emulator for PPC
3758f8
Requires: %{name}-system-ppc-core = %{epoch}:%{version}-%{release}
3758f8
%{requires_all_modules}
3758f8
%description system-ppc
3758f8
This package provides the QEMU system emulator for PPC and PPC64 systems.
3758f8
3758f8
%package system-ppc-core
3758f8
Summary: QEMU system emulator for PPC
3758f8
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
Requires: openbios
3758f8
Requires: SLOF
3758f8
Requires: seavgabios-bin
3758f8
%description system-ppc-core
3758f8
This package provides the QEMU system emulator for PPC and PPC64 systems.
ecbe00
c27704
3c6a0c
%package system-riscv
3c6a0c
Summary: QEMU system emulator for RISC-V
3c6a0c
Requires: %{name}-system-riscv-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
3c6a0c
%description system-riscv
3758f8
This package provides the QEMU system emulator for RISC-V systems.
3c6a0c
3c6a0c
%package system-riscv-core
3c6a0c
Summary: QEMU system emulator for RISC-V
3c6a0c
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3c6a0c
%description system-riscv-core
3758f8
This package provides the QEMU system emulator for RISC-V systems.
3c6a0c
3c6a0c
e1b832
%package system-rx
e1b832
Summary: QEMU system emulator for RX
e1b832
Requires: %{name}-system-rx-core = %{epoch}:%{version}-%{release}
e1b832
%{requires_all_modules}
e1b832
%description system-rx
e1b832
This package provides the QEMU system emulator for RX systems.
e1b832
e1b832
%package system-rx-core
e1b832
Summary: QEMU system emulator for RX
e1b832
Requires: %{name}-common = %{epoch}:%{version}-%{release}
e1b832
%description system-rx-core
e1b832
This package provides the QEMU system emulator for RX systems.
e1b832
e1b832
c27704
%package system-s390x
Paolo Bonzini c32efe
Summary: QEMU system emulator for S390
ecbe00
Requires: %{name}-system-s390x-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-s390x
3758f8
This package provides the QEMU system emulator for S390 systems.
Paolo Bonzini c32efe
ecbe00
%package system-s390x-core
ecbe00
Summary: QEMU system emulator for S390
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-s390x-core
3758f8
This package provides the QEMU system emulator for S390 systems.
ecbe00
c27704
c27704
%package system-sh4
Paolo Bonzini 40e61a
Summary: QEMU system emulator for SH4
ecbe00
Requires: %{name}-system-sh4-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-sh4
3758f8
This package provides the QEMU system emulator for SH4 boards.
57c57a
ecbe00
%package system-sh4-core
ecbe00
Summary: QEMU system emulator for SH4
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-sh4-core
3758f8
This package provides the QEMU system emulator for SH4 boards.
ecbe00
c27704
c27704
%package system-sparc
Paolo Bonzini 40e61a
Summary: QEMU system emulator for SPARC
ecbe00
Requires: %{name}-system-sparc-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
ecbe00
%description system-sparc
3758f8
This package provides the QEMU system emulator for SPARC and SPARC64 systems.
ecbe00
ecbe00
%package system-sparc-core
ecbe00
Summary: QEMU system emulator for SPARC
57c57a
Requires: %{name}-common = %{epoch}:%{version}-%{release}
57c57a
Requires: openbios
ecbe00
%description system-sparc-core
3758f8
This package provides the QEMU system emulator for SPARC and SPARC64 systems.
21cd6f
c27704
c27704
%package system-tricore
259393
Summary: QEMU system emulator for tricore
1c7073
Requires: %{name}-system-tricore-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
c27704
%description system-tricore
3758f8
This package provides the QEMU system emulator for Tricore.
259393
ecbe00
%package system-tricore-core
ecbe00
Summary: QEMU system emulator for tricore
ecbe00
Requires: %{name}-common = %{epoch}:%{version}-%{release}
ecbe00
%description system-tricore-core
3758f8
This package provides the QEMU system emulator for Tricore.
ecbe00
21cd6f
3758f8
%package system-x86
3758f8
Summary: QEMU system emulator for x86
3758f8
Requires: %{name}-system-x86-core = %{epoch}:%{version}-%{release}
3c6a0c
%{requires_all_modules}
3758f8
%description system-x86
3758f8
This package provides the QEMU system emulator for x86. When being run in a x86
3758f8
machine that supports it, this package also provides the KVM virtualization
3758f8
platform.
3c6a0c
3758f8
%package system-x86-core
3758f8
Summary: QEMU system emulator for x86
3c6a0c
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
Requires: seabios-bin
3758f8
Requires: sgabios-bin
3758f8
Requires: seavgabios-bin
7da5fc
%if %{have_edk2}
3758f8
Requires: edk2-ovmf
3758f8
%endif
3758f8
%description system-x86-core
3758f8
This package provides the QEMU system emulator for x86. When being run in a x86
3758f8
machine that supports it, this package also provides the KVM virtualization
3758f8
platform.
3c6a0c
3c6a0c
3758f8
%package system-xtensa
3758f8
Summary: QEMU system emulator for Xtensa
3758f8
Requires: %{name}-system-xtensa-core = %{epoch}:%{version}-%{release}
3758f8
%{requires_all_modules}
3758f8
%description system-xtensa
3758f8
This package provides the QEMU system emulator for Xtensa boards.
3c6a0c
3758f8
%package system-xtensa-core
3758f8
Summary: QEMU system emulator for Xtensa
3758f8
Requires: %{name}-common = %{epoch}:%{version}-%{release}
3758f8
%description system-xtensa-core
3758f8
This package provides the QEMU system emulator for Xtensa boards.
3c6a0c
3c6a0c
c27704
419868
David Woodhouse 5c3734
%prep
409720
%setup -q -n qemu-%{version}%{?rcstr}
Paolo Bonzini af53ec
%autopatch -p1
355b03
f35188
# https://fedoraproject.org/wiki/Changes/Make_ambiguous_python_shebangs_error
f35188
# Fix all Python shebangs recursively in .
f35188
# -p preserves timestamps
f35188
# -n prevents creating ~backup files
f35188
# -i specifies the interpreter for the shebang
f35188
# Need to list files that do not match ^[a-zA-Z0-9_]+\.py$ explicitly!
e3d6ad
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" scripts/qemu-trace-stap
f35188
Alon Levy c8a79a
419868
419868
David Woodhouse 5c3734
%build
Daniel P. Berrangé 357c68
# Disable LTO since it caused lots of strange assert failures.
Daniel P. Berrangé 357c68
%define _lto_cflags %{nil}
Daniel P. Berrangé 357c68
c27704
# OOM killer breaks builds with parallel make on s390(x)
Daniel P. Berrangé 3c0f9e
%ifarch s390x
e8a6e4
%global _smp_mflags %{nil}
c27704
%endif
c27704
c27704
# --build-id option is used for giving info to the debug packages.
c27704
extraldflags="-Wl,--build-id";
c27704
buildldflags="VL_LDFLAGS=-Wl,--build-id"
c27704
c27704
# As of qemu 2.1, --enable-trace-backends supports multiple backends,
c27704
# but there's a performance impact for non-dtrace so we don't use them
c27704
tracebackends="dtrace"
c27704
7da5fc
%if %{have_spice}
e8a6e4
    %global spiceflag --enable-spice
Daniel P. Berrange d4803f
%else
e8a6e4
    %global spiceflag --disable-spice
Daniel P. Berrange d4803f
%endif
Daniel P. Berrange 7bf315
419868
84eeb1
run_configure() {
419868
    # Base configure call with standard shared options
84eeb1
    ../configure \
84eeb1
        --prefix=%{_prefix} \
84eeb1
        --libdir=%{_libdir} \
84eeb1
        --sysconfdir=%{_sysconfdir} \
84eeb1
        --localstatedir=%{_localstatedir} \
84eeb1
        --libexecdir=%{_libexecdir} \
d4c450
        --interp-prefix=%{_prefix}/qemu-%%M \
84eeb1
        --with-pkgversion=%{name}-%{version}-%{release} \
419868
        --extra-ldflags="$extraldflags -Wl,-z,relro -Wl,-z,now" \
419868
        --extra-cflags="%{optflags}" \
84eeb1
        --disable-strip \
84eeb1
        --disable-werror \
419868
        --tls-priority=@QEMU,SYSTEM \
84eeb1
        --enable-trace-backend=$tracebackends \
84eeb1
        "$@" || cat config.log
84eeb1
}
84eeb1
419868
run_configure_disable_everything() {
419868
    # Disable every qemu feature. Callers can --enable-X the bits they need
419868
    run_configure \
419868
        --audio-drv-list= \
419868
        --disable-attr \
419868
        --disable-auth-pam \
419868
        --disable-avx2 \
8833af
        --disable-avx512f \
419868
        --disable-blobs \
419868
        --disable-bochs \
419868
        --disable-brlapi \
419868
        --disable-bsd-user \
419868
        --disable-bzip2 \
419868
        --disable-cap-ng \
419868
        --disable-capstone \
419868
        --disable-cloop \
419868
        --disable-cocoa \
419868
        --disable-coroutine-pool \
419868
        --disable-crypto-afalg \
419868
        --disable-curl \
419868
        --disable-curses \
419868
        --disable-debug-info \
419868
        --disable-debug-mutex \
419868
        --disable-debug-tcg \
419868
        --disable-dmg \
419868
        --disable-docs \
419868
        --disable-fdt \
419868
        --disable-gcrypt \
419868
        --disable-glusterfs \
419868
        --disable-gnutls \
419868
        --disable-gtk \
419868
        --disable-guest-agent \
419868
        --disable-guest-agent-msi \
419868
        --disable-hax \
419868
        --disable-hvf \
419868
        --disable-iconv \
419868
        --disable-jemalloc \
f4bee9
        --disable-keyring \
419868
        --disable-kvm \
f4bee9
        --disable-libdaxctl \
419868
        --disable-libiscsi \
419868
        --disable-libnfs \
419868
        --disable-libpmem \
160bf4
        --disable-libssh \
419868
        --disable-libusb \
419868
        --disable-libxml2 \
419868
        --disable-linux-aio \
8833af
        --disable-linux-io-uring \
419868
        --disable-linux-user \
419868
        --disable-live-block-migration \
419868
        --disable-lzfse \
419868
        --disable-lzo \
419868
        --disable-membarrier \
419868
        --disable-modules \
419868
        --disable-mpath \
419868
        --disable-netmap \
419868
        --disable-nettle \
419868
        --disable-numa \
419868
        --disable-opengl \
419868
        --disable-parallels \
419868
        --disable-pie \
419868
        --disable-pvrdma \
419868
        --disable-qcow1 \
419868
        --disable-qed \
419868
        --disable-qom-cast-debug \
419868
        --disable-rbd \
419868
        --disable-rdma \
419868
        --disable-replication \
f4bee9
        --disable-rng-none \
419868
        --disable-sdl \
419868
        --disable-sdl-image \
419868
        --disable-seccomp \
419868
        --disable-sheepdog \
419868
        --disable-slirp \
419868
        --disable-smartcard \
419868
        --disable-snappy \
419868
        --disable-sparse \
419868
        --disable-spice \
419868
        --disable-system \
918c70
        --disable-tcg \
419868
        --disable-tcmalloc \
419868
        --disable-tools \
419868
        --disable-tpm \
419868
        --disable-usb-redir \
419868
        --disable-user \
419868
        --disable-vde \
419868
        --disable-vdi \
419868
        --disable-vhost-crypto \
419868
        --disable-vhost-kernel \
419868
        --disable-vhost-net \
419868
        --disable-vhost-scsi \
419868
        --disable-vhost-user \
f4bee9
        --disable-vhost-vdpa \
419868
        --disable-vhost-vsock \
419868
        --disable-virglrenderer \
419868
        --disable-virtfs \
419868
        --disable-vnc \
419868
        --disable-vnc-jpeg \
419868
        --disable-vnc-png \
419868
        --disable-vnc-sasl \
419868
        --disable-vte \
419868
        --disable-vvfat \
419868
        --disable-whpx \
419868
        --disable-xen \
419868
        --disable-xen-pci-passthrough \
419868
        --disable-xfsctl \
8833af
        --disable-zstd \
419868
        --without-default-devices \
419868
        "$@"
419868
}
419868
419868
160bf4
160bf4
# Build for qemu-user-static
160bf4
%if %{user_static}
160bf4
mkdir build-static
160bf4
pushd build-static
160bf4
160bf4
run_configure_disable_everything \
160bf4
    --disable-pie \
bd5949
    --enable-attr \
160bf4
    --enable-linux-user \
fe24ec
    --enable-tcg \
160bf4
    --static
160bf4
160bf4
make V=1 %{?_smp_mflags} $buildldflags
160bf4
160bf4
popd
e4599b
%endif
160bf4
160bf4
160bf4
419868
# Build for non-static qemu-*
Daniel P. Berrange 083532
mkdir build-dynamic
Daniel P. Berrange 083532
pushd build-dynamic
Daniel P. Berrange 083532
84eeb1
run_configure \
419868
    --audio-drv-list=pa,sdl,alsa,oss \
419868
    --enable-kvm \
80404b
    --enable-system \
28222c
    --target-list-exclude=moxie-softmmu \
918c70
    --enable-tcg \
80404b
    --enable-linux-user \
84eeb1
    --enable-pie \
ecbe00
    --enable-modules \
Paolo Bonzini b0a774
    --enable-mpath \
419868
    %{spiceflag} \
Daniel P. Berrangé 7ffd7f
    --enable-slirp=system
Glauber Costa 8571d0
ac843b
echo "config-host.mak contents:"
ac843b
echo "==="
ac843b
cat config-host.mak
ac843b
echo "==="
71430d
ac843b
make V=1 %{?_smp_mflags} $buildldflags
71430d
Daniel P. Berrange 083532
popd
Daniel P. Berrange 083532
419868
Daniel P. Berrange 083532
Justin M. Forbes 603dd6
David Woodhouse 5c3734
%install
David Woodhouse 5c3734
e8a6e4
%global _udevdir /lib/udev/rules.d
e8a6e4
%global qemudocdir %{_docdir}/%{name}
c27704
419868
419868
# Install rules to use the bridge helper with libvirt's virbr0
419868
install -D -m 0644 %{_sourcedir}/bridge.conf %{buildroot}%{_sysconfdir}/qemu/bridge.conf
419868
Daniel P. Berrange fbe43c
c27704
# Install qemu-guest-agent service and udev rules
419868
install -D -p -m 0644 %{_sourcedir}/qemu-guest-agent.service %{buildroot}%{_unitdir}/qemu-guest-agent.service
91efac
install -D -p -m 0644 %{_sourcedir}/qemu-ga.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/qemu-ga
419868
install -D -m 0644 %{_sourcedir}/99-qemu-guest-agent.rules %{buildroot}%{_udevdir}/99-qemu-guest-agent.rules
419868
c27704
419868
# Install qemu-ga fsfreeze bits
Paolo Bonzini bfe7b8
mkdir -p %{buildroot}%{_sysconfdir}/qemu-ga/fsfreeze-hook.d
Paolo Bonzini bfe7b8
install -p -m 0755 scripts/qemu-guest-agent/fsfreeze-hook %{buildroot}%{_sysconfdir}/qemu-ga
Paolo Bonzini bfe7b8
install -p -m 0644 scripts/qemu-guest-agent/fsfreeze-hook.d/*.sample %{buildroot}%{_sysconfdir}/qemu-ga/fsfreeze-hook.d/
Paolo Bonzini e978b4
mkdir -p %{buildroot}%{_localstatedir}/log
Paolo Bonzini e978b4
touch %{buildroot}%{_localstatedir}/log/qga-fsfreeze-hook.log
Paolo Bonzini bfe7b8
419868
Paolo Bonzini 0fb2b2
# Install qemu-pr-helper service
28222c
install -m 0644 ./contrib/systemd/qemu-pr-helper.service %{buildroot}%{_unitdir}
28222c
install -m 0644 ./contrib/systemd/qemu-pr-helper.socket %{buildroot}%{_unitdir}
Paolo Bonzini 0fb2b2
419868
419868
# Install ppc64 memlock
d19693
%ifarch %{power64}
d19693
install -d %{buildroot}%{_sysconfdir}/security/limits.d
8a5886
install -m 0644 %{_sourcedir}/95-kvm-ppc64-memlock.conf %{buildroot}%{_sysconfdir}/security/limits.d
d19693
%endif
d19693
c75224
419868
# Install qemu-user-static tree
419868
mkdir -p %{buildroot}%{_bindir}
Daniel P. Berrange 083532
%if %{user_static}
Daniel P. Berrange 083532
pushd build-static
Daniel P. Berrange 083532
make DESTDIR=%{buildroot} install
Daniel P. Berrange 083532
419868
# Rename all QEMU user emulators to have a -static suffix
Daniel P. Berrange 083532
for src in %{buildroot}%{_bindir}/qemu-*
Daniel P. Berrange 083532
do
Daniel P. Berrange 083532
  mv $src $src-static
Daniel P. Berrange 083532
done
Daniel P. Berrange 083532
419868
# Rename trace files to match -static suffix
Daniel P. Berrange 083532
for src in %{buildroot}%{_datadir}/systemtap/tapset/qemu-*.stp
Daniel P. Berrange 083532
do
Daniel P. Berrange 083532
  dst=`echo $src | sed -e 's/.stp/-static.stp/'`
Daniel P. Berrangé e83749
  mv $src $dst
Daniel P. Berrangé e83749
  perl -i -p -e 's/(qemu-\w+)/$1-static/g; s/(qemu\.user\.\w+)/$1.static/g' $dst
Daniel P. Berrange 083532
done
Daniel P. Berrange 083532
Daniel P. Berrange 083532
popd
e4599b
%endif
419868
Daniel P. Berrange 083532
419868
# Install main qemu-system-* tree
Daniel P. Berrange 083532
pushd build-dynamic
c27704
make DESTDIR=%{buildroot} install
Daniel P. Berrange 083532
popd
7fae7f
%find_lang %{name}
7fae7f
419868
419868
# Copy some static data into place
28222c
install -D -p -m 0644 -t %{buildroot}%{qemudocdir} README.rst COPYING COPYING.LIB LICENSE
419868
install -D -p -m 0644 qemu.sasl %{buildroot}%{_sysconfdir}/sasl2/qemu.conf
419868
419868
419868
# Generate qemu-system-* man pages
419868
chmod -x %{buildroot}%{_mandir}/man1/*
c27704
for emu in %{buildroot}%{_bindir}/qemu-system-*; do
c27704
    ln -sf qemu.1.gz %{buildroot}%{_mandir}/man1/$(basename $emu).1.gz
979ec1
done
b26fb5
419868
419868
# Install kvm specific source bits, and qemu-kvm manpage
Dan Horák f81e73
%if 0%{?need_qemu_kvm}
c27704
ln -sf qemu.1.gz %{buildroot}%{_mandir}/man1/qemu-kvm.1.gz
419868
install -m 0755 %{_sourcedir}/qemu-kvm.sh %{buildroot}%{_bindir}/qemu-kvm
5bdb06
install -D -p -m 0644 %{_sourcedir}/kvm-x86.modprobe.conf %{buildroot}%{_sysconfdir}/modprobe.d/kvm.conf
Dan Horák f81e73
%endif
David Woodhouse 5c3734
419868
419868
# Install binfmt
419868
%global binfmt_dir %{buildroot}%{_exec_prefix}/lib/binfmt.d
419868
mkdir -p %{binfmt_dir}
419868
419868
./scripts/qemu-binfmt-conf.sh --systemd ALL --exportdir %{binfmt_dir} --qemu-path %{_bindir}
419868
for i in %{binfmt_dir}/*; do
419868
    mv $i $(echo $i | sed 's/.conf/-dynamic.conf/')
419868
done
419868
419868
%if %{user_static}
419868
for regularfmt in %{binfmt_dir}/*; do
419868
  staticfmt="$(echo $regularfmt | sed 's/-dynamic/-static/g')"
419868
  cat $regularfmt | tr -d '\n' | sed "s/:$/-static:F/" > $staticfmt
419868
done
419868
%endif
419868
Daniel P. Berrange 42af21
700f12
# XXX With qemu 2.11 we can probably drop this symlinking with use of
700f12
# configure --firmwarepath, see qemu git 3d5eecab4
700f12
71430d
# Provided by package openbios
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/openbios-ppc
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/openbios-sparc32
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/openbios-sparc64
71430d
# Provided by package SLOF
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/slof.bin
Paolo Bonzini 2803fc
# Provided by package ipxe
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/pxe*rom
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/efi*rom
d1a627
# Provided by package seavgabios
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/vgabios*bin
Paolo Bonzini 2803fc
# Provided by package seabios
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/bios.bin
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/bios-256k.bin
Paolo Bonzini 2803fc
# Provided by package sgabios
c27704
rm -rf %{buildroot}%{_datadir}/%{name}/sgabios.bin
160bf4
# Provided by package edk2
160bf4
rm -rf %{buildroot}%{_datadir}/%{name}/edk2*
160bf4
rm -rf %{buildroot}%{_datadir}/%{name}/firmware/*edk2*.json
Glauber Costa f0365c
Glauber Costa f0365c
pxe_link() {
Daniel P. Berrange e907ae
  ln -s ../ipxe/$2.rom %{buildroot}%{_datadir}/%{name}/pxe-$1.rom
7fae7f
  ln -s ../ipxe.efi/$2.rom %{buildroot}%{_datadir}/%{name}/efi-$1.rom
Glauber Costa f0365c
}
Glauber Costa f0365c
Justin M. Forbes 990c3a
pxe_link e1000 8086100e
Daniel P. Berrange e907ae
pxe_link ne2k_pci 10ec8029
Daniel P. Berrange e907ae
pxe_link pcnet 10222000
Daniel P. Berrange e907ae
pxe_link rtl8139 10ec8139
Daniel P. Berrange e907ae
pxe_link virtio 1af41000
ef34be
pxe_link eepro100 80861209
ef34be
pxe_link e1000e 808610d3
ef34be
pxe_link vmxnet3 15ad07b0
71430d
71430d
rom_link() {
71430d
    ln -s $1 %{buildroot}%{_datadir}/%{name}/$2
71430d
}
71430d
d1a627
rom_link ../seavgabios/vgabios-isavga.bin vgabios.bin
d1a627
rom_link ../seavgabios/vgabios-cirrus.bin vgabios-cirrus.bin
d1a627
rom_link ../seavgabios/vgabios-qxl.bin vgabios-qxl.bin
d1a627
rom_link ../seavgabios/vgabios-stdvga.bin vgabios-stdvga.bin
d1a627
rom_link ../seavgabios/vgabios-vmware.bin vgabios-vmware.bin
de4550
rom_link ../seavgabios/vgabios-virtio.bin vgabios-virtio.bin
David Abdurachmanov 29c352
rom_link ../seavgabios/vgabios-ramfb.bin vgabios-ramfb.bin
David Abdurachmanov 29c352
rom_link ../seavgabios/vgabios-bochs-display.bin vgabios-bochs-display.bin
160bf4
rom_link ../seavgabios/vgabios-ati.bin vgabios-ati.bin
71430d
rom_link ../seabios/bios.bin bios.bin
ac843b
rom_link ../seabios/bios-256k.bin bios-256k.bin
71430d
rom_link ../sgabios/sgabios.bin sgabios.bin
Daniel P. Berrange 1ad1f9
c27704
cf5f9d
# When building using 'rpmbuild' or 'fedpkg local', RPATHs can be left in
dd16ba
# the binaries and libraries (although this doesn't occur when
cf5f9d
# building in Koji, for some unknown reason). Some discussion here:
cf5f9d
#
cf5f9d
# https://lists.fedoraproject.org/pipermail/devel/2013-November/192553.html
cf5f9d
#
cf5f9d
# In any case it should always be safe to remove RPATHs from
cf5f9d
# the final binaries:
c27704
for f in %{buildroot}%{_bindir}/* %{buildroot}%{_libdir}/* \
c27704
         %{buildroot}%{_libexecdir}/*; do
Daniel P. Berrange 083532
  if file $f | grep -q ELF | grep -q -i shared; then chrpath --delete $f; fi
dd16ba
done
dd16ba
419868
626906
# We need to make the modules executable else
ecbe00
# RPM won't pick up their dependencies.
626906
chmod +x %{buildroot}%{_libdir}/qemu/*.so
ecbe00
c27704
c61e67
419868
%check
3927dd
# 2020-08-31: tests passing, but s390x fails due to
3927dd
# spurious warning breaking an iotest case
3927dd
# https://lists.gnu.org/archive/html/qemu-devel/2020-08/msg03279.html
Daniel P. Berrangé 9fb824
%ifarch s390x
Daniel P. Berrangé 9fb824
perl -i -p -e 's/^(127|267)/# $1/' tests/qemu-iotests/group
Daniel P. Berrangé 9fb824
%endif
d3ff78
ef34be
pushd build-dynamic
Daniel P. Berrangé 581fcf
make check V=1
Daniel P. Berrange 1ad1f9
Daniel P. Berrangé af50bf
# Check the binary runs (see eg RHBZ#998722).
Daniel P. Berrangé af50bf
b="./x86_64-softmmu/qemu-system-x86_64"
Daniel P. Berrangé af50bf
if [ -x "$b" ]; then "$b" -help; fi
Daniel P. Berrangé af50bf
Daniel P. Berrangé 13e7c3
%if %{qemu_sanity_check}
548919
# Sanity-check current kernel can boot on this qemu.
Daniel P. Berrangé f2839f
KERNEL=`find /lib/modules -name vmlinuz | head -1`
Daniel P. Berrangé f2839f
echo "Trying to boot kernel $KERNEL with %{?hostqemu}"
Daniel P. Berrangé d9af2b
qemu-sanity-check --qemu=%{?hostqemu} --kernel=$KERNEL
548919
%endif
c27704
ef34be
popd
198e14
548919
Mark McLoughlin cd8d5c
%post common
Mark McLoughlin cd8d5c
getent group kvm >/dev/null || groupadd -g 36 -r kvm
Mark McLoughlin cd8d5c
getent group qemu >/dev/null || groupadd -g 107 -r qemu
Mark McLoughlin cd8d5c
getent passwd qemu >/dev/null || \
Mark McLoughlin cd8d5c
  useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
Mark McLoughlin cd8d5c
    -c "qemu user" qemu
Mark McLoughlin cd8d5c
c27704
Nathaniel McCallum f73c47
%post user-binfmt
Nathaniel McCallum f73c47
/bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || :
Nathaniel McCallum f73c47
%postun user-binfmt
Nathaniel McCallum f73c47
/bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || :
Nathaniel McCallum f73c47
Nathaniel McCallum 22c290
%if %{user_static}
Nathaniel McCallum f73c47
%post user-static
Justin M. Forbes 603dd6
/bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || :
Nathaniel McCallum f73c47
%postun user-static
Justin M. Forbes 603dd6
/bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || :
Nathaniel McCallum 22c290
%endif
David Woodhouse 5c3734
48e07c
%post guest-agent
48e07c
%systemd_post qemu-guest-agent.service
48e07c
%preun guest-agent
48e07c
%systemd_preun qemu-guest-agent.service
48e07c
%postun guest-agent
48e07c
%systemd_postun_with_restart qemu-guest-agent.service
48e07c
48e07c
48e07c
Mark McLoughlin eec5cd
%files
48e07c
# Deliberately empty
Glauber Costa 485711
Mark McLoughlin f2160a
7fae7f
%files common -f %{name}.lang
Justin M. Forbes 73d3c2
%dir %{qemudocdir}
0038f8
%doc %{qemudocdir}/README.rst
e1b832
%doc %{qemudocdir}/index.html
d3ff78
%doc %{qemudocdir}/interop
160bf4
%doc %{qemudocdir}/specs
e1b832
%doc %{qemudocdir}/system
e1b832
%doc %{qemudocdir}/tools
e1b832
%doc %{qemudocdir}/user
0038f8
%license %{qemudocdir}/COPYING
0038f8
%license %{qemudocdir}/COPYING.LIB
0038f8
%license %{qemudocdir}/LICENSE
Mark McLoughlin ccf76b
%dir %{_datadir}/%{name}/
d3ff78
%{_datadir}/applications/qemu.desktop
d3ff78
%{_datadir}/icons/hicolor/*/apps/*
28828d
%exclude %{_datadir}/%{name}/qemu-nsis.bmp
Mark McLoughlin ccf76b
%{_datadir}/%{name}/keymaps/
ef34be
%{_datadir}/%{name}/trace-events-all
996634
%{_datadir}/%{name}/vgabios.bin
996634
%{_datadir}/%{name}/vgabios-cirrus.bin
996634
%{_datadir}/%{name}/vgabios-qxl.bin
996634
%{_datadir}/%{name}/vgabios-stdvga.bin
996634
%{_datadir}/%{name}/vgabios-vmware.bin
996634
%{_datadir}/%{name}/vgabios-virtio.bin
David Abdurachmanov 29c352
%{_datadir}/%{name}/vgabios-ramfb.bin
David Abdurachmanov 29c352
%{_datadir}/%{name}/vgabios-bochs-display.bin
160bf4
%{_datadir}/%{name}/vgabios-ati.bin
996634
%{_datadir}/%{name}/pxe-e1000.rom
996634
%{_datadir}/%{name}/efi-e1000.rom
996634
%{_datadir}/%{name}/pxe-e1000e.rom
996634
%{_datadir}/%{name}/efi-e1000e.rom
996634
%{_datadir}/%{name}/pxe-eepro100.rom
996634
%{_datadir}/%{name}/efi-eepro100.rom
996634
%{_datadir}/%{name}/pxe-ne2k_pci.rom
996634
%{_datadir}/%{name}/efi-ne2k_pci.rom
996634
%{_datadir}/%{name}/pxe-pcnet.rom
996634
%{_datadir}/%{name}/efi-pcnet.rom
996634
%{_datadir}/%{name}/pxe-rtl8139.rom
996634
%{_datadir}/%{name}/efi-rtl8139.rom
996634
%{_datadir}/%{name}/pxe-virtio.rom
996634
%{_datadir}/%{name}/efi-virtio.rom
996634
%{_datadir}/%{name}/pxe-vmxnet3.rom
996634
%{_datadir}/%{name}/efi-vmxnet3.rom
1d442b
%{_datadir}/%{name}/vhost-user/50-qemu-virtiofsd.json
Mark McLoughlin 666df9
%{_mandir}/man1/qemu.1*
Daniel P. Berrangé e83749
%{_mandir}/man1/qemu-trace-stap.1*
852ee3
%{_mandir}/man1/virtfs-proxy-helper.1*
e1b832
%{_mandir}/man1/virtiofsd.1*
700f12
%{_mandir}/man7/qemu-block-drivers.7*
007776
%{_mandir}/man7/qemu-cpu-models.7*
1c7073
%{_mandir}/man7/qemu-qmp-ref.7*
f4bee9
%{_mandir}/man7/qemu-ga-ref.7*
646ce0
%{_mandir}/man8/qemu-pr-helper.8*
d3ff78
%{_bindir}/elf2dmp
007776
%{_bindir}/qemu-edid
700f12
%{_bindir}/qemu-keymap
28222c
%{_bindir}/qemu-pr-helper
e1b832
%{_bindir}/qemu-storage-daemon
Daniel P. Berrangé e83749
%{_bindir}/qemu-trace-stap
Paolo Bonzini 0fb2b2
%{_unitdir}/qemu-pr-helper.service
Paolo Bonzini 0fb2b2
%{_unitdir}/qemu-pr-helper.socket
acbc4a
%attr(4755, root, root) %{_libexecdir}/qemu-bridge-helper
f4bee9
%{_libexecdir}/virtfs-proxy-helper
1d442b
%{_libexecdir}/virtiofsd
Paolo Bonzini 15489f
%config(noreplace) %{_sysconfdir}/sasl2/qemu.conf
979ec1
%dir %{_sysconfdir}/qemu
979ec1
%config(noreplace) %{_sysconfdir}/qemu/bridge.conf
ecbe00
%dir %{_libdir}/qemu
efaa1c
%if %{have_virgl}
efaa1c
%{_datadir}/%{name}/vhost-user/50-qemu-gpu.json
efaa1c
%{_libexecdir}/vhost-user-gpu
efaa1c
%endif
979ec1
c27704
Daniel P. Berrange 1ad1f9
%files guest-agent
Daniel P. Berrange 1ad1f9
%{_bindir}/qemu-ga
88b379
%{_mandir}/man8/qemu-ga.8*
Daniel P. Berrange 1ad1f9
%{_unitdir}/qemu-guest-agent.service
Daniel P. Berrange fbe43c
%{_udevdir}/99-qemu-guest-agent.rules
Paolo Bonzini bfe7b8
%config(noreplace) %{_sysconfdir}/sysconfig/qemu-ga
Paolo Bonzini bfe7b8
%{_sysconfdir}/qemu-ga
Paolo Bonzini e978b4
%ghost %{_localstatedir}/log/qga-fsfreeze-hook.log
Daniel P. Berrange 1ad1f9
c27704
48e07c
%files img
48e07c
%{_bindir}/qemu-img
48e07c
%{_bindir}/qemu-io
48e07c
%{_bindir}/qemu-nbd
48e07c
%{_mandir}/man1/qemu-img.1*
48e07c
%{_mandir}/man8/qemu-nbd.8*
48e07c
48e07c
ecbe00
%files block-curl
ecbe00
%{_libdir}/qemu/block-curl.so
ecbe00
%files block-dmg
151958
%{_libdir}/qemu/block-dmg-bz2.so
Daniel P. Berrangé e1923c
%if %{with_block_gluster}
ecbe00
%files block-gluster
Daniel P. Berrangé e1923c
%{_libdir}/qemu/block-gluster.so
Daniel P. Berrangé e1923c
%endif
ecbe00
%files block-iscsi
ecbe00
%{_libdir}/qemu/block-iscsi.so
151958
%files block-nfs
151958
%{_libdir}/qemu/block-nfs.so
Daniel P. Berrangé a4b3db
%if %{with_block_rbd}
ecbe00
%files block-rbd
ecbe00
%{_libdir}/qemu/block-rbd.so
Daniel P. Berrangé a4b3db
%endif
ecbe00
%files block-ssh
ecbe00
%{_libdir}/qemu/block-ssh.so
ecbe00
ecbe00
3c6a0c
%files audio-alsa
3c6a0c
%{_libdir}/qemu/audio-alsa.so
3c6a0c
%files audio-oss
3c6a0c
%{_libdir}/qemu/audio-oss.so
3c6a0c
%files audio-pa
3c6a0c
%{_libdir}/qemu/audio-pa.so
3c6a0c
%files audio-sdl
3c6a0c
%{_libdir}/qemu/audio-sdl.so
3c6a0c
3c6a0c
3c6a0c
%files ui-curses
3c6a0c
%{_libdir}/qemu/ui-curses.so
3c6a0c
%files ui-gtk
3c6a0c
%{_libdir}/qemu/ui-gtk.so
3c6a0c
%files ui-sdl
3c6a0c
%{_libdir}/qemu/ui-sdl.so
28222c
%files ui-egl-headless
28222c
%{_libdir}/qemu/ui-egl-headless.so
28222c
%files ui-opengl
28222c
%{_libdir}/qemu/ui-opengl.so
3c6a0c
f4bee9
%files char-baum
f4bee9
%{_libdir}/qemu/chardev-baum.so
f4bee9
28222c
28222c
%files device-display-virtio-gpu
28222c
%{_libdir}/qemu/hw-display-virtio-gpu.so
28222c
%files device-display-virtio-gpu-pci
28222c
%{_libdir}/qemu/hw-display-virtio-gpu-pci.so
28222c
%files device-display-virtio-vga
28222c
%{_libdir}/qemu/hw-display-virtio-vga.so
f4bee9
%files device-usb-redirect
f4bee9
%{_libdir}/qemu/hw-usb-redirect.so
f4bee9
%files device-usb-smartcard
f4bee9
%{_libdir}/qemu/hw-usb-smartcard.so
f4bee9
3c6a0c
28222c
%if %{have_spice}
28222c
%files audio-spice
28222c
%{_libdir}/qemu/audio-spice.so
28222c
%files char-spice
28222c
%{_libdir}/qemu/chardev-spice.so
28222c
%files device-display-qxl
28222c
%{_libdir}/qemu/hw-display-qxl.so
28222c
%files ui-spice-core
28222c
%{_libdir}/qemu/ui-spice-core.so
28222c
%files ui-spice-app
28222c
%{_libdir}/qemu/ui-spice-app.so
28222c
%endif
48e07c
48e07c
48e07c
%if %{have_kvm}
48e07c
%files kvm
48e07c
# Deliberately empty
ecbe00
ecbe00
%files kvm-core
ecbe00
# Deliberately empty
48e07c
%endif
48e07c
48e07c
c27704
%files user
Justin M. Forbes 3a5505
%{_bindir}/qemu-i386
Justin M. Forbes 3a5505
%{_bindir}/qemu-x86_64
ac843b
%{_bindir}/qemu-aarch64
3c6a0c
%{_bindir}/qemu-aarch64_be
Daniel P. Berrange b4adff
%{_bindir}/qemu-alpha
Daniel P. Berrange 36ffed
%{_bindir}/qemu-arm
Daniel P. Berrange 36ffed
%{_bindir}/qemu-armeb
Daniel P. Berrange b4adff
%{_bindir}/qemu-cris
1c7073
%{_bindir}/qemu-hppa
Daniel P. Berrange 36ffed
%{_bindir}/qemu-m68k
Paolo Bonzini b7a1ff
%{_bindir}/qemu-microblaze
Paolo Bonzini b7a1ff
%{_bindir}/qemu-microblazeel
Daniel P. Berrange 36ffed
%{_bindir}/qemu-mips
Daniel P. Berrange 36ffed
%{_bindir}/qemu-mipsel
7fae7f
%{_bindir}/qemu-mips64
7fae7f
%{_bindir}/qemu-mips64el
7fae7f
%{_bindir}/qemu-mipsn32
7fae7f
%{_bindir}/qemu-mipsn32el
1c7073
%{_bindir}/qemu-nios2
1c7073
%{_bindir}/qemu-or1k
Paolo Bonzini ffa1cc
%{_bindir}/qemu-ppc
Paolo Bonzini ffa1cc
%{_bindir}/qemu-ppc64
ad339a
%{_bindir}/qemu-ppc64le
3c6a0c
%{_bindir}/qemu-riscv32
3c6a0c
%{_bindir}/qemu-riscv64
Paolo Bonzini b7a1ff
%{_bindir}/qemu-s390x
Daniel P. Berrange b4adff
%{_bindir}/qemu-sh4
Daniel P. Berrange b4adff
%{_bindir}/qemu-sh4eb
Paolo Bonzini ffa1cc
%{_bindir}/qemu-sparc
Paolo Bonzini ffa1cc
%{_bindir}/qemu-sparc32plus
Paolo Bonzini ffa1cc
%{_bindir}/qemu-sparc64
80404b
%{_bindir}/qemu-xtensa
80404b
%{_bindir}/qemu-xtensaeb
Daniel P. Berrange 083532
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-i386*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-x86_64*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-aarch64*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-alpha*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-arm*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-cris*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-hppa*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-m68k*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-microblaze*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-mips*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-nios2*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-or1k*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-ppc*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-riscv*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-s390x*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-sh4*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-sparc*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-xtensa*.stp
e1b832
Daniel P. Berrange 083532
Daniel P. Berrange 083532
%files user-binfmt
Daniel P. Berrange 083532
%{_exec_prefix}/lib/binfmt.d/qemu-*-dynamic.conf
Daniel P. Berrange 083532
Daniel P. Berrange 083532
%if %{user_static}
Daniel P. Berrange 083532
%files user-static
80404b
# Just use wildcard matches here: we will catch any new/missing files
80404b
# in the qemu-user filelists
Daniel P. Berrange 083532
%{_exec_prefix}/lib/binfmt.d/qemu-*-static.conf
80404b
%{_bindir}/qemu-*-static
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-*-static.stp
Daniel P. Berrange 083532
%endif
Daniel P. Berrange 35d458
c27704
3758f8
%files system-aarch64
3758f8
%files system-aarch64-core
3758f8
%{_bindir}/qemu-system-aarch64
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-aarch64*.stp
3758f8
%{_mandir}/man1/qemu-system-aarch64.1*
c27704
Daniel P. Berrange 35d458
c27704
%files system-alpha
ecbe00
%files system-alpha-core
Paolo Bonzini c32efe
%{_bindir}/qemu-system-alpha
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-alpha*.stp
979ec1
%{_mandir}/man1/qemu-system-alpha.1*
Paolo Bonzini c32efe
%{_datadir}/%{name}/palcode-clipper
Paolo Bonzini c32efe
c27704
c27704
%files system-arm
ecbe00
%files system-arm-core
Daniel P. Berrange 36ffed
%{_bindir}/qemu-system-arm
28222c
%{_datadir}/%{name}/npcm7xx_bootrom.bin
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-arm*.stp
979ec1
%{_mandir}/man1/qemu-system-arm.1*
Peter Robinson 09747c
Daniel P. Berrange 35d458
f4bee9
%files system-avr
f4bee9
%files system-avr-core
f4bee9
%{_bindir}/qemu-system-avr
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-avr*.stp
f4bee9
%{_mandir}/man1/qemu-system-avr.1*
f4bee9
f4bee9
c27704
%files system-cris
ecbe00
%files system-cris-core
Justin M. Forbes bc9e71
%{_bindir}/qemu-system-cris
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-cris*.stp
979ec1
%{_mandir}/man1/qemu-system-cris.1*
Daniel P. Berrange 35d458
c27704
3758f8
%files system-hppa
3758f8
%files system-hppa-core
3758f8
%{_bindir}/qemu-system-hppa
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-hppa*.stp
3758f8
%{_mandir}/man1/qemu-system-hppa.1*
3758f8
%{_datadir}/%{name}/hppa-firmware.img
3758f8
ecbe00
c27704
%files system-m68k
ecbe00
%files system-m68k-core
Glauber Costa 485711
%{_bindir}/qemu-system-m68k
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-m68k*.stp
979ec1
%{_mandir}/man1/qemu-system-m68k.1*
Daniel P. Berrange 35d458
c27704
c27704
%files system-microblaze
ecbe00
%files system-microblaze-core
Paolo Bonzini c32efe
%{_bindir}/qemu-system-microblaze
Paolo Bonzini c32efe
%{_bindir}/qemu-system-microblazeel
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-microblaze*.stp
979ec1
%{_mandir}/man1/qemu-system-microblaze.1*
979ec1
%{_mandir}/man1/qemu-system-microblazeel.1*
Paolo Bonzini c32efe
%{_datadir}/%{name}/petalogix*.dtb
Paolo Bonzini c32efe
c27704
3758f8
%files system-mips
3758f8
%files system-mips-core
3758f8
%{_bindir}/qemu-system-mips
3758f8
%{_bindir}/qemu-system-mipsel
3758f8
%{_bindir}/qemu-system-mips64
3758f8
%{_bindir}/qemu-system-mips64el
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-mips*.stp
3758f8
%{_mandir}/man1/qemu-system-mips.1*
3758f8
%{_mandir}/man1/qemu-system-mipsel.1*
3758f8
%{_mandir}/man1/qemu-system-mips64el.1*
3758f8
%{_mandir}/man1/qemu-system-mips64.1*
ecbe00
3758f8
3758f8
%files system-nios2
3758f8
%files system-nios2-core
3758f8
%{_bindir}/qemu-system-nios2
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-nios2*.stp
3758f8
%{_mandir}/man1/qemu-system-nios2.1*
3758f8
3758f8
3758f8
%files system-or1k
1c7073
%files system-or1k-core
1c7073
%{_bindir}/qemu-system-or1k
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-or1k*.stp
1c7073
%{_mandir}/man1/qemu-system-or1k.1*
Paolo Bonzini 40e61a
c27704
3758f8
%files system-ppc
3758f8
%files system-ppc-core
3758f8
%{_bindir}/qemu-system-ppc
3758f8
%{_bindir}/qemu-system-ppc64
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-ppc*.stp
3758f8
%{_mandir}/man1/qemu-system-ppc.1*
3758f8
%{_mandir}/man1/qemu-system-ppc64.1*
3758f8
%{_datadir}/%{name}/bamboo.dtb
3758f8
%{_datadir}/%{name}/canyonlands.dtb
3758f8
%{_datadir}/%{name}/qemu_vga.ndrv
3758f8
%{_datadir}/%{name}/skiboot.lid
3758f8
%{_datadir}/%{name}/u-boot.e500
3758f8
%{_datadir}/%{name}/u-boot-sam460-20100605.bin
3758f8
%ifarch %{power64}
3758f8
%{_sysconfdir}/security/limits.d/95-kvm-ppc64-memlock.conf
3758f8
%endif
3c6a0c
3758f8
3758f8
%files system-riscv
3c6a0c
%files system-riscv-core
3c6a0c
%{_bindir}/qemu-system-riscv32
3c6a0c
%{_bindir}/qemu-system-riscv64
28828d
%{_datadir}/%{name}/opensbi-riscv*.bin
28222c
%{_datadir}/%{name}/opensbi-riscv*.elf
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-riscv*.stp
3c6a0c
%{_mandir}/man1/qemu-system-riscv*.1*
3c6a0c
3c6a0c
e1b832
%files system-rx
e1b832
%files system-rx-core
e1b832
%{_bindir}/qemu-system-rx
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-rx*.stp
e1b832
%{_mandir}/man1/qemu-system-rx.1*
e1b832
e1b832
c27704
%files system-s390x
ecbe00
%files system-s390x-core
Paolo Bonzini c32efe
%{_bindir}/qemu-system-s390x
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-s390x*.stp
979ec1
%{_mandir}/man1/qemu-system-s390x.1*
7fae7f
%{_datadir}/%{name}/s390-ccw.img
1a4355
%{_datadir}/%{name}/s390-netboot.img
Paolo Bonzini c32efe
c27704
c27704
%files system-sh4
ecbe00
%files system-sh4-core
Daniel P. Berrange b4adff
%{_bindir}/qemu-system-sh4
Daniel P. Berrange b4adff
%{_bindir}/qemu-system-sh4eb
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-sh4*.stp
979ec1
%{_mandir}/man1/qemu-system-sh4.1*
979ec1
%{_mandir}/man1/qemu-system-sh4eb.1*
Daniel P. Berrange 35d458
c27704
c27704
%files system-sparc
ecbe00
%files system-sparc-core
57c57a
%{_bindir}/qemu-system-sparc
57c57a
%{_bindir}/qemu-system-sparc64
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-sparc*.stp
979ec1
%{_mandir}/man1/qemu-system-sparc.1*
979ec1
%{_mandir}/man1/qemu-system-sparc64.1*
bacd9b
%{_datadir}/%{name}/QEMU,tcx.bin
ac843b
%{_datadir}/%{name}/QEMU,cgthree.bin
57c57a
c27704
3758f8
%files system-tricore
3758f8
%files system-tricore-core
3758f8
%{_bindir}/qemu-system-tricore
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-tricore*.stp
3758f8
%{_mandir}/man1/qemu-system-tricore.1*
Daniel P. Berrange 36ffed
c27704
3758f8
%files system-x86
3758f8
%files system-x86-core
3758f8
%{_bindir}/qemu-system-i386
3758f8
%{_bindir}/qemu-system-x86_64
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-i386*.stp
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-x86_64*.stp
3758f8
%{_mandir}/man1/qemu-system-i386.1*
3758f8
%{_mandir}/man1/qemu-system-x86_64.1*
3758f8
%{_datadir}/%{name}/bios.bin
3758f8
%{_datadir}/%{name}/bios-256k.bin
41cffc
%{_datadir}/%{name}/bios-microvm.bin
d3ff78
%{_datadir}/%{name}/kvmvapic.bin
3758f8
%{_datadir}/%{name}/linuxboot.bin
3758f8
%{_datadir}/%{name}/linuxboot_dma.bin
3758f8
%{_datadir}/%{name}/multiboot.bin
d3ff78
%{_datadir}/%{name}/pvh.bin
28222c
%{_datadir}/%{name}/qboot.rom
d3ff78
%{_datadir}/%{name}/sgabios.bin
3758f8
%if 0%{?need_qemu_kvm}
3758f8
%{_bindir}/qemu-kvm
3758f8
%{_mandir}/man1/qemu-kvm.1*
5bdb06
%config(noreplace) %{_sysconfdir}/modprobe.d/kvm.conf
3758f8
%endif
ecbe00
3758f8
3758f8
%files system-xtensa
ecbe00
%files system-xtensa-core
Paolo Bonzini 40e61a
%{_bindir}/qemu-system-xtensa
Paolo Bonzini 40e61a
%{_bindir}/qemu-system-xtensaeb
Daniel P. Berrangé e83749
%{_datadir}/systemtap/tapset/qemu-system-xtensa*.stp
979ec1
%{_mandir}/man1/qemu-system-xtensa.1*
979ec1
%{_mandir}/man1/qemu-system-xtensaeb.1*
Paolo Bonzini 40e61a
c27704
David Woodhouse 5c3734
%changelog
1abc8e
* Fri Dec 11 2020 Richard W.M. Jones <rjones@redhat.com> - 2:5.2.0-4
a30637
- qemu-char-spice not qemu-chardev-spice.
a30637
18c8d5
* Thu Dec 10 2020 Mohan Boddu <mboddu@bhujji.com> - 5.2.0-2
18c8d5
- Fixing the ISA Dependencies
18c8d5
5a84be
* Wed Dec 09 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-1
5a84be
- Rebase to qemu-5.2.0 GA
5a84be
- Fix spice and GL UI module deps (bz 1904603)
5a84be
d283ab
* Thu Dec 03 2020 Richard W.M. Jones <rjones@redhat.com> - 5.2.0-0.9.rc4
d283ab
- Enable qemu-kvm-core package on riscv64.
d283ab
646ce0
* Thu Dec 03 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-0.8.rc4
646ce0
- Rebase to qemu-5.2.0-rc4
646ce0
108c22
* Tue Nov 24 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-0.7.rc2
108c22
- Fix running 9p tests in copr
108c22
Paolo Bonzini f0d2af
* Thu Nov 19 2020 Paolo Bonzini <pbonzini@redhat.com> - 5.2.0-0.6.rc2
Paolo Bonzini f0d2af
- Remove --python=... to force use of system meson
Paolo Bonzini f0d2af
Daniel P. Berrangé e83749
* Thu Nov 19 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.2.0-0.5.rc2
Daniel P. Berrangé e83749
- Re-enable systemtap tracing
Daniel P. Berrangé e83749
5ff8af
* Wed Nov 18 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-0.4.rc2
5ff8af
- Rebase to qemu-5.2.0-rc2
5ff8af
Daniel P. Berrangé 0b61e5
* Fri Nov 13 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.2.0-0.3.rc1
Daniel P. Berrangé 0b61e5
- Disable user mode static builds in ELN
Daniel P. Berrangé 0b61e5
5bc112
* Wed Nov 11 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-0.2.rc1
5bc112
- Rebase to qemu-5.2.0-rc1
5bc112
28222c
* Sun Nov 08 2020 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-0.1.rc0
28222c
- Rebase to qemu-5.2.0-rc0
28222c
Daniel P. Berrangé 357c68
* Thu Nov  5 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-7
Daniel P. Berrangé 357c68
- Disable LTO again. Tests were not passing, we were ignoring failures.
Daniel P. Berrangé 357c68
Daniel P. Berrangé 65b2a4
* Mon Oct 26 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-6
Daniel P. Berrangé 65b2a4
- Re-enable LTO since tests now pass without asserts
Daniel P. Berrangé 65b2a4
Daniel P. Berrangé 3c0f9e
* Fri Sep  4 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-5
Daniel P. Berrangé 3c0f9e
- Drop conditions for ppc, ppc64, mips64 and s390 arches
Daniel P. Berrangé 458e07
- Fix host qemu binary path for aarch64
Daniel P. Berrangé 4e321e
- Re-enable kernel BR for QEMU sanity check
Daniel P. Berrangé 13e7c3
- Fix conditionals for enabling QEMU sanity check
Daniel P. Berrangé af50bf
- Check whether emulator works before doing sanity check
Daniel P. Berrangé f2839f
- Provide explicit kernel path for QEMU sanity check
Daniel P. Berrangé d9af2b
- Make QEMU sanity check a build blocker
Daniel P. Berrangé 3c0f9e
Daniel P. Berrangé dc03f3
* Thu Sep  3 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-4
Daniel P. Berrangé dc03f3
- Add btrfs ioctls to linux-user (rhbz #1872918)
Daniel P. Berrangé dc03f3
Tom Stellard 3fa99d
* Tue Aug 18 2020 Tom Stellard <tstellar@redhat.com> - 5.1.0-3
Tom Stellard 3fa99d
- Add BuildRequires: gcc
Tom Stellard 3fa99d
- https://fedoraproject.org/wiki/Packaging:C_and_C%2B%2B#BuildRequires_and_Requires
Tom Stellard 3fa99d
9b60eb
* Mon Aug 17 2020 Cole Robinson <aintdiscole@gmail.com> - 5.1.0-2
9b60eb
- Disable dtrace generation to fix use of modules (bz 1869339)
9b60eb
25b030
* Tue Aug 11 2020 Cole Robinson <crobinso@redhat.com> - 5.1.0-1
25b030
- Update to version 5.1.0
25b030
a90ffc
* Fri Aug 07 2020 Cole Robinson <crobinso@redhat.com> - 5.1.0-0.3.rc3
a90ffc
- Update to version 5.1.0-rc3
a90ffc
e84a93
* Thu Aug 06 2020 Merlin Mathesius <mmathesi@redhat.com> - 5.1.0-0.2.rc2
e84a93
- Use new %%{kernel_arches} macro to determine when a full kernel is available
e84a93
d20fa7
* Wed Aug 05 2020 Cole Robinson <aintdiscole@gmail.com> - 5.1.0-0.2.rc2
d20fa7
- Pull in new modules by default, like we do for others
d20fa7
f4bee9
* Tue Aug 04 2020 Cole Robinson <aintdiscole@gmail.com> - 5.1.0-0.1.rc2
f4bee9
- Update to qemu 5.1.0 rc2
f4bee9
Daniel P. Berrangé 7ffd7f
* Fri Jul 31 2020 Daniel P. Berrangé <berrange@redhat.com> - 5.0.0-6
Daniel P. Berrangé 7ffd7f
- Remove obsolete Fedora conditionals (PR#9)
Daniel P. Berrangé 7ffd7f
bdc5a0
* Thu Jul 30 2020 Richard W.M. Jones <rjones@redhat.com> - 5.0.0-5
bdc5a0
- Disable LTO as it caused many strange assert failures.
bdc5a0
4269c7
* Wed Jul 29 2020 Richard W.M. Jones <rjones@redhat.com> - 5.0.0-4
4269c7
- Backport Dan's upstream patch to fix insecure cert in test suite.
4269c7
Kevin Fenzi 013314
* Mon Jul 27 2020 Kevin Fenzi <kevin@scrye.com> - 5.0.0-3
Kevin Fenzi 013314
- Rebuild for new xen
Kevin Fenzi 013314
3da886
* Wed May 13 2020 Cole Robinson <crobinso@redhat.com> - 5.0.0-2
3da886
- Fix iouring hang (bz #1823751)
3da886
9f833e
* Wed May 06 2020 Cole Robinson <crobinso@redhat.com> - 5.0.0-1
9f833e
- Update to version 5.0.0
9f833e
fa1d6e
* Thu Apr 16 2020 Cole Robinson <aintdiscole@gmail.com> - 5.0.0-0.3.rc3
fa1d6e
- Update to qemu 5.0.0 rc3
fa1d6e
9f8e48
* Thu Apr 09 2020 Cole Robinson <aintdiscole@gmail.com> - 5.0.0-0.3.rc2
9f8e48
- Update to qemu 5.0.0 rc2
9f8e48
Adam Williamson e2b4e8
* Wed Apr 08 2020 Adam Williamson <awilliam@redhat.com> - 2:5.0.0-0.2.rc0
Adam Williamson e2b4e8
- Rebuild for new brltty
Adam Williamson e2b4e8
Adam Williamson e2b4e8
* Wed Mar 25 2020 Cole Robinson <crobinso@redhat.com> - 2:5.0.0-0.1.rc0
Adam Williamson e2b4e8
- Update to qemu-5.0.0-rc0
Adam Williamson e2b4e8
Fabiano Fidêncio 492d6c
* Tue Mar 17 2020 Fabiano Fidêncio <fidencio@redhat.com> - 2:4.2.0-7
Fabiano Fidêncio 492d6c
- Fix segfault with SR-IOV hot-{plug,unplug} (bz #1814017)
Fabiano Fidêncio 492d6c
377bb2
* Tue Feb 25 2020 Cole Robinson <crobinso@redhat.com> - 2:4.2.0-6
377bb2
- Rebuild for libiscsi soname bump
377bb2
023288
* Sat Feb 15 2020 Cole Robinson <crobinso@redhat.com> - 2:4.2.0-5
023288
- Fix ppc shutdown issue (bz #1784961)
023288
1d442b
* Tue Jan 28 2020 Cole Robinson <crobinso@redhat.com> - 2:4.2.0-4
1d442b
- virtio-fs support
1d442b
1d442b
* Sat Jan 25 2020 Richard W.M. Jones <rjones@redhat.com> - 4.2.0-3
b98348
- Add miscellaneous fixes for RISC-V (RHBZ#1794902).
b98348
ba6f50
* Thu Dec 19 2019 Mohan Boddu <mboddu@bhujji.com> - 4.2.0-2
ba6f50
- Rebuild for xen 4.13
ba6f50
57a323
* Fri Dec 13 2019 Cole Robinson <aintdiscole@gmail.com> - 4.2.0-1
57a323
- Update to qemu-4.2.0 GA
57a323
46ea40
* Tue Dec 10 2019 Cole Robinson <aintdiscole@gmail.com> - 4.2.0-0.4.rc5
46ea40
- Update to qemu-4.2.0 rc5
46ea40
Daniel P. Berrangé e6e2c6
* Mon Dec  2 2019 Daniel P. Berrangé <berrange@redhat.com> - 2:4.2.0-0.3.rc2
Daniel P. Berrangé e6e2c6
- Disable RDMA on 32-bit arm (rhbz #1778517)
Daniel P. Berrangé e6e2c6
673256
* Wed Nov 20 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.2.0-0.2.rc2
673256
- Update to qemu-4.2.0 rc2
673256
0038f8
* Tue Nov 12 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.2.0-0.1.rc1
0038f8
- Update to qemu-4.2.0 rc1
0038f8
8e6758
* Mon Nov 11 2019 Cole Robinson <crobinso@redhat.com> - 2:4.1.0-6
8e6758
- Fix compressed qcow2 'qemu-img check' errors (bz #1768541)
8e6758
f4c127
* Thu Oct 24 2019 Cole Robinson <crobinso@redhat.com> - 2:4.1.0-5
f4c127
- Workaround for qcow2 triggered XFS corruption (bz #1763519)
f4c127
481596
* Thu Oct 03 2019 Cole Robinson <crobinso@redhat.com> - 2:4.1.0-4
481596
- Rebuild for new virglrenderer
481596
Leigh Scott c36918
* Wed Sep 11 2019 Leigh Scott <leigh123linux@googlemail.com> - 2:4.1.0-3
Leigh Scott c36918
- Rebuild for new libnfs version
Leigh Scott c36918
9db63c
* Wed Sep 04 2019 Cole Robinson <crobinso@redhat.com> - 2:4.1.0-2
9db63c
- gluster 4K block size fixes (bz #1737256)
9db63c
2a7146
* Mon Aug 19 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.1.0-1
2a7146
- Update to qemu-4.1.0 GA
2a7146
e4599b
* Wed Jul 17 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.1.0-0.1.rc2
e4599b
- Update to qemu-4.1.0-rc2
e4599b
- Re-add libattr for qemu-user-static (bz 1731756)
e4599b
6acd45
* Wed Jul 17 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.1.0-0.1.rc1
6acd45
- Update to qemu-4.1.0-rc1
6acd45
160bf4
* Thu Jul 11 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.1.0-0.1.rc0
160bf4
- Update to qemu-4.1.0-rc0
160bf4
Kevin Fenzi 8e85e5
* Fri Jun 28 2019 Kevin Fenzi <kevin@scrye.com> - 2:4.0.0-5
Kevin Fenzi 8e85e5
- Rebuild for new brltty.
Kevin Fenzi 8e85e5
8a7ac9
* Thu Jun 20 2019 Cole Robinson <crobinso@redhat.com> - 2:4.0.0-4
8a7ac9
- CVE-2019-12155: qxl: null pointer dereference while releasing spice
8a7ac9
  resources (bz #1712727, bz #1712670)
8a7ac9
- qemu-4.0.0-2.fc31 ppc64le: rpm hash calculation buggy (bz #1715017)
8a7ac9
- Fix rawhide build (bz #1718926)
8a7ac9
- Link against libslirp (bz #1712980)
8a7ac9
- Add vgabios-ramfb.bin and vgabios-bochs-display.bin (bz #1721445)
8a7ac9
Daniel P. Berrangé 70ef32
* Tue May 14 2019 Daniel P. Berrangé <berrange@redhat.com> - 2:4.0.0-2
Daniel P. Berrangé 70ef32
- Define md-clear CPUID bit
Daniel P. Berrangé 70ef32
- Resolves: rhbz #1710002 (CVE-2018-12126), rhbz #1710004 (CVE-2018-12127),
Daniel P. Berrangé 70ef32
  rhbz #1710003 (CVE-2018-12130), rhbz #1710006 (CVE-2019-11091)
Daniel P. Berrangé 70ef32
Daniel P. Berrangé 70ef32
* Wed Apr 24 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.0.0-1
c67ebc
- Update to qemu-4.0.0 GA
c67ebc
e14a8c
* Tue Apr 16 2019 Cole Robinson <crobinso@redhat.com> - 2:4.0.0-0.7.rc3
e14a8c
- Don't block migration with nested VMX (bz #1697997)
e14a8c
- Update to qemu-4.0.0-rc3
e14a8c
09f7c0
* Sat Apr 06 2019 Richard W.M. Jones <rjones@redhat.com> - 2:4.0.0-0.6.rc2
09f7c0
- Rebuild against xen 4.12.
09f7c0
4266c9
* Wed Apr 03 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.0.0-0.5.rc2
4266c9
- Update to 4.0.0-rc2
4266c9
c9654a
* Wed Mar 27 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.0.0-0.4.rc1
c9654a
- Update to 4.0.0-rc1
c9654a
Adam Williamson fd8638
* Mon Mar 25 2019 Adam Williamson <awilliam@redhat.com> - 2:4.0.0-0.3.rc0
Adam Williamson fd8638
- Backport patch to fix 3D crasher bug (bz #1692323)
Adam Williamson fd8638
f35188
* Thu Mar 21 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.0.0-0.2.rc0
f35188
- Fix python paths for qemu-trace-stap
f35188
f35188
* Wed Mar 20 2019 Cole Robinson <aintdiscole@gmail.com> - 2:4.0.0-0.2.rc0
d3ff78
- Update to 4.0.0-rc0
d3ff78
Daniel P. Berrangé e24cbb
* Wed Mar 20 2019 Daniel P. Berrangé <berrange@redhat.com> - 2:3.1.0-5
Daniel P. Berrangé e24cbb
- Fix compat with latest glibc which has gettid func
Daniel P. Berrangé e24cbb
de10d8
* Sun Mar 03 2019 Cole Robinson <aintdiscole@gmail.com> - 2:3.1.0-4.3
de10d8
- Temporarily disable glusterfs (bz #1684298)
de10d8
2679bc
* Thu Feb 28 2019 Cole Robinson <aintdiscole@gmail.com> - 2:3.1.0-4.2
2679bc
- Rebuild for brltty soname bump
2679bc
Fedora Release Engineering 8e22bb
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2:3.1.0-4.1
Fedora Release Engineering 8e22bb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Fedora Release Engineering 8e22bb
f1ea04
* Sat Jan 12 2019 Richard W.M. Jones <rjones@redhat.com> - 2:3.1.0-4
f1ea04
- Remove temporary patch and rebuild against fixed capstone.
f1ea04
843392
* Fri Jan 11 2019 Richard W.M. Jones <rjones@redhat.com> - 2:3.1.0-3
843392
- Rebuild for unannounced libcapstone soname bump from 3 to 4.
e0155f
- Add a temporary patch to fix capstone header location.