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