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