[U-Boot] How do I tell buildman to use a /specific/ toolchain?

Simon Glass sjg at chromium.org
Fri Oct 2 00:59:52 CEST 2015


Hi Stephen,

On Wednesday, 23 September 2015, Stephen Warren <swarren at wwwdotorg.org> wrote:
>
> Simon,
>
> I have 3 different ARM toolchains installed into /usr/bin via distro packages. How do I tell buildman which of those to use?
>
> I had originally thought that ~/.buildman's [toolchain] section contained CROSS_COMPILE-like values, so I tried:
>
>> [toolchain]
>> root: /
>> arm0-not-installed: arm-none-gnueabi-
>> arm1: arm-none-eabi-
>> arm2: arm-linux-gnueabihf-
>> arm3: arm-linux-gnueabi-
>> arch64: aarch64-linux-gnu-
>>
>> [toolchain-alias]
>> arm: arm1
>> aarch64: aarch64
>
>
> (I intended to change the "arm: arm1" line to point at arm1/2/3 based on which I wanted to use at a particular time).
>
> However, running "buildman --list-toolchains" and re-reading the docs shows me that the [toolchain] values are absolute directories that buildman searches for files named *-gcc:
>
>>    - scanning path 'arm-none-gnueabi-'
>>       - looking in 'arm-none-gnueabi-/.'
>>       - looking in 'arm-none-gnueabi-/bin'
>>       - looking in 'arm-none-gnueabi-/usr/bin'
>
>
> If buildman finds multiple toolchains, there doesn't seem to be a way to tell it which one to use. Am I missing something?
>
> I suppose a solution wouuld be to move the compiler binaries into different separate directories, and only list one of those directories in ~/.buildman. However, I can't do that for distro-packaged toolchains (well, I suppose I could manually mv everything all over the place, but that's really fragile since it'd break any time the package got upgraded or removed and re-installed).
>
> I think it makes sense to add new syntax into ~/.buildman to specify "don't do automagical searching, just use this CROSS_COMPILE value that I say". Does that sound reasonable? Automagic stuff makes for great defaults, but if it can't be overridden, it sucks when you actually know what you want.


Yes I think it would be fine to add an option to use CROSS_COMPILE (of
course it would fail if you tried to build the board with the wrong
arch).

The option other option at present is -G which lets you use multiple
.buildman files. You could have one of these for each toolchain.

Regards,
Simon


More information about the U-Boot mailing list