[OE-core] [PATCH 1/1] staging.bbclass: avoid staging native components for target sysroot

Chen Qi Qi.Chen at windriver.com
Mon Aug 27 08:46:36 UTC 2018


In the staging_populate_sysroot_dir function, components are staged
by pkgarch matching. In case of x86-64 targets, it's possible that
the native components are also matched, and thus are expectedly installed.

The negative effect is at least unnecessary installation, and in some
cases is compilation error. For example, when using eSDK and we are trying
to cross compile some project in lib32 environment, the compilation will
fail.

Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
---
 meta/classes/staging.bbclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 27b012e..1b9803a 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -198,6 +198,9 @@ def staging_populate_sysroot_dir(targetsysroot, nativesysroot, native, d):
             if manifest.endswith("-initial.populate_sysroot"):
                 # skip glibc-initial and libgcc-initial due to file overlap
                 continue
+            if not native and manifest.endswith("-native.populate_sysroot"):
+                # avoid native components to be installed into target sysroot
+                continue
             tmanifest = targetdir + "/" + os.path.basename(manifest)
             if os.path.exists(tmanifest):
                 continue
-- 
1.9.1




More information about the Openembedded-core mailing list