[U-Boot] [PATCH v4 03/10] moveconfig: Add a parameter to accept a list to build
Masahiro Yamada
yamada.masahiro at socionext.com
Tue May 19 06:33:46 CEST 2015
2015-05-16 6:40 GMT+09:00 Joe Hershberger <joe.hershberger at ni.com>:
> This is helpful to re-attempt to move failed boards from a previous run
> without starting over.
>
> Signed-off-by: Joe Hershberger <joe.hershberger at ni.com>
>
> ---
>
> Changes in v4: None
> Changes in v3:
> -Fixed command line options order (alphabetize)
>
> Changes in v2:
> -New for version 2
>
> tools/moveconfig.py | 26 ++++++++++++++++++++------
> 1 file changed, 20 insertions(+), 6 deletions(-)
>
> diff --git a/tools/moveconfig.py b/tools/moveconfig.py
> index d3009de..3f31e81 100755
> --- a/tools/moveconfig.py
> +++ b/tools/moveconfig.py
> @@ -135,6 +135,9 @@ Available options
> Surround each portion of the log with escape sequences to display it
> in color on the terminal.
>
> + -d, --defconfigs
> + Specify a file containing a list of defconfigs to move
> +
> -n, --dry-run
> Peform a trial run that does not make any changes. It is useful to
> see what is going to happen before one actually runs it.
> @@ -734,12 +737,21 @@ def move_config(config_attrs, options):
> config_attr['type'],
> config_attr['default'])
>
> - # All the defconfig files to be processed
> - defconfigs = []
> - for (dirpath, dirnames, filenames) in os.walk('configs'):
> - dirpath = dirpath[len('configs') + 1:]
> - for filename in fnmatch.filter(filenames, '*_defconfig'):
> - defconfigs.append(os.path.join(dirpath, filename))
> + if options.defconfigs:
> + defconfigs = [line.strip() for line in open(options.defconfigs, 'r')]
> + for i, defconfig in enumerate(defconfigs):
> + if not defconfig.endswith('_defconfig'):
> + defconfigs[i] = defconfig + '_defconfig'
> + if not os.path.exists(os.path.join('configs', defconfigs[i])):
> + sys.exit('%s - defconfig does not exist. Stopping.' %
> + defconfigs[i])
'r' is redundant for open() because read-mode is default.
moveconfig.failed always prefixes _defconfig,
so we need not to do so again, I think. (or will we make this file by hand?)
Then, we can drop enumarate and write the error message within 80 columns.
if options.defconfigs:
defconfigs = [line.strip() for line in open(options.defconfigs)]
for defconfig in defconfigs:
if not os.path.exists(os.path.join('configs', defconfig)):
sys.exit('%s: defconfig does not exist. Stopping.' % defconfig)
> slots = Slots(config_attrs, options)
>
> @@ -840,6 +852,8 @@ def main():
> # Add options here
> parser.add_option('-c', '--color', action='store_true', default=False,
> help='display the log in color')
> + parser.add_option('-d', '--defconfigs', type='string',
> + help='a file containing a list of defconfigs to move')
> parser.add_option('-n', '--dry-run', action='store_true', default=False,
> help='perform a trial run (show log with no changes)')
> parser.add_option('-e', '--exit-on-error', action='store_true',
--
Best Regards
Masahiro Yamada
More information about the U-Boot
mailing list