* Package: sys-boot/gnu-efi-3.0.18-r3:0 * Repository: gentoo * Maintainer: ceamac@gentoo.org * USE: arm elibc_glibc kernel_linux * FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox * ERROR: sys-boot/gnu-efi-3.0.18-r3::gentoo failed (pretend phase): * armv7a-unknown-linux-gnueabihf-objcopy (objcopy) does not support EFI target * * Call stack: * ebuild.sh, line 136: Called pkg_pretend * gnu-efi-3.0.18-r3.ebuild, line 50: Called check_and_set_objcopy * gnu-efi-3.0.18-r3.ebuild, line 45: Called die * The specific snippet of code: * LANG=C LC_ALL=C "${OBJCOPY}" --help | grep -q '\<pei-' || die "${OBJCOPY} (objcopy) does not support EFI target" * * If you need support, post the output of `emerge --info '=sys-boot/gnu-efi-3.0.18-r3::gentoo'`, * the complete build log and the output of `emerge -pqv '=sys-boot/gnu-efi-3.0.18-r3::gentoo'`. * The complete build log is located at '/var/tmp/portage/sys-boot/gnu-efi-3.0.18-r3/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-boot/gnu-efi-3.0.18-r3/temp/die.env'. * Working directory: '/var/tmp/portage/sys-boot/gnu-efi-3.0.18-r3/empty' * S: '/var/tmp/portage/sys-boot/gnu-efi-3.0.18-r3/work/gnu-efi-3.0.18'
It might need binutils[multitarget] but then I wonder how much value it has anyway (because afaik no armv7 EFI firmware exists)?
I looked in the Makefile and it says arm32 and riscv64 use elf instead of PE. So it is easy to fix, I simply need to remove my test on these arches. I also wondered myself why it has been keyworded on arm in the first place, but the description on upstream github says: "Develop EFI applications for ARM-64, ARM-32, x86_64, IA-64 (IPF), IA-32 (x86), and MIPS platforms using the GNU toolchain and the EFI development environment." So I assume someone somewhere maybe uses it.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f18c709e191b6725d43f4f386b5cb19e7d4f7c21 commit f18c709e191b6725d43f4f386b5cb19e7d4f7c21 Author: Viorel Munteanu <ceamac@gentoo.org> AuthorDate: 2024-09-09 17:50:09 +0000 Commit: Viorel Munteanu <ceamac@gentoo.org> CommitDate: 2024-09-09 18:08:24 +0000 sys-boot/gnu-efi: fix building on arm Broken when trying to implement a workaround for bug #931792. Checking if objcopy supports PE fails on arm. Closes: https://bugs.gentoo.org/939338 Signed-off-by: Viorel Munteanu <ceamac@gentoo.org> .../gnu-efi/{gnu-efi-3.0.18-r4.ebuild => gnu-efi-3.0.18-r5.ebuild} | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)