From: Denys Dmytriyenko denys@ti.com
* Install additional static libs, stubs and header files * Needed for -dev versions of libgcc, libgfortran and other packages * All the FILES_* variables are already set up for them * FILES_* are inherited from OE-Core and use BINV and TARGET_SYS references * Initialize BINV and TARGET_SYS with corresponding similar EAT_* versions * libgcc from OE-Core doesn't follow the same path as gcc, hence ${libdir}/${EAT_TARGET_SYS}/${EAT_VER_GCC} vs. ${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}
Signed-off-by: Denys Dmytriyenko denys@ti.com --- .../external-arm-toolchain/external-arm-toolchain.bb | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb b/meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb index 2437856..6fb5a4d 100644 --- a/meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb +++ b/meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb @@ -56,6 +56,9 @@ PROVIDES += "\
PV = "${EAT_VER_MAIN}"
+BINV = "${EAT_VER_GCC}" +TARGET_SYS = "${EAT_TARGET_SYS}" + SRC_URI = "file://SUPPORTED"
do_install() { @@ -74,6 +77,8 @@ do_install() { install -d ${D}${datadir} install -d ${D}${includedir} install -d ${D}/include + install -d ${D}${libdir}/${EAT_TARGET_SYS}/${EAT_VER_GCC} + install -d ${D}${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}
CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/${EAT_TARGET_SYS}/${EAT_LIBDIR}/* ${D}${base_libdir} @@ -110,6 +115,15 @@ do_install() { sed -i -e 's#/arm/tools/gnu/bash/4.2/rhe6-x86_64##' ${D}${bindir}/tzselect sed -i -e 's#/arm/tools/gnu/bash/4.2/rhe6-x86_64##' ${D}${bindir}/ldd
+ cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/crt*.o ${D}${libdir}/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/libgcc* ${D}${libdir}/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/libgcov* ${D}${libdir}/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/include ${D}${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/finclude ${D}${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/libgfortranbegin.* ${D}${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ || true + cp ${CP_ARGS} -H ${EXTERNAL_TOOLCHAIN}/lib/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/libcaf_single* ${D}${libdir}/gcc/${EAT_TARGET_SYS}/${EAT_VER_GCC}/ + # fix up the copied symlinks (they are still pointing to the multiarch directory) linker_name="${@bb.utils.contains("TUNE_FEATURES", "aarch64", "ld-linux-aarch64.so.1", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", "ld-linux-armhf.so.3", "ld-linux.so.3",d), d)}" ln -sf ld-${EAT_VER_LIBC}.so ${D}${base_libdir}/${linker_name}