Commit Graph

61 Commits

Author SHA1 Message Date
Cole Robinson
fd5ab2443c spec: Generate qemu compatible rom filenames
Add the files to /usr/share/ipxe/qemu. The qemu package can then
use this as one of its firmwarepaths, and save itself the symlink
setup complication

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2021-07-07 11:30:54 -04:00
Cole Robinson
86779a8f6f spec: Drop disabled efi ia32 build architecture
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2021-07-07 10:59:56 -04:00
Jiri Kucera
dfb97b6254 Replace genisoimage with xorriso
xorriso is an alternative to genisoimage with the vivid upstream
(the upstream of genisoimage/cdrkit is inactive for a long time).
2021-06-14 23:54:17 +02:00
Laszlo Ersek
a515f8e718 spec: combine BIOS and EFI roms using "util/catrom.pl"
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1926561

When combining BIOS and EFI roms, the EfiRom utility from edk2-tools
clears the "last image indicator" in the BIOS ROM image header, and then
updates the checksum in the last byte of the BIOS ROM image. However,
EfiRom does not update any internal, iPXE-specific checksums in the BIOS
ROM image.

In the rare case when the checksum residing in the BIOS ROM's last byte
does not fall into such padding that was added previously by
"util/padimg.pl" -- that is, if the BIOS image is a whole multiple of 512
bytes even without padding --, then the recalculation of *only* the last
byte invalidates the LZMA stream and/or an internal CRC32 checksum that
are embedded elsewhere in the BIOS ROM. Consequently, iPXE fails to
LZMA-decompress itself when booted on SeaBIOS.

iPXE's own "util/catrom.pl" utility knows how to update internal
(iPXE-specific) checksums; use this tool for combining the BIOS and EFI
images.

(

  In theory we could abandon EfiRom from edk2-tools altogether, and
  prepare even the stand-alone EFI driver image with iPXE-internal
  tooling. For this, we'd only have to build the
  "bin-x86_64-efi/${rom}.efirom" target, in place of the
  "bin-x86_64-efi/${rom}.efidrv" target. The iPXE build would
  automatically convert the latter into the former with the "util/efirom"
  program.

  Unfortunately, "util/efirom" does not support "EFI compression", and
  that would cause us to nearly exhaust our 256 KB "migration buffer".
  Therefore, continue using EfiRom, but only for compressing the "efidrv"
  binary to a single (not combined) EFI ROM image. Perform only the
  combination step with "util/catrom.pl".

)

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
2021-02-23 09:49:31 -05:00
Fedora Release Engineering
cc925706f9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 14:29:36 +00:00
Tom Stellard
69696ea7c3 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-05 06:19:55 +00:00
Cole Robinson
257ca1593f Update to newer git snapshot, synced with qemu.git
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-09-15 19:29:55 -04:00
Cole Robinson
60ee4da580 Re-enable HTTPS support, with edk2 fix included (bz 1820836)
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-09-15 19:28:56 -04:00
Merlin Mathesius
3a40d2d6db Workaound fatal GCC 9 compilation/link errors
Fix conditionals for perl BuildRequires

Signed-off-by: Merlin Mathesius <mmathesi@redhat.com>
2020-09-04 14:34:52 -05:00
Cole Robinson
f0fdc922ca Revert HTTPS support, causes boot hangs with UEFI (bz 1869102)
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-08-17 17:04:13 -04:00
Cole Robinson
684865d132 Enable HTTPS support (bug 1820836)
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-08-11 14:51:09 -04:00
Cole Robinson
b99748c7cc Drop all the ${fmt} handling, we've only ever used 'rom'
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-08-11 14:49:48 -04:00
Cole Robinson
9a6b17abfe Only use new perl deps for f33+ builds
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-08-11 14:41:57 -04:00
Richard W.M. Jones
8d1c8a32f6 Same as previous commit except for perl-lib. 2020-07-29 10:59:05 +01:00
Richard W.M. Jones
b741ba99a5 Explicitly BR perl-FindBin.
I'm not sure how this managed to build before now, but the Perl script
called "fixrom.pm" definitely does "use FindBin" so this dependency is
required.  The error was:

