]> code.ossystems Code Review - openembedded-core.git/commit
gcc-runtime, libgcc: Symlink c++ header and startup files in target_triplet for SDK use
authorKhem Raj <raj.khem@gmail.com>
Wed, 11 May 2016 17:35:45 +0000 (10:35 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 29 Jun 2016 18:34:45 +0000 (19:34 +0100)
commit610c48be139b046860a234baccf13d1e6fafe2b4
tree2be91ee225d959100cc1ee3c820adf883bc54686
parent0f4dfb6ce041e8ba4bc67de956512cfb6ac225c9
gcc-runtime, libgcc: Symlink c++ header and startup files in target_triplet for SDK use

We build SDKs such that gcc-cross-candian is built for only one
target *-*-linux and then use -muclibc or -mmusl to let it compile
code for other libc variants. This works fine when libc = glibc
however it does not work for c++ programs when libc != glibc since
there are c++ headers installed under ${includedir}/c++/${BINV}/${TARGET_SYS}
which is fine when gcc-runtime and gcc-cross-candian uses same --target options
gxx includedir searches in right triplet, but it fails with musl/uclibc
since gcc will look for glibc based triplet but gcc-runtime will install
them under musl/uclibc triplet.

This patch symlinks the musl/uclibc triplet to glibc triplet when libc != glibc

This fixes SDKs for musl/uclibc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
meta/classes/cross-canadian.bbclass
meta/recipes-devtools/gcc/gcc-runtime.inc
meta/recipes-devtools/gcc/libgcc.inc