From 7ba5011adfbbe7e0ef201912213547b97979c4fe Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 19 May 2023 15:38:45 +0100 Subject: [PATCH] libnl: clean up ptest libnl builds lots of test-* binaries but these are for manual testing purposes. Instead, the test suite is entirely contained in the check-all binary. Clean up the compilation by simply building check-all, and install it with libtool so the binary is installed correctly. There is no need to RDEPEND on libcheck as that happens automatically, and the rpath workaround appears to be obsolete. Finally rewrite run-ptest to invoke the test directly, and use the new automake-style output that has been added to libcheck. (From OE-Core rev: d500c46754ad8e8e3736c64b5b2e29039019fe88) Signed-off-by: Ross Burton Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- .../libnl/files/enable-serial-tests.patch | 29 ------------------- meta/recipes-support/libnl/files/run-ptest | 17 ++--------- meta/recipes-support/libnl/libnl_3.7.0.bb | 20 +++---------- 3 files changed, 6 insertions(+), 60 deletions(-) delete mode 100644 meta/recipes-support/libnl/files/enable-serial-tests.patch diff --git a/meta/recipes-support/libnl/files/enable-serial-tests.patch b/meta/recipes-support/libnl/files/enable-serial-tests.patch deleted file mode 100644 index db774ad821..0000000000 --- a/meta/recipes-support/libnl/files/enable-serial-tests.patch +++ /dev/null @@ -1,29 +0,0 @@ -From b1476d89bf7a0bc6062438731ee4e9026696328b Mon Sep 17 00:00:00 2001 -From: Eric Xu -Date: Fri, 9 Mar 2018 03:38:49 +0000 -Subject: [PATCH] Add ptest for libnl - -serial-tests is required to generate those targets. - -Upstream-Status: Inappropriate [oe-specific] -Signed-off-by: Eric Xu ---- - configure.ac | 2 +- - 1 files changed, 1 insertion(+), 1 deletions(-) - -diff --git a/configure.ac b/configure.ac -index dfead98..2cc8257 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -46,7 +46,7 @@ AC_INIT(libnl, [libnl_version], [], [], [http://www.infradead.org/~tgr/libnl/]) - AC_CONFIG_HEADERS([lib/defs.h]) - AC_CONFIG_AUX_DIR([build-aux]) - AC_CONFIG_MACRO_DIR([m4]) --AM_INIT_AUTOMAKE([-Wall foreign subdir-objects]) -+AM_INIT_AUTOMAKE([-Wall foreign subdir-objects serial-tests]) - m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)], []) - m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) - --- -2.13.3 - diff --git a/meta/recipes-support/libnl/files/run-ptest b/meta/recipes-support/libnl/files/run-ptest index e5c9eb0a32..0d0c665cd2 100755 --- a/meta/recipes-support/libnl/files/run-ptest +++ b/meta/recipes-support/libnl/files/run-ptest @@ -1,16 +1,3 @@ -#!/bin/sh +#! /bin/sh -num_fail=0 - -for test in check* -do - ./"$test" \ - && echo "PASS: $test" \ - || { - echo "FAIL: $test" - num_fail=$(( ${num_fail} + 1)) - } - -done - -exit $num_fail +CK_AUTOMAKE=1 ./check-all diff --git a/meta/recipes-support/libnl/libnl_3.7.0.bb b/meta/recipes-support/libnl/libnl_3.7.0.bb index ef286a6429..38d21ffe9c 100644 --- a/meta/recipes-support/libnl/libnl_3.7.0.bb +++ b/meta/recipes-support/libnl/libnl_3.7.0.bb @@ -15,7 +15,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" DEPENDS = "flex-native bison-native" SRC_URI = "${GITHUB_BASE_URI}/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \ - file://enable-serial-tests.patch \ file://run-ptest \ " @@ -51,26 +50,15 @@ FILES:${PN}-xfrm = "${libdir}/libnl-xfrm-3.so.*" RREPLACES:${PN}-genl = "libnl-genl2" RCONFLICTS:${PN}-genl = "libnl-genl2" -RDEPENDS:${PN}-ptest += "libcheck" -RRECOMMENDS:${PN}-ptest += "kernel-module-dummy kernel-module-bonding" DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'libcheck', '', d)}" - -# make sure the tests don't link against wrong so file -EXTRA_OECONF += "${@bb.utils.contains('PTEST_ENABLED', '1', '--disable-rpath', '', d)}" +RRECOMMENDS:${PN}-ptest += "kernel-module-dummy kernel-module-bonding" do_compile_ptest() { - # hack to remove the call to `make runtest-TESTS` - sed -i 's/$(MAKE) $(AM_MAKEFLAGS) runtest-TESTS//g' Makefile - oe_runmake check + oe_runmake ./tests/check-all } -do_install_ptest(){ - # legacy? tests are also installed, but ptest-runner will not run them - # upstream are not running these tests in their CI pipeline - # issue opened https://github.com/thom311/libnl/issues/270 - install -m 0755 tests/.libs/* ${D}${PTEST_PATH}/ - # contains build paths - rm ${D}${PTEST_PATH}/*.la +do_install_ptest() { + ./libtool install install ./tests/check-all ${D}${PTEST_PATH}/ } BBCLASSEXTEND = "native nativesdk"