On 30/08/2014 7:15 AM, Dan McGregor wrote:
From: Dan McGregor <dan.mcgre...@usask.ca>

ASan and TSan are useful debugging tools, enable them on the
target and add the packages to packagegroup-core-sdk.

Signed-off-by: Dan McGregor <dan.mcgre...@usask.ca>
---
  .../recipes-core/packagegroups/packagegroup-core-sdk.bb |  4 +++-
  meta/recipes-devtools/gcc/gcc-runtime.inc               | 17 +++++++++++++++++
  2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
b/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
index a544bbd..378336e 100644
--- a/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
+++ b/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
@@ -28,7 +28,9 @@ RDEPENDS_packagegroup-core-sdk = "\

  RRECOMMENDS_packagegroup-core-sdk = "\
      libgomp \
-    libgomp-dev"
+    libgomp-dev \
+    libsanitizer \
+    libsanitizer-dev"

  #python generate_sdk_pkgs () {
  #    poky_pkgs = read_pkgdata('packagegroup-core', d)['PACKAGES']
diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc
b/meta/recipes-devtools/gcc/gcc-runtime.inc
index 7ce84f1..109f8dd 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -11,6 +11,8 @@ EXTRA_OECONF_PATHS = "\
  EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"

  RUNTIMETARGET = "libssp libstdc++-v3 libgomp libatomic"
+RUNTIMETARGET_append_arm = " libsanitizer"
+RUNTIMETARGET_append_x86 = " libsanitizer"
  #  ?
  # libiberty
  # libmudflap
@@ -88,6 +90,9 @@ PACKAGES = "\
      libatomic \
      libatomic-dev \
      libatomic-staticdev \
+    libsanitizer \
+    libsanitizer-dev \
+    libsanitizer-staticdev \
  "
  # The base package doesn't exist, so we clear the recommends.
  RRECOMMENDS_${PN}-dbg = ""
@@ -171,6 +176,18 @@ FILES_libatomic-dev = "\
  "
  FILES_libatomic-staticdev = "${libdir}/libatomic.a"

+FILES_libsanitizer = "${libdir}/libasan.so.* ${libdir}/libubsan.so.*"
+FILES_libsanitizer-dev = " \
+  ${libdir}/libsanitizer.spec \
+  ${libdir}/libasan_preinit.o \
+  ${libdir}/libasan.so \
+  ${libdir}/libubsan.so \
+  ${libdir}/libasan.la \
+  ${libdir}/libubsan.la"
+FILES_libsanitizer-staticdev = " \
+  ${libdir}/libasan.a \
+  ${libdir}/libubsan.a"
+
  do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
  do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
  do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
I get the following error during do_install for gcc-runtime on Arch Linux x86_64 host when it is linking libasan:
/usr/lib/libpthread.a: error adding symbols: File format not recognized

Regards,
Jonathan
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to