summaryrefslogtreecommitdiff
path: root/yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
diff options
context:
space:
mode:
Diffstat (limited to 'yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc')
-rw-r--r--yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc19
1 files changed, 5 insertions, 14 deletions
diff --git a/yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
index c987ccb58..6091a0b6f 100644
--- a/yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/yocto-poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -21,19 +21,15 @@ 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}
+ relpath=${@os.path.relpath("${S}/libsanitizer", "${B}/$target/libsanitizer")}
+ $relpath/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 () {
@@ -58,10 +54,9 @@ DEPENDS = "gcc-runtime"
BBCLASSEXTEND = "nativesdk"
-PACKAGES = "${PN}"
+PACKAGES = "${PN} ${PN}-dbg"
PACKAGES += "libasan libubsan liblsan libtsan"
PACKAGES += "libasan-dev libubsan-dev liblsan-dev libtsan-dev"
-PACKAGES += "libasan-dbg libubsan-dbg liblsan-dbg libtsan-dbg"
PACKAGES += "libasan-staticdev libubsan-staticdev liblsan-staticdev libtsan-staticdev"
RDEPENDS_libasan += "libstdc++"
@@ -84,7 +79,6 @@ do_package_write_rpm[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlib
COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm).*-linux'
FILES_libasan += "${libdir}/libasan.so.*"
-FILES_libasan-dbg += "${libdir}/.debug/libasan.so.*"
FILES_libasan-dev += "\
${libdir}/libasan_preinit.o \
${libdir}/libasan.so \
@@ -93,7 +87,6 @@ FILES_libasan-dev += "\
FILES_libasan-staticdev += "${libdir}/libasan.a"
FILES_libubsan += "${libdir}/libubsan.so.*"
-FILES_libubsan-dbg += "${libdir}/.debug/libubsan.so.*"
FILES_libubsan-dev += "\
${libdir}/libubsan.so \
${libdir}/libubsan.la \
@@ -101,7 +94,6 @@ FILES_libubsan-dev += "\
FILES_libubsan-staticdev += "${libdir}/libubsan.a"
FILES_liblsan += "${libdir}/liblsan.so.*"
-FILES_liblsan-dbg += "${libdir}/.debug/liblsan.so.*"
FILES_liblsan-dev += "\
${libdir}/liblsan.so \
${libdir}/liblsan.la \
@@ -109,7 +101,6 @@ FILES_liblsan-dev += "\
FILES_liblsan-staticdev += "${libdir}/liblsan.a"
FILES_libtsan += "${libdir}/libtsan.so.*"
-FILES_libtsan-dbg += "${libdir}/.debug/libtsan.so.*"
FILES_libtsan-dev += "\
${libdir}/libtsan.so \
${libdir}/libtsan.la \