summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/bb/cooker.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index f44a08889..a2c9b1023 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -1408,6 +1408,7 @@ class CookerExit(bb.event.Event):
class CookerCollectFiles(object):
def __init__(self, priorities):
self.appendlist = {}
+ self.bbappends = []
self.appliedappendlist = []
self.bbfile_config_priorities = priorities
@@ -1502,6 +1503,7 @@ class CookerCollectFiles(object):
# Build a list of .bbappend files for each .bb file
for f in bbappend:
base = os.path.basename(f).replace('.bbappend', '.bb')
+ self.bbappends.append((base, f))
if not base in self.appendlist:
self.appendlist[base] = []
if f not in self.appendlist[base]:
@@ -1527,11 +1529,11 @@ class CookerCollectFiles(object):
"""
filelist = []
f = os.path.basename(fn)
- for bbappend in self.appendlist:
+ for b in self.bbappends:
+ (bbappend, filename) = b
if (bbappend == f) or ('%' in bbappend and bbappend.startswith(f[:bbappend.index('%')])):
self.appliedappendlist.append(bbappend)
- for filename in self.appendlist[bbappend]:
- filelist.append(filename)
+ filelist.append(filename)
return filelist
def collection_priorities(self, pkgfns):
@@ -1551,10 +1553,10 @@ class CookerCollectFiles(object):
unmatched.add(regex)
def findmatch(regex):
- for bbfile in self.appendlist:
- for append in self.appendlist[bbfile]:
- if regex.match(append):
- return True
+ for b in self.bbappends:
+ (bbfile, append) = b
+ if regex.match(append):
+ return True
return False
for unmatch in unmatched.copy():