summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
authorMatthew McClintock <msm@freescale.com>2011-11-30 11:24:55 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-12-05 16:23:52 +0000
commit4d6f8d4b74e6f6ab27d80ad0ad9871789b87c525 (patch)
tree7729dcca21df3d69d26eae89d9bca14e0e620420 /bitbake/lib/bb
parentf6da26f98254046a59983adf8e831bf1eeb9169f (diff)
downloadpoky-4d6f8d4b74e6f6ab27d80ad0ad9871789b87c525.tar.gz
siggen.py: If both sigs have a variable in it's whitelist then don't say it's changed
Some BB_HASHBASE_WHITELIST variables are in the lists of variable dependencies for signatures. Ignore those differences in lists since this difference does not matter (Bitbake rev: 71b53a3f0766ca464560a1f6a449f9424fbdf7ae) Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/siggen.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py
index 8d768cea7d..22417b9cdc 100644
--- a/bitbake/lib/bb/siggen.py
+++ b/bitbake/lib/bb/siggen.py
@@ -236,13 +236,13 @@ def compare_sigfiles(a, b):
236 p2 = pickle.Unpickler(file(b, "rb")) 236 p2 = pickle.Unpickler(file(b, "rb"))
237 b_data = p2.load() 237 b_data = p2.load()
238 238
239 def dict_diff(a, b): 239 def dict_diff(a, b, whitelist=set()):
240 sa = set(a.keys()) 240 sa = set(a.keys())
241 sb = set(b.keys()) 241 sb = set(b.keys())
242 common = sa & sb 242 common = sa & sb
243 changed = set() 243 changed = set()
244 for i in common: 244 for i in common:
245 if a[i] != b[i]: 245 if a[i] != b[i] and i not in whitelist:
246 changed.add(i) 246 changed.add(i)
247 added = sa - sb 247 added = sa - sb
248 removed = sb - sa 248 removed = sb - sa
@@ -262,7 +262,7 @@ def compare_sigfiles(a, b):
262 if a_data['basehash'] != b_data['basehash']: 262 if a_data['basehash'] != b_data['basehash']:
263 print "basehash changed from %s to %s" % (a_data['basehash'], b_data['basehash']) 263 print "basehash changed from %s to %s" % (a_data['basehash'], b_data['basehash'])
264 264
265 changed, added, removed = dict_diff(a_data['gendeps'], b_data['gendeps']) 265 changed, added, removed = dict_diff(a_data['gendeps'], b_data['gendeps'], a_data['basewhitelist'] & b_data['basewhitelist'])
266 if changed: 266 if changed:
267 for dep in changed: 267 for dep in changed:
268 print "List of dependencies for variable %s changed from %s to %s" % (dep, a_data['gendeps'][dep], b_data['gendeps'][dep]) 268 print "List of dependencies for variable %s changed from %s to %s" % (dep, a_data['gendeps'][dep], b_data['gendeps'][dep])