summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cooker.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/cooker.py')
-rw-r--r--bitbake/lib/bb/cooker.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 361bc88a9d..5d01af31ac 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1205,8 +1205,9 @@ class BBCooker:
1205 1205
1206 if not self.parser.parse_next(): 1206 if not self.parser.parse_next():
1207 collectlog.debug(1, "parsing complete") 1207 collectlog.debug(1, "parsing complete")
1208 self.show_appends_with_no_recipes() 1208 if not self.parser.error:
1209 self.buildDepgraph() 1209 self.show_appends_with_no_recipes()
1210 self.buildDepgraph()
1210 self.state = state.running 1211 self.state = state.running
1211 return None 1212 return None
1212 1213
@@ -1601,6 +1602,7 @@ class CookerParser(object):
1601 self.skipped, self.masked, 1602 self.skipped, self.masked,
1602 self.virtuals, self.error, 1603 self.virtuals, self.error,
1603 self.total) 1604 self.total)
1605
1604 bb.event.fire(event, self.cfgdata) 1606 bb.event.fire(event, self.cfgdata)
1605 self.feeder_quit.put(None) 1607 self.feeder_quit.put(None)
1606 for process in self.processes: 1608 for process in self.processes:
@@ -1658,20 +1660,25 @@ class CookerParser(object):
1658 self.shutdown() 1660 self.shutdown()
1659 return False 1661 return False
1660 except ParsingFailure as exc: 1662 except ParsingFailure as exc:
1663 self.error += 1
1661 logger.error('Unable to parse %s: %s' % 1664 logger.error('Unable to parse %s: %s' %
1662 (exc.recipe, bb.exceptions.to_string(exc.realexception))) 1665 (exc.recipe, bb.exceptions.to_string(exc.realexception)))
1663 self.shutdown(clean=False) 1666 self.shutdown(clean=False)
1664 except bb.parse.ParseError as exc: 1667 except bb.parse.ParseError as exc:
1668 self.error += 1
1665 logger.error(str(exc)) 1669 logger.error(str(exc))
1666 self.shutdown(clean=False) 1670 self.shutdown(clean=False)
1667 except bb.data_smart.ExpansionError as exc: 1671 except bb.data_smart.ExpansionError as exc:
1672 self.error += 1
1668 _, value, _ = sys.exc_info() 1673 _, value, _ = sys.exc_info()
1669 logger.error('ExpansionError during parsing %s: %s', value.recipe, str(exc)) 1674 logger.error('ExpansionError during parsing %s: %s', value.recipe, str(exc))
1670 self.shutdown(clean=False) 1675 self.shutdown(clean=False)
1671 except SyntaxError as exc: 1676 except SyntaxError as exc:
1677 self.error += 1
1672 logger.error('Unable to parse %s', exc.recipe) 1678 logger.error('Unable to parse %s', exc.recipe)
1673 self.shutdown(clean=False) 1679 self.shutdown(clean=False)
1674 except Exception as exc: 1680 except Exception as exc:
1681 self.error += 1
1675 etype, value, tb = sys.exc_info() 1682 etype, value, tb = sys.exc_info()
1676 logger.error('Unable to parse %s', value.recipe, 1683 logger.error('Unable to parse %s', value.recipe,
1677 exc_info=(etype, value, exc.traceback)) 1684 exc_info=(etype, value, exc.traceback))