diff options
Diffstat (limited to 'bitbake/lib/bblayers/action.py')
-rw-r--r-- | bitbake/lib/bblayers/action.py | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/bitbake/lib/bblayers/action.py b/bitbake/lib/bblayers/action.py index d6459d6617..5b78195ad4 100644 --- a/bitbake/lib/bblayers/action.py +++ b/bitbake/lib/bblayers/action.py | |||
@@ -143,11 +143,12 @@ build results (as the layer priority order has effectively changed). | |||
143 | 143 | ||
144 | applied_appends = [] | 144 | applied_appends = [] |
145 | for layer in layers: | 145 | for layer in layers: |
146 | overlayed = [] | 146 | overlayed = set() |
147 | for f in self.tinfoil.cooker.collection.overlayed.keys(): | 147 | for mc in self.tinfoil.cooker.multiconfigs: |
148 | for of in self.tinfoil.cooker.collection.overlayed[f]: | 148 | for f in self.tinfoil.cooker.collections[mc].overlayed.keys(): |
149 | if of.startswith(layer): | 149 | for of in self.tinfoil.cooker.collections[mc].overlayed[f]: |
150 | overlayed.append(of) | 150 | if of.startswith(layer): |
151 | overlayed.add(of) | ||
151 | 152 | ||
152 | logger.plain('Copying files from %s...' % layer ) | 153 | logger.plain('Copying files from %s...' % layer ) |
153 | for root, dirs, files in os.walk(layer): | 154 | for root, dirs, files in os.walk(layer): |
@@ -174,14 +175,21 @@ build results (as the layer priority order has effectively changed). | |||
174 | logger.warning('Overwriting file %s', fdest) | 175 | logger.warning('Overwriting file %s', fdest) |
175 | bb.utils.copyfile(f1full, fdest) | 176 | bb.utils.copyfile(f1full, fdest) |
176 | if ext == '.bb': | 177 | if ext == '.bb': |
177 | for append in self.tinfoil.cooker.collection.get_file_appends(f1full): | 178 | appends = set() |
179 | for mc in self.tinfoil.cooker.multiconfigs: | ||
180 | appends |= set(self.tinfoil.cooker.collections[mc].get_file_appends(f1full)) | ||
181 | for append in appends: | ||
178 | if layer_path_match(append): | 182 | if layer_path_match(append): |
179 | logger.plain(' Applying append %s to %s' % (append, fdest)) | 183 | logger.plain(' Applying append %s to %s' % (append, fdest)) |
180 | self.apply_append(append, fdest) | 184 | self.apply_append(append, fdest) |
181 | applied_appends.append(append) | 185 | applied_appends.append(append) |
182 | 186 | ||
183 | # Take care of when some layers are excluded and yet we have included bbappends for those recipes | 187 | # Take care of when some layers are excluded and yet we have included bbappends for those recipes |
184 | for b in self.tinfoil.cooker.collection.bbappends: | 188 | bbappends = set() |
189 | for mc in self.tinfoil.cooker.multiconfigs: | ||
190 | bbappends |= set(self.tinfoil.cooker.collections[mc].bbappends) | ||
191 | |||
192 | for b in bbappends: | ||
185 | (recipename, appendname) = b | 193 | (recipename, appendname) = b |
186 | if appendname not in applied_appends: | 194 | if appendname not in applied_appends: |
187 | first_append = None | 195 | first_append = None |