diff mbox series

[2/2] staging: parse multilib sstate manifest files to install multilib packages in the eSDK

Message ID 20261001174220.3492439-3-workjagadeesh@gmail.com
State New
Headers show
Series Add support to compile source for multilib in the eSDK | expand

Commit Message

Jagadeesh K Oct. 1, 2026, 5:42 p.m. UTC
Since the multilib-DEFAULTTUNE is not part of <pkgarch> of
staging_populate_sysroot_dir function, the SSTATE_MANFILEPREFIX files
of multilib packages are not parsed and due to this multilib package
files are not populated in the <eSDK_install_dir>/tmp/sysroots during
the installation of the eSDK. Hence, the eSDK sysroots lacks header files
required to compile source for multilib.
For example:
The header file bits/c++config.h given by lib32-gcc-runtime recipe,
is not populated in the <eSDK_install_directory>/tmp/sysroots
by the staging_populate_sysroot_dir function as <pkgarch> list does not
contains multilib-DEFAULTTUNE (i.e 'x86' in case of qemux86-64).

This change adds multilib-DEFAULTTUNE to <pkgarch> list and
thereby parsing multilib SSTATE_MANFILEPREFIX files and populating
multilib package files during the eSDK installation.

Signed-off-by: Jagadeesh K <workjagadeesh@gmail.com>
---
 meta/classes-global/staging.bbclass | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox series

Patch

diff --git a/meta/classes-global/staging.bbclass b/meta/classes-global/staging.bbclass
index 5833abebc8..74e3bf276b 100644
--- a/meta/classes-global/staging.bbclass
+++ b/meta/classes-global/staging.bbclass
@@ -204,6 +204,12 @@  def staging_populate_sysroot_dir(targetsysroot, nativesysroot, native, d):
         pkgarchs = ['${MACHINE_ARCH}']
         pkgarchs = pkgarchs + list(reversed(d.getVar("PACKAGE_EXTRA_ARCHS").split()))
         pkgarchs.append('allarch')
+        multilibs = d.getVar('MULTILIB_VARIANTS').split()
+        if multilibs:
+            for ml in multilibs:
+                mltunes = d.getVar('DEFAULTTUNE:virtclass-multilib-%s' % ml)
+                if mltunes:
+                    pkgarchs.append(mltunes)
         targetdir = targetsysroot
 
     bb.utils.mkdirhier(targetdir)