Polish netmap(4) testcases a bit

1. Not all kernels have netmap(4) support. Check for netmap(4) support before
   attempting to run the tests via the `PLAIN_REQUIRE_KERNEL_MODULE(..)` macro.
2. Libraries shouldn't be added to LDFLAGS; they should be added to LIBADD
   instead. This allows the build system to evaluate dependencies for sanity.
3. Sort some of the Makefile variables per bsd.README.

1., in particular, will resolve failures when running this testcase on kernels
lacking netmap(4) support, e.g., the i386 GENERIC kernels on ^/stable/11 and
^/stable/12.

PR:		237129
Reviewed by:	vmaffione
Approved by:	emaste (mentor)
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D19864
This commit is contained in:
Enji Cooper 2019-04-09 17:52:11 +00:00
parent 724ec8989b
commit c9c9de9366
2 changed files with 4 additions and 2 deletions

View File

@ -6,10 +6,11 @@ TESTSDIR= ${TESTSBASE}/sys/netmap
TEST_METADATA+= required_user="root"
TEST_METADATA+= is_exclusive=true
LDFLAGS+= -lpthread
CFLAGS+= -I${SRCTOP}/tests
PLAIN_TESTS_C+= ctrl-api-test
CFLAGS+= -I${SRCTOP}/tests
LIBADD+= pthread
WARNS?= 6
.include <bsd.test.mk>

View File

@ -1839,6 +1839,7 @@ main(int argc, char **argv)
#ifdef __FreeBSD__
PLAIN_REQUIRE_KERNEL_MODULE("if_tap", 0);
PLAIN_REQUIRE_KERNEL_MODULE("netmap", 0);
#endif
memset(&ctx_, 0, sizeof(ctx_));