Makefile revision 1.17
11.11Sjtc# @(#)Makefile 5.1beta 93/09/24 21.17Sjtc# $Id: Makefile,v 1.17 1994/03/08 17:20:51 jtc Exp $ 31.11Sjtc# 41.11Sjtc# ==================================================== 51.11Sjtc# Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 61.11Sjtc# 71.11Sjtc# Developed at SunPro, a Sun Microsystems, Inc. business. 81.11Sjtc# Permission to use, copy, modify, and distribute this 91.11Sjtc# software is freely granted, provided that this notice 101.11Sjtc# is preserved. 111.11Sjtc# ==================================================== 121.11Sjtc# 131.11Sjtc# 141.11Sjtc 151.11Sjtc# 161.11Sjtc# There are two options in making libm at fdlibm compile time: 171.11Sjtc# _IEEE_LIBM --- IEEE libm; smaller, and somewhat faster 181.11Sjtc# _MULTI_LIBM --- Support multi-standard at runtime by 191.11Sjtc# imposing wrapper functions defined in 201.11Sjtc# fdlibm.h: 211.11Sjtc# _IEEE_MODE -- IEEE 221.11Sjtc# _XOPEN_MODE -- X/OPEN 231.11Sjtc# _POSIX_MODE -- POSIX/ANSI 241.11Sjtc# _SVID3_MODE -- SVID 251.11Sjtc# 261.11Sjtc# Here is how to set up CFLAGS to create the desired libm at 271.11Sjtc# compile time: 281.1Scgd# 291.11Sjtc# CFLAGS = -D_IEEE_LIBM ... IEEE libm (recommended) 301.11Sjtc# CFLAGS = -D_SVID3_MODE ... Multi-standard supported 311.11Sjtc# libm with SVID as the 321.11Sjtc# default standard 331.11Sjtc# CFLAGS = -D_XOPEN_MODE ... Multi-standard supported 341.11Sjtc# libm with XOPEN as the 351.11Sjtc# default standard 361.11Sjtc# CFLAGS = -D_POSIX_MODE ... Multi-standard supported 371.11Sjtc# libm with POSIX as the 381.11Sjtc# default standard 391.11Sjtc# CFLAGS = ... Multi-standard supported 401.11Sjtc# libm with IEEE as the 411.11Sjtc# default standard 421.11Sjtc# 431.11Sjtc 441.11Sjtc.if (${MACHINE_ARCH} == "i386") 451.11Sjtc# Uncomment the following lines if you have a i387 (or i486 or Pentium) 461.11Sjtc#.PATH: ${.CURDIR}/arch/i387 471.17Sjtc#ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \ 481.17Sjtc# e_remainder.S e_scalb.S e_sqrt.S s_atan.S s_ceil.S s_copysign.S \ 491.17Sjtc# s_cos.S s_finite.S s_floor.S s_ilogb.S s_log1p.S s_logb.S \ 501.17Sjtc# s_rint.S s_scalbn.S s_sin.S s_tan.S 511.11Sjtc.elif (${MACHINE_ARCH} == "m68k") 521.17Sjtc.PATH: ${.CURDIR}/arch/mc68881 531.17SjtcARCH_SRCS = e_acos.S e_asin.S e_atanh.S e_cosh.S e_exp.S e_log.S e_log10.S \ 541.17Sjtc e_sinh.S s_atan.S s_copysign.S s_cos.S s_expm1.S s_finite.S \ 551.17Sjtc s_log1p.S s_logb.S s_scalbn.S s_sin.S s_sqrt.S s_tan.S s_tanh.S 561.11Sjtc.endif 571.1Scgd 581.11Sjtc.PATH: ${.CURDIR}/man 591.11Sjtc.PATH: ${.CURDIR}/src 601.1Scgd 611.3Smycroft 621.11SjtcCFLAGS+= -D_MULTI_LIBM -D_POSIX_MODE 631.3Smycroft 641.11SjtcLIB= m 651.17SjtcCOMMON_SRCS = k_standard.c k_rem_pio2.c k_cos.c k_sin.c k_tan.c \ 661.17Sjtc e_acos.c e_acosh.c e_asin.c e_atan2.c e_atanh.c e_cosh.c e_exp.c \ 671.17Sjtc e_fmod.c e_gamma.c e_gamma_r.c e_hypot.c e_j0.c e_j1.c e_jn.c \ 681.17Sjtc e_lgamma.c e_lgamma_r.c e_log.c e_log10.c e_pow.c e_rem_pio2.c \ 691.17Sjtc e_remainder.c e_scalb.c e_sinh.c e_sqrt.c \ 701.17Sjtc w_acos.c w_acosh.c w_asin.c w_atan2.c \ 711.17Sjtc w_atanh.c w_cosh.c w_exp.c w_fmod.c \ 721.17Sjtc w_gamma.c w_gamma_r.c w_hypot.c w_j0.c \ 731.17Sjtc w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \ 741.17Sjtc w_log.c w_log10.c w_pow.c w_remainder.c \ 751.17Sjtc w_scalb.c w_sinh.c w_sqrt.c \ 761.17Sjtc w_cabs.c w_drem.c \ 771.17Sjtc s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c \ 781.17Sjtc s_cos.c s_erf.c s_expm1.c s_finite.c s_floor.c \ 791.17Sjtc s_ilogb.c s_lib_version.c \ 801.17Sjtc s_log1p.c s_logb.c s_matherr.c s_nextafter.c \ 811.17Sjtc s_rint.c s_scalbn.c s_signgam.c s_significand.c s_sin.c \ 821.17Sjtc s_tan.c s_tanh.c 831.3Smycroft 841.13Sjtc# NetBSD's C library supplies these functions: 851.17Sjtc#COMMON_SRCS+= s_fabs.c s_frexp.c s_isnan.c s_ldexp.c s_modf.c 861.17Sjtc 871.17Sjtc 881.17SjtcSRCS=${COMMON_SRCS} 891.17Sjtc 901.17Sjtc# Substitute common sources with any arch specific sources 911.17Sjtc.for i in ${ARCH_SRCS} 921.17Sjtc SRCS:=${SRCS:S/${i:S/.S/.c/}/$i/} 931.17Sjtc.endfor 941.17Sjtc 951.1Scgd 961.1ScgdMAN3+= acos.0 acosh.0 asin.0 asinh.0 atan.0 atan2.0 atanh.0 ceil.0 \ 971.1Scgd cos.0 cosh.0 erf.0 exp.0 fabs.0 floor.0 fmod.0 hypot.0 ieee.0 \ 981.1Scgd infnan.0 j0.0 lgamma.0 math.0 rint.0 sin.0 sinh.0 sqrt.0 \ 991.1Scgd tan.0 tanh.0 1001.1Scgd 1011.1ScgdMLINKS+=erf.3 erfc.3 1021.1ScgdMLINKS+=exp.3 expm1.3 exp.3 log.3 exp.3 log10.3 exp.3 log1p.3 exp.3 pow.3 1031.1ScgdMLINKS+=hypot.3 cabs.3 1041.15SjtcMLINKS+=ieee.3 copysign.3 ieee.3 finite.3 ieee.3 ilogb.3 \ 1051.15Sjtc ieee.3 nextafter.3 ieee.3 remainder.3 ieee.3 scalbn.3 1061.1ScgdMLINKS+=j0.3 j1.3 j0.3 jn.3 j0.3 y0.3 j0.3 y1.3 j0.3 yn.3 1071.1ScgdMLINKS+=lgamma.3 gamma.3 1081.7SjtcMLINKS+=sqrt.3 cbrt.3 1091.1Scgd 1101.1Scgd 1111.1Scgd.include <bsd.lib.mk> 112