diff options
author | Randy MacLeod <Randy.MacLeod@windriver.com> | 2019-09-10 17:41:33 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-09-16 09:54:21 +0100 |
commit | 083a5dd27d305ecd12214f2665460dbe06b96c2a (patch) | |
tree | dfcc5fd8978d6f55a014cfa2e01307bd99e7cdb4 /meta/recipes-devtools/valgrind | |
parent | 2cccc685cc6359595ef3e943cd03290d8c8866f0 (diff) | |
download | openembedded-core-contrib-083a5dd27d305ecd12214f2665460dbe06b96c2a.tar.gz |
valgrind: enable ~500 more ptests
Add valgrind's top level config.h to the ptest package since
it is used by several scripts to determine which tests to run.
Drop the removal of:
none/tests/shell,
the content was already moved to:
none/tests/scripts/shell
so the filter useless and the files no longer cause a problem.
Add a few more test directories that had been omitted.
Add perf/bigcode for test: none/tests/bigcode
Leave .c, .h, .S files in the ptest image since several of them are
needed to run the tests. The overhead is ~13 MB which is high but
keeping all test code is easier than figuring out which source files
are needed and the entire valgrind-ptest package is ~115 MB so in
this context it's an acceptable trade-off.
Add bash dependency for ptest for none/tests/scripts/shell
With core-image-minimal on qemux86-64/kvm:
Recipe | Passed | Failed | Skipped | Time(s)
before | 149 | 1 | 9 | 663
after | 648 | 12 | 60 | 1541
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta/recipes-devtools/valgrind')
-rw-r--r-- | meta/recipes-devtools/valgrind/valgrind_3.15.0.bb | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb index 4e89c604d6..7bb6001d90 100644 --- a/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb +++ b/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb @@ -109,7 +109,7 @@ RDEPENDS_${PN} += "perl" # redirect functions like strlen. RRECOMMENDS_${PN} += "${TCLIBC}-dbg" -RDEPENDS_${PN}-ptest += " file perl perl-module-file-glob sed ${PN}-dbg" +RDEPENDS_${PN}-ptest += " bash file 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. @@ -134,40 +134,45 @@ do_install_ptest() { for parent_dir in ${S} ${B} ; do cd $parent_dir - # exclude shell or the package won't install - rm -rf none/tests/shell* 2>/dev/null - subdirs=" \ cachegrind/tests \ callgrind/tests \ + dhat/tests \ drd/tests \ + exp-bbv/tests \ + exp-dhat/tests \ gdbserver_tests \ helgrind/tests \ + lackey/tests \ massif/tests \ memcheck/tests \ none/tests \ tests \ " - # Get the vg test scripts, filters, and expected files for dir in $subdirs ; do find $dir | cpio -pvdu ${D}${PTEST_PATH} done cd $saved_dir done + cp ${B}/config.h ${D}${PTEST_PATH} + mkdir ${D}${PTEST_PATH}/perf + cp ${B}/perf/bigcode ${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 - # clean out build artifacts before building the rpm + # clean out build artifacts before building the package. Keep config.h for ptests. + mv ${D}${PTEST_PATH}/config.h ${D}${PTEST_PATH}/config_h + find ${D}${PTEST_PATH} \ - \( -name "Makefile*" \ + \( \ + -name "Makefile*" \ -o -name "*.o" \ - -o -name "*.c" \ - -o -name "*.S" \ - -o -name "*.h" \) \ + \) \ -exec rm {} \; mv ${D}${PTEST_PATH}/cachegrind/tests/a_c ${D}${PTEST_PATH}/cachegrind/tests/a.c touch ${D}${PTEST_PATH}/cachegrind/tests/a.c -r ${D}${PTEST_PATH}/cachegrind/tests/cgout-test + mv ${D}${PTEST_PATH}/config_h ${D}${PTEST_PATH}/config.h # find *_annotate in ${bindir} for yocto build sed -i s:\.\./\.\./cachegrind/cg_annotate:${bindir}/cg_annotate: ${D}${PTEST_PATH}/cachegrind/tests/ann1.vgtest |