xref: /freebsd/lib/libc/tests/stdlib/Makefile (revision d59c7ea2701fe7b73b32eef49a7c712ef38de5a0)
1.include <src.opts.mk>
2
3ATF_TESTS_C+=		bsearch_test
4.if ${COMPILER_FEATURES:Mblocks}
5ATF_TESTS_C+=		bsearch_b_test
6.endif
7ATF_TESTS_C+=		bsearch_s_test
8ATF_TESTS_C+=		clearenv_test
9ATF_TESTS_C+=		cxa_atexit_test
10ATF_TESTS_C+=		dynthr_test
11ATF_TESTS_C+=		getenv_r_test
12ATF_TESTS_C+=		heapsort_test
13ATF_TESTS_C+=		libc_exit_test
14ATF_TESTS_C+=		mergesort_test
15ATF_TESTS_C+=		qsort_test
16.if ${COMPILER_FEATURES:Mblocks}
17ATF_TESTS_C+=		qsort_b_test
18.endif
19ATF_TESTS_C+=		qsort_r_compat_test
20ATF_TESTS_C+=		qsort_r_test
21ATF_TESTS_C+=		qsort_s_test
22ATF_TESTS_C+=		qsort_bench
23ATF_TESTS_C+=		set_constraint_handler_s_test
24ATF_TESTS_C+=		strfmon_test
25ATF_TESTS_C+=		strfrom_test
26ATF_TESTS_C+=		system_test
27ATF_TESTS_C+=		tsearch_test
28ATF_TESTS_CXX+=		cxa_thread_atexit_test
29ATF_TESTS_CXX+=		cxa_thread_atexit_nothr_test
30
31# All architectures on FreeBSD have fenv.h
32CFLAGS+=	-D__HAVE_FENV
33
34# Define __HAVE_LONG_DOUBLE for architectures whose long double has greater
35# precision than their double.
36.if ${MACHINE_CPUARCH} == "aarch64" || \
37    ${MACHINE_CPUARCH} == "amd64" || \
38    ${MACHINE_CPUARCH} == "i386" || \
39    ${MACHINE_ARCH} == "powerpc64le" || \
40    ${MACHINE_CPUARCH} == "riscv"
41CFLAGS+=	-D__HAVE_LONG_DOUBLE
42.endif
43
44# TODO: t_getenv_thread, t_mi_vector_hash, t_strtoi
45NETBSD_ATF_TESTS_C+=	abs_test
46NETBSD_ATF_TESTS_C+=	atoi_test
47NETBSD_ATF_TESTS_C+=	div_test
48NETBSD_ATF_TESTS_C+=	getenv_test
49NETBSD_ATF_TESTS_C+=	exit_test
50NETBSD_ATF_TESTS_C+=	hsearch_test
51NETBSD_ATF_TESTS_C+=	posix_memalign_test
52NETBSD_ATF_TESTS_C+=	random_test
53NETBSD_ATF_TESTS_C+=	strtod_test
54NETBSD_ATF_TESTS_C+=	strtol_test
55
56# TODO: need to come up with a correct explanation of what the patch pho does
57# with h_atexit
58#ATF_TESTS_SH=	atexit_test
59NETBSD_ATF_TESTS_SH=	getopt_test
60
61.include "../Makefile.netbsd-tests"
62
63BINDIR=		${TESTSDIR}
64
65# TODO: see comment above
66#PROGS+=		h_atexit
67PROGS+=		h_getopt h_getopt_long
68
69CFLAGS+=	-I${.CURDIR}
70
71LIBADD.cxa_thread_atexit_test+=		pthread
72
73# Tests that require blocks support
74.for t in bsearch_b_test qsort_b_test
75CFLAGS.${t}.c+=		-fblocks
76LIBADD.${t}+=		BlocksRuntime
77.endfor
78
79.for t in h_getopt h_getopt_long
80CFLAGS.$t+=	-I${LIBNETBSD_SRCDIR} -I${SRCTOP}/contrib/netbsd-tests
81LDFLAGS.$t+=	-L${LIBNETBSD_OBJDIR}
82
83LIBADD.${t}+=	netbsd util
84.endfor
85
86LIBADD.libc_exit_test+=		pthread
87LIBADD.strtod_test+=		m
88LIBADD.system_test+=		pthread
89
90SUBDIR+=	dynthr_mod
91SUBDIR+=	libatexit
92
93.include <bsd.test.mk>
94