[PATCH v2 00/38] binman: Add support for bintools and missing tools
sjg at chromium.org
Fri Jan 21 03:02:29 CET 2022
On Sun, 9 Jan 2022 at 20:14, Simon Glass <sjg at chromium.org> wrote:
> At present binman uses binary tools (like cbfstool, futiltiy, lz4) in an
> ad-hoc manner. Various parts of binman use tools.Run() to run tools as
> needed. If a tool is missing, an error is produced and binman stops.
> However this is not ideal. CI systems want to be able to complete the
> build, even if tools are missing. Ideally binman would deal with missing
> binary tools the same way it deals with missing binary blobs: make a note
> of it and move on.
> This series introduces this feature to binman.
> `Bintool` is the name binman gives to a binary tool which it uses to
> create and manipulate binaries that binman cannot handle itself.
> Binman provides various features to manage bintools:
> - Determining whether the tool is currently installed
> - Downloading or building the tool
> - Determining the version of the tool that is installed
> - Deciding which tools are needed to build an image
> As with external blobs, bintools (which are like 'external' tools) can be
> missing. When building an image requires a bintool and it is not
> installed, binman detects this and reports the problem, but continues to
> build an image.
> Of course the image will not work, but binman reports which bintools are needed
> and also provide a way to fetch them.
> The final patch shows how this works in practice with a chosen board. The
> Odroid-C2 is quite a complicated image with many steps. It is an ideal
> example for how Binman can be used.
> The series is available at u-boot-dm/bin-working
> Changes in v2:
> - Substantial rewrite, introducing the concept of bintools
I'm just wondering if people have had a chance to look at this and
might have feedback?
Also, I am wondering about adding the ability to download binary blobs
where they are missing.
More information about the U-Boot-Custodians