|
@@ -19,8 +19,6 @@ import logging
|
|
|
# This can be removed once our minimum is Python 3.9: https://docs.python.org/3/whatsnew/3.9.html#type-hinting-generics-in-standard-collections
|
|
|
from typing import List
|
|
|
|
|
|
-config = None
|
|
|
-
|
|
|
|
|
|
scripts_path = os.path.dirname(os.path.realpath(__file__))
|
|
|
lib_path = scripts_path + '/lib'
|
|
@@ -93,19 +91,19 @@ class Context:
|
|
|
|
|
|
def read_workspace(basepath, context):
|
|
|
workspace = {}
|
|
|
- if not os.path.exists(os.path.join(config.workspace_path, 'conf', 'layer.conf')):
|
|
|
+ if not os.path.exists(os.path.join(context.config.workspace_path, 'conf', 'layer.conf')):
|
|
|
if context.fixed_setup:
|
|
|
logger.error("workspace layer not set up")
|
|
|
sys.exit(1)
|
|
|
else:
|
|
|
- logger.info('Creating workspace layer in %s' % config.workspace_path)
|
|
|
- _create_workspace(config.workspace_path, config, basepath)
|
|
|
+ logger.info('Creating workspace layer in %s' % context.config.workspace_path)
|
|
|
+ _create_workspace(context.config.workspace_path, context.config, basepath)
|
|
|
if not context.fixed_setup:
|
|
|
- _enable_workspace_layer(config.workspace_path, config, basepath)
|
|
|
+ _enable_workspace_layer(context.config.workspace_path, context.config, basepath)
|
|
|
|
|
|
- logger.debug('Reading workspace in %s' % config.workspace_path)
|
|
|
+ logger.debug('Reading workspace in %s' % context.config.workspace_path)
|
|
|
externalsrc_re = re.compile(r'^EXTERNALSRC(:pn-([^ =]+))? *= *"([^"]*)"$')
|
|
|
- for fn in glob.glob(os.path.join(config.workspace_path, 'appends', '*.bbappend')):
|
|
|
+ for fn in glob.glob(os.path.join(context.config.workspace_path, 'appends', '*.bbappend')):
|
|
|
with open(fn, 'r') as f:
|
|
|
pnvalues = {}
|
|
|
pn = None
|
|
@@ -116,7 +114,7 @@ def read_workspace(basepath, context):
|
|
|
pn = res.group(2) or recipepn
|
|
|
# Find the recipe file within the workspace, if any
|
|
|
bbfile = os.path.basename(fn).replace('.bbappend', '.bb').replace('%', '*')
|
|
|
- recipefile = glob.glob(os.path.join(config.workspace_path,
|
|
|
+ recipefile = glob.glob(os.path.join(context.config.workspace_path,
|
|
|
'recipes',
|
|
|
recipepn,
|
|
|
bbfile))
|
|
@@ -130,7 +128,7 @@ def read_workspace(basepath, context):
|
|
|
if pnvalues:
|
|
|
if not pn:
|
|
|
raise DevtoolError("Found *.bbappend in %s, but could not determine EXTERNALSRC:pn-*. "
|
|
|
- "Maybe still using old syntax?" % config.workspace_path)
|
|
|
+ "Maybe still using old syntax?" % context.config.workspace_path)
|
|
|
if not pnvalues.get('srctreebase', None):
|
|
|
pnvalues['srctreebase'] = pnvalues['srctree']
|
|
|
logger.debug('Found recipe %s' % pnvalues)
|
|
@@ -215,8 +213,6 @@ def _enable_workspace_layer(workspacedir, config, basepath):
|
|
|
|
|
|
|
|
|
def main():
|
|
|
- global config
|
|
|
-
|
|
|
if sys.getfilesystemencoding() != "utf-8":
|
|
|
sys.exit("Please use a locale setting which supports utf-8.\nPython can't change the filesystem locale after loading so we need a utf-8 when python starts or things won't work.")
|
|
|
|