diff options
Diffstat (limited to 'bitbake/lib/bb/command.py')
| -rw-r--r-- | bitbake/lib/bb/command.py | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py index 6abf38668b..d11907e3ba 100644 --- a/bitbake/lib/bb/command.py +++ b/bitbake/lib/bb/command.py | |||
| @@ -232,7 +232,11 @@ class CommandsSync: | |||
| 232 | 232 | ||
| 233 | def matchFile(self, command, params): | 233 | def matchFile(self, command, params): |
| 234 | fMatch = params[0] | 234 | fMatch = params[0] |
| 235 | return command.cooker.matchFile(fMatch) | 235 | try: |
| 236 | mc = params[0] | ||
| 237 | except IndexError: | ||
| 238 | mc = '' | ||
| 239 | return command.cooker.matchFile(fMatch, mc) | ||
| 236 | matchFile.needconfig = False | 240 | matchFile.needconfig = False |
| 237 | 241 | ||
| 238 | def getUIHandlerNum(self, command, params): | 242 | def getUIHandlerNum(self, command, params): |
| @@ -395,22 +399,38 @@ class CommandsSync: | |||
| 395 | def getSkippedRecipes(self, command, params): | 399 | def getSkippedRecipes(self, command, params): |
| 396 | # Return list sorted by reverse priority order | 400 | # Return list sorted by reverse priority order |
| 397 | import bb.cache | 401 | import bb.cache |
| 398 | skipdict = OrderedDict(sorted(command.cooker.skiplist.items(), | 402 | def sortkey(x): |
| 399 | key=lambda x: (-command.cooker.collection.calc_bbfile_priority(bb.cache.virtualfn2realfn(x[0])[0]), x[0]))) | 403 | vfn, _ = x |
| 404 | realfn, _, mc = bb.cache.virtualfn2realfn(vfn) | ||
| 405 | return (-command.cooker.collections[mc].calc_bbfile_priority(realfn), vfn) | ||
| 406 | |||
| 407 | skipdict = OrderedDict(sorted(command.cooker.skiplist.items(), key=sortkey)) | ||
| 400 | return list(skipdict.items()) | 408 | return list(skipdict.items()) |
| 401 | getSkippedRecipes.readonly = True | 409 | getSkippedRecipes.readonly = True |
| 402 | 410 | ||
| 403 | def getOverlayedRecipes(self, command, params): | 411 | def getOverlayedRecipes(self, command, params): |
| 404 | return list(command.cooker.collection.overlayed.items()) | 412 | try: |
| 413 | mc = params[0] | ||
| 414 | except IndexError: | ||
| 415 | mc = '' | ||
| 416 | return list(command.cooker.collections[mc].overlayed.items()) | ||
| 405 | getOverlayedRecipes.readonly = True | 417 | getOverlayedRecipes.readonly = True |
| 406 | 418 | ||
| 407 | def getFileAppends(self, command, params): | 419 | def getFileAppends(self, command, params): |
| 408 | fn = params[0] | 420 | fn = params[0] |
| 409 | return command.cooker.collection.get_file_appends(fn) | 421 | try: |
| 422 | mc = params[1] | ||
| 423 | except IndexError: | ||
| 424 | mc = '' | ||
| 425 | return command.cooker.collections[mc].get_file_appends(fn) | ||
| 410 | getFileAppends.readonly = True | 426 | getFileAppends.readonly = True |
| 411 | 427 | ||
| 412 | def getAllAppends(self, command, params): | 428 | def getAllAppends(self, command, params): |
| 413 | return command.cooker.collection.bbappends | 429 | try: |
| 430 | mc = params[0] | ||
| 431 | except IndexError: | ||
| 432 | mc = '' | ||
| 433 | return command.cooker.collections[mc].bbappends | ||
| 414 | getAllAppends.readonly = True | 434 | getAllAppends.readonly = True |
| 415 | 435 | ||
| 416 | def findProviders(self, command, params): | 436 | def findProviders(self, command, params): |
| @@ -496,6 +516,7 @@ class CommandsSync: | |||
| 496 | for the recipe. | 516 | for the recipe. |
| 497 | """ | 517 | """ |
| 498 | fn = params[0] | 518 | fn = params[0] |
| 519 | mc = bb.runqueue.mc_from_tid(fn) | ||
| 499 | appends = params[1] | 520 | appends = params[1] |
| 500 | appendlist = params[2] | 521 | appendlist = params[2] |
| 501 | if len(params) > 3: | 522 | if len(params) > 3: |
| @@ -507,7 +528,7 @@ class CommandsSync: | |||
| 507 | if appendlist is not None: | 528 | if appendlist is not None: |
| 508 | appendfiles = appendlist | 529 | appendfiles = appendlist |
| 509 | else: | 530 | else: |
| 510 | appendfiles = command.cooker.collection.get_file_appends(fn) | 531 | appendfiles = command.cooker.collections[mc].get_file_appends(fn) |
| 511 | else: | 532 | else: |
| 512 | appendfiles = [] | 533 | appendfiles = [] |
| 513 | # We are calling bb.cache locally here rather than on the server, | 534 | # We are calling bb.cache locally here rather than on the server, |
| @@ -517,7 +538,7 @@ class CommandsSync: | |||
| 517 | if config_data: | 538 | if config_data: |
| 518 | # We have to use a different function here if we're passing in a datastore | 539 | # We have to use a different function here if we're passing in a datastore |
| 519 | # NOTE: we took a copy above, so we don't do it here again | 540 | # NOTE: we took a copy above, so we don't do it here again |
| 520 | envdata = bb.cache.parse_recipe(config_data, fn, appendfiles)[''] | 541 | envdata = bb.cache.parse_recipe(config_data, fn, appendfiles, mc)[''] |
| 521 | else: | 542 | else: |
| 522 | # Use the standard path | 543 | # Use the standard path |
| 523 | parser = bb.cache.NoCache(command.cooker.databuilder) | 544 | parser = bb.cache.NoCache(command.cooker.databuilder) |
