From 1d52fa5269da078a0be23fcbee42e76c5328b919 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 30 Sep 2010 09:35:23 +0100 Subject: [PATCH] bitbake/bitbake-sigdiff: Extend to handle dumping single state siginfo files Signed-off-by: Richard Purdie --- bitbake/bin/bitbake-diffsigs | 5 ++++- bitbake/lib/bb/siggen.py | 24 ++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/bitbake/bin/bitbake-diffsigs b/bitbake/bin/bitbake-diffsigs index e5595cdf58..5eb77ce59d 100755 --- a/bitbake/bin/bitbake-diffsigs +++ b/bitbake/bin/bitbake-diffsigs @@ -6,4 +6,7 @@ sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), ' import bb.siggen -bb.siggen.compare_sigfiles(sys.argv[1], sys.argv[2]) +if len(sys.argv) > 2: + bb.siggen.compare_sigfiles(sys.argv[1], sys.argv[2]) +else: + bb.siggen.dump_sigfile(sys.argv[1]) diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index 0db28afc8d..066710c3bb 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py @@ -229,6 +229,30 @@ def compare_sigfiles(a, b): if a_data['runtaskhashes'][dep] != b_data['runtaskhashes'][dep]: print "Hash for dependent task %s changed from %s to %s" % (dep, a_data['runtaskhashes'][dep], b_data['runtaskhashes'][dep]) +def dump_sigfile(a): + p1 = pickle.Unpickler(file(a, "rb")) + a_data = p1.load() + + print "basewhitelist: %s" % (a_data['basewhitelist']) + + print "taskwhitelist: %s" % (a_data['taskwhitelist']) + + print "Task dependencies: %s" % (sorted(a_data['taskdeps'])) + + print "basehash: %s" % (a_data['basehash']) + + for dep in a_data['gendeps']: + print "List of dependencies for variable %s is %s" % (dep, a_data['gendeps'][dep]) + + for dep in a_data['varvals']: + print "Variable %s value is %s" % (dep, a_data['varvals'][dep]) + + if 'runtaskdeps' in a_data: + print "Tasks this task depends on: %s" % (a_data['runtaskdeps']) + + if 'runtaskhashes' in a_data: + for dep in a_data['runtaskhashes']: + print "Hash for dependent task %s is %s" % (dep, a_data['runtaskhashes'][dep])