On 27 August 2015 at 16:06, Jussi Kukkonen <[email protected]> wrote: > > Use the nettle testsuite as ptests. Skip "sha1-huge-test" because > it can take 20 minutes to finish. > > Signed-off-by: Jussi Kukkonen <[email protected]> > --- > ...d-target-to-only-build-tests-not-run-them.patch | 43 ++++++++++++++++++++++ > meta/recipes-support/nettle/files/run-ptest | 36 ++++++++++++++++++ > meta/recipes-support/nettle/nettle.inc | 21 ++++++++++- > 3 files changed, 98 insertions(+), 2 deletions(-) > create mode 100644 meta/recipes-support/nettle/files/Add-target-to-only-build-tests-not-run-them.patch > create mode 100644 meta/recipes-support/nettle/files/run-ptest > > diff --git a/meta/recipes-support/nettle/files/Add-target-to-only-build-tests-not-run-them.patch b/meta/recipes-support/nettle/files/Add-target-to-only-build-tests-not-run-them.patch > new file mode 100644 > index 0000000..9495d02 > --- /dev/null > +++ b/meta/recipes-support/nettle/files/Add-target-to-only-build-tests-not-run-them.patch > @@ -0,0 +1,43 @@ > +From 46edf01cc98db9f9feec984897836dfdd26bdc8d Mon Sep 17 00:00:00 2001 > +From: Jussi Kukkonen <[email protected]> > +Date: Wed, 12 Aug 2015 23:27:27 +0300 > +Subject: [PATCH] Add target to only build tests (not run them) > + > +Upstream-Status: ?
I've changed this to "Inappropriate" in the branch: it's not a complete patch for installable tests (that upstream might be interested in) but it's already useful for us. > +Signed-off-by: Jussi Kukkonen <[email protected]> > +--- > + Makefile.in | 3 +++ > + testsuite/Makefile.in | 2 ++ > + 2 files changed, 5 insertions(+) > + > +diff --git a/Makefile.in b/Makefile.in > +index 08efb7d..7909342 100644 > +--- a/Makefile.in > ++++ b/Makefile.in > +@@ -55,6 +55,9 @@ clean distclean mostlyclean maintainer-clean tags: > + echo "Making $@ in $d" ; (cd $d && $(MAKE) $@); done > + $(MAKE) $@-here > + > ++buildtest: > ++ echo "Making $@ in testsuite" ; (cd testsuite && $(MAKE) $@) > ++ > + check-here: > + true > + > +diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in > +index 6bc1907..bb65bf0 100644 > +--- a/testsuite/Makefile.in > ++++ b/testsuite/Makefile.in > +@@ -116,6 +116,8 @@ $(TARGETS) $(EXTRA_TARGETS): testutils.$(OBJEXT) ../nettle-internal.$(OBJEXT) \ > + # data. > + VALGRIND = valgrind --error-exitcode=1 --leak-check=full --show-reachable=yes @IF_ASM@ --partial-loads-ok=yes > + > ++buildtest: $(TS_ALL) > ++ > + # The PATH update is for locating dlls on w*ndows. > + check: $(TS_ALL) > + LD_LIBRARY_PATH=../.lib PATH="../.lib:$PATH" srcdir="$(srcdir)" \ > +-- > +2.1.4 > + > diff --git a/meta/recipes-support/nettle/files/run-ptest b/meta/recipes-support/nettle/files/run-ptest > new file mode 100644 > index 0000000..b90bed6 > --- /dev/null > +++ b/meta/recipes-support/nettle/files/run-ptest > @@ -0,0 +1,36 @@ > +#! /bin/sh > + > +cd testsuite > + > +failed=0 > +all=0 > + > +for f in *-test; do > + if [ "$f" = "sha1-huge-test" ] ; then > + echo "SKIP: $f (skipped for ludicrous run time)" > + continue > + fi > + > + "./$f" > + case "$?" in > + 0) > + echo "PASS: $f" > + all=$((all + 1)) > + ;; > + 77) > + echo "SKIP: $f" > + ;; > + *) > + echo "FAIL: $f" > + failed=$((failed + 1)) > + all=$((all + 1)) > + ;; > + esac > +done > + > +if [ "$failed" -eq 0 ] ; then > + echo "All $all tests passed" > +else > + echo "$failed of $all tests failed" > +fi > + > diff --git a/meta/recipes-support/nettle/nettle.inc b/meta/recipes-support/nettle/nettle.inc > index 0579b6c..fafff6d 100644 > --- a/meta/recipes-support/nettle/nettle.inc > +++ b/meta/recipes-support/nettle/nettle.inc > @@ -8,19 +8,36 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ > > DEPENDS += "gmp" > > -SRC_URI = "http://www.lysator.liu.se/~nisse/archive/${BP}.tar.gz" > +SRC_URI = "http://www.lysator.liu.se/~nisse/archive/${BP}.tar.gz \ > + file://Add-target-to-only-build-tests-not-run-them.patch \ > + file://run-ptest \ > + " > > SRC_URI[md5sum] = "003d5147911317931dd453520eb234a5" > SRC_URI[sha256sum] = "bc71ebd43435537d767799e414fce88e521b7278d48c860651216e1fc6555b40" > > EXTRA_OECONF = "--disable-openssl" > > +inherit autotools ptest > + > do_configure_prepend() { > if [ ! -e ${S}/acinclude.m4 -a -e ${S}/aclocal.m4 ]; then > cp ${S}/aclocal.m4 ${S}/acinclude.m4 > fi > } > > -inherit autotools > +do_compile_ptest() { > + oe_runmake buildtest > +} > + > +do_install_ptest() { > + install -d ${D}${PTEST_PATH}/testsuite/ > + install ${S}/testsuite/gold-bug.txt ${D}${PTEST_PATH}/testsuite/ > + install ${S}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ > + # tools can be found in PATH, not in ../tools/ > + sed -i -e 's|../tools/||' ${D}${PTEST_PATH}/testsuite/*-test > + install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ > +} > + > > BBCLASSEXTEND = "native nativesdk" > -- > 2.1.4 >
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
