xref: /freebsd/lib/libc/tests/gen/Makefile (revision 4a1c7529c96ff54657ef701fa89b92230ee6bac2)
1.include <bsd.own.mk>
2
3ATF_TESTS_C+=		arc4random_test
4ATF_TESTS_C+=		dir2_test
5ATF_TESTS_C+=		dlopen_empty_test
6ATF_TESTS_C+=		fmtcheck2_test
7ATF_TESTS_C+=		fmtmsg_test
8ATF_TESTS_C+=		fnmatch2_test
9ATF_TESTS_C+=		fpclassify2_test
10.if ${COMPILER_FEATURES:Mblocks}
11ATF_TESTS_C+=		fts_blocks_test
12.endif
13ATF_TESTS_C+=		fts_misc_test
14ATF_TESTS_C+=		fts_options_test
15ATF_TESTS_C+=		ftw_test
16ATF_TESTS_C+=		getentropy_test
17ATF_TESTS_C+=		getmntinfo_test
18ATF_TESTS_C+=		glob2_test
19.if ${COMPILER_FEATURES:Mblocks}
20ATF_TESTS_C+=		glob_blocks_test
21.endif
22ATF_TESTS_C+=		limits_test
23ATF_TESTS_C+=		makecontext_test
24ATF_TESTS_C+=		opendir_test
25ATF_TESTS_C+=		popen_test
26ATF_TESTS_C+=		posix_spawn_test
27ATF_TESTS_C+=		realpath2_test
28ATF_TESTS_C+=		scandir_test
29.if ${COMPILER_FEATURES:Mblocks}
30ATF_TESTS_C+=		scandir_blocks_test
31.endif
32ATF_TESTS_C+=		sig2str_test
33ATF_TESTS_C+=		sigsetops_test
34ATF_TESTS_C+=		wordexp_test
35
36# TODO: t_closefrom, t_fmtcheck, t_randomid,
37# TODO: t_siginfo (fixes require further inspection)
38# TODO: t_sethostname_test (consistently screws up the hostname)
39
40FILESGROUPS+=		posix_spawn_test_FILES
41
42posix_spawn_test_FILES=	spawnp_enoexec.sh
43posix_spawn_test_FILESDIR=	${TESTSDIR}
44posix_spawn_test_FILESMODE= 0755
45posix_spawn_test_FILESOWN= root
46posix_spawn_test_FILESGRP= wheel
47posix_spawn_test_FILESPACKAGE=	${PACKAGE}
48
49CFLAGS+=	-DTEST_LONG_DOUBLE
50
51# Define __HAVE_LONG_DOUBLE for architectures whose long double has greater
52# precision than their double.
53.if ${MACHINE_CPUARCH} == "aarch64" || \
54    ${MACHINE_CPUARCH} == "amd64" || \
55    ${MACHINE_CPUARCH} == "i386" || \
56    ${MACHINE_CPUARCH} == "riscv"
57CFLAGS+=	-D__HAVE_LONG_DOUBLE
58.endif
59
60NETBSD_ATF_TESTS_C=	alarm_test
61NETBSD_ATF_TESTS_C+=	assert_test
62NETBSD_ATF_TESTS_C+=	basedirname_test
63NETBSD_ATF_TESTS_C+=	cpuset_test
64NETBSD_ATF_TESTS_C+=	dir_test
65NETBSD_ATF_TESTS_C+=	floatunditf_test
66NETBSD_ATF_TESTS_C+=	fnmatch_test
67NETBSD_ATF_TESTS_C+=	fpclassify_test
68NETBSD_ATF_TESTS_C+=	fpsetmask_test
69NETBSD_ATF_TESTS_C+=	fpsetround_test
70NETBSD_ATF_TESTS_C+=	ftok_test
71NETBSD_ATF_TESTS_C+=	getcwd_test
72NETBSD_ATF_TESTS_C+=	getgrent_test
73NETBSD_ATF_TESTS_C+=	glob_test
74NETBSD_ATF_TESTS_C+=	humanize_number_test
75NETBSD_ATF_TESTS_C+=	isnan_test
76NETBSD_ATF_TESTS_C+=	nice_test
77NETBSD_ATF_TESTS_C+=	pause_test
78NETBSD_ATF_TESTS_C+=	raise_test
79NETBSD_ATF_TESTS_C+=	realpath_test
80NETBSD_ATF_TESTS_C+=	setdomainname_test
81NETBSD_ATF_TESTS_C+=	sethostname_test
82NETBSD_ATF_TESTS_C+=	sleep_test
83NETBSD_ATF_TESTS_C+=	syslog_test
84NETBSD_ATF_TESTS_C+=	time_test
85NETBSD_ATF_TESTS_C+=	ttyname_test
86NETBSD_ATF_TESTS_C+=	vis_test
87
88.include "../Makefile.netbsd-tests"
89
90CFLAGS.getentropy_test+=	-I${SRCTOP}/include
91LIBADD.getentropy_test+=	c
92LIBADD.humanize_number_test+=	util
93
94LIBADD.fpclassify_test+=m
95LIBADD.fpsetround_test+=m
96LIBADD.siginfo_test+=	m
97
98LIBADD.nice_test+=	pthread
99LIBADD.syslog_test+=	pthread
100
101CFLAGS+=		-I${.CURDIR}
102
103SRCS.fmtcheck2_test=	fmtcheck_test.c
104SRCS.fnmatch2_test=	fnmatch_test.c
105
106TEST_METADATA.setdomainname_test+=	is_exclusive=true
107TESTS_SUBDIRS=	execve
108TESTS_SUBDIRS+=	posix_spawn
109
110# Tests that require address sanitizer
111.if ${COMPILER_FEATURES:Masan}
112.for t in scandir_test realpath2_test
113CFLAGS.${t}.c+=		-fsanitize=address
114LDFLAGS.${t}+=		-fsanitize=address
115.endfor
116.endif
117
118# Tests that require blocks support
119.for t in fts_blocks_test glob_blocks_test scandir_blocks_test
120CFLAGS.${t}.c+=		-fblocks
121LIBADD.${t}+=		BlocksRuntime
122.endfor
123
124# The old testcase name
125TEST_FNMATCH=	test-fnmatch
126CLEANFILES+=		${GEN_SH_CASE_TESTCASES}
127sh-tests: .PHONY
128.for target in clean obj depend all
129	@cd ${.CURDIR} && ${MAKE} PROG=${TEST_FNMATCH} \
130	    -DNO_SUBDIR ${target}
131.endfor
132	@cd ${.OBJDIR} && ./${TEST_FNMATCH} -s 1 > \
133	    ${SRCTOP}/bin/sh/tests/builtins/case2.0
134	@cd ${.OBJDIR} && ./${TEST_FNMATCH} -s 2 > \
135	    ${SRCTOP}/bin/sh/tests/builtins/case3.0
136
137.include <bsd.test.mk>
138