binman: Move GetEntryModules() to control
When binman is installed its main program is in a different directory to its modules. This means that __file__ is different and we cannot use it to obtain the path to etype/ from main.py To fix this, move the function to the 'control' module, since it is installed with all the other modules, including the etype/ directory. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#
|
||||
|
||||
from collections import OrderedDict
|
||||
import glob
|
||||
import os
|
||||
import sys
|
||||
from patman import tools
|
||||
@@ -51,6 +52,18 @@ def _FindBinmanNode(dtb):
|
||||
return node
|
||||
return None
|
||||
|
||||
def GetEntryModules(include_testing=True):
|
||||
"""Get a set of entry class implementations
|
||||
|
||||
Returns:
|
||||
Set of paths to entry class filenames
|
||||
"""
|
||||
our_path = os.path.dirname(os.path.realpath(__file__))
|
||||
glob_list = glob.glob(os.path.join(our_path, 'etype/*.py'))
|
||||
return set([os.path.splitext(os.path.basename(item))[0]
|
||||
for item in glob_list
|
||||
if include_testing or '_testing' not in item])
|
||||
|
||||
def WriteEntryDocs(modules, test_missing=None):
|
||||
"""Write out documentation for all entries
|
||||
|
||||
|
||||
Reference in New Issue
Block a user