5 TESTSRC= ${SRCTOP}/contrib/netbsd-tests/lib/libm
7 # All architectures on FreeBSD have fenv.h
11 CFLAGS+= -I${TESTSRC:H}/libc/gen
13 # Define __HAVE_LONG_DOUBLE for architectures whose long double has greater
14 # precision than their double.
15 .if ${MACHINE_CPUARCH} == "aarch64" || \
16 ${MACHINE_CPUARCH} == "amd64" || \
17 ${MACHINE_CPUARCH} == "i386" || \
18 ${MACHINE_CPUARCH} == "riscv"
19 CFLAGS+= -D__HAVE_LONG_DOUBLE
22 # Avoid builtins, to force the compiler to emit calls to the libm
23 # functions, and not calculate any results in advance.
26 NETBSD_ATF_TESTS_C= acos_test
27 NETBSD_ATF_TESTS_C+= asin_test
28 NETBSD_ATF_TESTS_C+= atan_test
29 NETBSD_ATF_TESTS_C+= bit_test
30 # TODO: NETBSD_ATF_TESTS_CXX+= cabsl_test
31 NETBSD_ATF_TESTS_C+= cbrt_test
32 NETBSD_ATF_TESTS_C+= ceil_test
33 NETBSD_ATF_TESTS_C+= casinh_test
34 NETBSD_ATF_TESTS_C+= cos_test
35 NETBSD_ATF_TESTS_C+= cosh_test
36 NETBSD_ATF_TESTS_C+= erf_test
37 NETBSD_ATF_TESTS_C+= exp_test
38 NETBSD_ATF_TESTS_C+= fmod_test
39 NETBSD_ATF_TESTS_C+= fe_round_test
40 NETBSD_ATF_TESTS_C+= hypot_test
41 NETBSD_ATF_TESTS_C+= infinity_test
42 NETBSD_ATF_TESTS_C+= ilogb_test
43 NETBSD_ATF_TESTS_C+= ldexp_test
44 NETBSD_ATF_TESTS_C+= log_test
45 NETBSD_ATF_TESTS_C+= pow_test
46 NETBSD_ATF_TESTS_C+= precision_test
47 NETBSD_ATF_TESTS_C+= round_test
48 NETBSD_ATF_TESTS_C+= scalbn_test
49 NETBSD_ATF_TESTS_C+= sin_test
50 NETBSD_ATF_TESTS_C+= sinh_test
51 NETBSD_ATF_TESTS_C+= sqrt_test
52 NETBSD_ATF_TESTS_C+= tan_test
53 NETBSD_ATF_TESTS_C+= tanh_test
55 ATF_TESTS_C+= cexp_test
56 ATF_TESTS_C+= conj_test
57 ATF_TESTS_C+= csqrt_test
58 ATF_TESTS_C+= ctrig_test
59 ATF_TESTS_C+= exponential_test
60 ATF_TESTS_C+= fenv_test
61 ATF_TESTS_C+= fma_test
62 ATF_TESTS_C+= fmaxmin_test
63 ATF_TESTS_C+= ilogb2_test
64 ATF_TESTS_C+= invtrig_test
65 ATF_TESTS_C+= invctrig_test
66 ATF_TESTS_C+= logarithm_test
67 ATF_TESTS_C+= lrint_test
68 ATF_TESTS_C+= lround_test
69 ATF_TESTS_C+= nan_test
70 ATF_TESTS_C+= nearbyint_test
71 ATF_TESTS_C+= next_test
72 ATF_TESTS_C+= rem_test
73 ATF_TESTS_C+= trig_test
75 .if !empty(PROG) && !empty(TAP_TESTS_C:M${PROG})
79 #COPTS+= -Wfloat-equal
83 SRCS.ilogb2_test= ilogb_test.c
85 LIBADD.fenv_test+= util
88 # Copied from lib/msun/Makefile
89 .if ${MACHINE_CPUARCH} == "i386"
92 ARCH_SUBDIR= ${MACHINE_CPUARCH}
95 .include "../${ARCH_SUBDIR}/Makefile.inc"
97 # XXX: for some odd reason float.h doesn't tell the full story about what the
99 CFLAGS+= -DLDBL_PREC=${LDBL_PREC}
101 CFLAGS.fe_round_test+= -D__HAVE_FENV
103 .include <bsd.compiler.mk>
104 .if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 120000
105 # Silence '#pragma FENV_ACCESS' is not supported on this target - ignored
106 CWARNFLAGS+= -Wno-error=ignored-pragmas
109 .include <netbsd-tests.test.mk>
111 .include <bsd.test.mk>