From d672a4cc3c0465d0e013b5742bdebe2d8a191c2f Mon Sep 17 00:00:00 2001 From: Juro Bystricky Date: Sat, 8 Oct 2016 10:53:52 -0700 Subject: gcc-runtime.inc: Add CPP support for x86-64-x32 tune Using the following setup (as specified in yocto sample code): MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:libx32" DEFAULTTUNE_virtclass-multilib-libx32 = "x86-64-x32" We fail to compile simple CPP programs because CPP cannot find relevant header files, looking for them in a non-existing place. To fix this, we create a symlink of the name CPP expects and point it to the corresponding existing directory. [YOCTO#10354] [YOCTO#10380] (From OE-Core rev: 9f9be229040f4f9a523a1e25afd78d5c3f4efc23) (From OE-Core rev: 979b28c55c3b9b0134dbddbb09e30b9bf0db9231) Signed-off-by: Juro Bystricky Signed-off-by: Richard Purdie Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- meta/recipes-devtools/gcc/gcc-runtime.inc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc index fd624e2711..66f25be19d 100644 --- a/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc @@ -89,6 +89,14 @@ do_install_append_class-target () { ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux fi fi + if [ "${TARGET_OS}" = "linux-gnux32" ]; then + if [ "${MULTILIBS}" != "" ]; then + mkdir ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}-poky-linux + ln -s ../${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}-poky-linux/x32 + else + ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux + fi + fi if [ "${TCLIBC}" != "glibc" ]; then case "${TARGET_OS}" in -- cgit v1.2.3-54-g00ecf