[U-Boot] [PATCH v5 12/13] buildman: Introduce an 'and' operator for board selection

Simon Glass sjg at chromium.org
Sat Aug 9 06:35:58 CEST 2014


Hi York,

On 8 August 2014 11:46, York Sun <yorksun at freescale.com> wrote:
> On 08/08/2014 04:10 AM, Simon Glass wrote:
>> Currently buildman allows a list of boards to build to be specified on
the
>> command line. The list can include specific board names, architecture,
SOC
>> and so on.
>>
>> At present the list of boards is dealt with in an 'OR' fashion, and there
>> is no way to specify something like 'arm & freescale', meaning boards
with
>> ARM architecture but only those made by Freescale. This would exclude the
>> PowerPC boards made by Freescale.
>>
>> Support an '&' operator on the command line to permit this. Ensure that
>> arguments can be specified in a single string to permit easy shell
quoting.
>>
>> Suggested-by: York Sun <yorksun at freescale.com>
>> Signed-off-by: Simon Glass <sjg at chromium.org>
>> ---
>>
>> Changes in v5:
>> - Add new patch to add an 'and' operator for board selection
>>
>> Changes in v4: None
>> Changes in v3: None
>> Changes in v2: None
>>
>> tools/buildman/README | 9 +++
>> tools/buildman/board.py | 144
++++++++++++++++++++++++++++++++++++++++++------
>> tools/buildman/test.py | 48 ++++++++++++++++
>> 3 files changed, 184 insertions(+), 17 deletions(-)
>>
>> diff --git a/tools/buildman/README b/tools/buildman/README
>> index aaf0a10..d4e8404 100644
>> --- a/tools/buildman/README
>> +++ b/tools/buildman/README
>> @@ -108,6 +108,15 @@ behaviour is a superset of exact or substring
matching. Examples are:
>> * '^tegra[23]0$' All boards with either Tegra20 or Tegra30 SoC
>> * 'powerpc' All PowerPC boards
>>
>> +While the default is to OR the terms together, you can also make use of
>> +the '&' operator to limit the selection:
>> +
>> +* 'freescale & arm sandbox' All Freescale boards with ARM architecture,
>> + plus sandbox
>> +
>> +It is convenient to use the -n option to see whaat will be built based
on
>> +the subset given.
>> +
>> Buildman does not store intermediate object files. It optionally copies
>> the binary output into a directory when a build is successful. Size
>> information is always recorded. It needs a fair bit of disk space to
work,
>
> Simon,
>
> It is good to see this working. It would be helpful to point out when
using &
> logic, users should put them in quotes (single or double).
>
> I can't get the --count=1 work though. See my example
>
> $ tools/buildman/buildman -c 1 -b working_85xx t104x -n
> No section: 'make-flags'
> Dry run, so not doing much. But I would do this:
>
> Building 16 commits for 9 boards (4 threads, 1 job per thread)
> Build directory: ../working_upstream_85xx
> e76b933e Prepare v2014.10-rc1
> 89c8bc86 fsl/diu: ch7301 encoder split off from t1040qds/diu.c
> 57d28806 powerpc/t1042RDB: Add Video - HDMI support
> dc9ed535 buildman: Fix a few typos
> 04344da3 buildman: Add some notes about moving from MAKEALL
> 4aa63fae buildman: Allow building of current source tree
> 1e5d6ab5 buildman: Move BuilderThread code to its own file
> fc5f1107 buildman: Sort command line options
> eacd9496 buildman: Refactor output options
> 7793b089 buildman: Add verbose option to display errors as they happen
> 1e0d4a12 buildman: Remove unused non-incremental build method code
> deaa8cfd buildman: Add an option to specify the buildman config file
> 8bacf282 buildman: Add a message indicating there are no errors
> e292dd4c buildman: Add a few more toolchain examples to the README
> 384e98f1 buildman: Introduce an 'and' operator for board selection
> 1eddd296 RFC: Deprecate MAKEALL
>
> t104x : 9 boards
> Total boards to build for each commit: 9
>
> I expect only the last commit to build. Am I wrong? I don't see --count
in the
> README file.

Yes it is not implemented.  I will add this and send a new series.

Regards,
Simon


More information about the U-Boot mailing list