From e0cb84627a52611392bfd7cd25db3729a21b6818 Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Jul 07 2021 20:35:01 +0000 Subject: spec: Use --firmwarepath to drop rom symlinking Access ipxe, seabios, seavgabios, and sgabios roms directly in their /usr/share directories. Signed-off-by: Cole Robinson --- diff --git a/qemu.spec b/qemu.spec index 3e7d035..c21a88d 100644 --- a/qemu.spec +++ b/qemu.spec @@ -3,6 +3,7 @@ %global libusbx_version 1.0.23 %global meson_version 0.55.3 %global usbredir_version 0.7.1 +%global ipxe_version 20200823-5.git4bd064de %global have_memlock_limits 0 %global need_qemu_kvm 0 @@ -145,6 +146,7 @@ %global _smp_mflags %{nil} %endif +%global firmwaredirs "%{_datarootdir}/qemu-firmware:%{_datarootdir}/ipxe/qemu:%{_datarootdir}/seavgabios:%{_datarootdir}/seabios:%{_datarootdir}/sgabios" %global qemudocdir %{_docdir}/%{name} %define evr %{epoch}:%{version}-%{release} @@ -483,7 +485,7 @@ Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units %{obsoletes_some_modules} -Requires: ipxe-roms-qemu +Requires: ipxe-roms-qemu >= %{ipxe_version} %description common %{name} is an open source virtualizer that provides hardware emulation for the KVM hypervisor. @@ -1276,7 +1278,7 @@ run_configure() { --extra-cflags="$CFLAGS" \ --with-pkgversion="%{name}-%{version}-%{release}" \ --with-suffix="%{name}" \ - --firmwarepath=%{_prefix}/share/qemu-firmware \ + --firmwarepath=%firmwaredirs \ --meson="%{__meson}" \ --enable-trace-backend=dtrace \ --with-coroutine=ucontext \ @@ -1606,40 +1608,6 @@ rm -rf %{buildroot}%{_datadir}/%{name}/edk2* rm -rf %{buildroot}%{_datadir}/%{name}/firmware -pxe_link() { - ln -s ../ipxe/$2.rom %{buildroot}%{_datadir}/%{name}/pxe-$1.rom - ln -s ../ipxe.efi/$2.rom %{buildroot}%{_datadir}/%{name}/efi-$1.rom -} - -pxe_link e1000 8086100e -pxe_link ne2k_pci 10ec8029 -pxe_link pcnet 10222000 -pxe_link rtl8139 10ec8139 -pxe_link virtio 1af41000 -pxe_link eepro100 80861209 -pxe_link e1000e 808610d3 -pxe_link vmxnet3 15ad07b0 - -rom_link() { - ln -s $1 %{buildroot}%{_datadir}/%{name}/$2 -} - -rom_link ../seavgabios/vgabios-isavga.bin vgabios.bin -rom_link ../seavgabios/vgabios-cirrus.bin vgabios-cirrus.bin -rom_link ../seavgabios/vgabios-qxl.bin vgabios-qxl.bin -rom_link ../seavgabios/vgabios-stdvga.bin vgabios-stdvga.bin -rom_link ../seavgabios/vgabios-vmware.bin vgabios-vmware.bin -rom_link ../seavgabios/vgabios-virtio.bin vgabios-virtio.bin -rom_link ../seavgabios/vgabios-ramfb.bin vgabios-ramfb.bin -rom_link ../seavgabios/vgabios-bochs-display.bin vgabios-bochs-display.bin -rom_link ../seavgabios/vgabios-isavga.bin vgabios-isavga.bin -rom_link ../seavgabios/vgabios-ati.bin vgabios-ati.bin -rom_link ../seabios/bios.bin bios.bin -rom_link ../seabios/bios-256k.bin bios-256k.bin -rom_link ../seabios/bios-microvm.bin bios-microvm.bin -rom_link ../sgabios/sgabios.bin sgabios.bin - - # Fedora specific stuff below %find_lang %{name} @@ -1830,9 +1798,6 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %exclude %{_datadir}/%{name}/qemu-nsis.bmp %{_libexecdir}/virtfs-proxy-helper %{_mandir}/man1/virtfs-proxy-helper.1* -%{_datadir}/%{name}/vgabios*.bin -%{_datadir}/%{name}/pxe*.rom -%{_datadir}/%{name}/efi*.rom %files tests @@ -2174,15 +2139,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %{_datadir}/systemtap/tapset/qemu-system-x86_64*.stp %{_mandir}/man1/qemu-system-i386.1* %{_mandir}/man1/qemu-system-x86_64.1* -%{_datadir}/%{name}/bios.bin -%{_datadir}/%{name}/bios-256k.bin -%{_datadir}/%{name}/bios-microvm.bin %{_datadir}/%{name}/kvmvapic.bin %{_datadir}/%{name}/linuxboot.bin %{_datadir}/%{name}/multiboot.bin %{_datadir}/%{name}/pvh.bin %{_datadir}/%{name}/qboot.rom -%{_datadir}/%{name}/sgabios.bin %if %{need_qemu_kvm} %{_bindir}/qemu-kvm %{_mandir}/man1/qemu-kvm.1*