diff options
Diffstat (limited to 'lib/bb/ui')
-rw-r--r-- | lib/bb/ui/crumbs/hobeventhandler.py | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/lib/bb/ui/crumbs/hobeventhandler.py b/lib/bb/ui/crumbs/hobeventhandler.py index 4ed65900c..8bf599ff6 100644 --- a/lib/bb/ui/crumbs/hobeventhandler.py +++ b/lib/bb/ui/crumbs/hobeventhandler.py @@ -77,6 +77,8 @@ class HobHandler(gobject.GObject): self.generating = False self.build_queue = [] self.current_phase = None + self.bbpath_ok = False + self.bbfiles_ok = False self.image_dir = os.path.join(tempfile.gettempdir(), 'hob-images') self.model = taskmodel @@ -247,6 +249,8 @@ class HobHandler(gobject.GObject): def build_image(self, image, configurator): targets = [] + nbbp = None + nbbf = None targets.append(image) if self.build_toolchain and self.build_toolchain_headers: targets.append("meta-toolchain-sdk") @@ -254,31 +258,28 @@ class HobHandler(gobject.GObject): targets.append("meta-toolchain") self.build_queue = targets - bbpath_ok = False - bbpath = self.server.runCommand(["getVariable", "BBPATH"]) - if self.image_dir in bbpath.split(":"): - bbpath_ok = True + if not self.bbpath_ok: + bbpath = self.server.runCommand(["getVariable", "BBPATH"]) + if self.image_dir in bbpath.split(":"): + self.bbpath_ok = True + else: + nbbp = self.image_dir - bbfiles_ok = False - bbfiles = self.server.runCommand(["getVariable", "BBFILES"]).split(" ") - for files in bbfiles: + if not self.bbfiles_ok: import re pattern = "%s/\*.bb" % self.image_dir - if re.match(pattern, files): - bbfiles_ok = True - - if not bbpath_ok: - nbbp = self.image_dir - else: - nbbp = None + bbfiles = self.server.runCommand(["getVariable", "BBFILES"]).split(" ") + for files in bbfiles: + if re.match(pattern, files): + self.bbfiles_ok = True - if not bbfiles_ok: - nbbf = "%s/*.bb" % self.image_dir - else: - nbbf = None + if not self.bbfiles_ok: + nbbf = "%s/*.bb" % self.image_dir - if not bbfiles_ok or not bbpath_ok: + if nbbp or nbbf: configurator.insertTempBBPath(nbbp, nbbf) + self.bbpath_ok = True + self.bbfiles_ok = True self.current_command = self.REPARSE_FILES self.run_next_command() |