From 825e5045f40185666605392138289448e33ec72d Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Wed, 8 Dec 2010 14:30:33 -0500 Subject: cooker: merge cookerState and cookerAction (Bitbake rev: c7c8945ef7ca9465312e630b7fa5f0a87ac8b6c7) Signed-off-by: Chris Larson Signed-off-by: Richard Purdie --- bitbake/lib/bb/command.py | 7 ++++--- bitbake/lib/bb/cooker.py | 33 +++++++++++---------------------- 2 files changed, 15 insertions(+), 25 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py index 9a8d689e2..654ede0e8 100644 --- a/bitbake/lib/bb/command.py +++ b/bitbake/lib/bb/command.py @@ -81,7 +81,8 @@ class Command: (command, options) = self.currentAsyncCommand commandmethod = getattr(CommandsAsync, command) needcache = getattr( commandmethod, "needcache" ) - if needcache and self.cooker.cookerState != bb.cooker.cookerParsed: + if (needcache and self.cooker.state in + (bb.cooker.state.initial, bb.cooker.state.parsing)): self.cooker.updateCache() return True else: @@ -123,13 +124,13 @@ class CommandsSync: """ Trigger cooker 'shutdown' mode """ - command.cooker.cookerAction = bb.cooker.cookerShutdown + command.cooker.state = bb.cooker.state.shutdown def stateStop(self, command, params): """ Stop the cooker """ - command.cooker.cookerAction = bb.cooker.cookerStop + command.cooker.state = bb.cooker.state.stop def getCmdLineAction(self, command, params): """ diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index bf896e942..9f4afbb59 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -51,16 +51,8 @@ class NothingToBuild(Exception): Exception raised when there is nothing to build """ - -# Different states cooker can be in -cookerClean = 1 -cookerParsing = 2 -cookerParsed = 3 - -# Different action states the cooker can be in -cookerRun = 1 # Cooker is running normally -cookerShutdown = 2 # Active tasks should be brought to a controlled stop -cookerStop = 3 # Stop, now! +class state: + initial, parsing, running, shutdown, stop = range(5) #============================================================================# # BBCooker @@ -112,8 +104,7 @@ class BBCooker: termios.tcsetattr(fd, termios.TCSANOW, tcattr) self.command = bb.command.Command(self) - self.cookerState = cookerClean - self.cookerAction = cookerRun + self.state = state.initial def parseConfiguration(self): @@ -681,9 +672,9 @@ class BBCooker: def buildFileIdle(server, rq, abort): - if abort or self.cookerAction == cookerStop: + if abort or self.state == state.stop: rq.finish_runqueue(True) - elif self.cookerAction == cookerShutdown: + elif self.state == state.shutdown: rq.finish_runqueue(False) failures = 0 try: @@ -718,9 +709,9 @@ class BBCooker: targets = self.checkPackages(targets) def buildTargetsIdle(server, rq, abort): - if abort or self.cookerAction == cookerStop: + if abort or self.state == state.stop: rq.finish_runqueue(True) - elif self.cookerAction == cookerShutdown: + elif self.state == state.shutdown: rq.finish_runqueue(False) failures = 0 try: @@ -763,12 +754,10 @@ class BBCooker: self.server.register_idle_function(buildTargetsIdle, rq) def updateCache(self): - - if self.cookerState == cookerParsed: + if self.state == state.running: return - if self.cookerState != cookerParsing: - + if self.state != state.parsing: self.parseConfiguration () # Import Psyco if available and not disabled @@ -798,12 +787,12 @@ class BBCooker: bb.data.renameVar("__depends", "__base_depends", self.configuration.data) self.parser = CookerParser(self, filelist, masked) - self.cookerState = cookerParsing + self.state = state.parsing if not self.parser.parse_next(): collectlog.debug(1, "parsing complete") self.buildDepgraph() - self.cookerState = cookerParsed + self.state = state.running return None return True -- cgit v1.2.3