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