xref: /freebsd/lib/msun/tests/Makefile (revision 3416500aef140042c64bc149cb1ec6620483bc44)
1# $FreeBSD$
2
3.include <bsd.own.mk>
4
5TESTSRC=	${SRCTOP}/contrib/netbsd-tests/lib/libm
6
7WARNS?=		0
8
9# All architectures on FreeBSD have fenv.h
10CFLAGS+=	-DHAVE_FENV_H
11
12# For isqemu.h
13CFLAGS+=	-I${TESTSRC:H}/libc/gen
14
15# Not sure why this isn't defined for all architectures, since most
16# have long double.
17.if ${MACHINE_CPUARCH} == "aarch64" || \
18    ${MACHINE_CPUARCH} == "amd64" || \
19    ${MACHINE_CPUARCH} == "i386"
20CFLAGS+=	-D__HAVE_LONG_DOUBLE
21.endif
22
23NETBSD_ATF_TESTS_C=	acos_test
24NETBSD_ATF_TESTS_C+=	asin_test
25NETBSD_ATF_TESTS_C+=	atan_test
26NETBSD_ATF_TESTS_C+=	cbrt_test
27NETBSD_ATF_TESTS_C+=	ceil_test
28NETBSD_ATF_TESTS_C+=	casinh_test
29NETBSD_ATF_TESTS_C+=	cos_test
30NETBSD_ATF_TESTS_C+=	cosh_test
31NETBSD_ATF_TESTS_C+=	erf_test
32NETBSD_ATF_TESTS_C+=	exp_test
33NETBSD_ATF_TESTS_C+=	fmod_test
34NETBSD_ATF_TESTS_C+=	fe_round_test
35NETBSD_ATF_TESTS_C+=	infinity_test
36NETBSD_ATF_TESTS_C+=	ilogb_test
37NETBSD_ATF_TESTS_C+=	ldexp_test
38NETBSD_ATF_TESTS_C+=	log_test
39NETBSD_ATF_TESTS_C+=	pow_test
40NETBSD_ATF_TESTS_C+=	precision_test
41NETBSD_ATF_TESTS_C+=	round_test
42NETBSD_ATF_TESTS_C+=	scalbn_test
43NETBSD_ATF_TESTS_C+=	sin_test
44NETBSD_ATF_TESTS_C+=	sinh_test
45NETBSD_ATF_TESTS_C+=	sqrt_test
46NETBSD_ATF_TESTS_C+=	tan_test
47NETBSD_ATF_TESTS_C+=	tanh_test
48
49TAP_TESTS_C+=	cexp_test
50TAP_TESTS_C+=	conj_test
51.if ${MACHINE_CPUARCH} != "aarch64"
52# Hits an assert in llvm when building for arm64:
53# https://llvm.org/bugs/show_bug.cgi?id=26081
54TAP_TESTS_C+=	csqrt_test
55.endif
56ATF_TESTS_C+=	ctrig_test
57TAP_TESTS_C+=	exponential_test
58TAP_TESTS_C+=	fenv_test
59TAP_TESTS_C+=	fma_test
60TAP_TESTS_C+=	fmaxmin_test
61TAP_TESTS_C+=	ilogb2_test
62TAP_TESTS_C+=	invtrig_test
63TAP_TESTS_C+=	invctrig_test
64TAP_TESTS_C+=	logarithm_test
65TAP_TESTS_C+=	lrint_test
66# XXX: the testcase crashes on all platforms, but only on head
67# (bug 205451)
68#TAP_TESTS_C+=	lround_test
69TAP_TESTS_C+=	nan_test
70TAP_TESTS_C+=	nearbyint_test
71TAP_TESTS_C+=	next_test
72TAP_TESTS_C+=	rem_test
73TAP_TESTS_C+=	trig_test
74
75.if !empty(PROG) && !empty(TAP_TESTS_C:M${PROG})
76CFLAGS+=	-O0
77.endif
78
79CSTD=		c99
80
81#COPTS+=	-Wfloat-equal
82
83IGNORE_PRAGMA=
84
85SRCS.ilogb2_test=	ilogb_test.c
86
87LIBADD+=	m
88
89# Copied from lib/msun/Makefile
90.if ${MACHINE_CPUARCH} == "i386"
91ARCH_SUBDIR= i387
92.else
93ARCH_SUBDIR= ${MACHINE_CPUARCH}
94.endif
95
96.include "../${ARCH_SUBDIR}/Makefile.inc"
97
98# XXX: for some odd reason float.h doesn't tell the full story about what the
99# precision is.
100CFLAGS+=	-DLDBL_PREC=${LDBL_PREC}
101
102.include <netbsd-tests.test.mk>
103
104.include <bsd.test.mk>
105