]> code.ossystems Code Review - openembedded-core.git/commitdiff
valgrind: fix call/cachegrind ptests
authorRandy MacLeod <Randy.MacLeod@windriver.com>
Tue, 14 May 2019 03:57:16 +0000 (23:57 -0400)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 15 May 2019 16:52:49 +0000 (17:52 +0100)
Use the *_annotate executables from ${bindir}

Actually install cachegrind/tests/a.c since it is used by
the call/cachegrind/tests/ann[12].vgtest files.

With this change and the previous commits, the ptest results
on qemux86-64 when invoked with:
    runqemu qemux86 kvm nographic slirp qemuparams="-m 2048"
are:

=== Test Summary ===
TOTAL: 159
PASSED: 149
FAILED: 1
SKIPPED: 9

Only drd/tests/pth_detached3 remains to be fixed.

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/valgrind/valgrind_3.15.0.bb

index 4ab2952fde3aa620a5a9aa2802e5cff1d105cee0..ae3498f551e56274b5edd5b0b0cdd723aa58f0b7 100644 (file)
@@ -157,6 +157,8 @@ do_install_ptest() {
         cd $saved_dir
     done
 
+    # 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
     # clean out build artifacts before building the rpm
     find ${D}${PTEST_PATH} \
          \( -name "Makefile*" \
@@ -165,6 +167,14 @@ do_install_ptest() {
         -o -name "*.S" \
         -o -name "*.h" \) \
         -exec rm {} \;
+    mv ${D}${PTEST_PATH}/cachegrind/tests/a_c ${D}${PTEST_PATH}/cachegrind/tests/a.c
+
+    # find *_annotate in ${bindir} for yocto build
+    sed -i s:\.\./\.\./cachegrind/cg_annotate:${bindir}/cg_annotate: ${D}${PTEST_PATH}/cachegrind/tests/ann1.vgtest
+    sed -i s:\.\./\.\./cachegrind/cg_annotate:${bindir}/cg_annotate: ${D}${PTEST_PATH}/cachegrind/tests/ann2.vgtest
+
+    sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann1.vgtest
+    sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann2.vgtest
 
     # needed by massif tests
     cp ${B}/massif/ms_print ${D}${PTEST_PATH}/massif/ms_print