Makefile revision 1.88
11.88Sriastrad# $NetBSD: Makefile,v 1.88 2025/04/20 22:31:00 riastradh Exp $
21.1Sjmmv
31.1SjmmvNOMAN=		# defined
41.1Sjmmv
51.1Sjmmv.include <bsd.own.mk>
61.1Sjmmv
71.1SjmmvTESTSDIR=	${TESTSBASE}/kernel
81.1Sjmmv
91.43SkamilTESTS_SUBDIRS+=	kqueue
101.83SriastradTESTS_C+=	t_cloexec
111.83Sriastrad#TESTS_C+=	t_epoll
121.85SriastradTESTS_C+=	t_execregs
131.73SchristosTESTS_C+=	t_fcntl
141.77Srjs.if ${MKRUMP} != "no"
151.76SriastradTESTS_C+=	t_fdrestart
161.77Srjs.endif
171.80SchristosTESTS_C+=	t_kauth_pr_47598
181.80SchristosTESTS_C+=	t_ksem
191.62SchristosTESTS_C+=	t_lock
201.31SpgoyetteTESTS_C+=	t_lockf
211.74SchristosTESTS_C+=	t_memfd_create
221.27SpgoyetteTESTS_C+=	t_mqueue
231.82SkreTESTS_C+=	t_nanosleep
241.80SchristosTESTS_C+=	t_open_pr_57260
251.59SkamilTESTS_C+=	t_proccwd
261.80SchristosTESTS_C+=	t_pty
271.80SchristosTESTS_C+=	t_semtimedop
281.78SphoTESTS_C+=	t_signal_and_sp
291.28SpgoyetteTESTS_C+=	t_sysv
301.22SchristosTESTS_C+=	t_subr_prf
311.35SgsonTESTS_C+=	t_sysctl
321.49SchristosTESTS_C+=	t_timeleft
331.79Sbad.if ${MKRUMP} != "no"
341.79SbadTESTS_C+=	t_unmount
351.79Sbad.endif
361.53SkamilTESTS_C+=	t_zombie
371.1Sjmmv
381.81SmsaitohTESTS_SH=	t_fexecve
391.80SchristosTESTS_SH+=	t_fpufork
401.47SchristosTESTS_SH+=	t_interp
411.68SjruohoTESTS_SH+=	t_magic_symlinks
421.67SjruohoTESTS_SH+=	t_nointerpreter
431.60SchristosTESTS_SH+=	t_origin
441.50SchristosTESTS_SH+=	t_procpath
451.80SchristosTESTS_SH+=	t_ps_strings
461.70Smartin.if ${MKRUMP} != "no"
471.69SyamaguchTESTS_SH+=	t_simplehook
481.70Smartin.endif
491.80SchristosTESTS_SH+=	t_trapsignal
501.80SchristosTESTS_SH+=	t_umountstress
511.81SmsaitohTESTS_SH+=	t_umount
521.10Spgoyette
531.10SpgoyetteBINDIR=		${TESTSDIR}
541.83SriastradPROGS+=		h_cloexec
551.85SriastradPROGS+=		h_execregs
561.88SriastradPROGS+=		h_execsp_dynamic
571.88SriastradPROGS+=		h_execsp_static
581.83SriastradPROGS+=		h_fexecve
591.80SchristosPROGS+=		h_fpufork
601.80SchristosPROGS+=		h_getprocpath
611.63SchristosPROGS+=		h_ps_strings1
621.10SpgoyettePROGS+=		h_ps_strings2
631.48SchristosPROGS+=		h_segv
641.52Snakayama
651.52SnakayamaSCRIPTSDIR=	${TESTSDIR}
661.52SnakayamaSCRIPTS=	h_interpreter.sh
671.1Sjmmv
681.76SriastradLDADD.t_fdrestart+=	-lpthread
691.76SriastradLDADD.t_fdrestart+=	-lrumpnet_local
701.76SriastradLDADD.t_fdrestart+=	-lrumpnet_net
711.76SriastradLDADD.t_fdrestart+=	-lrumpnet_netinet
721.76SriastradLDADD.t_fdrestart+=	-lrumpnet
731.76SriastradLDADD.t_fdrestart+=	${LIBRUMPBASE}
741.76Sriastrad
751.29SnakayamaLDADD.t_mqueue+= -lrt
761.29Snakayama
771.79SbadLDADD.t_unmount+=	-lrumpfs_tmpfs
781.79SbadLDADD.t_unmount+=	${LIBRUMPBASE}
791.79Sbad
801.26Schristos
811.37Smatt.if (${MKRUMP} != "no") && !defined(BSD_MK_COMPAT_FILE)
821.26SchristosTESTS_SUBDIRS+=	tty
831.26Schristos
841.26SchristosTESTS_C+=	t_extattrctl
851.26SchristosTESTS_C+=	t_filedesc
861.26SchristosTESTS_C+=	t_rnd
871.66SchristosLDADD.t_extattrctl+= ${LIBRUMPBASE}
881.26SchristosLDADD.t_filedesc+=  ${LDADD.t_rnd}
891.66SchristosLDADD.t_rnd+=  -lrumpdev_rnd -lrumpdev ${LIBRUMPBASE}
901.26Schristos
911.26Schristos.endif
921.26Schristos
931.51SchristosLDADD.t_timeleft+=	-lpthread
941.51Schristos
951.44SkamilCPPFLAGS+=	-D_KERNTYPES
961.79SbadCPPFLAGS.t_unmount.c+=	-D_KMEMUSER -D__EXPOSE_MOUNT
971.2Spooka
981.88SriastradARCHDIR:=		${.PARSEDIR}/arch/${MACHINE_ARCH}
991.88Sriastrad.PATH:			${ARCHDIR}
1001.88Sriastrad
1011.88Sriastrad.if exists(${ARCHDIR}/stack_pointer.h)
1021.88SriastradCPPFLAGS.t_signal_and_sp.c+=	-I${ARCHDIR} -DHAVE_STACK_POINTER_H
1031.88Sriastrad.endif
1041.88Sriastrad
1051.88SriastradSRCS.t_signal_and_sp+=		t_signal_and_sp.c
1061.88Sriastrad.if exists(${ARCHDIR}/signalsphandler.S)
1071.88SriastradCPPFLAGS.t_signal_and_sp.c+=	-DHAVE_SIGNALSPHANDLER
1081.88SriastradSRCS.t_signal_and_sp+=		signalsphandler.S
1091.88Sriastrad.endif
1101.88Sriastrad
1111.88SriastradSRCS.h_execsp_dynamic+=		h_execsp.c
1121.88SriastradSRCS.h_execsp_static+=		h_execsp.c
1131.88Sriastrad.if exists(${ARCHDIR}/execsp.S)
1141.88SriastradCPPFLAGS.t_signal_and_sp.c+=	-DHAVE_EXECSP
1151.88SriastradSRCS.h_execsp_dynamic+=		execsp.S
1161.88SriastradSRCS.h_execsp_static+=		execsp.S
1171.88SriastradLDFLAGS.h_execsp_dynamic+=	-Wl,-e,execsp_start
1181.88SriastradLDFLAGS.h_execsp_static+=	-Wl,-e,execsp_start
1191.88Sriastrad.else
1201.88SriastradCPPFLAGS.h_execsp.c+=		-Dexecsp_main=main
1211.78Spho.endif
1221.88SriastradLDSTATIC.h_execsp_static=	-static
1231.78Spho
1241.1Sjmmv.PATH:			${NETBSDSRCDIR}/sys/kern
1251.1SjmmvTESTS_C+=		t_extent
1261.1SjmmvSRCS.t_extent=		t_extent.c subr_extent.c
1271.39SchristosCPPFLAGS.t_extent.c=	-D_EXTENT_TESTING -D__POOL_EXPOSE -D_KERNTYPES
1281.39SchristosCPPFLAGS.subr_extent.c=	-D_EXTENT_TESTING -D__POOL_EXPOSE -D_KERNTYPES
1291.1Sjmmv
1301.84SriastradTESTS_C+=		t_time_arith
1311.84SriastradSRCS.t_time_arith=	t_time_arith.c subr_time_arith.c
1321.84SriastradCPPFLAGS.t_time_arith.c+=	-I${NETBSDSRCDIR}/sys -D_TIME_TESTING
1331.84SriastradCPPFLAGS.subr_time_arith.c+=	-I${NETBSDSRCDIR}/sys -D_TIME_TESTING
1341.84SriastradLDADD.t_time_arith+=	-lutil
1351.84Sriastrad
1361.22Schristost_subr_prf.c: gen_t_subr_prf ${NETBSDSRCDIR}/sys/kern/subr_prf.c
1371.22Schristos	${HOST_SH} ${.ALLSRC} ${.TARGET}
1381.61Skamil.if ${MKSANITIZER:Uno} == "yes"
1391.61Skamil	# These symbols will be redefined by MKSANITIZER
1401.61Skamil	${TOOL_SED} -i '/undef .*printf/d' ${.TARGET}
1411.61Skamil.endif
1421.61Skamil
1431.36StlsCPPFLAGS.t_subr_prf.c=	-Wno-pointer-sign	# XXX platform vs kernel SHA2
1441.22Schristos
1451.58Smrg# Test explicitly tests failure modes.
1461.72SlukemCPPFLAGS.t_subr_prf.c+=	${CC_WNO_FORMAT_TRUNCATION}
1471.58Smrg
1481.61SkamilSANITIZER_RENAME_CLASSES+=		t_subr_prf
1491.61SkamilSANITIZER_RENAME_FILES.t_subr_prf+=	t_subr_prf.c
1501.61SkamilSANITIZER_RENAME_SYMBOL.t_subr_prf+=	snprintf
1511.61SkamilSANITIZER_RENAME_SYMBOL.t_subr_prf+=	vsnprintf
1521.61SkamilSANITIZER_RENAME_SYMBOL.t_subr_prf+=	sprintf
1531.61SkamilSANITIZER_RENAME_SYMBOL.t_subr_prf+=	vsnprintf
1541.61SkamilSANITIZER_RENAME_SYMBOL.t_subr_prf+=	vasprintf
1551.61Skamil
1561.22SchristosCLEANFILES+=	t_subr_prf.c
1571.22Schristos
1581.54SriastradLDADD.h_segv+=	-lm
1591.54Sriastrad
1601.85Sriastrad.if exists(arch/${MACHINE_ARCH}/execregs.h)
1611.85SriastradCPPFLAGS.t_execregs.c+=	-I${ARCHDIR}
1621.86SriastradCPPFLAGS.t_execregs.c+=	-I${.CURDIR}/../lib/libc/gen # isqemu.h
1631.85SriastradCPPFLAGS.t_execregs.c+=	-DHAVE_EXECREGS_TEST
1641.85SriastradSRCS.t_execregs+=	t_execregs.c
1651.85SriastradSRCS.t_execregs+=	execregs.c
1661.87SriastradLDSTATIC.h_execregs=	-static
1671.87SriastradLDFLAGS.h_execregs+=	-Wl,-e,execregs_start
1681.85Sriastrad.else
1691.85SriastradSRCS.h_execregs=	h_execregs_unimpl.c
1701.85Sriastrad.endif
1711.85Sriastrad
1721.1Sjmmv.include <bsd.test.mk>
173