1# Makefile for the f77 math & startup lib - libF77.a 2 3# @(#)makefile 1.21 05/11/83 4 5DESTDIR = 6LIB = libF77.a 7LIB_P = libF77_p.a 8LPR = lpr 9CFLAGS = -O 10 11# for the CFO 11's 12#LIBDIR = ${DESTDIR}/usr/ucb/lib 13#OLDDIR = ${DESTDIR}/usr/old/lib 14#TAPE = /dev/nrmt1 15#OPTIONS = 16 17# for the VAX 18LIBDIR = ${DESTDIR}/usr/lib 19OLDDIR = ${DESTDIR}/usr/old/lib 20TAPE = /dev/rnmt0 21OPTIONS = -DUCBVAX 22 23MISC = main.o s_rnge.o abort_.o exit_.o long_.o short_.o \ 24 s_stop.o s_paus.o rand_.o range.o traper_.o trapov_.o \ 25 dbesj0_.o dbesj1_.o dbesjn_.o dbesy0_.o dbesy1_.o dbesyn_.o \ 26 besj0_.o besj1_.o besjn_.o besy0_.o besy1_.o besyn_.o 27POW = pow_ci.o pow_dd.o pow_di.o pow_hh.o pow_ii.o pow_ri.o pow_zi.o pow_zz.o 28CX = c_abs.o c_cos.o c_div.o c_exp.o c_log.o c_sin.o c_sqrt.o 29DCX = z_abs.o z_cos.o z_div.o z_exp.o z_log.o z_sin.o z_sqrt.o 30REAL = r_abs.o r_acos.o r_asin.o r_atan.o r_atn2.o r_cnjg.o r_cos.o\ 31 r_cosh.o r_dim.o r_exp.o r_imag.o r_int.o\ 32 r_lg10.o r_log.o r_mod.o r_nint.o r_sign.o\ 33 r_sin.o r_sinh.o r_sqrt.o r_tan.o r_tanh.o 34DBL = d_abs.o d_acos.o d_asin.o d_atan.o d_atn2.o\ 35 d_cnjg.o d_cos.o d_cosh.o d_dim.o d_exp.o\ 36 d_imag.o d_int.o d_lg10.o d_log.o d_mod.o\ 37 d_nint.o d_prod.o d_sign.o d_sin.o d_sinh.o\ 38 d_sqrt.o d_tan.o d_tanh.o 39INT = i_abs.o i_dim.o i_dnnt.o i_indx.o i_len.o i_mod.o i_nint.o i_sign.o 40HALF = h_abs.o h_dim.o h_dnnt.o h_indx.o h_len.o h_mod.o h_nint.o h_sign.o 41CMP = l_ge.o l_gt.o l_le.o l_lt.o hl_ge.o hl_gt.o hl_le.o hl_lt.o 42EFL = ef1asc_.o ef1cmc_.o 43CHAR = s_cat.o rindex_.o s_cmp.o s_copy.o lnblnk_.o 44 45ALL = $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) $(HALF) \ 46 $(CMP) $(EFL) $(CHAR) 47 48all: $(LIB) $(LIB_P) 49 50$(LIB): $(ALL) Version 51 ar ru $(LIB) $? 52 ranlib $(LIB) 53 chmod 644 $(LIB) 54 @ls -l $(LIB) 55 56$(LIB_P): $(ALL) Version 57 cd profiled; ar ru ../$(LIB_P) $? 58 ranlib $(LIB_P) 59 chmod 644 $(LIB_P) 60 @ls -l $(LIB_P) 61 62c_abs.o c_cos.o c_div.o c_div.o c_exp.o c_log.o c_sin.o c_sqrt.o d_cnjg.o d_imag.o pow_ci.o pow_zi.o pow_zz.o r_cnjg.o r_imag.o z_abs.o z_cos.o z_div.o z_div.o z_exp.o z_log.o z_sin.o z_sqrt.o: complex 63 64trapov_.o: trapov_.c 65 -cd profiled; \ 66 cc -S ${OPTIONS} ../trapov_.c; \ 67 (echo "g/.set L[0-9][0-9]*,0x0$$/s/0x0/0xf10/"; echo "x") \ 68 | ex - trapov_.s; \ 69 as trapov_.s -o trapov_.o; \ 70 rm trapov_.s 71 cc -S ${OPTIONS} trapov_.c 72 (echo "g/.set L[0-9][0-9]*,0x0$$/s/0x0/0xf10/"; echo "x") \ 73 | ex - trapov_.s 74 as trapov_.s -o trapov_.o 75 rm trapov_.s 76 77# compile, then strip unnecessary symbols 78.c.o : 79 -cd profiled; \ 80 cc -c -p ${CFLAGS} ${OPTIONS} ../$*.c; \ 81 ld -r -x $*.o; \ 82 mv a.out $*.o 83 cc -c ${CFLAGS} ${OPTIONS} $*.c 84 -ld -r -x $*.o 85 mv a.out $*.o 86 87install: $(LIBDIR)/$(LIB) $(LIBDIR)/$(LIB_P) 88 89$(LIBDIR)/$(LIB): $(LIB) 90 @-mv $(LIBDIR)/$(LIB) $(OLDDIR)/$(LIB) 91 tar cf - $(LIB) | (cd $(LIBDIR); tar xvf - ) 92 93$(LIBDIR)/$(LIB_P): $(LIB_P) 94 @-mv $(LIBDIR)/$(LIB_P) $(OLDDIR)/$(LIB_P) 95 tar cf - $(LIB_P) | (cd $(LIBDIR); tar xvf - ) 96 97clean: 98 rm -f $(ALL) Version $(LIB) $(LIB_P) profiled/* 99 100SOURCES = main.c s_rnge.c abort_.c exit_.c opcodes.h long_.c short_.c \ 101 s_stop.c s_paus.c rand_.c bit.c range.c traper_.c trapov_.c \ 102 dbesj0_.c dbesj1_.c dbesjn_.c dbesy0_.c dbesy1_.c dbesyn_.c \ 103 besj0_.c besj1_.c besjn_.c besy0_.c besy1_.c besyn_.c \ 104 pow_ci.c pow_dd.c pow_di.c pow_hh.c pow_ii.c pow_ri.c pow_zi.c \ 105 pow_zz.c \ 106 c_abs.c c_cos.c c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c \ 107 z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c \ 108 r_abs.c r_acos.c r_asin.c r_atan.c r_atn2.c r_cnjg.c r_cos.c \ 109 r_cosh.c r_dim.c r_exp.c r_imag.c r_int.c \ 110 r_lg10.c r_log.c r_mod.c r_nint.c r_sign.c \ 111 r_sin.c r_sinh.c r_sqrt.c r_tan.c r_tanh.c \ 112 d_abs.c d_acos.c d_asin.c d_atan.c d_atn2.c \ 113 d_cnjg.c d_cos.c d_cosh.c d_dim.c d_exp.c \ 114 d_imag.c d_int.c d_lg10.c d_log.c d_mod.c \ 115 d_nint.c d_prod.c d_sign.c d_sin.c d_sinh.c \ 116 d_sqrt.c d_tan.c d_tanh.c \ 117 i_abs.c i_dim.c i_dnnt.c i_indx.c i_len.c i_mod.c i_nint.c i_sign.c \ 118 h_abs.c h_dim.c h_dnnt.c h_indx.c h_len.c h_mod.c h_nint.c h_sign.c \ 119 l_ge.c l_gt.c l_le.c l_lt.c hl_ge.c hl_gt.c hl_le.c hl_lt.c \ 120 ef1asc_.c ef1cmc_.c \ 121 s_cat.c s_cmp.c s_copy.c lnblnk_.c rindex_.c 122 123Version: $(SOURCES) mkvers 124 @rm -f Version.c 125 ./mkvers $(LIB) $(SOURCES) > Version.c 126 cc -c Version.c 127 mv Version.o Version 128 @rm -f profiled/Version 129 ln Version profiled/Version 130 131mkvers: mkvers.c 132 @cc mkvers.c -o mkvers 133 134print: index 135 @pr index Makefile `ls $(SOURCES)` | $(LPR) 136 137index: $(SOURCES) mkindx 138 @./mkindx "libF77 Sources " Makefile $(SOURCES) 139 140mkindx: mkindx.c 141 @cc mkindx.c -o mkindx 142 143# End of Makefile 144# Below this line normally is not distributed ... 145 146Makefile: makefile 147 @sed -n -e "1,/End of Makefile/p" makefile > Makefile 148 149tape: Makefile 150 -tar cbf 20 $(TAPE) READ_ME Makefile complex $(SOURCES) \ 151 mkindx.c subout.c 152 153# below here is SCCS stuff ... 154 155main.c: SCCS/s.main.c 156 @rm -f main.c 157 get SCCS/s.main.c 158 159lnblnk_.c: SCCS/s.lnblnk_.c 160 @rm -f lnblnk_.c 161 get SCCS/s.lnblnk_.c 162 163range.c: SCCS/s.range.c 164 @rm -f range.c 165 get SCCS/s.range.c 166 167rindex_.c: SCCS/s.rindex_.c 168 @rm -f rindex_.c 169 get SCCS/s.rindex_.c 170 171traper_.c: SCCS/s.traper_.c 172 @rm -f traper_.c 173 get SCCS/s.traper_.c 174 175trapov_.c: SCCS/s.trapov_.c 176 @rm -f trapov_.c 177 get SCCS/s.trapov_.c 178