[bitbake-devel] [PATCH] bitbake: Allow environment variables and ~ in bblayers
Ed Bartosh
ed.bartosh at linux.intel.com
Wed Apr 15 14:43:22 UTC 2015
Enabled processing of environment variables in bblayers paths using
bitbake apporved_variables API.
Enabled processing of ~ if HOME environment variable is approved.
Signed-off-by: Ed Bartosh <ed.bartosh at linux.intel.com>
---
bitbake/lib/bb/cookerdata.py | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py
index 6c11a60..05b3986 100644
--- a/bitbake/lib/bb/cookerdata.py
+++ b/bitbake/lib/bb/cookerdata.py
@@ -25,6 +25,7 @@
import os, sys
from functools import wraps
import logging
+import string
import bb
from bb import data
import bb.parse
@@ -269,8 +270,13 @@ class CookerDataBuilder(object):
layers = (data.getVar('BBLAYERS', True) or "").split()
data = bb.data.createCopy(data)
+ approved = dict((var, data.getVar(var, True)) \
+ for var in bb.utils.approved_variables())
for layer in layers:
parselog.debug(2, "Adding layer %s", layer)
+ layer = string.Template(layer).safe_substitute(approved)
+ if 'HOME' in approved:
+ layer = os.path.expanduser(layer)
data.setVar('LAYERDIR', layer)
data = parse_config_file(os.path.join(layer, "conf", "layer.conf"), data)
data.expandVarref('LAYERDIR')
--
2.1.4
More information about the bitbake-devel
mailing list