[bitbake-devel] [PATCH] data.py: Add a warning when expandKeys overwrites an existing key
Mark Hatle
mark.hatle at windriver.com
Tue Mar 19 19:54:31 UTC 2013
On 3/19/13 3:28 PM, Mark Hatle wrote:
> When two variables are defined as:
>
> ${var} = "bar"
> foo = "foobar"
>
> The value of 'foo' when ${var} == foo becomes indeterminate. We
> want to warn a user when this situation has been encountered so they
> can take corrective actions.
>
> In the above example usually foo == bar, unless multilibs are enabled.
> Then ml-foo = "ml-foobar".
This patch highlights the places where a problem may exist. When used with the
current oe-core, it highlights a number of problems with the multilib
configuration code. (See patch sent to oe-core.)
I'd like to see this incorporated, but at this point it's definitely an RFC.
> Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
> ---
> lib/bb/data.py | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/lib/bb/data.py b/lib/bb/data.py
> index 7047f48..110666c 100644
> --- a/lib/bb/data.py
> +++ b/lib/bb/data.py
> @@ -158,6 +158,11 @@ def expandKeys(alterdata, readdata = None):
>
> for key in todolist:
> ekey = todolist[key]
> + if ekey in keys(alterdata):
> + val = alterdata.getVar(key, 0)
> + newval = alterdata.getVar(ekey, 0)
> + if val is not None and newval is not None:
> + bb.warn("Variable key %s (%s) replaces original key %s (%s)." % (key, val, ekey, newval))
> alterdata.renameVar(key, ekey)
>
> def inheritFromOS(d, savedenv, permitted):
>
More information about the bitbake-devel
mailing list