From: Christopher Larson Date: Wed, 1 Jul 2015 15:18:21 +0000 (-0700) Subject: multilib_global: expand multilib pref values properly X-Git-Tag: 2015-10~1335 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=4d208ebacb3a5d189998ac9be6d1a454c45aa975;p=openembedded-core.git multilib_global: expand multilib pref values properly 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 Signed-off-by: Ross Burton --- diff --git a/meta/classes/multilib_global.bbclass b/meta/classes/multilib_global.bbclass index 67bd70d293..ed34404117 100644 --- a/meta/classes/multilib_global.bbclass +++ b/meta/classes/multilib_global.bbclass @@ -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):