mirror of
https://git.yoctoproject.org/poky
synced 2026-04-27 21:32:13 +02:00
gcc-sanitizers: link directly against sysroot libstc++
Instead of building a shadow libstdc++-v3 directory with symlinks to the sysroot libstdc++-v3.la, fiddle the Makefiles so that it doesn't attempt to link to a in-tree library at all. This fixes builds where .la files are not being installed into the sysroot at all. (From OE-Core rev: f0f814a674faef2160fb8a041b63169c74da108e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
3eb6135d89
commit
d462b70b29
@@ -21,19 +21,14 @@ do_configure () {
|
||||
echo "Configuring libsanitizer"
|
||||
rm -rf ${B}/$target/libsanitizer/
|
||||
mkdir -p ${B}/$target/libsanitizer/
|
||||
# This is kind of gross, but it's an easy way to make configure happy
|
||||
# without hacking it up to use the system stdc++ instead of the one it
|
||||
# expects to be newly built.
|
||||
rm -rf ${B}/$target/libstdc++-v3/
|
||||
mkdir -p ${B}/$target/libstdc++-v3/src/
|
||||
ln -s ${STAGING_LIBDIR}/libstdc++.la ${B}/$target/libstdc++-v3/src/
|
||||
ln -s ${STAGING_LIBDIR}/libstdc++.so ${B}/$target/libstdc++-v3/src/
|
||||
cd ${B}/$target/libsanitizer/
|
||||
chmod a+x ${S}/libsanitizer/configure
|
||||
${S}/libsanitizer/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
|
||||
# Easiest way to stop bad RPATHs getting into the library since we have a
|
||||
# broken libtool here
|
||||
sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${B}/$target/libsanitizer/libtool
|
||||
# Link to the sysroot's libstdc++ instead of one gcc thinks it just built
|
||||
sed -i -e '/LIBSTDCXX_RAW_CXX_\(CXXFLAGS\|LDFLAGS\)\s*=/d' ${B}/$target/libsanitizer/*/Makefile
|
||||
}
|
||||
|
||||
do_compile () {
|
||||
|
||||
Reference in New Issue
Block a user