aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2019-03-25 23:03:09 -0400
committerVishal Bhoj <vishal.bhoj@linaro.org>2019-03-27 05:04:34 +0000
commit91ea4d017bf0598e49944e76c889e66d58c066ce (patch)
treef74fa0f53b7043d7c9cf21112104eb29ca81e4fe
parent16f0e44459691b04a86eea654ed1bfc5bfbe6ee1 (diff)
downloadmeta-linaro-91ea4d017bf0598e49944e76c889e66d58c066ce.tar.gz
external-arm-toolchain: also package up extra libs, stubs and headers
* 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 at ti.com> Change-Id: I00cbbf4306082196716627c519e15b1c8426923e
-rw-r--r--meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb14
1 files changed, 14 insertions, 0 deletions
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 24378567..6fb5a4da 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}