buildman: Allow ignoring warnings in the return code
Sometimes we don't want buildman to return failure if it seems warnings. Add a -W option to support this. If buildman detects warnings (and no errors) it will return an exit code of 0 (success). Note that the definition of 'warnings' includes the migration warnings produced by U-Boot, such as: ===================== WARNING ====================== This board does not use CONFIG_DM_MMC. Please update ... ==================================================== Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
parent
f9c094bbce
commit
7beb43c980
@ -1070,16 +1070,32 @@ This will write the full build into /tmp/build including object files.
|
||||
Other options
|
||||
=============
|
||||
|
||||
Buildman has various other command line options. Try --help to see them.
|
||||
Buildman has various other command-line options. Try --help to see them.
|
||||
|
||||
To find out what architecture or toolchain prefix buildman will use for a build,
|
||||
see the -a and -A options.
|
||||
|
||||
To request that compiler warnings be promoted to errors, use -E. This passes the
|
||||
-Werror flag to the compiler. Note that the build can still produce warnings
|
||||
with -E, e.g. the migration warnings:
|
||||
|
||||
===================== WARNING ======================
|
||||
This board does not use CONFIG_DM_MMC. Please update
|
||||
...
|
||||
====================================================
|
||||
|
||||
When doing builds, Buildman's return code will reflect the overall result:
|
||||
|
||||
0 (success) No errors or warnings found
|
||||
128 Errors found
|
||||
129 Warnings found
|
||||
129 Warnings found (only if no -W)
|
||||
|
||||
You can use -W to tell Buildman to return 0 (success) instead of 129 when
|
||||
warnings are found. Note that it can be useful to combine -E and -W. This means
|
||||
that all compiler warnings will produce failures (code 128) and all other
|
||||
warnings will produce success (since 129 is changed to 0).
|
||||
|
||||
If there are both warnings and errors, errors win, so buildman returns 128.
|
||||
|
||||
|
||||
How to change from MAKEALL
|
||||
|
@ -108,6 +108,8 @@ def ParseArgs():
|
||||
default=False, help='Run make with V=1, logging all output')
|
||||
parser.add_option('-w', '--work-in-output', action='store_true',
|
||||
default=False, help='Use the output directory as the work directory')
|
||||
parser.add_option('-W', '--ignore-warnings', action='store_true',
|
||||
default=False, help='Return success even if there are warnings')
|
||||
parser.add_option('-x', '--exclude', dest='exclude',
|
||||
type='string', action='append',
|
||||
help='Specify a list of boards to exclude, separated by comma')
|
||||
|
@ -386,6 +386,6 @@ def DoBuildman(options, args, toolchains=None, make_func=None, boards=None,
|
||||
options.keep_outputs, options.verbose)
|
||||
if fail:
|
||||
return 128
|
||||
elif warned:
|
||||
elif warned and not options.ignore_warnings:
|
||||
return 129
|
||||
return 0
|
||||
|
Loading…
Reference in New Issue
Block a user