import ipxe-20200823-9.git4bd064de.el9
This commit is contained in:
		
							parent
							
								
									d14c3064ec
								
							
						
					
					
						commit
						dfcf82c8ca
					
				
							
								
								
									
										105
									
								
								SPECS/ipxe.spec
									
									
									
									
									
								
							
							
						
						
									
										105
									
								
								SPECS/ipxe.spec
									
									
									
									
									
								
							| @ -1,7 +1,3 @@ | |||||||
| %if 0%{?fedora} |  | ||||||
| %global cross 1 |  | ||||||
| %endif |  | ||||||
| 
 |  | ||||||
| # ROMS we want for QEMU with format PCIID:QEMUNAME | # ROMS we want for QEMU with format PCIID:QEMUNAME | ||||||
| %global qemuroms \\\ | %global qemuroms \\\ | ||||||
|   8086100e:e1000 \\\ |   8086100e:e1000 \\\ | ||||||
| @ -18,17 +14,10 @@ | |||||||
|   15ad07b0:vmxnet3 |   15ad07b0:vmxnet3 | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| # We only build the ROMs if on an x86 build host. The resulting | # We only build the ROMs if on an EFI build host. The resulting | ||||||
| # binary RPM will be noarch, so other archs will still be able | # binary RPM will be noarch, so other archs will still be able | ||||||
| # to use the binary ROMs. | # to use the binary ROMs. | ||||||
| # | %global buildarches x86_64 aarch64 | ||||||
| # We do cross-compilation for 32->64-bit, but not for other arches |  | ||||||
| # because EDK II does not support big-endian hosts. |  | ||||||
| %if 0%{?cross} |  | ||||||
| %global buildarches %{ix86} x86_64 |  | ||||||
| %else |  | ||||||
| %global buildarches x86_64 |  | ||||||
| %endif |  | ||||||
| 
 | 
 | ||||||
| # debugging firmwares does not go the same way as a normal program. | # debugging firmwares does not go the same way as a normal program. | ||||||
| # moreover, all architectures providing debuginfo for a single noarch | # moreover, all architectures providing debuginfo for a single noarch | ||||||
| @ -50,7 +39,7 @@ | |||||||
| 
 | 
 | ||||||
| Name:    ipxe | Name:    ipxe | ||||||
| Version: %{date} | Version: %{date} | ||||||
| Release: 7.git%{hash}%{?dist} | Release: 9.git%{hash}%{?dist} | ||||||
| Summary: A network boot loader | Summary: A network boot loader | ||||||
| 
 | 
 | ||||||
| License: GPLv2 with additional permissions and BSD | License: GPLv2 with additional permissions and BSD | ||||||
| @ -81,28 +70,30 @@ BuildRequires: perl-Getopt-Long | |||||||
| BuildRequires: perl-FindBin | BuildRequires: perl-FindBin | ||||||
| BuildRequires: perl-lib | BuildRequires: perl-lib | ||||||
| %endif | %endif | ||||||
| BuildRequires: syslinux |  | ||||||
| BuildRequires: mtools | BuildRequires: mtools | ||||||
| BuildRequires: xorriso | BuildRequires: xorriso | ||||||
| BuildRequires: edk2-tools | BuildRequires: edk2-tools | ||||||
| BuildRequires: xz-devel | BuildRequires: xz-devel | ||||||
| BuildRequires: gcc | BuildRequires: gcc | ||||||
| 
 |  | ||||||
| BuildRequires: binutils-devel | BuildRequires: binutils-devel | ||||||
| %if 0%{?cross} |  | ||||||
| BuildRequires: binutils-x86_64-linux-gnu gcc-x86_64-linux-gnu |  | ||||||
| %endif |  | ||||||
| BuildRequires: make | BuildRequires: make | ||||||
|  | %endif | ||||||
|  | %ifarch x86_64 | ||||||
|  | BuildRequires: syslinux | ||||||
|  | %endif | ||||||
| 
 | 
 | ||||||
| Obsoletes: gpxe <= 1.0.1 | Obsoletes: gpxe <= 1.0.1 | ||||||
| 
 | 
 | ||||||
|  | %ifarch x86_64 | ||||||
| %package rhcert | %package rhcert | ||||||
| Summary: Redhat hwcert custom ipxe image | Summary: Redhat hwcert custom ipxe image | ||||||
| BuildArch: noarch | BuildArch: noarch | ||||||
| 
 | 
 | ||||||
