summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/oprofile/oprofile.inc
diff options
context:
space:
mode:
authorChong Lu <Chong.Lu@windriver.com>2014-06-06 09:25:10 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-06-10 17:23:57 +0100
commitac5a9835075a04726a64dbd669b9c89270b23865 (patch)
tree42b3fdb5a9710fd4606c858edeaaa70b66c440a7 /meta/recipes-kernel/oprofile/oprofile.inc
parent20f749de439aa962f32a3f4f5977fd44c9e76e33 (diff)
downloadopenembedded-core-ac5a9835075a04726a64dbd669b9c89270b23865.tar.gz
oprofile: Add PTEST regression testing to oprofile
The commit changes the oe-core oprofile recipe by adding the PTEST interface, implementing do_compile_ptest() and do_install_ptest(). The install routine adds several files that only the regression tests require. Also, a patch is necessary to inhibit executing the tests on the build host and to point to the correct target directory for the libutil++ test 'file-manip-tests'. That test requires the recipe to set SRCDIR in the build environment instead of determining the value from build-time host paths as for a self-hosted build. Signed-off-by: Dave Lerner <dave.lerner@windriver.com> Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-kernel/oprofile/oprofile.inc')
-rw-r--r--meta/recipes-kernel/oprofile/oprofile.inc31
1 files changed, 29 insertions, 2 deletions
diff --git a/meta/recipes-kernel/oprofile/oprofile.inc b/meta/recipes-kernel/oprofile/oprofile.inc
index ccf9f9fa61..aaba48e8a0 100644
--- a/meta/recipes-kernel/oprofile/oprofile.inc
+++ b/meta/recipes-kernel/oprofile/oprofile.inc
@@ -20,9 +20,11 @@ FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
SRC_URI = "file://opstart.patch \
file://oprofile-root.patch \
- file://acinclude.m4"
+ file://acinclude.m4 \
+ file://oprofile-cross-compile-tests.patch \
+ file://run-ptest"
-inherit autotools-brokensep pkgconfig
+inherit autotools-brokensep pkgconfig ptest
EXTRA_OECONF = "--with-kernel=${STAGING_KERNEL_DIR} --without-x"
do_configure () {
@@ -30,3 +32,28 @@ do_configure () {
cp ${WORKDIR}/acinclude.m4 ${S}/
autotools_do_configure
}
+
+EXTRA_OEMAKE = "SRCDIR=${PTEST_PATH}/libutil++/tests"
+do_compile_ptest() {
+ oe_runmake check
+}
+
+do_install_ptest() {
+ subdirs="libdb/tests libutil++/tests libregex/tests libutil/tests libop/tests libdb/tests "
+ cd ${S}
+ for tooltest in ${subdirs}
+ do
+ find ${tooltest} -perm /u=x -type f| cpio -pvdu ${D}${PTEST_PATH}
+ done
+
+ # needed by some libop tests
+ cp -r events ${D}${PTEST_PATH}
+
+ # needed by libregex regex_test
+ cp libregex/stl.pat ${D}${PTEST_PATH}/libregex
+ cp libregex/tests/mangled-name ${D}${PTEST_PATH}/libregex/tests
+
+ # needed by litutil++ file_manip_tests
+ cp libutil++/tests/file_manip_tests.cpp \
+ libutil++/tests/file_manip_tests.o ${D}${PTEST_PATH}/libutil++/tests
+}