1 # from: @(#)Makefile 5.11 (Berkeley) 12/2/92 2 # $Id: Makefile,v 1.9 1993/12/05 01:10:14 cgd Exp $ 3 # 4 # ieee - for most IEEE machines, we hope. 5 # mc68881 - the, ahem, mc68881. 6 # national - NATIONAL 32016 with 32081. 7 # i386 - i387 NPX 8 # mips - for MIPS achitecture machines (and also pmax) 9 # tahoe - for the tahoe double format. 10 # vax - for the vax D_floating format 11 12 LIB= m 13 CFLAGS+=-I${.CURDIR}/common_source 14 NOPIC= nopic 15 16 .if (${MACHINE_ARCH} == "ieee") 17 18 HARDWARE=${MACHINE_ARCH} 19 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee 20 # common_source 21 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 22 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 23 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 24 # common 25 SRCS+= atan2.c sincos.c tan.c 26 # ieee 27 SRCS+= cabs.c cbrt.c support.c 28 29 .elif (${MACHINE_ARCH} == "m68k") 30 31 HARDWARE=mc68881 32 .PATH: ${.CURDIR}/mc68881 ${.CURDIR}/common_source ${.CURDIR}/ieee 33 # common_source 34 SRCS+= acosh.c asinh.c erf.c exp__D.c exp__E.c fmod.c gamma.c lgamma.c j0.c \ 35 j1.c log__D.c log__L.c logtab.c pow.c 36 # mc68881 37 SRCS+= asincos.s atan.s atan2.c atanh.s cosh.s exp.s expm1.s floor.s \ 38 log.s log10.s log1p.s sincos.s sinh.s sqrt.s support.s tan.s tanh.s 39 # ieee 40 SRCS+= cabs.c cbrt.c 41 42 .elif (${MACHINE_ARCH} == "i386") 43 44 HARDWARE=i387 45 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee 46 # common_source 47 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 48 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 49 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 50 # common 51 SRCS+= atan2.c sincos.c tan.c 52 # ieee 53 SRCS+= cabs.c cbrt.c support.c 54 55 .elif (${MACHINE_ARCH} == "mips" || ${MACHINE_ARCH} == "pmax") 56 57 HARDWARE=${MACHINE_ARCH} 58 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee 59 # common_source 60 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 61 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 62 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 63 # common 64 SRCS+= atan2.c sincos.c tan.c 65 # ieee 66 SRCS+= cabs.c cbrt.c support.c 67 68 .elif (${MACHINE_ARCH} == "national" || ${MACHINE_ARCH} == "ns32k") 69 HARDWARE=national 70 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/national \ 71 ${.CURDIR}/ieee 72 # common_source 73 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 74 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 75 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 76 # common 77 SRCS+= atan2.c sincos.c tan.c 78 # national 79 SRCS+= sqrt.s support.s 80 # ieee 81 SRCS+= cabs.c cbrt.c 82 83 .elif (${MACHINE_ARCH} == "sparc") 84 85 HARDWARE=${MACHINE_ARCH} 86 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee 87 # common_source 88 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 89 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 90 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 91 # XXX should do sqrt & support functions in assembly 92 # common 93 SRCS+= atan2.c sincos.c tan.c 94 # ieee 95 SRCS+= cabs.c cbrt.c support.c 96 97 .elif (${MACHINE_ARCH} == "tahoe") 98 99 HARDWARE=${MACHINE_ARCH} 100 .PATH: ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/tahoe \ 101 # common_source 102 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 103 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 104 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 105 # common 106 SRCS+= atan2.c sincos.c tan.c 107 # tahoe 108 SRCS+= cabs.s cbrt.s sqrt.s support.s infnan.s 109 110 .elif (${MACHINE_ARCH} == "vax") 111 112 HARDWARE=${MACHINE_ARCH} 113 .PATH: ${.CURDIR}/common_source ${.CURDIR}/vax 114 # common_source 115 SRCS+= acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \ 116 exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \ 117 log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c 118 # vax 119 SRCS+= atan2.s cabs.s cbrt.s sqrt.s sincos.s tan.s argred.s support.s \ 120 infnan.s 121 122 .endif 123 124 MAN3+= acos.0 acosh.0 asin.0 asinh.0 atan.0 atan2.0 atanh.0 ceil.0 \ 125 cos.0 cosh.0 erf.0 exp.0 fabs.0 floor.0 fmod.0 hypot.0 ieee.0 \ 126 infnan.0 j0.0 lgamma.0 math.0 rint.0 sin.0 sinh.0 sqrt.0 \ 127 tan.0 tanh.0 128 129 MLINKS+=erf.3 erfc.3 130 MLINKS+=exp.3 expm1.3 exp.3 log.3 exp.3 log10.3 exp.3 log1p.3 exp.3 pow.3 131 MLINKS+=hypot.3 cabs.3 132 MLINKS+=ieee.3 copysign.3 ieee.3 drem.3 ieee.3 finite.3 ieee.3 logb.3 \ 133 ieee.3 scalb.3 134 MLINKS+=j0.3 j1.3 j0.3 jn.3 j0.3 y0.3 j0.3 y1.3 j0.3 yn.3 135 MLINKS+=lgamma.3 gamma.3 136 MLINKS+=sqrt.3 cbrt.3 137 138 # can't use the standard mkdep, because there are some .s files that 139 # are using '#' as a comment indicator and cpp thinks it's an undefined 140 # control. 141 142 depend: .depend 143 .depend: ${SRCS} 144 mkdep ${CFLAGS:M-[ID]*} ${.ALLSRC:M*.c} 145 146 .include <bsd.lib.mk> 147 148 .s.o: 149 ${AS} -o ${.TARGET} ${.IMPSRC} 150 @${LD} -x -r ${.TARGET} 151 @mv a.out ${.TARGET} 152 153 .s.po: 154 sed -f ${.CURDIR}/${HARDWARE}/mcount.sed ${.IMPSRC} | \ 155 ${AS} -o ${.TARGET} 156 @${LD} -X -r ${.TARGET} 157 @mv a.out ${.TARGET} 158