diff options
author | Simon Glass <sjg@chromium.org> | 2021-04-20 17:51:48 +0000 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-05-07 19:20:14 +0000 |
commit | de4cd0ce0cd056e3efd55376594bb16f5760daef (patch) | |
tree | 9dc81d2c902fc2e87efa6959523e10ed380d0a15 /zephyr/zmake/zmake/zmake.py | |
parent | e981b032ff108202832fd60ee09e29d5b97c4375 (diff) | |
download | chrome-ec-de4cd0ce0cd056e3efd55376594bb16f5760daef.tar.gz |
Reland "zephyr: zmake: Ensure all output is produced"
This partially reverts commit 5bc4134337bdabd601159bce047306c73f13e8f8.
Reason for revert: Seeing if this can be landed now
I removed test_filter_debug() from this CL, since it has already been
submitted with a full check of the output.
Original change's description:
> Revert "zephyr: zmake: Ensure all output is produced"
>
> This reverts commit ee4257735632f5453b9377f9f60f5c68f6917537.
>
> Reason for revert: depends on CL:2807486, which is responsible for CQ
> failures (crbug.com/1198472).
>
> BUG=chromium:1198472
> BRANCH=none
> TEST=pytest zephyr/zmake/test
>
> Signed-off-by: Jack Rosenthal <jrosenth@chromium.org>
> Change-Id: I5face75f3e59858b68a0b6e77d5c5b1a9881008a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2823547
> Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
BUG=b:184298184, chromium:1198472
BRANCH=none
TEST=(cd zephyr/zmake/; python3 -m pytest tests/*.py -v -k test_filter)
Change-Id: I0a02d32234d871ba45833eaaab0e979b28257ca8
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2841023
Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
Diffstat (limited to 'zephyr/zmake/zmake/zmake.py')
-rw-r--r-- | zephyr/zmake/zmake/zmake.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/zephyr/zmake/zmake/zmake.py b/zephyr/zmake/zmake/zmake.py index a5141da99d..c65c5df90b 100644 --- a/zephyr/zmake/zmake/zmake.py +++ b/zephyr/zmake/zmake/zmake.py @@ -299,9 +299,18 @@ class Zmake: True if all if OK False if an error was found (so that zmake should exit) """ + # Let all output be produced before exiting + bad = None for proc in procs: - if proc.wait(): - raise OSError(get_process_failure_msg(proc)) + if proc.wait() and not bad: + bad = proc + if bad: + # Just show the first bad process for now. Both builds likely + # produce the same error anyway. If they don't, the user can + # still take action on the errors/warnings provided. Showing + # multiple 'Execution failed' messages is not very friendly + # since it exposes the fragmented nature of the build. + raise OSError(get_process_failure_msg(bad)) if (fail_on_warnings and any(w.has_written(logging.WARNING) or |