From mboxrd@z Thu Jan 1 00:00:00 1970 From: York Sun Date: Fri, 8 Aug 2014 10:46:30 -0700 Subject: [U-Boot] [PATCH v5 12/13] buildman: Introduce an 'and' operator for board selection In-Reply-To: <1407496230-12511-13-git-send-email-sjg@chromium.org> References: <1407496230-12511-1-git-send-email-sjg@chromium.org> <1407496230-12511-13-git-send-email-sjg@chromium.org> Message-ID: <53E50CF6.4050906@freescale.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > Signed-off-by: Simon Glass > --- > > 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. York