| %package bootimgs | %package bootimgs-x86 | ||||||
| Summary: Network boot loader images in bootable USB, CD, floppy and GRUB formats | Summary: Network boot loader images in bootable USB, CD, floppy and GRUB formats | ||||||
| BuildArch: noarch | BuildArch: noarch | ||||||
|  | Provides: %{name}-bootimgs = %{version}-%{release} | ||||||
|  | Obsoletes: %{name}-bootimgs < %{version}-%{release} | ||||||
| Obsoletes: gpxe-bootimgs <= 1.0.1 | Obsoletes: gpxe-bootimgs <= 1.0.1 | ||||||
| 
 | 
 | ||||||
| %package roms | %package roms | ||||||
| @ -119,7 +110,7 @@ Obsoletes: gpxe-roms-qemu <= 1.0.1 | |||||||
| %description rhcert | %description rhcert | ||||||
| Custom ipxe image for use in hardware certification and validation | Custom ipxe image for use in hardware certification and validation | ||||||
| 
 | 
 | ||||||
| %description bootimgs | %description bootimgs-x86 | ||||||
| iPXE is an open source network bootloader. It provides a direct | iPXE is an open source network bootloader. It provides a direct | ||||||
| replacement for proprietary PXE ROMs, with many extra features such as | replacement for proprietary PXE ROMs, with many extra features such as | ||||||
| DNS, HTTP, iSCSI, etc. | DNS, HTTP, iSCSI, etc. | ||||||
| @ -134,7 +125,6 @@ DNS, HTTP, iSCSI, etc. | |||||||
| 
 | 
 | ||||||
| This package contains the iPXE roms in .rom format. | This package contains the iPXE roms in .rom format. | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| %description roms-qemu | %description roms-qemu | ||||||
| iPXE is an open source network bootloader. It provides a direct | iPXE is an open source network bootloader. It provides a direct | ||||||
| replacement for proprietary PXE ROMs, with many extra features such as | replacement for proprietary PXE ROMs, with many extra features such as | ||||||
| @ -144,6 +134,20 @@ This package contains the iPXE ROMs for devices emulated by QEMU, in | |||||||
| .rom format. | .rom format. | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
|  | %ifarch aarch64 | ||||||
|  | %package bootimgs-aarch64 | ||||||
|  | Summary: AArch64 Network boot loader images in bootable USB and GRUB formats | ||||||
|  | Group:   Development/Tools | ||||||
|  | BuildArch: noarch | ||||||
|  | 
 | ||||||
|  | %description bootimgs-aarch64 | ||||||
|  | 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 ARM64 boot images in USB and GRUB formats. | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
| %description | %description | ||||||
| iPXE is an open source network bootloader. It provides a direct | iPXE is an open source network bootloader. It provides a direct | ||||||
| replacement for proprietary PXE ROMs, with many extra features such as | replacement for proprietary PXE ROMs, with many extra features such as | ||||||
| @ -152,28 +156,28 @@ DNS, HTTP, iSCSI, etc. | |||||||
| %prep | %prep | ||||||
| %setup -q -n %{name}-%{version}-git%{hash} | %setup -q -n %{name}-%{version}-git%{hash} | ||||||
| %autopatch -p1 | %autopatch -p1 | ||||||
| 
 | pushd src | ||||||
| 
 |  | ||||||
| %build |  | ||||||
| %ifarch %{buildarches} |  | ||||||
| cd src |  | ||||||
| 
 |  | ||||||
| # ath9k drivers are too big for an Option ROM, and ipxe devs say it doesn't | # ath9k drivers are too big for an Option ROM, and ipxe devs say it doesn't | ||||||
| # make sense anyways | # make sense anyways | ||||||
| # http://lists.ipxe.org/pipermail/ipxe-devel/2012-March/001290.html | # http://lists.ipxe.org/pipermail/ipxe-devel/2012-March/001290.html | ||||||
| rm -rf drivers/net/ath/ath9k | rm -rf drivers/net/ath/ath9k | ||||||
| 
 | 
 | ||||||
|  | cp %{SOURCE1} . | ||||||
|  | popd | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | cd src | ||||||
|  | 
 | ||||||
