diff options
author | Patrick Ohly <patrick.ohly@intel.com> | 2017-06-27 17:33:39 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-07-06 14:38:06 +0100 |
commit | e8416554dfc9d4196543279a4845f6c0671f3e5c (patch) | |
tree | 8a2a1a552970476e1a4ad7e2be80eae2ff7d4e5b /scripts/lib | |
parent | 4afb7c3c505a4d21906f07f88c966b794a968cbc (diff) | |
download | openembedded-core-e8416554dfc9d4196543279a4845f6c0671f3e5c.tar.gz openembedded-core-e8416554dfc9d4196543279a4845f6c0671f3e5c.tar.bz2 openembedded-core-e8416554dfc9d4196543279a4845f6c0671f3e5c.zip |
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 <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'scripts/lib')
-rw-r--r-- | scripts/lib/compatlayer/__init__.py | 7 | ||||
-rw-r--r-- | scripts/lib/compatlayer/cases/common.py | 2 |
2 files changed, 7 insertions, 2 deletions
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: diff --git a/scripts/lib/compatlayer/cases/common.py b/scripts/lib/compatlayer/cases/common.py index 8eeada9b1e..2dfcbb1c32 100644 --- a/scripts/lib/compatlayer/cases/common.py +++ b/scripts/lib/compatlayer/cases/common.py @@ -50,7 +50,7 @@ class CommonCompatLayer(OECompatLayerTestCase): def graph2sig(task): pn, taskname = task.rsplit('.', 1) return pn + ':' + taskname - depgraph = get_depgraph() + depgraph = get_depgraph(failsafe=True) depends = depgraph['tdepends'] # If a task A has a changed signature, but none of its |