From: Denys Dmytriyenko denys@ti.com
Since c++ headers are part of gcc and not glibc, they are not located in libc/usr/include/, but instead in include/, so copy and install them too. Also, set up a symlink in case any code looks for them in include/
Signed-off-by: Denys Dmytriyenko denys@ti.com --- .../external-arm-toolchain/external-arm-toolchain.bb | 5 +++++ 1 file changed, 5 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 09c5f41..0c0d38d 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 @@ -71,6 +71,7 @@ do_install() { install -d ${D}${libexecdir} install -d ${D}${datadir} install -d ${D}${includedir} + install -d ${D}/include
cp -a -H ${EXTERNAL_TOOLCHAIN}/${EAT_TARGET_SYS}/${EAT_LIBDIR}/* ${D}${base_libdir} if [ -d ${EXTERNAL_TOOLCHAIN}/${EAT_TARGET_SYS}/libc/${EAT_LIBDIR}/${EAT_TARGET_SYS} ]; then @@ -97,6 +98,9 @@ do_install() { rm -r ${D}${includedir}/${EAT_TARGET_SYS} fi
+ cp -a ${EXTERNAL_TOOLCHAIN}/${EAT_TARGET_SYS}/include/* ${D}${includedir} + ln -sf ../usr/include/c++ ${D}/include/c++ + # 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} @@ -513,6 +517,7 @@ FILES_${PN}-dbg += "${base_libdir}/debug"
FILES_libstdc++ = "${base_libdir}/libstdc++.so.*" FILES_libstdc++-dev = "\ + /include/c++ \ ${includedir}/c++/ \ ${base_libdir}/libstdc++.so \ ${base_libdir}/libstdc++.la \