| make_ipxe() { | make_ipxe() { | ||||||
|     make %{?_smp_mflags} \ |     make %{?_smp_mflags} \ | ||||||
|         NO_WERROR=1 V=1 \ |         NO_WERROR=1 V=1 \ | ||||||
|         GITVERSION=%{hash} \ |         GITVERSION=%{hash} \ | ||||||
| %if 0%{?cross} |  | ||||||
|         CROSS_COMPILE=x86_64-linux-gnu- \ |  | ||||||
| %endif |  | ||||||
|         "$@" |         "$@" | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| cp %{SOURCE1} . | %ifarch x86_64 | ||||||
|  | 
 | ||||||
| make_ipxe bin-x86_64-efi/ipxe.efi EMBED=script.ipxe | make_ipxe bin-x86_64-efi/ipxe.efi EMBED=script.ipxe | ||||||
| mv bin-x86_64-efi/ipxe.efi bin-x86_64-efi/ipxe-rhcert.efi | mv bin-x86_64-efi/ipxe.efi bin-x86_64-efi/ipxe-rhcert.efi | ||||||
| 
 | 
 | ||||||
| @ -209,8 +213,15 @@ done | |||||||
| 
 | 
 | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
|  | %ifarch aarch64 | ||||||
|  | make_ipxe bin-arm64-efi/snponly.efi | ||||||
|  | %if 0%{?fedora} | ||||||
|  | make_ipxe bin-arm64-efi/ipxe.efi | ||||||
|  | %endif | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
| %install | %install | ||||||
| %ifarch %{buildarches} | %ifarch x86_64 | ||||||
| mkdir -p %{buildroot}/%{_datadir}/%{name}/ | mkdir -p %{buildroot}/%{_datadir}/%{name}/ | ||||||
| mkdir -p %{buildroot}/%{_datadir}/%{name}.efi/ | mkdir -p %{buildroot}/%{_datadir}/%{name}.efi/ | ||||||
| pushd src/bin/ | pushd src/bin/ | ||||||
| @ -252,8 +263,16 @@ done | |||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| %ifarch %{buildarches} | %ifarch aarch64 | ||||||
| %files bootimgs | mkdir -p %{buildroot}/%{_datadir}/%{name}/arm64-efi | ||||||
|  | cp -a src/bin-arm64-efi/snponly.efi %{buildroot}/%{_datadir}/%{name}/arm64-efi/snponly.efi | ||||||
|  | %if 0%{?fedora} | ||||||
|  | cp -a src/bin-arm64-efi/ipxe.efi %{buildroot}/%{_datadir}/%{name}/arm64-efi/ipxe.efi | ||||||
|  | %endif | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | %files bootimgs-x86 | ||||||
| %dir %{_datadir}/%{name} | %dir %{_datadir}/%{name} | ||||||
| %{_datadir}/%{name}/ipxe.iso | %{_datadir}/%{name}/ipxe.iso | ||||||
| %{_datadir}/%{name}/ipxe.usb | %{_datadir}/%{name}/ipxe.usb | ||||||
| @ -280,7 +299,23 @@ done | |||||||
| %{_datadir}/%{name}/ipxe-x86_64-rhcert.efi | %{_datadir}/%{name}/ipxe-x86_64-rhcert.efi | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
|  | %ifarch aarch64 | ||||||
|  | %files bootimgs-aarch64 | ||||||
|  | %dir %{_datadir}/%{name} | ||||||
|  | %dir %{_datadir}/%{name}/arm64-efi | ||||||
|  | %if 0%{?fedora} | ||||||
|  | %{_datadir}/%{name}/arm64-efi/ipxe.efi | ||||||
|  | %endif | ||||||
|  | %{_datadir}/%{name}/arm64-efi/snponly.efi | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Tue Apr 05 2022 Jarod Wilson <jarod@redhat.com> - 20200823-9.git4bd064de | ||||||
|  | - Fix Obsoletes: and changelog versioning | ||||||
|  | 
 | ||||||
|  | * Tue Mar 15 2022 Yaakov Selkowitz <yselkowi@redhat.com> - 20200823-8.git4bd064de | ||||||
|  | - Add ARM 64 EFI artifacts (bz 2059349) | ||||||
|  | 
 | ||||||
| * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 20200823-7.git4bd064de | * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 20200823-7.git4bd064de | ||||||
| - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | ||||||
|   Related: rhbz#1991688 |   Related: rhbz#1991688 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user