summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorLei Liu <lei.liu2@windriver.com>2013-11-21 00:54:00 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-12-12 17:00:22 +0000
commit532660dcfe8d7f90f5a431ed65832e29a7c29f0e (patch)
tree7c4d471415cdadaa0744f9d84cc7cace29a731dc /meta
parent6fe4b4dc95a8a3f5d84d94dd68aee5161df9fc14 (diff)
downloadpoky-532660dcfe8d7f90f5a431ed65832e29a7c29f0e.tar.gz
base.bbclass: Fix incorrect setting of multilib PREFERRED_PROVIDER_virtual_pkg
PREFERRED_PROVIDER_virtual_pkg has been incorrectly set with more than one multilib prefixes. For example, if we have two alternative multilibs lib64 and lib32, PREFERRED_PROVIDER_virtual_pkg will be set to lib32-lib64-pkg or lib64-lib32-pkg, depending on which multilib shows up first in the list. (From OE-Core master rev: 17a432dc059e24ba10d4baec988828c0025a5e46) (From OE-Core rev: e5d8411869a2a018d0c8ab9d0e888027ac4208d5) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/base.bbclass6
1 files changed, 3 insertions, 3 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 93bc700a50..d0793b671e 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -210,7 +210,7 @@ def preferred_ml_updates(d):
210 virt = "virtual/" 210 virt = "virtual/"
211 for p in prefixes: 211 for p in prefixes:
212 if pkg != "kernel": 212 if pkg != "kernel":
213 val = p + "-" + val 213 newval = p + "-" + val
214 214
215 # implement variable keys 215 # implement variable keys
216 localdata = bb.data.createCopy(d) 216 localdata = bb.data.createCopy(d)
@@ -219,12 +219,12 @@ def preferred_ml_updates(d):
219 bb.data.update_data(localdata) 219 bb.data.update_data(localdata)
220 newname = localdata.expand(prov) 220 newname = localdata.expand(prov)
221 if newname != prov and not d.getVar(newname, False): 221 if newname != prov and not d.getVar(newname, False):
222 d.setVar(newname, localdata.expand(val)) 222 d.setVar(newname, localdata.expand(newval))
223 223
224 # implement alternative multilib name 224 # implement alternative multilib name
225 newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg) 225 newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg)
226 if not d.getVar(newname, False): 226 if not d.getVar(newname, False):
227 d.setVar(newname, val) 227 d.setVar(newname, newval)
228 # Avoid future variable key expansion 228 # Avoid future variable key expansion
229 provexp = d.expand(prov) 229 provexp = d.expand(prov)
230 if prov != provexp and d.getVar(prov, False): 230 if prov != provexp and d.getVar(prov, False):