From e8416554dfc9d4196543279a4845f6c0671f3e5c Mon Sep 17 00:00:00 2001 From: Patrick Ohly Date: Tue, 27 Jun 2017 17:33:39 +0200 Subject: yocto-compat-layer.py: tolerate broken world builds during signature diff The "test_signatures" test ignored a broken world build when getting signatures, but the code which then tried to analyze a difference found by the test didn't, which prevented printing the difference. Signed-off-by: Patrick Ohly Signed-off-by: Ross Burton --- scripts/lib/compatlayer/__init__.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'scripts/lib/compatlayer/__init__.py') diff --git a/scripts/lib/compatlayer/__init__.py b/scripts/lib/compatlayer/__init__.py index eaae4e534f..451e1de950 100644 --- a/scripts/lib/compatlayer/__init__.py +++ b/scripts/lib/compatlayer/__init__.py @@ -290,7 +290,7 @@ def get_signatures(builddir, failsafe=False, machine=None): return (sigs, tune2tasks) -def get_depgraph(targets=['world']): +def get_depgraph(targets=['world'], failsafe=False): ''' Returns the dependency graph for the given target(s). The dependency graph is taken directly from DepTreeEvent. @@ -309,6 +309,11 @@ def get_depgraph(targets=['world']): elif isinstance(event, bb.command.CommandCompleted): break elif isinstance(event, bb.event.NoProvider): + if failsafe: + # The event is informational, we will get information about the + # remaining dependencies eventually and thus can ignore this + # here like we do in get_signatures(), if desired. + continue if event._reasons: raise RuntimeError('Nothing provides %s: %s' % (event._item, event._reasons)) else: -- cgit 1.2.3-korg