From: Denys Dmytriyenko denys@ti.com
* Multiarch symlink being fixed only for aarch64 and old-name softfp versions, add hardfp too. * When runtime libs are copied into OE sysroot, libc.so script gets updated replacing absolute multiarch paths with relative ones to point to actual libc libraries. But AS_NEEDED portion for ld-linux is no longer points to multiarch location, so it doesn't get updated any more. Add extra sed line.
Signed-off-by: Denys Dmytriyenko denys@ti.com --- .../external-linaro-toolchain/external-linaro-toolchain.bb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/external-linaro-toolchain.bb b/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/external-linaro-toolchain.bb index 240d550..06abb7a 100644 --- a/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/external-linaro-toolchain.bb +++ b/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/external-linaro-toolchain.bb @@ -45,7 +45,7 @@ PROVIDES += "\ "
PV = "${ELT_VER_MAIN}" -PR = "r2" +PR = "r3"
# https://launchpad.net/linaro-toolchain-binaries SRC_URI = "file://SUPPORTED" @@ -79,7 +79,7 @@ do_install() { fi
# fix up the copied symlinks (they are still pointing to the multiarch directory) - linker_name="${@base_contains("TUNE_FEATURES", "aarch64", "ld-linux-aarch64.so.1", "ld-linux.so.3",d)}" + linker_name="${@base_contains("TUNE_FEATURES", "aarch64", "ld-linux-aarch64.so.1", base_contains("TUNE_FEATURES", "callconvention-hard", "ld-linux-armhf.so.3", "ld-linux.so.3",d), d)}" ln -sf ld-${ELT_VER_LIBC}.so ${D}${base_libdir}/${linker_name} ln -sf ../../lib/libnsl.so.1 ${D}${libdir}/libnsl.so ln -sf ../../lib/librt.so.1 ${D}${libdir}/librt.so @@ -108,10 +108,10 @@ do_install() { fi
if [ -f ${D}${libdir}/libc.so ];then - sed -i -e "s# /lib/${ELT_TARGET_SYS}# ../../lib#g" -e "s# /usr/lib/${ELT_TARGET_SYS}# .#g" ${D}${libdir}/libc.so + sed -i -e "s# /lib/${ELT_TARGET_SYS}# ../../lib#g" -e "s# /usr/lib/${ELT_TARGET_SYS}# .#g" -e "s# /lib/ld-linux# ../../lib/ld-linux#g" ${D}${libdir}/libc.so fi if [ -f ${D}${base_libdir}/libc.so ];then - sed -i -e "s# /lib/${ELT_TARGET_SYS}# ../../lib#g" -e "s# /usr/lib/${ELT_TARGET_SYS}# .#g" ${D}${base_libdir}/libc.so + sed -i -e "s# /lib/${ELT_TARGET_SYS}# ../../lib#g" -e "s# /usr/lib/${ELT_TARGET_SYS}# .#g" -e "s# /lib/ld-linux# ../../lib/ld-linux#g" ${D}${base_libdir}/libc.so fi if [ -f ${D}${libdir}/libpthread.so ];then sed -i -e "s# /lib/${ELT_TARGET_SYS}# ../../lib#g" -e "s# /usr/lib/${ELT_TARGET_SYS}# .#g" ${D}${libdir}/libpthread.so