summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Larson <chris_larson@mentor.com>2016-04-30 12:40:59 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-05-06 10:19:59 +0100
commit71bfd5beb0d0ed88c7c14bbfd5ca1a1b56122bc1 (patch)
tree6e9294fd8b65fe631e22f5b21f8b5047517d0601
parent09f838dbaefdaedc01a1f4818ed38280b38db744 (diff)
downloadopenembedded-core-contrib-71bfd5beb0d0ed88c7c14bbfd5ca1a1b56122bc1.tar.gz
bb.utils: let loaded plugins provide a plugin object
This lets us avoid treating the module like an object, so no globals are needed, if one chooses to do so. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/utils.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/bb/utils.py b/lib/bb/utils.py
index c54ff5b92b..5e735d3fa7 100644
--- a/lib/bb/utils.py
+++ b/lib/bb/utils.py
@@ -1477,5 +1477,7 @@ def load_plugins(logger, plugins, pluginpath):
if name != '__init__':
plugin = load_plugin(name)
if hasattr(plugin, 'plugin_init'):
- plugin.plugin_init(plugins)
- plugins.append(plugin)
+ obj = plugin.plugin_init(plugins)
+ plugins.append(obj or plugin)
+ else:
+ plugins.append(plugin)