[PATCH v2 02/16] buildman/toolchain.py: set CROSS_COMPILE only if self.cross is set
Jerome Forissier
jerome.forissier at linaro.org
Mon Sep 2 17:12:58 CEST 2024
Hi Simon,
On 9/1/24 22:10, Simon Glass wrote:
> Hi Jerome,
>
> On Fri, 30 Aug 2024 at 04:17, Jerome Forissier
> <jerome.forissier at linaro.org> wrote:
>>
>> In MakeEnvironment(), CROSS_COMPILE is defined to be self.cross (with
>> or without a full path), optionally prefixed by the toolchain wrapper
>> defined in ~/.buildman. This is fine when self.cross is not empty, but
>> it doesn't make sense when it is:
>> - Either there is no wrapper and we end up with an empty CROSS_COMPILE
>> which is the same as not defining it (the host compiler will be used),
>> - Or there is a wrapper and CROSS_COMPILE will contain only the wrapper
>> which obviously is not a valid compiler, hence an error.
>>
>> Test case:
>>
>> $ sudo apt install ccache
>> $ grep -q toolchain-wrapper ~/.buildman || \
>> printf "[toolchain-wrapper]\nwrapper = ccache\n" >>~/.buildman
>> $ make mrproper
>> $ ./tools/buildman/buildman sandbox_noinst
>> $ ./tools/buildman/buildman sandbox_noinst
>> Building current source for 1 boards (1 thread, 24 jobs per thread)
>> sandbox: + sandbox_noinst
>> +In file included from boot/bootmeth_efi.c:16:
>> +include/efi_default_filename.h:20:15: error: operator '==' has no left operand
>> + 20 | #if HOST_ARCH == HOST_ARCH_X86_64
>> + | ^~
>> [...]
>>
>> Signed-off-by: Jerome Forissier <jerome.forissier at linaro.org>
>> ---
>> tools/buildman/toolchain.py | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> Can you please put this on top of [1]? I am trying to resolve a
> code-coverage problem in the same function.
Which [1] and what do you mean by "on top off"?
- pick patch [1], then pick this patch (resulting in two patches
in the series)
- or pick patch [1] and combine it with this one?
>
> Also, please do add a test case.
Done in v3.
Thanks,
--
Jerome
>>
>> diff --git a/tools/buildman/toolchain.py b/tools/buildman/toolchain.py
>> index 324ad0e082..ff987a9eea 100644
>> --- a/tools/buildman/toolchain.py
>> +++ b/tools/buildman/toolchain.py
>> @@ -201,10 +201,10 @@ class Toolchain:
>> if self.override_toolchain:
>> # We'll use MakeArgs() to provide this
>> pass
>> - elif full_path:
>> + elif full_path and self.cross:
>> env[b'CROSS_COMPILE'] = tools.to_bytes(
>> wrapper + os.path.join(self.path, self.cross))
>> - else:
>> + elif self.cross:
>> env[b'CROSS_COMPILE'] = tools.to_bytes(wrapper + self.cross)
>> env[b'PATH'] = tools.to_bytes(self.path) + b':' + env[b'PATH']
>>
>> --
>> 2.40.1
>>
>
> Regards,
> Simon
More information about the U-Boot
mailing list