[gnome-continuous-yocto/gnomeostree-3.28-rocko: 5460/8267] bitbake: lib/bb/data: fix dependency handling for contains and multiple values
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 5460/8267] bitbake: lib/bb/data: fix dependency handling for contains and multiple values
- Date: Sun, 17 Dec 2017 03:28:16 +0000 (UTC)
commit f217b65f124fd81c15d48e2381bf2f575b96da0c
Author: Paul Eggleton <paul eggleton linux intel com>
Date: Mon Apr 3 11:19:03 2017 +1200
bitbake: lib/bb/data: fix dependency handling for contains and multiple values
The code that determines variable dependencies uses the codeparser to
find references to "contains" type operations e.g. bb.utils.contains().
That function can take multiple items to check, and all specified items
have to be present. However this code didn't handle that - it assumed
that only one item would be specified and thus it was treating the
multiple items as a single item with spaces in between. Split the value
and check if all words are present in order to determine whether the
check is "set" or "unset".
(Bitbake rev: 272f1245acdd4fb85cb78612aa03627a9c246d8f)
Signed-off-by: Paul Eggleton <paul eggleton linux intel com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
bitbake/lib/bb/data.py | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
---
diff --git a/bitbake/lib/bb/data.py b/bitbake/lib/bb/data.py
index a85cb3a..0403754 100644
--- a/bitbake/lib/bb/data.py
+++ b/bitbake/lib/bb/data.py
@@ -296,11 +296,13 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, d):
newvalue = ""
for k in sorted(contains):
l = (d.getVar(k) or "").split()
- for word in sorted(contains[k]):
- if word in l:
- newvalue += "\n%s{%s} = Set" % (k, word)
+ for item in sorted(contains[k]):
+ for word in item.split():
+ if not word in l:
+ newvalue += "\n%s{%s} = Unset" % (k, item)
+ break
else:
- newvalue += "\n%s{%s} = Unset" % (k, word)
+ newvalue += "\n%s{%s} = Set" % (k, item)
if not newvalue:
return value
if not value:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]