diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2018-11-14 17:46:39 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-11-16 13:56:41 +0000 |
commit | 540b546be55e0f5f5d91695956da3a7732b2f90a (patch) | |
tree | d6848df07ee0c047a0e58b15c30bcd63c35c7277 | |
parent | c0fe524c1aeccb24ddd2e1f7bf235c00fdbf79a7 (diff) | |
download | bitbake-540b546be55e0f5f5d91695956da3a7732b2f90a.tar.gz |
data_smart: fix filename for compile()
Fixed:
Add the following two lines to conf/local.conf:
FOO = "${@foo = 5}"
HOSTTOOLS += "${FOO}"
* Before the patch
$ bitbake -p
Check the first lines of bitbake bitbake-cookerdaemon.log
[snip]
File "/buildarea1/lyang1/poky/bitbake/lib/bb/data_smart.py", line 125, in python_sub
codeobj = compile(code.strip(), self.varname or "<expansion>", "eval")
File "FOO", line 1
[snip]
There isn't a file named 'FOO', but a variable name.
* After the patch
$ bitbake -p
[snip]
File "/buildarea1/lyang1/poky/bitbake/lib/bb/data_smart.py", line 129, in python_sub
codeobj = compile(code.strip(), varname, "eval")
File "Var <FOO>", line 1
foo = 5
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/data_smart.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py index efa5a79f7..67af38050 100644 --- a/lib/bb/data_smart.py +++ b/lib/bb/data_smart.py @@ -122,7 +122,11 @@ class VariableParse: connector = self.d["_remote_data"] return connector.expandPythonRef(self.varname, code, self.d) - codeobj = compile(code.strip(), self.varname or "<expansion>", "eval") + if self.varname: + varname = 'Var <%s>' % self.varname + else: + varname = '<expansion>' + codeobj = compile(code.strip(), varname, "eval") parser = bb.codeparser.PythonParser(self.varname, logger) parser.parse_python(code) |