mirror of
https://git.yoctoproject.org/poky
synced 2026-04-03 20:02:24 +02:00
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 (From OE-Core rev: 083a5dd27d305ecd12214f2665460dbe06b96c2a) 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:
committed by
Richard Purdie
parent
fb5556a4b6
commit
ecb8b17efc
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user