xref: /netbsd/tests/kernel/Makefile (revision d868ac6b)
1# $NetBSD: Makefile,v 1.74 2023/07/29 12:16:34 christos Exp $
2
3NOMAN=		# defined
4
5.include <bsd.own.mk>
6
7TESTSDIR=	${TESTSBASE}/kernel
8
9TESTS_SUBDIRS+=	kqueue
10TESTS_C=	t_epoll
11TESTS_C+=	t_fcntl
12TESTS_C+=	t_lock
13TESTS_C+=	t_lockf
14TESTS_C+=	t_pty
15TESTS_C+=	t_memfd_create
16TESTS_C+=	t_mqueue
17TESTS_C+=	t_proccwd
18TESTS_C+=	t_sysv
19TESTS_C+=	t_subr_prf
20TESTS_C+=	t_kauth_pr_47598
21TESTS_C+=	t_ksem
22TESTS_C+=	t_sysctl
23TESTS_C+=	t_timeleft
24TESTS_C+=	t_zombie
25TESTS_C+=	t_open_pr_57260
26
27TESTS_SH=	t_umount
28TESTS_SH+=	t_umountstress
29TESTS_SH+=	t_ps_strings
30TESTS_SH+=	t_trapsignal
31TESTS_SH+=	t_interp
32TESTS_SH+=	t_magic_symlinks
33TESTS_SH+=	t_nointerpreter
34TESTS_SH+=	t_origin
35TESTS_SH+=	t_procpath
36TESTS_SH+=	t_fexecve
37TESTS_SH+=	t_fpufork
38.if ${MKRUMP} != "no"
39TESTS_SH+=	t_simplehook
40.endif
41
42BINDIR=		${TESTSDIR}
43PROGS=		h_fexecve
44PROGS+=		h_ps_strings1
45PROGS+=		h_ps_strings2
46PROGS+=		h_segv
47PROGS+=		h_getprocpath
48PROGS+=		h_fpufork
49
50SCRIPTSDIR=	${TESTSDIR}
51SCRIPTS=	h_interpreter.sh
52
53LDADD.t_mqueue+= -lrt
54
55
56.if (${MKRUMP} != "no") && !defined(BSD_MK_COMPAT_FILE)
57TESTS_SUBDIRS+=	tty
58
59TESTS_C+=	t_extattrctl
60TESTS_C+=	t_filedesc
61TESTS_C+=	t_rnd
62LDADD.t_extattrctl+= ${LIBRUMPBASE}
63LDADD.t_filedesc+=  ${LDADD.t_rnd}
64LDADD.t_rnd+=  -lrumpdev_rnd -lrumpdev ${LIBRUMPBASE}
65
66.endif
67
68LDADD.t_timeleft+=	-lpthread
69
70CPPFLAGS+=	-D_KERNTYPES
71
72.PATH:			${NETBSDSRCDIR}/sys/kern
73TESTS_C+=		t_extent
74SRCS.t_extent=		t_extent.c subr_extent.c
75CPPFLAGS.t_extent.c=	-D_EXTENT_TESTING -D__POOL_EXPOSE -D_KERNTYPES
76CPPFLAGS.subr_extent.c=	-D_EXTENT_TESTING -D__POOL_EXPOSE -D_KERNTYPES
77
78t_subr_prf.c: gen_t_subr_prf ${NETBSDSRCDIR}/sys/kern/subr_prf.c
79	${HOST_SH} ${.ALLSRC} ${.TARGET}
80.if ${MKSANITIZER:Uno} == "yes"
81	# These symbols will be redefined by MKSANITIZER
82	${TOOL_SED} -i '/undef .*printf/d' ${.TARGET}
83.endif
84
85CPPFLAGS.t_subr_prf.c=	-Wno-pointer-sign	# XXX platform vs kernel SHA2
86
87# Test explicitly tests failure modes.
88CPPFLAGS.t_subr_prf.c+=	${CC_WNO_FORMAT_TRUNCATION}
89
90SANITIZER_RENAME_CLASSES+=		t_subr_prf
91SANITIZER_RENAME_FILES.t_subr_prf+=	t_subr_prf.c
92SANITIZER_RENAME_SYMBOL.t_subr_prf+=	snprintf
93SANITIZER_RENAME_SYMBOL.t_subr_prf+=	vsnprintf
94SANITIZER_RENAME_SYMBOL.t_subr_prf+=	sprintf
95SANITIZER_RENAME_SYMBOL.t_subr_prf+=	vsnprintf
96SANITIZER_RENAME_SYMBOL.t_subr_prf+=	vasprintf
97
98CLEANFILES+=	t_subr_prf.c
99
100LDADD.h_segv+=	-lm
101
102.include <bsd.test.mk>
103