[U-Boot] [PATCH v5 12/15] buildman: adjust for Kconfig
Simon Glass
sjg at chromium.org
Sat Jul 26 10:44:06 CEST 2014
Hi Masahiro,
On 24 July 2014 05:00, Masahiro Yamada <yamada.m at jp.panasonic.com> wrote:
> Use "make <board>_defconfig" instead of "make <board>_config".
>
> Invoke tools/genboardscfg.py to generate boards.cfg when it is missing.
>
> Signed-off-by: Masahiro Yamada <yamada.m at jp.panasonic.com>
Acked-by: Simon Glass <sjg at chromium.org>
(see comment below)
> ---
>
> Changes in v5: None
> Changes in v4:
> - Generate boards.cfg automatically if it is missing
>
> Changes in v3: None
> Changes in v2: None
>
> tools/buildman/board.py | 2 +-
> tools/buildman/builder.py | 6 +++---
> tools/buildman/control.py | 10 ++++++++++
> 3 files changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/tools/buildman/board.py b/tools/buildman/board.py
> index 5172a47..7bcc932 100644
> --- a/tools/buildman/board.py
> +++ b/tools/buildman/board.py
> @@ -17,7 +17,7 @@ class Board:
> soc: Name of SOC, or '' if none (e.g. mx31)
> vendor: Name of vendor (e.g. armltd)
> board_name: Name of board (e.g. integrator)
> - target: Target name (use make <target>_config to configure)
> + target: Target name (use make <target>_defconfig to configure)
> options: board-specific options (e.g. integratorcp:CM1136)
> """
> self.target = target
> diff --git a/tools/buildman/builder.py b/tools/buildman/builder.py
> index 4987fc9..502a35a 100644
> --- a/tools/buildman/builder.py
> +++ b/tools/buildman/builder.py
> @@ -198,7 +198,7 @@ class BuilderThread(threading.Thread):
> commit_upto: Commit number to build (0...n-1)
> brd: Board object to build
> work_dir: Directory to which the source will be checked out
> - do_config: True to run a make <board>_config on the source
> + do_config: True to run a make <board>_defconfig on the source
> force_build: Force a build even if one was previously done
>
> Returns:
> @@ -251,7 +251,7 @@ class BuilderThread(threading.Thread):
> args = ['O=build', '-s']
> if self.builder.num_jobs is not None:
> args.extend(['-j', str(self.builder.num_jobs)])
> - config_args = ['%s_config' % brd.target]
> + config_args = ['%s_defconfig' % brd.target]
> config_out = ''
> args.extend(self.builder.toolchains.GetMakeArguments(brd))
>
> @@ -404,7 +404,7 @@ class BuilderThread(threading.Thread):
> work_dir = self.builder.GetThreadDir(self.thread_num)
> self.toolchain = None
> if job.commits:
> - # Run 'make board_config' on the first commit
> + # Run 'make board_defconfig' on the first commit
> do_config = True
> commit_upto = 0
> force_build = False
> diff --git a/tools/buildman/control.py b/tools/buildman/control.py
> index fd6f197..d032a95 100644
> --- a/tools/buildman/control.py
> +++ b/tools/buildman/control.py
> @@ -15,6 +15,7 @@ import patchstream
> import terminal
> import toolchain
> import command
> +import subprocess
>
> def GetPlural(count):
> """Returns a plural 's' if count is not 1"""
> @@ -109,6 +110,15 @@ def DoBuildman(options, args):
> sys.exit(1)
>
> # Work out what subset of the boards we are building
> + board_file = os.path.join(options.git, 'boards.cfg')
> + if not os.path.exists(board_file):
> + print 'Could not find %s' % board_file
> + status = subprocess.call([os.path.join(options.git,
> + 'tools/genboardscfg.py')])
> + if status != 0:
> + print >> sys.stderr, "Failed to generate boards.cfg"
> + sys.exit(1)
> +
This could go in board.py but since this is temporary code anyway I
think it is OK to leave it here.
Changing he Boards class to read from various directories should not
be too hard. Will we have to run 'make xxx_defconfig' to get access to
all the values for a board? If we could avoid that then it would be
quite a bit faster.
Regards,
Simon
More information about the U-Boot
mailing list