tools/genboardscfg.py: be tolerant of insane Kconfig
The tools/genboardscfg.py expects all the Kconfig and defconfig are
written correctly. Imagine someone accidentally has broken a board.
Error-out just for one broken board is annoying for the other
developers. Let the tool skip insane boards and continue processing.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
diff --git a/tools/genboardscfg.py b/tools/genboardscfg.py
index 18720a2..1406acd 100755
--- a/tools/genboardscfg.py
+++ b/tools/genboardscfg.py
@@ -215,7 +215,10 @@
# sanity check of '.config' file
for field in self.must_fields:
if not field in fields:
- sys.exit('Error: %s is not defined in %s' % (field, defconfig))
+ print >> sys.stderr, (
+ "WARNING: '%s' is not defined in '%s'. Skip." %
+ (field, defconfig))
+ return
# fix-up for aarch64
if fields['arch'] == 'arm' and 'cpu' in fields:
@@ -307,7 +310,11 @@
return True
if self.ps.poll() == None:
return False
- self.parser.parse(self.defconfig)
+ if self.ps.poll() == 0:
+ self.parser.parse(self.defconfig)
+ else:
+ print >> sys.stderr, ("WARNING: failed to process '%s'. skip." %
+ self.defconfig)
self.occupied = False
return True