From 5e07e6c376cf46d2788dcef53e9feba890c0236d Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 26 Aug 2022 15:23:37 +0100 Subject: [PATCH] libgcrypt: rewrite ptest Instead of installing pieces of the build system, we can install the test driver (which can also be used to list the files needed) and run the tests directly. Signed-off-by: Ross Burton Signed-off-by: Luca Ceresoli --- .../libgcrypt/files/no-native-gpg-error.patch | 18 ++++++++++++++++++ .../recipes-support/libgcrypt/files/run-ptest | 8 +++++++- .../libgcrypt/libgcrypt_1.10.1.bb | 19 ++++--------------- 3 files changed, 29 insertions(+), 16 deletions(-) create mode 100644 meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch diff --git a/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch b/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch new file mode 100644 index 00000000000..b9a607863d3 --- /dev/null +++ b/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch @@ -0,0 +1,18 @@ +Don't depend on a native libgpg-error to build the test driver, as it's +an optional dependency for some C annotations. + +Upstream-Status: Inappropriate +Signed-off-by: Ross Burton + +diff --git a/tests/testdrv.c b/tests/testdrv.c +index 0ccde326..6d6abd57 100644 +--- a/tests/testdrv.c ++++ b/tests/testdrv.c +@@ -32,7 +32,6 @@ + # include + # include + #endif +-#include /* For some macros. */ + + #include "stopwatch.h" + diff --git a/meta/recipes-support/libgcrypt/files/run-ptest b/meta/recipes-support/libgcrypt/files/run-ptest index 4818a061b4b..c349ae1944e 100644 --- a/meta/recipes-support/libgcrypt/files/run-ptest +++ b/meta/recipes-support/libgcrypt/files/run-ptest @@ -1,3 +1,9 @@ #!/bin/sh -make -C build/tests runtest-TESTS +# Run the tests in regression mode so they are quicker +export GCRYPT_IN_REGRESSION_TEST=1 +# The 'random' test invokes itself, so we need to be sure that the test +# directory is on PATH. +export PATH=$PATH:. + +./testdrv --verbose diff --git a/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb b/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb index 5047c9075f1..b0d88de3aa1 100644 --- a/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb +++ b/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb @@ -17,13 +17,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ " DEPENDS = "libgpg-error" -RDEPENDS:${PN}-ptest = "bash make" UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \ file://0001-libgcrypt-fix-m4-file-for-oe-core.patch \ file://0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \ file://0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch \ + file://no-native-gpg-error.patch \ file://run-ptest \ " SRC_URI[sha256sum] = "ef14ae546b0084cd84259f61a55e07a38c3b53afc0f546bffcef2f01baffe9de" @@ -38,8 +38,6 @@ inherit autotools texinfo binconfig-disabled pkgconfig ptest EXTRA_OECONF = "--disable-asm" EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'" -PRIVATE_LIBS:${PN}-ptest:append = " libgcrypt.so.20" - PACKAGECONFIG ??= "capabilities" PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap" @@ -49,18 +47,9 @@ do_configure:prepend () { } do_install_ptest() { - cp -r --preserve=mode,links -v ${S} ${D}${PTEST_PATH} - cp -r --preserve=mode,links -v ${B} ${D}${PTEST_PATH} - rm ${D}${PTEST_PATH}/build/cipher/gost-s-box - rm ${D}${PTEST_PATH}/build/doc/yat2m - rm ${D}${PTEST_PATH}/build/libtool - rm ${D}${PTEST_PATH}/build/config.status - rm ${D}${PTEST_PATH}/build/config.log - rm ${D}${PTEST_PATH}/build/src/mpicalc - rm ${D}${PTEST_PATH}/${BP}/autom4te* -rf - sed -i -e 's/Makefile:.*/Makefile-disabled:/' ${D}${PTEST_PATH}/build/Makefile - find ${D}/${PTEST_PATH}/build -name "*.cmake" -or -name "Makefile" \ - | xargs sed -e "s|${WORKDIR}|${PTEST_PATH}|g" -e "s|${WORKDIR}/recipe-sysroot-native||g" -i + cd tests + oe_runmake testdrv-build testdrv + install testdrv $(srcdir=${S}/tests ./testdrv-build --files | sort | uniq) ${D}${PTEST_PATH} } FILES:${PN}-dev += "${bindir}/hmac256 ${bindir}/dumpsexp" -- 2.47.3