diff options
-rw-r--r-- | bitbake/lib/bb/parse/ast.py | 5 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/ConfHandler.py | 8 | ||||
-rw-r--r-- | bitbake/lib/bb/tests/parse.py | 1 |
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 | ||
61 | class ExportNode(AstNode): | 60 | class 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): | |||
56 | def supports(fn, d): | 56 | def supports(fn, d): |
57 | return fn[-5:] == ".conf" | 57 | return fn[-5:] == ".conf" |
58 | 58 | ||
59 | def include(parentfn, fns, lineno, data, error_out): | 59 | def 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 | ||
72 | def include_single_file(parentfn, fn, lineno, data, error_out): | 76 | def 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 | ||