32948b81c4
standard in C99 and POSIX.1-2001+. They are also not deprecated, since apart from being standard they can handle special args slightly better than the ilogb() functions. Move their documentation to ilogb.3. Try to use consistent and improved wording for both sets of functions. All of ieee854, C99 and POSIX have better wording and more details for special args. Add history for the logb() functions and ilogbl(). Fix history for ilogb().
159 lines
6.0 KiB
Makefile
159 lines
6.0 KiB
Makefile
# @(#)Makefile 5.1beta 93/09/24
|
|
# $FreeBSD$
|
|
#
|
|
# ====================================================
|
|
# Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
|
|
#
|
|
# Developed at SunPro, a Sun Microsystems, Inc. business.
|
|
# Permission to use, copy, modify, and distribute this
|
|
# software is freely granted, provided that this notice
|
|
# is preserved.
|
|
# ====================================================
|
|
#
|
|
#
|
|
|
|
.if ${MACHINE_ARCH} == "i386"
|
|
ARCH_SUBDIR= i387
|
|
.else
|
|
ARCH_SUBDIR= ${MACHINE_ARCH}
|
|
.endif
|
|
|
|
.include "${ARCH_SUBDIR}/Makefile.inc"
|
|
|
|
.PATH: ${.CURDIR}/bsdsrc
|
|
.PATH: ${.CURDIR}/man
|
|
.PATH: ${.CURDIR}/src
|
|
|
|
LIB= m
|
|
SHLIBDIR?= /lib
|
|
SHLIB_MAJOR= 4
|
|
COMMON_SRCS= b_exp.c b_log.c b_tgamma.c \
|
|
e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
|
|
e_atan2.c e_atan2f.c e_atanh.c e_atanhf.c e_cosh.c e_coshf.c e_exp.c \
|
|
e_expf.c e_fmod.c e_fmodf.c e_gamma.c e_gamma_r.c e_gammaf.c \
|
|
e_gammaf_r.c e_hypot.c e_hypotf.c e_j0.c e_j0f.c e_j1.c e_j1f.c \
|
|
e_jn.c e_jnf.c e_lgamma.c e_lgamma_r.c e_lgammaf.c e_lgammaf_r.c \
|
|
e_log.c e_log10.c e_log10f.c e_logf.c e_pow.c e_powf.c e_rem_pio2.c \
|
|
e_rem_pio2f.c e_remainder.c e_remainderf.c e_scalb.c e_scalbf.c \
|
|
e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c fenv.c \
|
|
k_cos.c k_cosf.c k_rem_pio2.c k_rem_pio2f.c k_sin.c k_sinf.c \
|
|
k_tan.c k_tanf.c \
|
|
s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c \
|
|
s_ceil.c s_ceilf.c s_ceill.c \
|
|
s_copysign.c s_copysignf.c s_cos.c s_cosf.c s_erf.c s_erff.c \
|
|
s_exp2.c s_exp2f.c s_expm1.c s_expm1f.c s_fabsf.c s_fdim.c \
|
|
s_finite.c s_finitef.c \
|
|
s_floor.c s_floorf.c s_floorl.c s_fma.c s_fmaf.c \
|
|
s_fmax.c s_fmaxf.c s_fmaxl.c s_fmin.c \
|
|
s_fminf.c s_fminl.c s_frexp.c s_frexpf.c s_ilogb.c s_ilogbf.c \
|
|
s_ilogbl.c s_isfinite.c s_isnan.c s_isnormal.c \
|
|
s_llrint.c s_llrintf.c s_llround.c s_llroundf.c s_llroundl.c \
|
|
s_log1p.c s_log1pf.c s_logb.c s_logbf.c s_lrint.c s_lrintf.c \
|
|
s_lround.c s_lroundf.c s_lroundl.c s_modff.c \
|
|
s_nearbyint.c s_nextafter.c s_nextafterf.c \
|
|
s_nexttowardf.c s_remquo.c s_remquof.c \
|
|
s_rint.c s_rintf.c s_round.c s_roundf.c s_roundl.c \
|
|
s_scalbln.c s_scalbn.c s_scalbnf.c s_signbit.c \
|
|
s_signgam.c s_significand.c s_significandf.c s_sin.c s_sinf.c s_tan.c \
|
|
s_tanf.c s_tanh.c s_tanhf.c s_trunc.c s_truncf.c s_truncl.c \
|
|
w_cabs.c w_cabsf.c w_drem.c w_dremf.c
|
|
|
|
# Location of fpmath.h and _fpmath.h
|
|
LIBCDIR= ${.CURDIR}/../libc
|
|
CFLAGS+= -I${LIBCDIR}/include -I${LIBCDIR}/${MACHINE_ARCH}
|
|
|
|
# C99 long double functions
|
|
COMMON_SRCS+= s_copysignl.c s_fabsl.c
|
|
.if ${LDBL_PREC} != 53
|
|
# If long double != double use these; otherwise, we alias the double versions.
|
|
COMMON_SRCS+= s_fmal.c s_frexpl.c s_nextafterl.c s_nexttoward.c s_scalbnl.c
|
|
.endif
|
|
|
|
# C99 complex functions
|
|
COMMON_SRCS+= s_cimag.c s_cimagf.c s_cimagl.c s_conj.c s_conjf.c s_conjl.c \
|
|
s_creal.c s_crealf.c s_creall.c
|
|
|
|
# FreeBSD's C library supplies these functions:
|
|
#COMMON_SRCS+= s_fabs.c s_frexp.c s_isnan.c s_ldexp.c s_modf.c
|
|
|
|
# Exclude the generic versions of what we provide in the MD area.
|
|
.PATH: ${.CURDIR}/${ARCH_SUBDIR}
|
|
.if defined(ARCH_SRCS)
|
|
.for i in ${ARCH_SRCS}
|
|
COMMON_SRCS:= ${COMMON_SRCS:N${i:R}.c}
|
|
.endfor
|
|
.endif
|
|
|
|
SRCS= ${COMMON_SRCS} ${ARCH_SRCS}
|
|
|
|
INCS= fenv.h math.h
|
|
|
|
MAN= acos.3 acosh.3 asin.3 asinh.3 atan.3 atan2.3 atanh.3 ceil.3 \
|
|
cimag.3 copysign.3 cos.3 cosh.3 erf.3 exp.3 fabs.3 fdim.3 \
|
|
feclearexcept.3 feenableexcept.3 fegetenv.3 \
|
|
fegetround.3 fenv.3 floor.3 \
|
|
fma.3 fmax.3 fmod.3 hypot.3 ieee.3 ieee_test.3 ilogb.3 j0.3 \
|
|
lgamma.3 lrint.3 lround.3 math.3 nextafter.3 remainder.3 rint.3 \
|
|
round.3 scalbn.3 signbit.3 sin.3 sinh.3 sqrt.3 tan.3 tanh.3 trunc.3
|
|
|
|
MLINKS+=acos.3 acosf.3
|
|
MLINKS+=acosh.3 acoshf.3
|
|
MLINKS+=asin.3 asinf.3
|
|
MLINKS+=asinh.3 asinhf.3
|
|
MLINKS+=atan.3 atanf.3
|
|
MLINKS+=atanh.3 atanhf.3
|
|
MLINKS+=atan2.3 atan2f.3
|
|
MLINKS+=ceil.3 ceilf.3 ceil.3 ceill.3
|
|
MLINKS+=cimag.3 cimagf.3 cimag.3 cimagl.3 \
|
|
cimag.3 conj.3 cimag.3 conjf.3 cimag.3 conjl.3 \
|
|
cimag.3 creal.3 cimag.3 crealf.3 cimag.3 creall.3
|
|
MLINKS+=copysign.3 copysignf.3 copysign.3 copysignl.3
|
|
MLINKS+=cos.3 cosf.3
|
|
MLINKS+=cosh.3 coshf.3
|
|
MLINKS+=erf.3 erfc.3 erf.3 erff.3 erf.3 erfcf.3
|
|
MLINKS+=exp.3 expm1.3 exp.3 log.3 exp.3 log10.3 exp.3 log1p.3 exp.3 pow.3 \
|
|
exp.3 exp2.3 exp.3 exp2f.3 exp.3 expf.3 \
|
|
exp.3 expm1f.3 exp.3 logf.3 exp.3 powf.3 \
|
|
exp.3 log10f.3 exp.3 log1pf.3
|
|
MLINKS+=fabs.3 fabsf.3 fabs.3 fabsl.3
|
|
MLINKS+=fdim.3 fdimf.3 fdim.3 fdiml.3
|
|
MLINKS+=feclearexcept.3 fegetexceptflag.3 feclearexcept.3 feraiseexcept.3 \
|
|
feclearexcept.3 fesetexceptflag.3 feclearexcept.3 fetestexcept.3
|
|
MLINKS+=feenableexcept.3 fedisableexcept.3 feenableexcept.3 fegetexcept.3
|
|
MLINKS+=fegetenv.3 feholdexcept.3 fegetenv.3 fesetenv.3 \
|
|
fegetenv.3 feupdateenv.3
|
|
MLINKS+=fegetround.3 fesetround.3
|
|
MLINKS+=floor.3 floorf.3 floor.3 floorl.3
|
|
MLINKS+=fma.3 fmaf.3 fma.3 fmal.3
|
|
MLINKS+=fmax.3 fmaxf.3 fmax.3 fmaxl.3 \
|
|
fmax.3 fmin.3 fmax.3 fminf.3 fmax.3 fminl.3
|
|
MLINKS+=fmod.3 fmodf.3
|
|
MLINKS+=hypot.3 cabs.3 hypot.3 cabsf.3 hypot.3 hypotf.3
|
|
MLINKS+=ieee_test.3 scalb.3 ieee_test.3 scalbf.3
|
|
MLINKS+=ieee_test.3 significand.3 ieee_test.3 significandf.3
|
|
MLINKS+=ilogb.3 ilogbf.3 ilogb.3 ilogbl.3 \
|
|
ilogb.3 logb.3 ilogb.3 logbf.3
|
|
MLINKS+=j0.3 j1.3 j0.3 jn.3 j0.3 y0.3 j0.3 y1.3 j0.3 y1f.3 j0.3 yn.3
|
|
MLINKS+=j0.3 j0f.3 j0.3 j1f.3 j0.3 jnf.3 j0.3 y0f.3 j0.3 ynf.3
|
|
MLINKS+=lgamma.3 gamma.3 lgamma.3 gammaf.3 lgamma.3 lgammaf.3 lgamma.3 tgamma.3
|
|
MLINKS+=lrint.3 llrint.3 lrint.3 llrintf.3 lrint.3 lrintf.3
|
|
MLINKS+=lround.3 llround.3 lround.3 llroundf.3 lround.3 llroundl.3 \
|
|
lround.3 lroundf.3 lround.3 lroundl.3
|
|
MLINKS+=nextafter.3 nextafterf.3 nextafter.3 nextafterl.3
|
|
MLINKS+=nextafter.3 nexttoward.3 nextafter.3 nexttowardf.3
|
|
MLINKS+=nextafter.3 nexttowardl.3
|
|
MLINKS+=remainder.3 remainderf.3
|
|
MLINKS+=remainder.3 remquo.3 remainder.3 remquof.3
|
|
MLINKS+=rint.3 rintf.3 rint.3 nearbyint.3 rint.3 nearbyintf.3
|
|
MLINKS+=round.3 roundf.3 round.3 roundl.3
|
|
MLINKS+=scalbn.3 scalbln.3 scalbn.3 scalblnf.3 scalbn.3 scalblnl.3
|
|
MLINKS+=scalbn.3 scalbnf.3 scalbn.3 scalbnl.3
|
|
MLINKS+=sin.3 sinf.3
|
|
MLINKS+=sinh.3 sinhf.3
|
|
MLINKS+=sqrt.3 cbrt.3 sqrt.3 cbrtf.3 sqrt.3 sqrtf.3
|
|
MLINKS+=tan.3 tanf.3
|
|
MLINKS+=tanh.3 tanhf.3
|
|
MLINKS+=trunc.3 truncf.3 trunc.3 truncl.3
|
|
|
|
.include <bsd.lib.mk>
|