BEGIN failed--compilation aborted at ./util/fixrom.pl line 23.
Can't locate FindBin.pm in @INC (you may need to install the FindBin module) (@INC contains: /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at ./util/fixrom.pl line 23.
2020-07-29 10:43:35 +01:00
Fedora Release Engineering
24f92d1a4c - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 01:57:48 +00:00
Fedora Release Engineering
7123b84f27 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-29 05:38:36 +00:00
Fedora Release Engineering
5e46b2a950 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 09:42:07 +00:00
Philippe Mathieu-Daudé
44f30ae08c tweaks to qemu images
Allow removing IA32 EFI images from combined oproms.
Check that the ROMs fit in 256K and pad them.
2019-07-17 16:41:02 +02:00
Daniel P. Berrangé
1af6b08f14 Update to latest git snapshot
Fixes: rhbz #1675159

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-02-12 11:05:39 +00:00
Fedora Release Engineering
19f268c0ed - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-01 03:32:28 +00:00
Igor Gnatenko
f74c5f7a0a Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:08 +01:00
Daniel P. Berrangé
f48ba2003a Add BR on gcc
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-07-23 12:17:39 +01:00
Daniel P. Berrangé
40eb125a1f mkisofs tool moved to genisoimage RPM
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-07-23 12:08:41 +01:00
Fedora Release Engineering
c3091d3d63 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-13 05:50:19 +00:00
Fedora Release Engineering
e07789a272 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 17:39:04 +00:00
Cole Robinson
5929173eaf Add missing patches 2017-11-29 14:50:18 -05:00
Paolo Bonzini
027a024fae RHEL integration
Include bugfix and configuration patches from RHEL
Disable cross compilation on RHEL

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-11-21 13:49:29 +01:00
Paolo Bonzini
06872636a9 Include bugfix patches from RHEL 2017-11-21 13:35:04 +01:00
Cole Robinson
d3b16869cb Update to ipxe 0600d3ae for qemu-2.10.0 2017-08-03 17:29:46 -04:00
Fedora Release Engineering
b21822ee7b - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-02 23:51:52 +00:00
Fedora Release Engineering
36f6884360 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-26 13:41:24 +00:00
Petr Písař
0da510e882 perl dependency renamed to perl-interpreter <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules> 2017-07-12 14:09:10 +02:00
Fedora Release Engineering
80f2ce9fd9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-10 16:33:20 +00:00
Cole Robinson
912144213e Rebase to version shipped with qemu 2.8 2016-12-04 18:08:35 -05:00
Cole Robinson
f1f245f0ed Update to git0418631 used by qemu 2.7
- Add e1000e qemu rom
- Add vmxnet3 qemu rom
- Drop ath9k building again, it still causes problems
2016-08-03 10:54:03 -04:00
Dennis Gilmore
1f5cd615e6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 00:38:46 +00:00
Cole Robinson
98c2068483 spec: Actually bump release number 2016-01-26 19:35:07 -05:00
Cole Robinson
3c0d62cd06 Ship ipxe*.efi images 2016-01-26 19:33:50 -05:00
Cole Robinson
9803d7cd3f Build ath9k again
I can't find any detailed reason why this was disabled long ago, maybe
an issue long since fixed. Enable it and see if anyone complains
2016-01-22 09:50:42 -05:00
Cole Robinson
2f32cc1697 spec: Centralize build options 2016-01-22 09:48:18 -05:00
Cole Robinson
fdf1a9bbb4 Build eepro100 roms for qemu
This matches what qemu.git ships
2016-01-22 09:04:37 -05:00
Cole Robinson
74c33bddd3 Add perl-Getopt-Long builddep 2015-11-17 13:03:44 -05:00
Cole Robinson
8f1455cda5 Update to commit 4e03af8 for qemu 2.5
And enable IPv6 for bug 1280318
2015-11-17 12:26:24 -05:00
Cole Robinson
cfc2ed2341 Remove USAGE, it's out of date upstream docs cover this 2015-11-17 11:40:10 -05:00
Dennis Gilmore
9db2eae5f0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild 2015-06-17 11:33:33 +00:00
Paolo Bonzini
f39b985b6e Fix virtio bug with UEFI driver 2015-04-16 17:25:12 +02:00
Paolo Bonzini
cf5216a4fe Synchronize with QEMU 2.3.0 submodule
- Update to latest upstream snapshot
- Switch source to .tar.xz
- Include patches from QEMU submodule
- Use config file for configuration
- Distribute additional permissions on top of GPLv2 ("UBDL")
2015-04-16 10:51:33 +02:00
Peter Robinson
3332c8068c - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild 2014-08-16 21:50:44 +00:00
Dennis Gilmore
12951f642e - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild 2014-06-07 17:42:06 -05:00