summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/parse/ast.py5
-rw-r--r--bitbake/lib/bb/parse/parse_py/ConfHandler.py8
-rw-r--r--bitbake/lib/bb/tests/parse.py1
3 files changed, 9 insertions, 5 deletions
diff --git a/bitbake/lib/bb/parse/ast.py b/bitbake/lib/bb/parse/ast.py
index 49a0788038..3250211e60 100644
--- a/bitbake/lib/bb/parse/ast.py
+++ b/bitbake/lib/bb/parse/ast.py
@@ -53,10 +53,9 @@ class IncludeAllNode(AstNode):
53 Include the file and evaluate the statements 53 Include the file and evaluate the statements
54 """ 54 """
55 s = data.expand(self.what_file) 55 s = data.expand(self.what_file)
56 logger.debug2("CONF %s:%s: including %s", self.filename, self.lineno, s) 56 logger.debug2("CONF %s:%s: including all %s", self.filename, self.lineno, s)
57 57
58 for path in data.getVar("BBPATH").split(":"): 58 bb.parse.ConfHandler.include(self.filename, s, self.lineno, data, False, all=True)
59 bb.parse.ConfHandler.include(self.filename, os.path.join(path, s), self.lineno, data, False)
60 59
61class ExportNode(AstNode): 60class ExportNode(AstNode):
62 def __init__(self, filename, lineno, var): 61 def __init__(self, filename, lineno, var):
diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py
index 9ddbae123d..af3af2ccee 100644
--- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py
+++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py
@@ -56,7 +56,7 @@ def init(data):
56def supports(fn, d): 56def supports(fn, d):
57 return fn[-5:] == ".conf" 57 return fn[-5:] == ".conf"
58 58
59def include(parentfn, fns, lineno, data, error_out): 59def include(parentfn, fns, lineno, data, error_out, all=False):
60 """ 60 """
61 error_out: A string indicating the verb (e.g. "include", "inherit") to be 61 error_out: A string indicating the verb (e.g. "include", "inherit") to be
62 used in a ParseError that will be raised if the file to be included could 62 used in a ParseError that will be raised if the file to be included could
@@ -67,7 +67,11 @@ def include(parentfn, fns, lineno, data, error_out):
67 67
68 # "include" or "require" accept zero to n space-separated file names to include. 68 # "include" or "require" accept zero to n space-separated file names to include.
69 for fn in fns.split(): 69 for fn in fns.split():
70 include_single_file(parentfn, fn, lineno, data, error_out) 70 if all:
71 for path in data.getVar("BBPATH").split(":"):
72 include_single_file(parentfn, os.path.join(path, fn), lineno, data, error_out)
73 else:
74 include_single_file(parentfn, fn, lineno, data, error_out)
71 75
72def include_single_file(parentfn, fn, lineno, data, error_out): 76def include_single_file(parentfn, fn, lineno, data, error_out):
73 """ 77 """
diff --git a/bitbake/lib/bb/tests/parse.py b/bitbake/lib/bb/tests/parse.py
index d3867ece98..2f77c90f60 100644
--- a/bitbake/lib/bb/tests/parse.py
+++ b/bitbake/lib/bb/tests/parse.py
@@ -499,6 +499,7 @@ EXTRA_OECONF:append = " foobar"
499 test_helper("include_all some.conf", " foo bar") 499 test_helper("include_all some.conf", " foo bar")
500 test_helper("include_all someother.conf", None) 500 test_helper("include_all someother.conf", None)
501 test_helper("include_all some3.conf", " foobar") 501 test_helper("include_all some3.conf", " foobar")
502 test_helper("include_all ${@''}", None)
502 503
503 self.d.setVar("BBPATH", tempdir + "/conf2" + ":" + tempdir + "/conf1") 504 self.d.setVar("BBPATH", tempdir + "/conf2" + ":" + tempdir + "/conf1")
504 505