summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/parse
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2015-05-27 17:30:31 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-05-29 10:17:16 +0100
commit91c45c016376511e6ca0d2f40eb5be73af09e7ea (patch)
tree2832a2dadd8180e5f8f5599c8789a5294868e4a5 /bitbake/lib/bb/parse
parent08b77c8cef3d93098118b9141c19bba382b30d6f (diff)
downloadpoky-91c45c016376511e6ca0d2f40eb5be73af09e7ea.tar.gz
bitbake: BBHandler: Drop cwd from search path
Whilst bitbake has done this for a long time, the behaviour of resolving class files against cwd is not desirable. This can be seen during base configuration parsing when looking for base.bbclass where a dependency on cwd is added. If cwd then changes, the cache is invalid and triggers a re-parse. The only real option is to drop this entry and if files can't be found, we fix BBPATH in the cases where it needs fixing. I didn't find any in the random selection of layers I tested parsing locally. (Bitbake rev: 508aad9d5db7e51328b1fd6ee53b4bc3720a30b7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/parse')
-rw-r--r--bitbake/lib/bb/parse/parse_py/BBHandler.py3
1 files changed, 1 insertions, 2 deletions
diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py
index 56d4672b0f..85c27c24cc 100644
--- a/bitbake/lib/bb/parse/parse_py/BBHandler.py
+++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py
@@ -76,8 +76,7 @@ def inherit(files, fn, lineno, d):
76 file = os.path.join('classes', '%s.bbclass' % file) 76 file = os.path.join('classes', '%s.bbclass' % file)
77 77
78 if not os.path.isabs(file): 78 if not os.path.isabs(file):
79 dname = os.path.dirname(fn) 79 bbpath = d.getVar("BBPATH", True)
80 bbpath = "%s:%s" % (dname, d.getVar("BBPATH", True))
81 abs_fn, attempts = bb.utils.which(bbpath, file, history=True) 80 abs_fn, attempts = bb.utils.which(bbpath, file, history=True)
82 for af in attempts: 81 for af in attempts:
83 if af != abs_fn: 82 if af != abs_fn: