]> code.ossystems Code Review - openembedded-core.git/commitdiff
base: check for existing prefix when expanding names in PACKAGECONFIG
authorRoss Burton <ross.burton@intel.com>
Fri, 11 Mar 2016 20:54:00 +0000 (20:54 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 11 Mar 2016 23:14:55 +0000 (23:14 +0000)
When the DEPENDS are added as part of the PACKAGECONFIG logic the list of
packages are expanded so that any required nativesdk-/-native/multilib prefixes
and suffixes are added.

However the special handling of virtual/foo names doesn't check that the prefix
already exists, which breaks under nativesdk as in that situation there's an
explicit nativesdk- prefix *and* MLPREFIX is set to nativesdk-.  This results in
the same prefix being applied twice, and virtual packages such as virtual/libx11
ending up as virtual/nativesdk-nativesdk-libx11.

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/base.bbclass

index 9bd5499a107e1db7c86ce6ce1ffada8980f644f1..38b69db624130895158173ee4f8dfd9f42410ee6 100644 (file)
@@ -363,7 +363,10 @@ python () {
                     newappends.append(a)
                 elif a.startswith("virtual/"):
                     subs = a.split("/", 1)[1]
-                    newappends.append("virtual/" + prefix + subs + extension)
+                    if subs.startswith(prefix):
+                        newappends.append(a + extension)
+                    else:
+                        newappends.append("virtual/" + prefix + subs + extension)
                 else:
                     if a.startswith(prefix):
                         newappends.append(a + extension)