2022-12-08 15:42:01 +08:00
|
|
|
# Whether to support Ceph rbd storage backend
|
2022-12-12 15:05:29 +08:00
|
|
|
%bcond_without rbd
|
2022-12-08 15:42:01 +08:00
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
Name: qemu
|
2024-02-17 20:32:31 +08:00
|
|
|
Version: 8.2.0
|
|
|
|
|
Release: 1
|
|
|
|
|
Epoch: 11
|
2019-09-30 11:15:46 -04:00
|
|
|
Summary: QEMU is a generic and open source machine emulator and virtualizer
|
2021-01-08 14:00:45 +08:00
|
|
|
License: GPLv2 and BSD and MIT and CC-BY-SA-4.0
|
2019-09-30 11:15:46 -04:00
|
|
|
URL: http://www.qemu.org
|
2022-11-23 17:21:41 +08:00
|
|
|
Source0: https://download.qemu.org/%{name}-%{version}%{?rcstr}.tar.xz
|
2019-11-06 19:50:55 +08:00
|
|
|
Source1: 80-kvm.rules
|
|
|
|
|
Source2: 99-qemu-guest-agent.rules
|
|
|
|
|
Source3: bridge.conf
|
2022-02-17 15:19:13 +08:00
|
|
|
Source4: BinDir.tar.gz
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
BuildRequires: flex
|
2021-06-28 16:05:05 +08:00
|
|
|
BuildRequires: gcc
|
2022-12-07 15:02:28 +08:00
|
|
|
BuildRequires: make
|
2019-09-30 11:15:46 -04:00
|
|
|
BuildRequires: bison
|
|
|
|
|
BuildRequires: texinfo
|
|
|
|
|
BuildRequires: perl-podlators
|
|
|
|
|
BuildRequires: chrpath
|
|
|
|
|
BuildRequires: gettext
|
2020-02-21 18:27:32 +08:00
|
|
|
BuildRequires: python-sphinx
|
2022-01-29 09:56:33 +08:00
|
|
|
BuildRequires: ninja-build
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
BuildRequires: zlib-devel
|
2022-01-29 09:56:33 +08:00
|
|
|
BuildRequires: zstd-devel
|
2019-09-30 11:15:46 -04:00
|
|
|
BuildRequires: gtk3-devel
|
|
|
|
|
BuildRequires: gnutls-devel
|
|
|
|
|
BuildRequires: numactl-devel
|
|
|
|
|
BuildRequires: device-mapper-multipath-devel
|
|
|
|
|
BuildRequires: rdma-core-devel
|
|
|
|
|
BuildRequires: libcap-devel
|
|
|
|
|
BuildRequires: libcap-ng-devel
|
|
|
|
|
BuildRequires: cyrus-sasl-devel
|
|
|
|
|
BuildRequires: libaio-devel
|
|
|
|
|
BuildRequires: usbredir-devel >= 0.5.2
|
|
|
|
|
BuildRequires: libseccomp-devel >= 2.3.0
|
|
|
|
|
BuildRequires: systemd-devel
|
|
|
|
|
BuildRequires: libiscsi-devel
|
|
|
|
|
BuildRequires: snappy-devel
|
|
|
|
|
BuildRequires: lzo-devel
|
|
|
|
|
BuildRequires: ncurses-devel
|
|
|
|
|
BuildRequires: libattr-devel
|
|
|
|
|
BuildRequires: libcurl-devel
|
|
|
|
|
BuildRequires: libjpeg-devel
|
|
|
|
|
BuildRequires: libpng-devel
|
|
|
|
|
BuildRequires: pixman-devel
|
|
|
|
|
BuildRequires: libusbx-devel
|
|
|
|
|
BuildRequires: bzip2-devel
|
|
|
|
|
BuildRequires: libepoxy-devel
|
|
|
|
|
BuildRequires: libtasn1-devel
|
|
|
|
|
BuildRequires: libxml2-devel
|
|
|
|
|
BuildRequires: libudev-devel
|
|
|
|
|
BuildRequires: pam-devel
|
|
|
|
|
BuildRequires: perl-Test-Harness
|
|
|
|
|
BuildRequires: python3-devel
|
2022-12-12 15:05:29 +08:00
|
|
|
%if %{with rbd}
|
2020-07-23 17:27:18 +08:00
|
|
|
BuildRequires: librbd-devel
|
2022-12-08 15:42:01 +08:00
|
|
|
%endif
|
2020-12-25 14:45:46 +08:00
|
|
|
BuildRequires: krb5-devel
|
|
|
|
|
BuildRequires: libssh-devel
|
|
|
|
|
BuildRequires: glib2
|
2019-12-13 16:06:06 +08:00
|
|
|
BuildRequires: libfdt-devel
|
|
|
|
|
BuildRequires: virglrenderer-devel
|
2022-10-24 10:10:07 +08:00
|
|
|
BuildRequires: libslirp-devel
|
2022-11-14 15:16:04 +08:00
|
|
|
BuildRequires: liburing-devel
|
2023-03-30 05:06:57 -04:00
|
|
|
%ifarch loongarch64
|
|
|
|
|
BuildRequires: spice-server-devel
|
|
|
|
|
%endif
|
2019-09-30 11:15:46 -04:00
|
|
|
|
2022-08-25 12:39:12 +08:00
|
|
|
# for upgrade from qemu-kvm
|
|
|
|
|
Provides: qemu-kvm
|
2024-02-17 20:32:31 +08:00
|
|
|
Obsoletes: qemu-kvm < 11:8.2.0
|
2022-08-25 12:39:12 +08:00
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
Requires(post): /usr/bin/getent
|
|
|
|
|
Requires(post): /usr/sbin/groupadd
|
|
|
|
|
Requires(post): /usr/sbin/useradd
|
|
|
|
|
Requires(post): systemd-units
|
|
|
|
|
Requires(preun): systemd-units
|
|
|
|
|
Requires(postun): systemd-units
|
2021-03-11 21:08:52 +08:00
|
|
|
Requires(postun): qemu-block-iscsi
|
2021-08-19 13:42:00 +08:00
|
|
|
Requires(postun): qemu-block-curl
|
2022-03-24 20:43:05 +08:00
|
|
|
Requires(postun): qemu-hw-usb-host
|
2022-07-25 19:00:56 +08:00
|
|
|
Requires: libgcc
|
2022-11-14 15:16:04 +08:00
|
|
|
Requires: liburing
|
2021-03-11 21:08:52 +08:00
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
%description
|
|
|
|
|
QEMU is a FAST! processor emulator using dynamic translation to achieve good emulation speed.
|
|
|
|
|
|
|
|
|
|
QEMU has two operating modes:
|
|
|
|
|
|
|
|
|
|
Full system emulation. In this mode, QEMU emulates a full system (for example a PC),
|
|
|
|
|
including one or several processors and various peripherals. It can be used to launch
|
|
|
|
|
different Operating Systems without rebooting the PC or to debug system code.
|
|
|
|
|
|
|
|
|
|
User mode emulation. In this mode, QEMU can launch processes compiled for one CPU on another CPU.
|
|
|
|
|
It can be used to launch the Wine Windows API emulator (https://www.winehq.org) or to ease
|
|
|
|
|
cross-compilation and cross-debugging.
|
|
|
|
|
You can refer to https://www.qemu.org for more infortmation.
|
|
|
|
|
|
|
|
|
|
%package guest-agent
|
|
|
|
|
Summary: QEMU guest agent
|
|
|
|
|
Requires(post): systemd-units
|
|
|
|
|
Requires(preun): systemd-units
|
|
|
|
|
Requires(postun): systemd-units
|
|
|
|
|
%description guest-agent
|
|
|
|
|
This package provides an agent to run inside guests, which communicates
|
|
|
|
|
with the host over a virtio-serial channel named "org.qemu.guest_agent.0"
|
|
|
|
|
Please refer to https://wiki.qemu.org/Features/GuestAgent for more information.
|
|
|
|
|
|
|
|
|
|
%package help
|
|
|
|
|
Summary: Documents for qemu
|
|
|
|
|
Buildarch: noarch
|
|
|
|
|
%description help
|
|
|
|
|
This package provides documents for qemu related man help and information.
|
|
|
|
|
|
|
|
|
|
%package img
|
|
|
|
|
Summary: QEMU command line tool for manipulating disk images
|
|
|
|
|
%description img
|
|
|
|
|
This package provides a command line tool for manipulating disk images
|
|
|
|
|
|
2022-12-12 15:05:29 +08:00
|
|
|
%if %{with rbd}
|
2020-12-25 14:45:46 +08:00
|
|
|
%package block-rbd
|
|
|
|
|
Summary: Qemu-block-rbd
|
|
|
|
|
%description block-rbd
|
|
|
|
|
This package provides RBD support for Qemu
|
2022-12-08 15:42:01 +08:00
|
|
|
%endif
|
2020-12-25 14:45:46 +08:00
|
|
|
|
|
|
|
|
%package block-ssh
|
|
|
|
|
Summary: Qemu-block-ssh
|
|
|
|
|
%description block-ssh
|
|
|
|
|
This package provides block-ssh support for Qemu
|
|
|
|
|
|
2021-03-10 15:02:01 +08:00
|
|
|
%package block-iscsi
|
|
|
|
|
Summary: Qemu-block-iscsi
|
|
|
|
|
%description block-iscsi
|
|
|
|
|
This package provides block-iscsi support for Qemu
|
|
|
|
|
|
2021-08-19 13:42:00 +08:00
|
|
|
%package block-curl
|
|
|
|
|
Summary: Qemu-block-curl
|
|
|
|
|
%description block-curl
|
|
|
|
|
This package provides block-curl support for Qemu
|
|
|
|
|
|
2022-03-24 20:43:05 +08:00
|
|
|
%package hw-usb-host
|
|
|
|
|
Summary: Qemu-hw-usb-host
|
|
|
|
|
%description hw-usb-host
|
|
|
|
|
This package provides hw-usb-host support for Qemu
|
|
|
|
|
|
2019-12-13 16:06:06 +08:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
|
%package seabios
|
|
|
|
|
Summary: QEMU seabios
|
|
|
|
|
%description seabios
|
|
|
|
|
This package include bios-256k.bin and bios.bin of seabios
|
|
|
|
|
%endif
|
|
|
|
|
|
2022-05-30 14:39:26 +08:00
|
|
|
%package system-aarch64
|
|
|
|
|
Summary: Qemu-system-aarch64
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-aarch64
|
|
|
|
|
This package provides the QEMU system emulator for AArch64.
|
|
|
|
|
|
|
|
|
|
%package system-arm
|
|
|
|
|
Summary: Qemu-system-arm
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-arm
|
|
|
|
|
This package provides the QEMU system emulator for ARM.
|
|
|
|
|
|
|
|
|
|
%package system-x86_64
|
|
|
|
|
Summary: Qemu-system-x86_64
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-x86_64
|
|
|
|
|
This package provides the QEMU system emulator for x86_64.
|
|
|
|
|
|
2023-11-28 09:54:55 +08:00
|
|
|
%package system-ppc64
|
|
|
|
|
Summary: Qemu-system-ppc64
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-ppc64
|
|
|
|
|
This package provides the QEMU system emulator for ppc64le.
|
|
|
|
|
|
2022-06-20 19:17:26 +08:00
|
|
|
%package system-riscv
|
|
|
|
|
Summary: Qemu-system-riscv32, Qemu-system-riscv64
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-riscv
|
|
|
|
|
This package provides the QEMU system emulator for riscv.
|
|
|
|
|
|
2023-03-28 20:53:54 +08:00
|
|
|
%package system-loongarch64
|
|
|
|
|
Summary: Qemu-system-loongarch64
|
|
|
|
|
Requires: qemu
|
|
|
|
|
%description system-loongarch64
|
|
|
|
|
This package provides the QEMU system emulator for loongarch64.
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
%prep
|
|
|
|
|
%setup -q -n qemu-%{version}%{?rcstr}
|
|
|
|
|
%autopatch -p1
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
buildarch="x86_64-softmmu"
|
2022-06-20 19:17:26 +08:00
|
|
|
targetarch="aarch64-softmmu arm-softmmu riscv32-softmmu riscv64-softmmu"
|
2019-09-30 11:15:46 -04:00
|
|
|
%endif
|
|
|
|
|
%ifarch aarch64
|
|
|
|
|
buildarch="aarch64-softmmu"
|
2022-06-20 19:17:26 +08:00
|
|
|
targetarch="x86_64-softmmu arm-softmmu riscv32-softmmu riscv64-softmmu"
|
2019-09-30 11:15:46 -04:00
|
|
|
%endif
|
|
|
|
|
|
2023-11-28 09:54:55 +08:00
|
|
|
%ifarch ppc64le
|
|
|
|
|
buildarch="ppc64-softmmu"
|
|
|
|
|
targetarch="x86_64-softmmu aarch64-softmmu arm-softmmu riscv32-softmmu riscv64-softmmu"
|
|
|
|
|
%endif
|
|
|
|
|
|
2023-03-28 20:53:54 +08:00
|
|
|
%ifarch loongarch64
|
|
|
|
|
buildarch="loongarch64-softmmu"
|
|
|
|
|
targetarch="x86_64-softmmu aarch64-softmmu arm-softmmu riscv32-softmmu riscv64-softmmu"
|
|
|
|
|
%endif
|
|
|
|
|
|
2023-03-29 09:39:23 +08:00
|
|
|
%ifarch riscv64
|
|
|
|
|
buildarch="riscv64-softmmu"
|
|
|
|
|
targetarch="x86_64-softmmu aarch64-softmmu arm-softmmu riscv32-softmmu"
|
|
|
|
|
%endif
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
buildldflags="VL_LDFLAGS=-Wl,--build-id"
|
2022-01-29 09:56:33 +08:00
|
|
|
qemubuilddir="build"
|
2019-09-30 11:15:46 -04:00
|
|
|
|
2022-02-17 15:19:13 +08:00
|
|
|
tar xf %{SOURCE4}
|
|
|
|
|
cd BinDir/
|
2024-02-17 20:32:31 +08:00
|
|
|
\cp -r -a . ../
|
2022-02-17 15:19:13 +08:00
|
|
|
cd ../
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
./configure \
|
|
|
|
|
--prefix=%{_prefix} \
|
2022-05-30 14:39:26 +08:00
|
|
|
--target-list="${buildarch} ${targetarch}" \
|
2022-03-15 09:50:10 +08:00
|
|
|
--extra-cflags="%{optflags} -fPIE -DPIE -fPIC -ftls-model=initial-exec" \
|
2022-01-29 09:56:33 +08:00
|
|
|
--extra-ldflags="-Wl,--build-id -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack" \
|
2019-09-30 11:15:46 -04:00
|
|
|
--datadir=%{_datadir} \
|
2022-01-29 09:56:33 +08:00
|
|
|
--docdir=%{_docdir}/ \
|
2019-09-30 11:15:46 -04:00
|
|
|
--libdir=%{_libdir} \
|
|
|
|
|
--libexecdir=%{_libexecdir} \
|
|
|
|
|
--localstatedir=%{_localstatedir} \
|
|
|
|
|
--sysconfdir=%{_sysconfdir} \
|
|
|
|
|
--interp-prefix=%{_prefix}/qemu-%%M \
|
|
|
|
|
--firmwarepath=%{_datadir}/%{name} \
|
|
|
|
|
--with-pkgversion=%{name}-%{version}-%{release} \
|
2020-02-26 10:50:49 +08:00
|
|
|
--python=/usr/bin/python3 \
|
2024-02-17 20:32:31 +08:00
|
|
|
--disable-slirp \
|
2022-10-24 10:10:07 +08:00
|
|
|
--enable-slirp-smbd \
|
2019-09-30 11:15:46 -04:00
|
|
|
--enable-gtk \
|
|
|
|
|
--enable-docs \
|
|
|
|
|
--enable-guest-agent \
|
|
|
|
|
--enable-pie \
|
|
|
|
|
--enable-numa \
|
|
|
|
|
--enable-mpath \
|
|
|
|
|
--disable-libnfs \
|
|
|
|
|
--disable-bzip2 \
|
|
|
|
|
--enable-kvm \
|
|
|
|
|
--enable-tcg \
|
|
|
|
|
--enable-rdma \
|
|
|
|
|
--enable-linux-aio \
|
2022-11-14 15:16:04 +08:00
|
|
|
--enable-linux-io-uring \
|
2019-09-30 11:15:46 -04:00
|
|
|
--enable-cap-ng \
|
|
|
|
|
--enable-vhost-user \
|
2022-08-25 12:39:12 +08:00
|
|
|
--enable-vhost-net \
|
|
|
|
|
--enable-vhost-kernel \
|
|
|
|
|
--enable-vhost-user-blk-server \
|
|
|
|
|
--enable-vhost-vdpa \
|
2020-08-13 13:11:02 -04:00
|
|
|
--enable-tpm \
|
2020-12-25 14:45:46 +08:00
|
|
|
--enable-modules \
|
|
|
|
|
--enable-libssh \
|
2019-12-13 16:06:06 +08:00
|
|
|
--enable-fdt \
|
2019-09-30 11:15:46 -04:00
|
|
|
--enable-virglrenderer \
|
|
|
|
|
--enable-cap-ng \
|
|
|
|
|
--enable-libusb \
|
2022-12-12 15:05:29 +08:00
|
|
|
%if %{with rbd}
|
2022-11-07 03:12:35 +00:00
|
|
|
--enable-rbd \
|
2022-12-08 15:42:01 +08:00
|
|
|
%else
|
|
|
|
|
--disable-rbd \
|
|
|
|
|
%endif
|
2019-09-30 11:15:46 -04:00
|
|
|
--disable-dmg \
|
|
|
|
|
--disable-qcow1 \
|
|
|
|
|
--disable-vdi \
|
|
|
|
|
--disable-vvfat \
|
|
|
|
|
--disable-qed \
|
|
|
|
|
--disable-parallels \
|
|
|
|
|
--disable-capstone \
|
2021-03-03 14:46:05 +08:00
|
|
|
--disable-smartcard \
|
2022-01-29 09:56:33 +08:00
|
|
|
--enable-zstd \
|
2022-02-11 16:10:23 +08:00
|
|
|
--disable-brlapi \
|
2022-03-11 14:31:42 +08:00
|
|
|
--disable-plugins \
|
|
|
|
|
--enable-debug
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
make %{?_smp_mflags} $buildldflags V=1
|
|
|
|
|
|
2024-02-17 20:32:31 +08:00
|
|
|
|
2022-01-29 09:56:33 +08:00
|
|
|
cp ${qemubuilddir}/${buildarch}/qemu-system-* qemu-kvm
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
|
|
|
|
|
make %{?_smp_mflags} DESTDIR=%{buildroot} \
|
|
|
|
|
install
|
|
|
|
|
|
|
|
|
|
%find_lang %{name}
|
|
|
|
|
install -m 0755 qemu-kvm %{buildroot}%{_libexecdir}/
|
2019-11-06 19:50:55 +08:00
|
|
|
ln -s %{_libexecdir}/qemu-kvm %{buildroot}/%{_bindir}/qemu-kvm
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
install -D -p -m 0644 contrib/systemd/qemu-pr-helper.service %{buildroot}%{_unitdir}/qemu-pr-helper.service
|
|
|
|
|
install -D -p -m 0644 contrib/systemd/qemu-pr-helper.socket %{buildroot}%{_unitdir}/qemu-pr-helper.socket
|
|
|
|
|
install -D -p -m 0644 qemu.sasl %{buildroot}%{_sysconfdir}/sasl2/qemu.conf
|
|
|
|
|
install -D -m 0644 %{_sourcedir}/bridge.conf %{buildroot}%{_sysconfdir}/qemu/bridge.conf
|
2019-11-06 19:50:55 +08:00
|
|
|
install -D -m 0644 %{_sourcedir}/80-kvm.rules %{buildroot}/usr/lib/udev/rules.d/80-kvm.rules
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
# For qemu-guest-agent package
|
|
|
|
|
%global _udevdir /lib/udev/rules.d
|
|
|
|
|
install -D -p -m 0644 contrib/systemd/qemu-guest-agent.service %{buildroot}%{_unitdir}/qemu-guest-agent.service
|
|
|
|
|
install -D -m 0644 %{_sourcedir}/99-qemu-guest-agent.rules %{buildroot}%{_udevdir}/99-qemu-guest-agent.rules
|
|
|
|
|
mkdir -p %{buildroot}%{_localstatedir}/log
|
|
|
|
|
touch %{buildroot}%{_localstatedir}/log/qga-fsfreeze-hook.log
|
|
|
|
|
|
2020-05-12 10:31:40 +08:00
|
|
|
# For qemu docs package
|
2019-09-30 11:15:46 -04:00
|
|
|
%global qemudocdir %{_docdir}/%{name}
|
2020-05-12 10:31:40 +08:00
|
|
|
rm -rf %{buildroot}%{qemudocdir}/specs
|
2022-01-29 09:56:33 +08:00
|
|
|
rm -rf %{buildroot}%{qemudocdir}/.buildinfo
|
|
|
|
|
rm -rf %{buildroot}%{qemudocdir}/objects.inv
|
|
|
|
|
rm -rf %{buildroot}%{qemudocdir}/genindex.html
|
|
|
|
|
rm -rf %{buildroot}%{qemudocdir}/index.html
|
|
|
|
|
install -D -p -m 0644 -t %{buildroot}%{qemudocdir} README.rst COPYING COPYING.LIB LICENSE
|
2019-09-30 11:15:46 -04:00
|
|
|
chmod -x %{buildroot}%{_mandir}/man1/*
|
|
|
|
|
|
2020-05-12 10:31:40 +08:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/vgabios-ati.bin
|
2022-01-29 09:56:33 +08:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/bios-microvm.bin
|
2019-09-30 11:15:46 -04:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/openbios-*
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/QEMU,*.bin
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/bamboo.dtb
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/canyonlands.dtb
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/hppa-firmware.img
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/palcode-clipper
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/petalogix-*
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/qemu_vga.ndrv
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/s390-*
|
2023-11-28 09:54:55 +08:00
|
|
|
%ifnarch ppc64le
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/slof.bin
|
2019-09-30 11:15:46 -04:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/skiboot.lid
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/spapr-*
|
2023-11-28 09:54:55 +08:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/ppc_*
|
|
|
|
|
%endif
|
2019-09-30 11:15:46 -04:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/u-boot*
|
2023-05-13 05:11:57 +08:00
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/core3-hmcode
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/core3-reset
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/uefi-bios-sw
|
2019-09-30 11:15:46 -04:00
|
|
|
rm -rf %{buildroot}%{_bindir}/ivshmem*
|
2020-05-12 10:31:40 +08:00
|
|
|
rm -f %{buildroot}%{_datadir}/%{name}/edk2*
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/firmware
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/qemu-nsis.bmp
|
2020-12-25 14:45:46 +08:00
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/audio-pa.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/block-gluster.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-sdl.so
|
2022-01-29 09:56:33 +08:00
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/chardev-baum.so
|
2023-03-28 20:53:54 +08:00
|
|
|
%ifnarch loongarch64
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/audio-oss.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/audio-spice.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-curses.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-gtk.so
|
2022-01-29 09:56:33 +08:00
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/chardev-spice.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/hw-display-qxl.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/hw-s390x-virtio-gpu-ccw.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/hw-usb-redirect.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-opengl.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-spice-app.so
|
|
|
|
|
rm -rf %{buildroot}%{_libdir}/%{name}/ui-spice-core.so
|
2023-03-28 20:53:54 +08:00
|
|
|
%endif
|
2022-01-29 09:56:33 +08:00
|
|
|
|
2020-12-25 14:45:46 +08:00
|
|
|
rm -rf %{buildroot}%{_libexecdir}/vhost-user-gpu
|
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/vhost-user/50-qemu-gpu.json
|
2023-11-28 09:54:55 +08:00
|
|
|
%ifarch ppc64le
|
|
|
|
|
%endif
|
2019-09-30 11:15:46 -04:00
|
|
|
|
2022-12-12 15:05:29 +08:00
|
|
|
%if %{with rbd}
|
2021-05-19 09:11:35 +00:00
|
|
|
strip %{buildroot}%{_libdir}/%{name}/block-rbd.so
|
2022-12-08 15:42:01 +08:00
|
|
|
%endif
|
2021-05-19 09:11:35 +00:00
|
|
|
strip %{buildroot}%{_libdir}/%{name}/block-iscsi.so
|
2021-08-19 13:42:00 +08:00
|
|
|
strip %{buildroot}%{_libdir}/%{name}/block-curl.so
|
2021-05-19 09:11:35 +00:00
|
|
|
strip %{buildroot}%{_libdir}/%{name}/block-ssh.so
|
2022-03-24 20:43:05 +08:00
|
|
|
strip %{buildroot}%{_libdir}/%{name}/hw-usb-host.so
|
2021-05-19 09:11:35 +00:00
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
for f in %{buildroot}%{_bindir}/* %{buildroot}%{_libdir}/* \
|
|
|
|
|
%{buildroot}%{_libexecdir}/*; do
|
|
|
|
|
if file $f | grep -q ELF | grep -q -i shared; then chrpath --delete $f; fi
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
%check
|
2022-02-11 16:15:40 +08:00
|
|
|
echo "#define CONFIG_DISABLE_QEMU_LOG" >> build/config-host.h
|
|
|
|
|
make %{?_smp_mflags} $buildldflags V=1
|
2022-11-08 20:12:16 +08:00
|
|
|
make check V=1 %{?_smp_mflags}
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
%pre
|
|
|
|
|
getent group kvm >/dev/null || groupadd -g 36 -r kvm
|
|
|
|
|
getent group qemu >/dev/null || groupadd -g 107 -r qemu
|
|
|
|
|
getent passwd qemu >/dev/null || \
|
|
|
|
|
useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
|
|
|
|
|
-c "qemu user" qemu
|
|
|
|
|
|
|
|
|
|
%post guest-agent
|
|
|
|
|
%systemd_post qemu-guest-agent.service
|
|
|
|
|
%preun guest-agent
|
|
|
|
|
%systemd_preun qemu-guest-agent.service
|
|
|
|
|
%postun guest-agent
|
|
|
|
|
%systemd_postun_with_restart qemu-guest-agent.service
|
|
|
|
|
|
|
|
|
|
%files -f %{name}.lang
|
|
|
|
|
%dir %{_datadir}/%{name}/
|
|
|
|
|
%{_libexecdir}/qemu-kvm
|
2019-11-06 19:50:55 +08:00
|
|
|
%{_bindir}/qemu-kvm
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_libdir}/%{name}/accel-qtest-*.so
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
%{_libdir}/%{name}/accel-tcg-*.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-vga-gl.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-vga.so
|
|
|
|
|
%endif
|
2024-02-17 20:32:31 +08:00
|
|
|
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_libdir}/%{name}/hw-display-virtio-gpu-gl.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-gpu-pci-gl.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-gpu-pci.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-gpu.so
|
2024-02-17 20:32:31 +08:00
|
|
|
%{_libdir}/%{name}/audio-dbus.so
|
|
|
|
|
%{_libdir}/%{name}/ui-dbus.so
|
|
|
|
|
%{_libdir}/%{name}/ui-egl-headless.so
|
|
|
|
|
%{_docdir}/%{name}/dbus-dbusindex.html
|
|
|
|
|
%{_datadir}/%{name}/vof-nvram.bin
|
|
|
|
|
%{_datadir}/%{name}/vof.bin
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_datadir}/%{name}/efi-virtio.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-e1000.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-e1000e.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-rtl8139.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-pcnet.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-ne2k_pci.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-eepro100.rom
|
|
|
|
|
%{_datadir}/%{name}/efi-vmxnet3.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-virtio.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-e1000.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-ne2k_pci.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-pcnet.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-rtl8139.rom
|
|
|
|
|
%{_datadir}/%{name}/pxe-eepro100.rom
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_datadir}/%{name}/qboot.rom
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_datadir}/%{name}/trace-events-all
|
|
|
|
|
%{_datadir}/applications/qemu.desktop
|
|
|
|
|
%{_datadir}/icons/hicolor/*/apps/*
|
|
|
|
|
%{_datadir}/%{name}/keymaps/
|
|
|
|
|
%{_bindir}/elf2dmp
|
|
|
|
|
%{_bindir}/qemu-edid
|
|
|
|
|
%{_bindir}/qemu-keymap
|
|
|
|
|
%{_bindir}/qemu-pr-helper
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_libexecdir}/virtfs-proxy-helper
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_unitdir}/qemu-pr-helper.service
|
|
|
|
|
%{_unitdir}/qemu-pr-helper.socket
|
|
|
|
|
%attr(4755, root, root) %{_libexecdir}/qemu-bridge-helper
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/sasl2/qemu.conf
|
|
|
|
|
%dir %{_sysconfdir}/qemu
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/qemu/bridge.conf
|
2019-11-06 19:50:55 +08:00
|
|
|
/usr/lib/udev/rules.d/80-kvm.rules
|
|
|
|
|
%doc %{qemudocdir}/COPYING
|
|
|
|
|
%doc %{qemudocdir}/COPYING.LIB
|
|
|
|
|
%doc %{qemudocdir}/LICENSE
|
2019-09-30 11:15:46 -04:00
|
|
|
%ifarch x86_64
|
|
|
|
|
%{_datadir}/%{name}/bios.bin
|
|
|
|
|
%{_datadir}/%{name}/bios-256k.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-cirrus.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-qxl.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-stdvga.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-vmware.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-virtio.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-ramfb.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-bochs-display.bin
|
|
|
|
|
%{_datadir}/%{name}/linuxboot.bin
|
2020-03-17 16:48:40 +08:00
|
|
|
%{_datadir}/%{name}/linuxboot_dma.bin
|
|
|
|
|
%{_datadir}/%{name}/pvh.bin
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_datadir}/%{name}/multiboot.bin
|
2023-03-22 10:28:19 +08:00
|
|
|
%{_datadir}/%{name}/multiboot_dma.bin
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_datadir}/%{name}/kvmvapic.bin
|
|
|
|
|
%endif
|
|
|
|
|
|
2024-02-17 20:32:31 +08:00
|
|
|
|
2022-05-30 14:39:26 +08:00
|
|
|
%files system-aarch64
|
|
|
|
|
%{_bindir}/qemu-system-aarch64
|
|
|
|
|
|
|
|
|
|
%files system-arm
|
|
|
|
|
%{_bindir}/qemu-system-arm
|
|
|
|
|
%{_datadir}/%{name}/npcm7xx_bootrom.bin
|
|
|
|
|
|
|
|
|
|
%files system-x86_64
|
|
|
|
|
%{_bindir}/qemu-system-x86_64
|
|
|
|
|
%ifnarch x86_64
|
|
|
|
|
%{_libdir}/%{name}/accel-tcg-*.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-vga-gl.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-virtio-vga.so
|
|
|
|
|
%{_datadir}/%{name}/bios.bin
|
|
|
|
|
%{_datadir}/%{name}/bios-256k.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-cirrus.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-qxl.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-stdvga.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-vmware.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-virtio.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-ramfb.bin
|
|
|
|
|
%{_datadir}/%{name}/vgabios-bochs-display.bin
|
|
|
|
|
%{_datadir}/%{name}/linuxboot.bin
|
|
|
|
|
%{_datadir}/%{name}/linuxboot_dma.bin
|
|
|
|
|
%{_datadir}/%{name}/pvh.bin
|
|
|
|
|
%{_datadir}/%{name}/multiboot.bin
|
2023-03-22 10:28:19 +08:00
|
|
|
%{_datadir}/%{name}/multiboot_dma.bin
|
2022-05-30 14:39:26 +08:00
|
|
|
%{_datadir}/%{name}/kvmvapic.bin
|
|
|
|
|
%endif
|
|
|
|
|
|
2023-11-28 09:54:55 +08:00
|
|
|
%ifarch ppc64le
|
|
|
|
|
%files system-ppc64
|
|
|
|
|
%{_bindir}/qemu-system-ppc64
|
|
|
|
|
%{_datadir}/%{name}/slof.bin
|
|
|
|
|
%{_datadir}/%{name}/skiboot.lid
|
|
|
|
|
%endif
|
|
|
|
|
|
2022-06-20 19:17:26 +08:00
|
|
|
%files system-riscv
|
|
|
|
|
%{_bindir}/qemu-system-riscv32
|
|
|
|
|
%{_bindir}/qemu-system-riscv64
|
2024-02-17 20:32:31 +08:00
|
|
|
%{_datadir}/%{name}/opensbi-riscv32-generic-fw_dynamic.*
|
|
|
|
|
%{_datadir}/%{name}/opensbi-riscv64-generic-fw_dynamic.*
|
2023-11-28 09:54:55 +08:00
|
|
|
%ifnarch ppc64le
|
|
|
|
|
%endif
|
2022-06-20 19:17:26 +08:00
|
|
|
|
2023-03-28 20:53:54 +08:00
|
|
|
%ifarch loongarch64
|
|
|
|
|
%files system-loongarch64
|
|
|
|
|
%{_bindir}/qemu-system-loongarch64
|
|
|
|
|
%{_libdir}/%{name}/audio-oss.so
|
|
|
|
|
%{_libdir}/%{name}/ui-curses.so
|
|
|
|
|
%{_libdir}/%{name}/ui-gtk.so
|
|
|
|
|
%{_libdir}/%{name}/audio-spice.so
|
|
|
|
|
%{_libdir}/%{name}/chardev-spice.so
|
|
|
|
|
%{_libdir}/%{name}/hw-display-qxl.so
|
|
|
|
|
%{_libdir}/%{name}/hw-s390x-virtio-gpu-ccw.so
|
|
|
|
|
%{_libdir}/%{name}/hw-usb-redirect.so
|
|
|
|
|
%{_libdir}/%{name}/ui-opengl.so
|
|
|
|
|
%{_libdir}/%{name}/ui-spice-app.so
|
|
|
|
|
%{_libdir}/%{name}/ui-spice-core.so
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%ifnarch loongarch64
|
|
|
|
|
%endif
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
%files help
|
|
|
|
|
%dir %{qemudocdir}
|
2022-01-29 09:56:33 +08:00
|
|
|
%doc %{qemudocdir}/about
|
|
|
|
|
%doc %{qemudocdir}/devel
|
2020-02-21 18:27:32 +08:00
|
|
|
%doc %{qemudocdir}/interop
|
2022-01-29 09:56:33 +08:00
|
|
|
%doc %{qemudocdir}/search*
|
|
|
|
|
%doc %{qemudocdir}/_static
|
|
|
|
|
%doc %{qemudocdir}/system
|
|
|
|
|
%doc %{qemudocdir}/tools
|
|
|
|
|
%doc %{qemudocdir}/user
|
|
|
|
|
%doc %{qemudocdir}/README.rst
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_mandir}/man1/qemu.1*
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_mandir}/man1/qemu-img.1*
|
|
|
|
|
%{_mandir}/man1/qemu-storage-daemon.1*
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_mandir}/man1/virtfs-proxy-helper.1*
|
|
|
|
|
%{_mandir}/man7/qemu-block-drivers.7*
|
|
|
|
|
%{_mandir}/man7/qemu-cpu-models.7*
|
|
|
|
|
%{_mandir}/man7/qemu-ga-ref.7*
|
|
|
|
|
%{_mandir}/man7/qemu-qmp-ref.7*
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_mandir}/man7/qemu-storage-daemon-qmp-ref.7*
|
|
|
|
|
%{_mandir}/man8/qemu-ga.8*
|
2019-09-30 11:15:46 -04:00
|
|
|
%{_mandir}/man8/qemu-nbd.8*
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_mandir}/man8/qemu-pr-helper.8*
|
|
|
|
|
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
%files guest-agent
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%{_bindir}/qemu-ga
|
|
|
|
|
%{_unitdir}/qemu-guest-agent.service
|
|
|
|
|
%{_udevdir}/99-qemu-guest-agent.rules
|
|
|
|
|
%ghost %{_localstatedir}/log/qga-fsfreeze-hook.log
|
|
|
|
|
|
|
|
|
|
%files img
|
|
|
|
|
%{_bindir}/qemu-img
|
|
|
|
|
%{_bindir}/qemu-io
|
|
|
|
|
%{_bindir}/qemu-nbd
|
2022-01-29 09:56:33 +08:00
|
|
|
%{_bindir}/qemu-storage-daemon
|
2019-09-30 11:15:46 -04:00
|
|
|
|
2022-12-12 15:05:29 +08:00
|
|
|
%if %{with rbd}
|
2020-12-25 14:45:46 +08:00
|
|
|
%files block-rbd
|
|
|
|
|
%{_libdir}/%{name}/block-rbd.so
|
2022-12-08 15:42:01 +08:00
|
|
|
%endif
|
2020-12-25 14:45:46 +08:00
|
|
|
|
|
|
|
|
%files block-ssh
|
|
|
|
|
%{_libdir}/%{name}/block-ssh.so
|
|
|
|
|
|
2021-03-10 15:02:01 +08:00
|
|
|
%files block-iscsi
|
|
|
|
|
%{_libdir}/%{name}/block-iscsi.so
|
|
|
|
|
|
2021-08-19 13:42:00 +08:00
|
|
|
%files block-curl
|
|
|
|
|
%{_libdir}/%{name}/block-curl.so
|
|
|
|
|
|
2022-03-24 20:43:05 +08:00
|
|
|
%files hw-usb-host
|
|
|
|
|
%{_libdir}/%{name}/hw-usb-host.so
|
|
|
|
|
|
2019-12-13 16:06:06 +08:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
|
%files seabios
|
|
|
|
|
%{_datadir}/%{name}/bios-256k.bin
|
|
|
|
|
%{_datadir}/%{name}/bios.bin
|
|
|
|
|
%endif
|
2019-09-30 11:15:46 -04:00
|
|
|
|
|
|
|
|
%changelog
|
2024-02-17 20:32:31 +08:00
|
|
|
* Thu Feb 29 2024 Tao Yang <yangtao286@huawei.com> - 11:8.2.0-1
|
2019-09-30 11:15:46 -04:00
|
|
|
- Package init
|