Skip to contentSkip to conversation

multilib_global: Fix PREFERRED_VERSION mapping for gcc-cross-canadian

PATCH New Richard Purdie 1 participant 1 message Jul 31, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 multilib_global: Fix PREFERRED_VERSION mapping for gcc-cross-canadian

Our multilib cross toolchains have <ml_prefix> as a prefix however we only have a single gcc-cross-canadian for each arch and it is not prefixed even in the multilib case. We can have two versions of gcc-cross-canadian, 32 and 64 bit.

This fixes the multilib PREFERRED_VERSION mapping code so that no prefix is added to the preferred version and therefore the right versions of gcc-cross-canadian are used.

meta/classes/multilib_global.bbclass +4 -1
index ed34404..612cfb6 100644
@@ -30,7 +30,10 @@ def preferred_ml_updates(d):
                 override = ":virtclass-multilib-" + p
                 localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
                 bb.data.update_data(localdata)
-                newname = localdata.expand(v).replace("PREFERRED_VERSION_", "PREFERRED_VERSION_" + p + '-')
+                if "-canadian-" in pkg:
+                    newname = localdata.expand(v)
+                else:
+                    newname = localdata.expand(v).replace("PREFERRED_VERSION_", "PREFERRED_VERSION_" + p + '-')
                 if newname != v:
                     newval = localdata.expand(val)
                     d.setVar(newname, newval)