[PATCH v10 06/10] sandbox: Report host default-filename in native mode

Simon Glass sjg at chromium.org
Mon Nov 11 13:41:27 CET 2024


Hi Quentin,

On Mon, 11 Nov 2024 at 03:03, Quentin Schulz <quentin.schulz at cherry.de> wrote:
>
> Hi Simon,
>
> On 11/7/24 10:31 PM, Simon Glass wrote:
> > When the --native flag is given, pretend to be running the host
> > architecture rather than sandbox.
> >
> > Allow the same control for PXE too.
> >
>
> Commit 7506c1566998 ("sandbox: Report host default-filename in native
> mode") breaks building jaguar-rk3588_defconfig, I believe it's this patch?
>
> Reverting it makes the build pass again.
>
> HOST_ARCH is empty in include/generated/version_autogenerated.h for some
> reason. Though it was also empty before.
>
> The error is:
>
> """
> lib/efi_loader/efi_helper.c:26:15: error: operator '==' has no left operand
>     26 | #if HOST_ARCH == HOST_ARCH_X86_64
>        |               ^~
> lib/efi_loader/efi_helper.c:29:17: error: operator '==' has no left operand
>     29 | #elif HOST_ARCH == HOST_ARCH_X86
>        |                 ^~
> lib/efi_loader/efi_helper.c:32:17: error: operator '==' has no left operand
>     32 | #elif HOST_ARCH == HOST_ARCH_AARCH64
>        |                 ^~
> lib/efi_loader/efi_helper.c:35:17: error: operator '==' has no left operand
>     35 | #elif HOST_ARCH == HOST_ARCH_ARM
>        |                 ^~
> lib/efi_loader/efi_helper.c:38:17: error: operator '==' has no left operand
>     38 | #elif HOST_ARCH == HOST_ARCH_RISCV32
>        |                 ^~
> lib/efi_loader/efi_helper.c:41:17: error: operator '==' has no left operand
>     41 | #elif HOST_ARCH == HOST_ARCH_RISCV64
>        |                 ^~
> lib/efi_loader/efi_helper.c:45:2: error: #error Unsupported Host
> architecture
>     45 | #error Unsupported Host architecture
>        |  ^~~~~
> lib/efi_loader/efi_helper.c: In function ‘efi_get_basename’:
> lib/efi_loader/efi_helper.c:73:38: error: ‘HOST_BOOTEFI_NAME’ undeclared
> (first use in this function); did you mean ‘BOOTEFI_NAME’?
>     73 |         return efi_use_host_arch() ? HOST_BOOTEFI_NAME :
> BOOTEFI_NAME;
>        |                                      ^~~~~~~~~~~~~~~~~
>        |                                      BOOTEFI_NAME
> lib/efi_loader/efi_helper.c:73:38: note: each undeclared identifier is
> reported only once for each function it appears in
> lib/efi_loader/efi_helper.c: In function ‘efi_get_pxe_arch’:
> lib/efi_loader/efi_helper.c:79:24: error: ‘HOST_PXE_ARCH’ undeclared
> (first use in this function); did you mean ‘HOST_ARCH’?
>     79 |                 return HOST_PXE_ARCH;
>        |                        ^~~~~~~~~~~~~
>        |                        HOST_ARCH
> lib/efi_loader/efi_helper.c: In function ‘efi_get_basename’:
> lib/efi_loader/efi_helper.c:74:1: warning: control reaches end of
> non-void function [-Wreturn-type]
>     74 | }
>        | ^
> make[2]: *** [scripts/Makefile.build:256: lib/efi_loader/efi_helper.o]
> Error 1
> make[1]: *** [scripts/Makefile.build:398: lib/efi_loader] Error 2
> make: *** [Makefile:1914: lib] Error 2
> make: *** Waiting for unfinished jobs....
> """
>
> The build host for me is Fedora 41.

Which cross-toolchain are you using? That variable is set at the top
of Makefile so it would be worth seeing what MK_ARCH is returning.

Regards,
Simon


More information about the U-Boot mailing list