summaryrefslogtreecommitdiffstats
path: root/meta/classes/base.bbclass
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-11-22 14:08:32 +0000
commit6a3a4ba267871efbae1e908e85edb70ce4a3c244 (patch)
tree8398c94dea05526bfb97d955d8f58ed246744323 /meta/classes/base.bbclass
parent6a8307c35705bf6c9f49c368dd730deef3d2ae15 (diff)
downloadpoky-6a3a4ba267871efbae1e908e85edb70ce4a3c244.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 rev: 17a432dc059e24ba10d4baec988828c0025a5e46) Signed-off-by: Lei Liu <lei.liu2@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/base.bbclass')
-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):