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