xref: /freebsd/tests/sys/kern/Makefile (revision 160a2ba804973e4b258c24247fa7c0cdc230dfb4)
1.include <src.opts.mk>
2
3PACKAGE=	tests
4
5TESTSRC=	${SRCTOP}/contrib/netbsd-tests/kernel
6.PATH:		${SRCTOP}/sys/kern
7
8TESTSDIR=	${TESTSBASE}/sys/kern
9
10ATF_TESTS_C+=	basic_signal
11.if ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH} != "powerpc" && \
12	${MACHINE_ARCH} != "powerpcspe"
13# No support for atomic_load_64 on i386 or (32-bit) powerpc
14ATF_TESTS_C+=	kcov
15.endif
16ATF_TESTS_C+=	kern_copyin
17ATF_TESTS_C+=	kern_descrip_test
18ATF_TESTS_C+=	fdgrowtable_test
19ATF_TESTS_C+=	kill_zombie
20.if ${MK_OPENSSL} != "no"
21ATF_TESTS_C+=	ktls_test
22.endif
23ATF_TESTS_C+=	ktrace_test
24ATF_TESTS_C+=	listener_wakeup
25ATF_TESTS_C+=	module_test
26ATF_TESTS_C+=	prace
27ATF_TESTS_C+=	ptrace_test
28TEST_METADATA.ptrace_test+=		timeout="15"
29ATF_TESTS_C+=	reaper
30ATF_TESTS_C+=	sched_affinity
31ATF_TESTS_C+=	shutdown_dgram
32ATF_TESTS_C+=	sigaltstack
33ATF_TESTS_C+=	sigwait
34ATF_TESTS_C+=	socket_accept
35ATF_TESTS_C+=	socket_accf
36ATF_TESTS_C+=	socket_msg_trunc
37ATF_TESTS_C+=	socket_msg_waitall
38ATF_TESTS_C+=	socket_splice
39TEST_METADATA.sigwait+=	is_exclusive="true"
40.if ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH:Mpowerpc*} == ""
41ATF_TESTS_C+=	subr_physmem_test
42.endif
43PLAIN_TESTS_C+=	subr_unit_test
44ATF_TESTS_C+=	sysctl_kern_proc
45ATF_TESTS_C+=	sys_getrandom
46ATF_TESTS_C+=	tty_pts
47ATF_TESTS_C+=	unix_dgram
48ATF_TESTS_C+=	unix_passfd_dgram
49TEST_METADATA.unix_passfd_dgram+=	is_exclusive="true"
50ATF_TESTS_C+=	unix_passfd_stream
51TEST_METADATA.unix_passfd_stream+=	is_exclusive="true"
52ATF_TESTS_C+=	unix_seqpacket_test
53TEST_METADATA.unix_seqpacket_test+=	timeout="15"
54ATF_TESTS_C+=	unix_stream
55ATF_TESTS_C+=	waitpid_nohang
56ATF_TESTS_C+=	pdeathsig
57ATF_TESTS_C+=	sigsys
58TEST_METADATA.sigsys+=	is_exclusive="true"
59
60ATF_TESTS_SH+=	coredump_phnum_test
61ATF_TESTS_SH+=	logsigexit_test
62ATF_TESTS_SH+=	jailmeta
63ATF_TESTS_SH+=	sonewconn_overflow
64TEST_METADATA.sonewconn_overflow+=	required_programs="python"
65TEST_METADATA.sonewconn_overflow+=	required_user="root"
66TEST_METADATA.sonewconn_overflow+=	is_exclusive="true"
67ATF_TESTS_SH+=	sendfile_test
68ATF_TESTS_SH+=	sysctl_security_jail_children
69
70${PACKAGE}FILES+=	sonewconn_overflow.py
71${PACKAGE}FILESMODE_sonewconn_overflow.py=0555
72
73BINDIR=		${TESTSDIR}
74PROGS+=		coredump_phnum_helper
75PROGS+=		pdeathsig_helper
76PROGS+=		sendfile_helper
77
78CFLAGS.sys_getrandom+=			-I${SRCTOP}/sys/contrib/zstd/lib
79LIBADD.sys_getrandom+=			zstd
80LIBADD.sys_getrandom+=			c
81LIBADD.sys_getrandom+=			pthread
82LIBADD.ptrace_test+=			pthread
83LIBADD.unix_seqpacket_test+=		pthread
84LIBADD.kcov+=				pthread
85CFLAGS.ktls_test+=			-DOPENSSL_API_COMPAT=0x10100000L
86LIBADD.ktls_test+=			crypto util
87LIBADD.listener_wakeup+=		pthread
88LIBADD.shutdown_dgram+=			pthread
89LIBADD.socket_msg_waitall+=		pthread
90LIBADD.socket_splice+=			pthread
91LIBADD.sendfile_helper+=		pthread
92LIBADD.fdgrowtable_test+=		util pthread kvm procstat
93LIBADD.sigwait+=			rt
94LIBADD.ktrace_test+=			sysdecode
95
96NETBSD_ATF_TESTS_C+=	lockf_test
97NETBSD_ATF_TESTS_C+=	mqueue_test
98NETBSD_ATF_TESTS_C+=	sysv_test
99
100CFLAGS.mqueue_test+=	-I${SRCTOP}/tests
101LIBADD.mqueue_test+=	rt
102
103LIBADD.tty_pts+=	atf_c util
104
105ATF_TESTS_C+=	libkern_crc32
106SRCS.libkern_crc32+=	libkern_crc32.c
107.PATH: ${SRCTOP}/sys/libkern
108SRCS.libkern_crc32+=	gsb_crc32.c
109CFLAGS.libkern_crc32+=	-DTESTING
110.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
111.PATH: ${SRCTOP}/sys/libkern/x86
112SRCS.libkern_crc32+=	crc32_sse42.c
113.elif ${MACHINE_CPUARCH} == "aarch64"
114.PATH: ${SRCTOP}/sys/libkern/arm64
115SRCS.libkern_crc32+=	crc32c_armv8.S
116.endif
117
118CFLAGS.subr_physmem.c+=	-D_WANT_FREEBSD_BITSET
119SRCS.subr_physmem_test+= subr_physmem_test.c subr_physmem.c
120
121# subr_unit.c contains functions whose prototypes lie in headers that cannot be
122# included in userland.  But as far as subr_unit_test goes, they're effectively
123# static.  So it's ok to disable -Wmissing-prototypes for this program.
124CFLAGS.subr_unit.c+=	-Wno-missing-prototypes
125SRCS.subr_unit_test+=	subr_unit.c
126
127WARNS?=	3
128
129TESTS_SUBDIRS+=	acct
130TESTS_SUBDIRS+=	execve
131TESTS_SUBDIRS+=	pipe
132TESTS_SUBDIRS+=	tty
133
134.include <netbsd-tests.test.mk>
135
136.include <bsd.test.mk>
137