add bootimgs roms roms-qemu subpackages

This commit is contained in:
t_feng 2020-01-13 20:56:41 +08:00
parent b0249e7072
commit 253a97aaa6

View File

@ -6,7 +6,7 @@
Name: ipxe
Version: 20190930
Release: 4
Release: 5
Summary: A network boot loader
License: GPLv2 with additional permissions and BSD
@ -18,12 +18,49 @@ Patch0002: 0002-Use-spec-compliant-timeouts.patch
%ifarch %{buildarches}
BuildRequires: perl-interpreter perl-Getopt-Long syslinux mtools genisoimage edk2-devel
BuildRequires: xz-devel gcc binutils-devel
Obsoletes: gpxe-bootimgs gpxe-roms gpxe-roms-qem
Provides: %{name}-bootimgs %{name}-roms %{name}-roms-qemu
Obsoletes: %{name}-bootimgs %{name}-roms %{name}-roms-qemu
%endif
Obsoletes: gpxe <= 1.0.1
%package bootimgs
Summary: Network boot loader images in bootable USB, CD, floppy and GRUB formats
BuildArch: noarch
Obsoletes: gpxe-bootimgs <= 1.0.1
%package roms
Summary: Network boot loader roms in .rom format
Requires: %{name}-roms-qemu = %{version}-%{release}
BuildArch: noarch
Obsoletes: gpxe-roms <= 1.0.1
%package roms-qemu
Summary: Network boot loader roms supported by QEMU, .rom format
BuildArch: noarch
Obsoletes: gpxe-roms-qemu <= 1.0.1
%description bootimgs
iPXE is an open source network bootloader. It provides a direct
replacement for proprietary PXE ROMs, with many extra features such as
DNS, HTTP, iSCSI, etc.
This package contains the iPXE boot images in USB, CD, floppy, and PXE
UNDI formats.
%description roms
iPXE is an open source network bootloader. It provides a direct
replacement for proprietary PXE ROMs, with many extra features such as
DNS, HTTP, iSCSI, etc.
This package contains the iPXE roms in .rom format.
%description roms-qemu
iPXE is an open source network bootloader. It provides a direct
replacement for proprietary PXE ROMs, with many extra features such as
DNS, HTTP, iSCSI, etc.
This package contains the iPXE ROMs for devices emulated by QEMU, in
.rom format.
%endif
%description
iPXE is an open source network bootloader. It provides a direct
replacement for proprietary PXE ROMs, with many extra features such as
@ -56,11 +93,13 @@ make_ipxe ISOLINUX_BIN=/usr/share/syslinux/isolinux.bin \
mkdir bin-combined
for rom in %{qemuroms}; do
make_ipxe CONFIG=qemu bin/${rom}.rom
make_ipxe CONFIG=qemu bin-i386-efi/${rom}.efidrv
make_ipxe CONFIG=qemu bin-x86_64-efi/${rom}.efidrv
vid="0x${rom%%????}"
did="0x${rom#????}"
EfiRom -f "$vid" -i "$did" --pci23 \
-b bin/${rom}.rom \
-ec bin-i386-efi/${rom}.efidrv \
-ec bin-x86_64-efi/${rom}.efidrv \
-o bin-combined/${rom}.rom
EfiRom -d bin-combined/${rom}.rom
@ -99,16 +138,15 @@ for fmt in rom ;do
done
for rom in %{qemuroms}; do
cp src/bin-combined/${rom}.rom %{buildroot}/%{_datadir}/%{name}.efi/
echo %{_datadir}/%{name}.efi/${rom}.rom >> qemu.rom.list
done
%endif
%ifarch %{buildarches}
%files -f rom.list
%ifarch %{buildarches}
%files bootimgs
%defattr(-,root,root)
%doc README
%license COPYING COPYING.GPLv2 COPYING.UBDL
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}.efi
%{_datadir}/%{name}/ipxe.iso
%{_datadir}/%{name}/ipxe.usb
%{_datadir}/%{name}/ipxe.dsk
@ -116,11 +154,26 @@ done
%{_datadir}/%{name}/ipxe-i386.efi
%{_datadir}/%{name}/ipxe-x86_64.efi
%{_datadir}/%{name}/undionly.kpxe
%{_datadir}/%{name}/*.rom
%{_datadir}/%{name}.efi/*.rom
%files roms -f rom.list
%defattr(-,root,root)
%license COPYING COPYING.GPLv2 COPYING.UBDL
%dir %{_datadir}/%{name}
%files roms-qemu -f qemu.rom.list
%defattr(-,root,root)
%license COPYING COPYING.GPLv2 COPYING.UBDL
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}.efi
%endif
%changelog
* Mon Jan 13 2020 openEuler Buildteam <buildteam@openeuler.org> - 20190125-5
- Type:bugfix
- Id:NA
- SUG:NA
- DESC: add bootimgs roms roms-qemu subpackages
* Fri Nov 29 2019 openEuler Buildteam <buildteam@openeuler.org> - 20190125-4
- Type:bugfix
- Id:NA