diff options
author | Alexander Kanavin <alex@linutronix.de> | 2024-12-05 18:13:38 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-12-08 22:36:11 +0000 |
commit | 3de3bda4c4b72ca21ad91c81db57bf07760e0a3b (patch) | |
tree | d742a3ffe51cd6d703f22b15335aba6214b032aa /bitbake/lib/bb/parse/parse_py/ConfHandler.py | |
parent | 186b7c58d5b183228289976336a67db874e07ef5 (diff) | |
download | poky-3de3bda4c4b72ca21ad91c81db57bf07760e0a3b.tar.gz |
bitbake: parse: add support for 'addfragments' directive
It takes two parameters:
- location prefix for fragments
- name of variable that holds the list of enabled fragments, each of them prefixed
by layer id
Implementation of this directive essentially expands the fragment list
obtained from the variable into absolute fragment paths and hands them to the
implementation of 'require'.
(Bitbake rev: f687746703e7b096c5480668fd4f49bd4951182b)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/parse/parse_py/ConfHandler.py')
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/ConfHandler.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py index 27665443dd..35321dacfe 100644 --- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py | |||
@@ -47,6 +47,7 @@ __export_regexp__ = re.compile( r"export\s+([a-zA-Z0-9\-_+.${}/~]+)$" ) | |||
47 | __unset_regexp__ = re.compile( r"unset\s+([a-zA-Z0-9\-_+.${}/~]+)$" ) | 47 | __unset_regexp__ = re.compile( r"unset\s+([a-zA-Z0-9\-_+.${}/~]+)$" ) |
48 | __unset_flag_regexp__ = re.compile( r"unset\s+([a-zA-Z0-9\-_+.${}/~]+)\[([a-zA-Z0-9\-_+.][a-zA-Z0-9\-_+.@]+)\]$" ) | 48 | __unset_flag_regexp__ = re.compile( r"unset\s+([a-zA-Z0-9\-_+.${}/~]+)\[([a-zA-Z0-9\-_+.][a-zA-Z0-9\-_+.@]+)\]$" ) |
49 | __addpylib_regexp__ = re.compile(r"addpylib\s+(.+)\s+(.+)" ) | 49 | __addpylib_regexp__ = re.compile(r"addpylib\s+(.+)\s+(.+)" ) |
50 | __addfragments_regexp__ = re.compile(r"addfragments\s+(.+)\s+(.+)" ) | ||
50 | 51 | ||
51 | def init(data): | 52 | def init(data): |
52 | return | 53 | return |
@@ -197,6 +198,11 @@ def feeder(lineno, s, fn, statements, baseconfig=False, conffile=True): | |||
197 | ast.handlePyLib(statements, fn, lineno, m) | 198 | ast.handlePyLib(statements, fn, lineno, m) |
198 | return | 199 | return |
199 | 200 | ||
201 | m = __addfragments_regexp__.match(s) | ||
202 | if m: | ||
203 | ast.handleAddFragments(statements, fn, lineno, m) | ||
204 | return | ||
205 | |||
200 | raise ParseError("unparsed line: '%s'" % s, fn, lineno); | 206 | raise ParseError("unparsed line: '%s'" % s, fn, lineno); |
201 | 207 | ||
202 | # Add us to the handlers list | 208 | # Add us to the handlers list |