[PATCH] Azure: Add 'tools-only' build for macOS X hosts
xypron.debian at gmx.de
Wed May 27 00:39:55 CEST 2020
On 5/18/20 2:52 PM, Tom Rini wrote:
> On Sun, May 17, 2020 at 12:48:42PM +1000, Jonathan Gray wrote:
>> On Sat, May 16, 2020 at 02:54:39PM -0400, Tom Rini wrote:
>>> Add building the 'tools-only' target on macOS X 'Catalina'. Hopefully
>>> this will catch changes to host tools that are incompatible on BSD style
>>> Signed-off-by: Tom Rini <trini at konsulko.com>
>>> Note that at this time commit 3b4847cbee7c
>>> ("efi_loader: support building UEFI binaries on sandbox") is causing
>>> this to fail as non-GNU make does not support 'undefine' and there's not
>>> gmake nor do we need (seemingly) to use gmake otherwise. If we must, we
>>> can look in to 'brew install gmake' I think but I'm trying to have this
>>> be a typical BSD build environment.
>> For building U-Boot (with around 70 targets) in OpenBSD ports we depend
>> on the following additional ports not in the base system:
>> textproc/gsed (with check-config.sh patched to use it over base sed)
>> lang/python (python3)
>> for aarch64 targets
>> for arm targets
>> The host/system compiler on most OpenBSD platforms is clang.
>> I would like to move to doing native builds when building on aarch64 and
>> armv7 platforms with the system clang. I wonder how many of the
>> warnings in doc/README.clang still apply.
> Thanks. Any updates to doc/README.clang would be good. It looks like
> there's still a large number of blocking problems on aarch64 for someone
> to solve (no libgcc, but could we just solve that another way?) and
> linking U-Boot itself fails, but maybe we can use the clang linker by
> On both 32 and 64bit ARM, EFI loader needs to be disabled for rpi at
> least to finish compiling, and on 32bit it does link and run.
In lib/efi_loader/efi_boottime.c and in lib/trace.c we are saving and
arch/arm/include/asm/global_data.h defines a function get_gd() which is
used with clang to retrieve the value of gd:
#define gd get_gd()
So any statement
gd = foo;
like in __efi_entry_check() is bound to fail with clang.
Does that match your compilation problems with EFI_LOADER=y and clang?
More information about the U-Boot