summaryrefslogtreecommitdiffstats
path: root/bitbake/bin
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2017-04-07 09:52:05 +1200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-04-10 23:00:32 +0100
commit445e622b237edebbcfd02044b2b25a311a91af8f (patch)
tree0b68678a2601000fdb1f721c82a4977ee327effe /bitbake/bin
parentd88a4ade7e755cf9dd4ab2baed70cddcf4314330 (diff)
downloadpoky-445e622b237edebbcfd02044b2b25a311a91af8f.tar.gz
bitbake: lib/bb/siggen: show a diff when dumping changes to multi-line values
When dumping changes to signatures e.g. output of bitbake -s printdiff, if for example a function has changed, it's much more readable to see a unified diff of the changes rather than just printing the old function followed by the new function, so use difflib to do that. Note: I elected to keep to one item in the returned list per change, rather than one line per line of output, so that the caller can still look at changes individually if needed. Thus I've added some handling to bitbake-diffsigs to split the change into lines so that each line is displayed indented. (Bitbake rev: 4d254ae63a35231c98e3f73f669b040ed1144042) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/bin')
-rwxr-xr-xbitbake/bin/bitbake-diffsigs4
1 files changed, 3 insertions, 1 deletions
diff --git a/bitbake/bin/bitbake-diffsigs b/bitbake/bin/bitbake-diffsigs
index 5400e5b92b..4ca085f073 100755
--- a/bitbake/bin/bitbake-diffsigs
+++ b/bitbake/bin/bitbake-diffsigs
@@ -67,7 +67,9 @@ def find_compare_task(bbhandler, pn, taskname):
67 recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash2)) 67 recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash2))
68 else: 68 else:
69 out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb) 69 out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb)
70 recout.extend(list(' ' + l for l in out2)) 70 for change in out2:
71 for line in change.splitlines():
72 recout.append(' ' + line)
71 73
72 return recout 74 return recout
73 75