[bitbake-devel] [PATCH 3/3] cooker: only return *Found events if something was actually found
Joshua Lock
josh at linux.intel.com
Tue Jul 12 21:49:00 UTC 2011
The cooker methods which fire FooBarFound style events should only fire the
event when an item was actually found, rather than each time the method
is called.
Fixes [YOCTO #1219]
Signed-off-by: Joshua Lock <josh at linux.intel.com>
---
lib/bb/cooker.py | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 7aa600f..8b6da1d 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -546,14 +546,15 @@ class BBCooker:
def findConfigFilePath(self, configfile):
path = self._findConfigFile(configfile)
- bb.event.fire(bb.event.ConfigFilePathFound(path), self.configuration.data)
+ if path:
+ bb.event.fire(bb.event.ConfigFilePathFound(path), self.configuration.data)
def findFilesMatchingInDir(self, filepattern, directory):
"""
Searches for files matching the regex 'pattern' which are children of
'directory' in each BBPATH. i.e. to find all rootfs package classes available
to BitBake one could call findFilesMatchingInDir(self, 'rootfs_', 'classes')
- or to find all machine configuration files on could call
+ or to find all machine configuration files one could call:
findFilesMatchingInDir(self, 'conf/machines', 'conf')
"""
import re
@@ -569,7 +570,8 @@ class BBCooker:
if p.search(f):
matches.append(f)
- bb.event.fire(bb.event.FilesMatchingFound(filepattern, matches), self.configuration.data)
+ if len(matches):
+ bb.event.fire(bb.event.FilesMatchingFound(filepattern, matches), self.configuration.data)
def findConfigFiles(self, varname):
"""
@@ -592,7 +594,8 @@ class BBCooker:
if end == 'conf':
possible.append(val)
- bb.event.fire(bb.event.ConfigFilesFound(var, possible), self.configuration.data)
+ if len(possible):
+ bb.event.fire(bb.event.ConfigFilesFound(var, possible), self.configuration.data)
def findInheritsClass(self, klass):
"""
@@ -667,6 +670,7 @@ class BBCooker:
return confpath
path, _ = os.path.split(path)
+ return None
def _findLayerConf(self):
return self._findConfigFile("bblayers.conf")
--
1.7.6
More information about the bitbake-devel
mailing list