diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2018-02-26 14:49:55 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-03-01 22:13:56 +0000 |
commit | 2f40a874248facead72b06d4ffb8c1d4da2dbcd5 (patch) | |
tree | 07e201bc7ad2f5defc0d9dbada6accf62fd6b26e /scripts/lib/devtool | |
parent | 9b49883f2f6325ea8b68cf676f5e2339fa9117e1 (diff) | |
download | poky-2f40a874248facead72b06d4ffb8c1d4da2dbcd5.tar.gz |
devtool: fix poor handling of upgraded BBCLASSEXTENDed recipes
Fix two aspects of handling BBCLASSEXTENDed targets (e.g.
openssl-native) that have been run through "devtool upgrade":
* Fix recipe name not showing up in "devtool status"
* Fix "devtool reset" not deleting empty directories under the recipe
directory within the workspace, which may lead to problems if you
subsequently run "devtool upgrade" on the same target again
(From OE-Core rev: 56e04260d64de9c5b83893d97cf41b7ea9a45878)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/devtool')
-rw-r--r-- | scripts/lib/devtool/standard.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index 26187a0c41..f29d8cbb68 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py | |||
@@ -1744,6 +1744,7 @@ def status(args, config, basepath, workspace): | |||
1744 | 1744 | ||
1745 | def _reset(recipes, no_clean, config, basepath, workspace): | 1745 | def _reset(recipes, no_clean, config, basepath, workspace): |
1746 | """Reset one or more recipes""" | 1746 | """Reset one or more recipes""" |
1747 | import oe.path | ||
1747 | 1748 | ||
1748 | def clean_preferred_provider(pn, layerconf_path): | 1749 | def clean_preferred_provider(pn, layerconf_path): |
1749 | """Remove PREFERRED_PROVIDER from layer.conf'""" | 1750 | """Remove PREFERRED_PROVIDER from layer.conf'""" |
@@ -1802,7 +1803,10 @@ def _reset(recipes, no_clean, config, basepath, workspace): | |||
1802 | preservedir(os.path.join(root, dn)) | 1803 | preservedir(os.path.join(root, dn)) |
1803 | os.rmdir(origdir) | 1804 | os.rmdir(origdir) |
1804 | 1805 | ||
1805 | preservedir(os.path.join(config.workspace_path, 'recipes', pn)) | 1806 | recipefile = workspace[pn]['recipefile'] |
1807 | if recipefile and oe.path.is_path_parent(config.workspace_path, recipefile): | ||
1808 | # This should always be true if recipefile is set, but just in case | ||
1809 | preservedir(os.path.dirname(recipefile)) | ||
1806 | # We don't automatically create this dir next to appends, but the user can | 1810 | # We don't automatically create this dir next to appends, but the user can |
1807 | preservedir(os.path.join(config.workspace_path, 'appends', pn)) | 1811 | preservedir(os.path.join(config.workspace_path, 'appends', pn)) |
1808 | 1812 | ||