From d145ba21d26a3836940b8b3a3ab2ffa835b1c4e2 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Fri, 25 Mar 2016 09:41:14 +0800 Subject: libgcc: ensure gnueabi suffix is added when necessary The '32' symlink in aarch64 multilib is broken. An example configuration to reproduce the bug is as follows. MACHINE = qemuarm64 require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "armv7at-neon" Build and install SDK, then we would find the following symlink is broken. ./sysroots/aarch64-poky-linux/usr/lib64/aarch64-poky-linux/5.3.0/32 The patch fixes the above problem. [YOCTO #8642] Signed-off-by: Chen Qi --- meta/recipes-devtools/gcc/libgcc-common.inc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/gcc/libgcc-common.inc b/meta/recipes-devtools/gcc/libgcc-common.inc index 30a0dbb52e..7bbdb189d2 100644 --- a/meta/recipes-devtools/gcc/libgcc-common.inc +++ b/meta/recipes-devtools/gcc/libgcc-common.inc @@ -111,9 +111,18 @@ fakeroot python do_multilib_install() { if not tune_bitness: tune_bitness = '32' # /lib => 32bit lib + suffix = "" + localdata = bb.data.createCopy(d) + override = ":virtclass-multilib-" + ml + localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override) + bb.data.update_data(localdata) + tarch = localdata.getVar('TARGET_ARCH', True) + if tarch == "arm" or tarch == "armeb": + suffix = "-gnueabi" + src = '../../../' + tune_baselib + '/' + \ tune_arch + d.getVar('TARGET_VENDOR', True) + 'ml' + ml + \ - '-' + d.getVar('TARGET_OS', True) + '/' + binv + '/' + '-' + d.getVar('TARGET_OS', True) + suffix + '/' + binv + '/' dest = d.getVar('D', True) + d.getVar('libdir', True) + '/' + \ d.getVar('TARGET_SYS', True) + '/' + binv + '/' + tune_bitness -- cgit 1.2.3-korg