From 294948c732b4387375bae36350d8430c5e233590 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Wed, 26 Aug 2015 13:50:47 +0100 Subject: bitbake: lib/bb/cooker: add interrupted flag to BuildCompleted event Allow any listeners for this event (such as buildhistory.bbclass in OpenEmbedded) to find out if the build was interrupted rather than completing normally. The value will be 0 if not interrupted, 1 if interrupted waiting for remaining tasks to complete, or 2 if force interrupted (stopping any running tasks immediately). (Bitbake rev: df2b778efd2ecc48f6c5a3ed446f6459f2250035) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'bitbake/lib/bb/cooker.py') diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 6dc9f1981d..99c47859d9 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -1319,12 +1319,15 @@ class BBCooker: def buildFileIdle(server, rq, abort): msg = None + interrupted = 0 if abort or self.state == state.forceshutdown: rq.finish_runqueue(True) msg = "Forced shutdown" + interrupted = 2 elif self.state == state.shutdown: rq.finish_runqueue(False) msg = "Stopped build" + interrupted = 1 failures = 0 try: retval = rq.execute_runqueue() @@ -1336,7 +1339,7 @@ class BBCooker: return False if not retval: - bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runq_fnid), buildname, item, failures), self.expanded_data) + bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runq_fnid), buildname, item, failures, interrupted), self.expanded_data) self.command.finishAsyncCommand(msg) return False if retval is True: @@ -1352,12 +1355,15 @@ class BBCooker: def buildTargetsIdle(server, rq, abort): msg = None + interrupted = 0 if abort or self.state == state.forceshutdown: rq.finish_runqueue(True) msg = "Forced shutdown" + interrupted = 2 elif self.state == state.shutdown: rq.finish_runqueue(False) msg = "Stopped build" + interrupted = 1 failures = 0 try: retval = rq.execute_runqueue() @@ -1369,7 +1375,7 @@ class BBCooker: return False if not retval: - bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runq_fnid), buildname, targets, failures), self.data) + bb.event.fire(bb.event.BuildCompleted(len(rq.rqdata.runq_fnid), buildname, targets, failures, interrupted), self.data) self.command.finishAsyncCommand(msg) return False if retval is True: -- cgit v1.2.3-54-g00ecf