b68810e70c
When Grub2 is build it is configured only for one boot set-up, BIOS Legacy, EFI 32 bit or EFI 64 bit. It can not deal with several boot set-up on the same image. This patch allows to build Grub2 for different configurations simultaneously. To cover Grub2 configuration of legacy BIOS platforms (32-bit), 32-bit EFI BIOS and 64-bit EFI BIOS in the same build, multi-build system felt much more reasonable to just extend the grub2 package into 3 packages. We can no longer use autotools-package as a consequence of this multi-build, and we have to resort to generic-package and a partial duplication of the autotools-infra. Grub2 was already using custom option like --prefix or --exec-prefix so this won't add much more weirdness. We use a GRUB2_TUPLES list to describe all the configurations selected. For each boot case described in the GRUB2_TUPLES list, it configures and builds Grub2 in a separate folder named build-$(tuple). We use a foreach loop to make actions on each tuple selected. We have to separate the BR2_TARGET_GRUB2_BUILTIN_MODULES and the BR2_TARGET_GRUB2_BUILTIN_CONFIG for each BIOS or EFI boot cases. Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> [yann.morin.1998@free.fr: - keep sub-options properly indented - fix check-package ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> |
||
---|---|---|
.. | ||
afboot-stm32 | ||
arm-trusted-firmware | ||
at91bootstrap | ||
at91bootstrap3 | ||
at91dataflashboot | ||
barebox | ||
beaglev-ddrinit | ||
beaglev-secondboot | ||
binaries-marvell | ||
boot-wrapper-aarch64 | ||
edk2 | ||
grub2 | ||
gummiboot | ||
lpc32xxcdl | ||
mv-ddr-marvell | ||
mxs-bootlets | ||
opensbi | ||
optee-os | ||
s500-bootloader | ||
shim | ||
syslinux | ||
uboot | ||
vexpress-firmware | ||
common.mk | ||
Config.in |