[OE-core] [PATCH 2/2] libgcc: ensure gnueabi suffix is added when necessary
Chen Qi
Qi.Chen at windriver.com
Fri Mar 25 02:19:10 UTC 2016
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 <Qi.Chen at windriver.com>
---
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 30a0dbb..7bbdb18 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
--
1.9.1
More information about the Openembedded-core
mailing list