]> code.ossystems Code Review - openembedded-core.git/commitdiff
multilib.bbclass: Partially fix multlib image targets
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 22 Sep 2011 21:15:58 +0000 (22:15 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 22 Sep 2011 21:18:12 +0000 (22:18 +0100)
This patch partially fixes problems when building multilib extended
images such as libXX-core-image-minimal. Its not a perfect/complete
solution but works much better than any previous code did.

[YOCTO #1496] (partial)
[YOCTO #1497] (partial)
[YOCTO #1498] (partial)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/crosssdk.bbclass
meta/classes/multilib.bbclass
meta/classes/nativesdk.bbclass

index 5cfa43b3dedcedcfe3cc8a557efb120e2d69c045..83753b4f797b5532e6a22c48c3afad7f523111af 100644 (file)
@@ -18,6 +18,7 @@ target_includedir = "${SDKPATHNATIVE}${includedir_nativesdk}"
 target_base_libdir = "${SDKPATHNATIVE}${base_libdir_nativesdk}"
 target_prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
 target_exec_prefix = "${SDKPATHNATIVE}${exec_prefix_nativesdk}"
+baselib = "lib"
 
 do_populate_sysroot[stamp-extra-info] = ""
 do_package[stamp-extra-info] = ""
index 138dd27a6e9921ff0b629dce4f000c718ce6ec03..98f69116b83e6017dd9cc2adcd79ddb75e356ea6 100644 (file)
@@ -11,6 +11,10 @@ python multilib_virtclass_handler () {
     if bb.data.inherits_class('kernel', e.data) or bb.data.inherits_class('module-base', e.data) or bb.data.inherits_class('allarch', e.data):
         raise bb.parse.SkipPackage("We shouldn't have multilib variants for the kernel")
 
+    if bb.data.inherits_class('image', e.data):
+        e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False))
+        return
+
     save_var_name=e.data.getVar("MULTILIB_SAVE_VARNAME", True) or ""
     for name in save_var_name.split():
         val=e.data.getVar(name, True)
@@ -48,6 +52,15 @@ python __anonymous () {
                 newdeps.append(multilib_extend_name(variant, dep))
         d.setVar(varname, " ".join(newdeps))
 
+    if bb.data.inherits_class('image', d):
+        map_dependencies("PACKAGE_INSTALL", d)
+        pinstall = d.getVar("PACKAGE_INSTALL", True) + " " + d.getVar("MULTILIB_PACKAGE_INSTALL", False)
+        d.setVar("MULTILIB_PACKAGE_INSTALL", pinstall)
+        d.setVar("PACKAGE_INSTALL", "")
+        # FIXME, we need to map this to something, not delete it!
+        d.setVar("PACKAGE_INSTALL_ATTEMPTONLY", "")
+        return
+
     pkgs_mapping = []
     for pkg in (d.getVar("PACKAGES", True) or "").split():
         if pkg.startswith(variant):
index a495555b35e143770b340e955a1b60f652767a12..bb59ac57a6aaa8314ad5ca0383ff5734acd6b292 100644 (file)
@@ -48,6 +48,7 @@ LDFLAGS = "${BUILDSDK_LDFLAGS}"
 base_prefix = "${SDKPATHNATIVE}"
 prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
 exec_prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
+baselib = "lib"
 
 FILES_${PN} += "${prefix}"
 FILES_${PN}-dbg += "${prefix}/.debug \