summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-05-07 15:03:18 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-05-07 15:10:58 +0100
commit0b4d895562274d76515d9a0d46b297f2fc5ac6cb (patch)
tree1a1b069c0608488a7c1dc1fa624e49b3ff625e62
parenta671ced0ea7c5775d2f2699d3a720c6d0c11f743 (diff)
downloadopenembedded-core-contrib-0b4d895562274d76515d9a0d46b297f2fc5ac6cb.tar.gz
base.bbclass: Fix multilib PREFERRED_VERSION handling
Now that gcc-cross, gcc-crosssdk and others have expanded variables in their names, the code that previous just applied to cross-canadian needs expanding to cover the other cases. Improve the conditional and also fix a bug where the multilib prefix wasn't being added into the generated versions. (From OE-Core rev: d2b18d7692229d4b87b38becf173b1f8b6e90025) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-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 10cb84ac91..8a74d6e578 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -157,15 +157,15 @@ def preferred_ml_updates(d):
for v in versions:
val = d.getVar(v, False)
pkg = v.replace("PREFERRED_VERSION_", "")
- if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith(("nativesdk-", "virtual/nativesdk-")):
+ if pkg.endswith("-native") or "-crosssdk-" in pkg or pkg.startswith(("nativesdk-", "virtual/nativesdk-")):
continue
- if 'cross-canadian' in pkg:
+ if '-cross-' in pkg and '${' in pkg:
for p in prefixes:
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
- newname = localdata.expand(v)
+ newname = localdata.expand(v).replace("PREFERRED_VERSION_", "PREFERRED_VERSION_" + p + '-')
if newname != v:
newval = localdata.expand(val)
d.setVar(newname, newval)