diff options
| author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-10-14 19:19:23 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-10-21 22:56:03 +0100 |
| commit | db55d31dc2cc5336c09d379e5da5d2d67cc2619a (patch) | |
| tree | 6367222d6efa600a7b7f417987bffe0d878b7e60 /meta/lib/oe | |
| parent | 8578bc17b54da97d42b257b3c8f398ac52b91a9f (diff) | |
| download | poky-db55d31dc2cc5336c09d379e5da5d2d67cc2619a.tar.gz | |
devtool: handle virtual providers
For modify / extract / upgrade, if the specified "recipe" is not
actually a recipe but a virtual target such as virtual/kernel, map it
correctly to the actual recipe and make sure we use that name within the
workspace. Thanks to Chris Larson for reminding me this was still broken
and for a hint on how to fix it.
(From OE-Core rev: 1f7752282ffb47d2621030ddb2fa42a5e491d6d2)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe')
| -rw-r--r-- | meta/lib/oe/recipeutils.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py index 207c300667..119a68821b 100644 --- a/meta/lib/oe/recipeutils.py +++ b/meta/lib/oe/recipeutils.py | |||
| @@ -31,9 +31,13 @@ def pn_to_recipe(cooker, pn): | |||
| 31 | import bb.providers | 31 | import bb.providers |
| 32 | 32 | ||
| 33 | if pn in cooker.recipecache.pkg_pn: | 33 | if pn in cooker.recipecache.pkg_pn: |
| 34 | filenames = cooker.recipecache.pkg_pn[pn] | ||
| 35 | best = bb.providers.findBestProvider(pn, cooker.data, cooker.recipecache, cooker.recipecache.pkg_pn) | 34 | best = bb.providers.findBestProvider(pn, cooker.data, cooker.recipecache, cooker.recipecache.pkg_pn) |
| 36 | return best[3] | 35 | return best[3] |
| 36 | elif pn in cooker.recipecache.providers: | ||
| 37 | filenames = cooker.recipecache.providers[pn] | ||
| 38 | eligible, foundUnique = bb.providers.filterProviders(filenames, pn, cooker.expanded_data, cooker.recipecache) | ||
| 39 | filename = eligible[0] | ||
| 40 | return filename | ||
| 37 | else: | 41 | else: |
| 38 | return None | 42 | return None |
| 39 | 43 | ||
