wic bootimg-efi.py: fail build if no binaries installed

With systemd-boot, some builds included correct EFI
bootloader binaries and some not. Thus some builds
booted and some not. Check that some boot binary
was installed so that build fails if none were installed.

(From OE-Core rev: 93fad905b9d5f5cee89408901e4be1630955ab75)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mikko Rapeli 2025-05-30 14:37:41 +03:00 committed by Richard Purdie
parent b204576403
commit c9cb41e293

View File

@ -367,6 +367,13 @@ class BootimgEFIPlugin(SourcePlugin):
else:
raise WicError("unrecognized bootimg-efi loader: %s" %
source_params['loader'])
# must have installed at least one EFI bootloader
out = glob(os.path.join(hdddir, 'EFI', 'BOOT', 'boot*.efi'))
logger.debug("Installed EFI loader files:\n%s" % out)
if not out:
raise WicError("No EFI loaders installed to ESP partition. Check that grub-efi, systemd-boot or similar is installed.")
except KeyError:
raise WicError("bootimg-efi requires a loader, none specified")