]> code.ossystems Code Review - openembedded-core.git/commitdiff
multilib_global: expand multilib pref values properly
authorChristopher Larson <kergoth@gmail.com>
Wed, 1 Jul 2015 15:18:21 +0000 (08:18 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 7 Jul 2015 22:57:12 +0000 (23:57 +0100)
This ensures that in cases where the preference value changes when the
multilib override is applied, we correctly expand it in that context.

For example, for `PREFERRED_PROVIDER_${TARGET_PREFIX}gcc
= "gcc-external-cross-${TARGET_ARCH}"`, when it sets the prefixed version of
this, we want TARGET_ARCH expanded with the multilib applied, otherwise the
arch suffix will be incorrect for that context.

We ran into this trying to use preferences in meta-sourcery along with
multilibs. We worked around it there via PNBLACKLIST, but this fix should
still go into the core.

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/multilib_global.bbclass

index 67bd70d293a271794b496ab0e3d8c34b985f3f87..ed34404117f1dae3caf43f82bfa1b05985841993 100644 (file)
@@ -84,7 +84,7 @@ def preferred_ml_updates(d):
             # implement alternative multilib name
             newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg)
             if not d.getVar(newname, False):
-                d.setVar(newname, newval)
+                d.setVar(newname, localdata.expand(newval))
         # Avoid future variable key expansion
         provexp = d.expand(prov)
         if prov != provexp and d.getVar(prov, False):