summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/utils.py
diff options
context:
space:
mode:
authorChristopher Larson <chris_larson@mentor.com>2016-04-30 12:40:58 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-05-06 10:20:03 +0100
commit19e6fd5b7b53f75752dc82d0df0f5e65d10954ac (patch)
treeffdf6dd0b9982f7629077db45352a24a00d45562 /bitbake/lib/bb/utils.py
parent7dc12110d400caaed8198ecdaeb86a65f2a3d984 (diff)
downloadopenembedded-core-contrib-19e6fd5b7b53f75752dc82d0df0f5e65d10954ac.tar.gz
bitbake: bb.utils: use imp.get_suffixes for load_plugins
Rather than hardcoding .py, use python's knowledge of its file extensions. (Bitbake rev: 09f838dbaefdaedc01a1f4818ed38280b38db744) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/utils.py')
-rw-r--r--bitbake/lib/bb/utils.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py
index 92f1b60206..c54ff5b92b 100644
--- a/bitbake/lib/bb/utils.py
+++ b/bitbake/lib/bb/utils.py
@@ -28,6 +28,7 @@ import bb.msg
import multiprocessing
import fcntl
import imp
+import itertools
import subprocess
import glob
import fnmatch
@@ -41,6 +42,8 @@ from ctypes import cdll
logger = logging.getLogger("BitBake.Util")
+python_extensions = [e for e, _, _ in imp.get_suffixes()]
+
def clean_context():
return {
@@ -1465,8 +1468,12 @@ def load_plugins(logger, plugins, pluginpath):
fp.close()
logger.debug('Loading plugins from %s...' % pluginpath)
- for fn in glob.glob(os.path.join(pluginpath, '*.py')):
- name = os.path.splitext(os.path.basename(fn))[0]
+
+ expanded = (glob.glob(os.path.join(pluginpath, '*' + ext))
+ for ext in python_extensions)
+ files = itertools.chain.from_iterable(expanded)
+ names = set(os.path.splitext(os.path.basename(fn))[0] for fn in files)
+ for name in names:
if name != '__init__':
plugin = load_plugin(name)
if hasattr(plugin, 'plugin_init'):