]> code.ossystems Code Review - openembedded-core.git/commitdiff
openssl: fix ptest
authorRoss Burton <ross.burton@intel.com>
Fri, 19 Oct 2018 19:43:17 +0000 (20:43 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 20 Oct 2018 21:39:25 +0000 (22:39 +0100)
Previously the ptest installation was simply a copy of the entire build tree,
which is terribly ugly.

Instead copy just the pieces we need, symlink to /usr as appropriate, and add
missing dependencies.  Remove PRIVATE_LIBS as we don't ship copies of the
libraries now.

Also remember to do 'set -x' in run-ptest, so if the tests fail the runner
knows!

[ YOCTO #12965 ]
[ YOCTO #12967 ]

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-connectivity/openssl/openssl/run-ptest
meta/recipes-connectivity/openssl/openssl_1.1.1.bb

index 65c6cc7b86265eeacb46a44d7e7fcc6de714a0e8..0a620dea74aeef998155939ef33bc802e152cf60 100644 (file)
@@ -1,4 +1,12 @@
 #!/bin/sh
-cd test
-OPENSSL_ENGINES=../engines BLDTOP=.. SRCTOP=.. perl run_tests.pl
-cd ..
+
+set -e
+
+# Optional arguments are 'list' to lists all tests, or the test name (base name
+# ie test_evp, not 03_test_evp.t).
+
+export TOP=.
+# OPENSSL_ENGINES is relative from the test binaries
+export OPENSSL_ENGINES=../engines
+
+perl ./test/run_tests.pl $*
index 0d80aba64d795b4baaf89edb196981c6cf155b76..4516f610217230a9f3834c83bdf0549ca4230e34 100644 (file)
@@ -151,10 +151,22 @@ do_install_append_class-nativesdk () {
 }
 
 do_install_ptest () {
-       cp -r * ${D}${PTEST_PATH}
-}
+       cp ${B}/Configure ${B}/configdata.pm ${D}${PTEST_PATH}
+       # TODO fuzz needs to be pruned of non-binaries
+       cp -r ${B}/external ${B}/test ${B}/fuzz ${B}/util ${D}${PTEST_PATH}
+
+       # For test_shlibload
+       ln -s ${libdir}/libcrypto.so.1.1 ${D}${PTEST_PATH}/libcrypto.so
+       ln -s ${libdir}/libssl.so.1.1 ${D}${PTEST_PATH}/libssl.so
 
-PRIVATE_LIBS_${PN}-ptest = "libcrypto.so.1.1 libssl.so.1.1"
+       install -d ${D}${PTEST_PATH}/apps
+       ln -s ${bindir}/openssl ${D}${PTEST_PATH}/apps
+       install -m644 ${B}/apps/*.pem ${B}/apps/*.srl ${B}/apps/openssl.cnf ${D}${PTEST_PATH}/apps
+       install -m755 ${B}/apps/CA.pl ${D}${PTEST_PATH}/apps
+
+       install -d ${D}${PTEST_PATH}/engines
+       install -m755 ${B}/engines/ossltest.so ${D}${PTEST_PATH}/engines
+}
 
 # Add the openssl.cnf file to the openssl-conf package. Make the libcrypto
 # package RRECOMMENDS on this package. This will enable the configuration
@@ -176,7 +188,7 @@ CONFFILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf"
 RRECOMMENDS_libcrypto += "openssl-conf"
 RDEPENDS_${PN}-bin = "perl"
 RDEPENDS_${PN}-misc = "perl"
-RDEPENDS_${PN}-ptest += "perl-module-file-spec-functions bash python"
+RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash python"
 
 RPROVIDES_openssl-conf = "openssl10-conf"
 RREPLACES_openssl-conf = "openssl10-conf"