# $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. # ==================================================== # # LIBDIR = ${STAGEDIR}/lib INCDIR = ${STAGEDIR}/usr/include .if ${MACHINE_ARCH} == "i386" ARCH_SUBDIR = i387 .else ARCH_SUBDIR = ${MACHINE_ARCH} .endif .if exists(${ARCH_SUBDIR}) .include "${ARCH_SUBDIR}/Buildfile.inc" .PATH: ${.CURDIR}/${ARCH_SUBDIR} # long double format .if ${LDBL_PREC} == 64 .PATH: ${.CURDIR}/ld80 CFLAGS+= -I${.CURDIR}/ld80 .elif ${LDBL_PREC} == 113 .PATH: ${.CURDIR}/ld128 CFLAGS+= -I${.CURDIR}/ld128 .endif .endif .PATH: ${.CURDIR}/bsdsrc .PATH: ${.CURDIR}/src .PATH: ${.CURDIR}/man LIB = m SHLIB_MAJOR = 5 WARNS ?= 1 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_sin.c \ k_sinf.c \ k_tan.c \ k_tanf.c \ s_asinh.c \ s_asinhf.c \ s_atan.c \ s_atanf.c \ s_carg.c \ s_cargf.c \ s_cargl.c \ s_cbrt.c \ s_cbrtf.c \ s_ceil.c \ s_ceilf.c \ s_copysign.c \ s_copysignf.c \ s_cos.c \ s_cosf.c \ s_csqrt.c \ s_csqrtf.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_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_nan.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_tgammaf.c \ s_trunc.c \ s_truncf.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${.CURDIR}/src -I${LIBCDIR}/include \ -I${LIBCDIR}/${MACHINE_ARCH} SYM_MAPS+= ${.CURDIR}/Symbol.map VERSION_DEF = ${LIBCDIR}/Versions.def SYMBOL_MAPS = ${SYM_MAPS} # C99 long double functions COMMON_SRCS += \ s_copysignl.c \ s_fabsl.c \ s_llrintl.c \ s_lrintl.c \ s_modfl.c .if defined(LDBL_PREC) && ${LDBL_PREC} != 53 # If long double != double use these; otherwise, we alias the double versions. COMMON_SRCS += \ e_acosl.c \ e_asinl.c \ e_atan2l.c \ e_fmodl.c \ e_hypotl.c \ e_remainderl.c \ e_sqrtl.c \ invtrig.c \ k_cosl.c \ k_sinl.c \ k_tanl.c \ s_atanl.c \ s_ceill.c \ s_cosl.c \ s_cprojl.c \ s_csqrtl.c \ s_exp2l.c \ s_floorl.c \ s_fmal.c \ s_frexpl.c \ s_logbl.c \ s_nanl.c \ s_nextafterl.c \ s_nexttoward.c \ s_remquol.c \ s_rintl.c \ s_scalbnl.c \ s_sinl.c \ s_tanl.c \ s_truncl.c \ w_cabsl.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_cproj.c \ s_cprojf.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. .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 NOT_MACHINE_ARCH = host .include