valgrind: make a few more ptests pass

Adjust two memcheck vgtest files to deal with relative paths
that are in test executables when cross-compiling.
Add libgomp to enable OpenMP tests.
Add the bz2 executable for memcheck/tests/vcpu_bz2.

(From OE-Core rev: f75792b28e39e4c393c0a00369d5417e3af75b36)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Randy MacLeod
2019-09-10 17:41:34 -04:00
committed by Richard Purdie
parent ecb8b17efc
commit 3b83ad5830
2 changed files with 44 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
From bf63e35c3036e6040c8cfecabc7160b1f36b0591 Mon Sep 17 00:00:00 2001
From: Randy MacLeod <Randy.MacLeod@windriver.com>
Date: Wed, 28 Aug 2019 12:31:15 -0400
Subject: [PATCH] adjust path filter for 2 memcheck tests
Test executables produced when cross-compiling can contain
relative paths such as:
coregrind/tests/../../../valgrind-3.15.0/coregrind/
Use the --fullpath-after option to match and therefore
suppress more of the prefix to enable test to pass.
Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
memcheck/tests/badfree3.vgtest | 2 +-
memcheck/tests/varinfo5.vgtest | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/memcheck/tests/badfree3.vgtest b/memcheck/tests/badfree3.vgtest
index 3dfc5fd8a..57eec21f3 100644
--- a/memcheck/tests/badfree3.vgtest
+++ b/memcheck/tests/badfree3.vgtest
@@ -1,3 +1,3 @@
prog: badfree
-vgopts: -q --fullpath-after=memcheck/ --fullpath-after=coregrind/
+vgopts: -q --fullpath-after=/valgrind-3.15.0/memcheck/ --fullpath-after=/valgrind-3.15.0/coregrind/
stderr_filter_args: badfree.c
diff --git a/memcheck/tests/varinfo5.vgtest b/memcheck/tests/varinfo5.vgtest
index 063d00dce..6907bb2f6 100644
--- a/memcheck/tests/varinfo5.vgtest
+++ b/memcheck/tests/varinfo5.vgtest
@@ -1,3 +1,3 @@
prog: varinfo5
-vgopts: --fullpath-after=memcheck/ --fullpath-after=coregrind/ --read-var-info=yes --read-inline-info=yes -q
+vgopts: --fullpath-after=/valgrind-3.15.0/memcheck/ --fullpath-after=/valgrind-3.15.0/coregrind/ --read-var-info=yes --read-inline-info=yes -q
stderr_filter: filter_varinfo3
--
2.22.0

View File

@@ -38,6 +38,7 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0001-Return-a-valid-exit_code-from-vg_regtest.patch \
file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \
file://0002-valgrind-adjust-std_list-expected-output.patch \
file://0001-adjust-path-filter-for-2-memcheck-tests.patch \
"
SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975"
SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1"
@@ -109,7 +110,7 @@ RDEPENDS_${PN} += "perl"
# redirect functions like strlen.
RRECOMMENDS_${PN} += "${TCLIBC}-dbg"
RDEPENDS_${PN}-ptest += " bash file perl perl-module-file-glob procps sed ${PN}-dbg"
RDEPENDS_${PN}-ptest += " bash file libgomp perl perl-module-file-glob procps sed ${PN}-dbg"
RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
# One of the tests contains a bogus interpreter path on purpose.
@@ -158,6 +159,8 @@ do_install_ptest() {
cp ${B}/config.h ${D}${PTEST_PATH}
mkdir ${D}${PTEST_PATH}/perf
cp ${B}/perf/bigcode ${D}${PTEST_PATH}/perf
# needed by memcheck/tests/vcpu_bz2
cp ${B}/perf/bz2 ${D}${PTEST_PATH}/perf
# Hide then restore a.c that is used by ann[12].vgtest in call/cachegrind
mv ${D}${PTEST_PATH}/cachegrind/tests/a.c ${D}${PTEST_PATH}/cachegrind/tests/a_c