mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 18:32:15 +02:00
Even in grub-efi platforms we need to build grub for the the common tools. On x86 this isn't a problem because grub builds legacy boot and grub-efi builds EFI, but on aarch64 there is no legacy boot supported by grub. To ensure that the common tools are built the grub recipe also builds EFI binaries, but this now means that grub and grub-efi ship the same binaries. oe-core 933286 fixed this conflict by deleting the binaries from grub-efi and putting the aarch64 modules into grub-common (relying on dependencies to pull grub-common in). This seems backwards: grub-efi no longer contains the binaries and they're in different packages on arm or x86. Also, SDK generation is broken as the grub package itself is now empty as the binaries are in grub-common. Resolve all of these issues by reversing the logic: grub-efi is the package which holds the EFI binaries on all platforms. grub only builds for EFI on aarch64 as a way to build the common binaries, so delete them in that recipe to avoid conflicts. And finally as the grub recipe is empty on aarch64 but needed by dependencies, set ALLOW_EMPTY. (From OE-Core rev: 801c10b33eb2074677d46b361e46f47b693b573a) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>