aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2023-09-23 13:44:11 -0600
committerSimon Glass <sjg@chromium.org>2023-10-04 09:25:21 -0600
commitdc1d2e6c7f932386a3ef2d40de65c6659d928bb2 (patch)
tree17a33a54b4a8041abef7c2fa2ff550f5aa093d46 /tools
parent6b25d21c8657c4c72dacbec547f560eb8579199e (diff)
downloadu-boot-dc1d2e6c7f932386a3ef2d40de65c6659d928bb2.zip
u-boot-dc1d2e6c7f932386a3ef2d40de65c6659d928bb2.tar.gz
u-boot-dc1d2e6c7f932386a3ef2d40de65c6659d928bb2.tar.bz2
moveconfig: Show a summary at the end
Rather than printing all the failed boards, which are now easily visible on the terminal, just show a summary. Sort it by defconfig and drop the '_defconfig' suffix. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools')
-rwxr-xr-xtools/moveconfig.py28
1 files changed, 15 insertions, 13 deletions
diff --git a/tools/moveconfig.py b/tools/moveconfig.py
index 2a4badf..c6d7c53 100755
--- a/tools/moveconfig.py
+++ b/tools/moveconfig.py
@@ -571,8 +571,8 @@ class Slot:
successfully, or False when it fails.
"""
# output at least 30 characters to hide the "* defconfigs out of *".
+ name = self.defconfig[:-len('_defconfig')]
if self.log:
- name = self.defconfig[:-len('_defconfig')]
# Put the first log line on the first line
log = name.ljust(20) + ' ' + self.log[0]
@@ -588,7 +588,7 @@ class Slot:
sys.exit('Exit on error.')
# If --exit-on-error flag is not set, skip this board and continue.
# Record the failed board.
- self.failed_boards.add(self.defconfig)
+ self.failed_boards.add(name)
self.progress.inc(success)
self.progress.show()
@@ -618,6 +618,7 @@ class Slots:
"""
self.args = args
self.slots = []
+ self.progress = progress
self.col = col
devnull = subprocess.DEVNULL
make_cmd = get_make_cmd()
@@ -662,8 +663,8 @@ class Slots:
ret = False
return ret
- def show_failed_boards(self):
- """Display all of the failed boards (defconfigs)."""
+ def show_result(self):
+ """Show the results of processing"""
boards = set()
output_file = 'moveconfig.failed'
@@ -671,14 +672,16 @@ class Slots:
boards |= slot.get_failed_boards()
if boards:
- boards = '\n'.join(boards) + '\n'
- msg = 'The following boards were not processed due to error:\n'
- msg += boards
- msg += f'(the list has been saved in {output_file})\n'
- print(self.col.build(self.col.RED, msg, bright=True),
- file=sys.stderr)
-
+ print(self.col.build(
+ self.col.RED,
+ f'{len(boards)} failed (see {output_file})', True))
+ boards = '\n'.join(sorted(boards)) + '\n'
write_file(output_file, boards)
+ else:
+ # Add enough spaces to overwrite the progress indicator
+ print(self.col.build(
+ self.col.GREEN,
+ f'{self.progress.total} processed ', bright=True))
class ReferenceSource:
@@ -757,8 +760,7 @@ def move_config(toolchains, args, db_queue, col):
while not slots.empty():
time.sleep(SLEEP_TIME)
- print('')
- slots.show_failed_boards()
+ slots.show_result()
def find_kconfig_rules(kconf, config, imply_config):
"""Check whether a config has a 'select' or 'imply' keyword