1#       Plan 9 mkfile for libf2c.a$O
2
3</$objtype/mkfile
4
5CC = pcc
6CFLAGS = -D_POSIX_SOURCE -DNON_UNIX_STDIO -DNO_TRUNCATE
7
8%.$O: %.c
9        $CC -c $CFLAGS $stem.c
10
11MISC =  f77vers.$O i77vers.$O main.$O s_rnge.$O abort_.$O exit_.$O\
12        getarg_.$O iargc_.$O\
13        getenv_.$O signal_.$O s_stop.$O s_paus.$O system_.$O cabs.$O\
14        derf_.$O derfc_.$O erf_.$O erfc_.$O sig_die.$O uninit.$O
15POW =   pow_ci.$O pow_dd.$O pow_di.$O pow_hh.$O pow_ii.$O pow_ri.$O\
16        pow_zi.$O pow_zz.$O
17CX =    c_abs.$O c_cos.$O c_div.$O c_exp.$O c_log.$O c_sin.$O c_sqrt.$O
18DCX =   z_abs.$O z_cos.$O z_div.$O z_exp.$O z_log.$O z_sin.$O z_sqrt.$O
19REAL =  r_abs.$O r_acos.$O r_asin.$O r_atan.$O r_atn2.$O r_cnjg.$O r_cos.$O\
20        r_cosh.$O r_dim.$O r_exp.$O r_imag.$O r_int.$O\
21        r_lg10.$O r_log.$O r_mod.$O r_nint.$O r_sign.$O\
22        r_sin.$O r_sinh.$O r_sqrt.$O r_tan.$O r_tanh.$O
23DBL =   d_abs.$O d_acos.$O d_asin.$O d_atan.$O d_atn2.$O\
24        d_cnjg.$O d_cos.$O d_cosh.$O d_dim.$O d_exp.$O\
25        d_imag.$O d_int.$O d_lg10.$O d_log.$O d_mod.$O\
26        d_nint.$O d_prod.$O d_sign.$O d_sin.$O d_sinh.$O\
27        d_sqrt.$O d_tan.$O d_tanh.$O
28INT =   i_abs.$O i_dim.$O i_dnnt.$O i_indx.$O i_len.$O i_mod.$O\
29        i_nint.$O i_sign.$O lbitbits.$O lbitshft.$O
30HALF =  h_abs.$O h_dim.$O h_dnnt.$O h_indx.$O h_len.$O h_mod.$O\
31        h_nint.$O h_sign.$O
32CMP =   l_ge.$O l_gt.$O l_le.$O l_lt.$O hl_ge.$O hl_gt.$O hl_le.$O hl_lt.$O
33EFL =   ef1asc_.$O ef1cmc_.$O
34CHAR =  f77_aloc.$O s_cat.$O s_cmp.$O s_copy.$O
35I77 =   backspac.$O close.$O dfe.$O dolio.$O due.$O endfile.$O err.$O\
36        fmt.$O fmtlib.$O ftell_.$O iio.$O ilnw.$O inquire.$O lread.$O\
37        lwrite.$O open.$O rdfmt.$O rewind.$O rsfe.$O rsli.$O rsne.$O\
38        sfe.$O sue.$O typesize.$O uio.$O util.$O wref.$O wrtfmt.$O\
39        wsfe.$O wsle.$O wsne.$O xwsne.$O
40QINT =  pow_qq.$O qbitbits.$O qbitshft.$O
41TIME =  dtime_.$O etime_.$O
42
43# pcc does not currently (20010222) understand unsigned long long
44# so we omit $QINT from the dependency list for libf2c.a$O.
45
46all:N: f2c.h signal1.h libf2c.a$O
47
48libf2c.a$O: $MISC $POW $CX $DCX $REAL $DBL $INT \
49        $HALF $CMP $EFL $CHAR $I77 $TIME
50        ar r $target $newprereq
51        rm $newprereq
52
53### If your system lacks ranlib, you don't need it; see README.; set -e
54
55f77vers.$O: f77vers.c
56        $CC -c f77vers.c
57
58i77vers.$O: i77vers.c
59        $CC -c i77vers.c
60
61# To get an "f2c.h" for use with "f2c -C++", first "make hadd"
62hadd: f2c.h0 f2ch.add
63        cat f2c.h0 f2ch.add >f2c.h
64
65# For use with "f2c" and "f2c -A":
66f2c.h: f2c.h0
67        cp f2c.h0 f2c.h
68
69# You may need to adjust signal1.h suitably for your system...
70signal1.h: signal1.h0
71        cp signal1.h0 signal1.h
72
73clean:
74        rm -f libf2c.a$O *.$O arith.h
75
76backspac.$O:    fio.h
77close.$O:       fio.h
78dfe.$O:         fio.h
79dfe.$O:         fmt.h
80due.$O:         fio.h
81endfile.$O:     fio.h rawio.h
82err.$O:         fio.h rawio.h
83fmt.$O:         fio.h
84fmt.$O:         fmt.h
85iio.$O:         fio.h
86iio.$O:         fmt.h
87ilnw.$O:                fio.h
88ilnw.$O:                lio.h
89inquire.$O:     fio.h
90lread.$O:       fio.h
91lread.$O:       fmt.h
92lread.$O:       lio.h
93lread.$O:       fp.h
94lwrite.$O:      fio.h
95lwrite.$O:      fmt.h
96lwrite.$O:      lio.h
97open.$O:                fio.h rawio.h
98rdfmt.$O:       fio.h
99rdfmt.$O:       fmt.h
100rdfmt.$O:       fp.h
101rewind.$O:      fio.h
102rsfe.$O:                fio.h
103rsfe.$O:                fmt.h
104rsli.$O:                fio.h
105rsli.$O:                lio.h
106rsne.$O:                fio.h
107rsne.$O:                lio.h
108sfe.$O:         fio.h
109sue.$O:         fio.h
110uio.$O:         fio.h
111uninit.$O:      arith.h
112util.$O:                fio.h
113wref.$O:                fio.h
114wref.$O:                fmt.h
115wref.$O:                fp.h
116wrtfmt.$O:      fio.h
117wrtfmt.$O:      fmt.h
118wsfe.$O:                fio.h
119wsfe.$O:                fmt.h
120wsle.$O:                fio.h
121wsle.$O:                fmt.h
122wsle.$O:                lio.h
123wsne.$O:                fio.h
124wsne.$O:                lio.h
125xwsne.$O:       fio.h
126xwsne.$O:       lio.h
127xwsne.$O:       fmt.h
128
129arith.h: arithchk.c
130        pcc -DNO_FPINIT -o arithchk arithchk.c
131        arithchk >$target
132        rm arithchk
133
134xsum.out:V: check
135
136check:
137        xsum Notice README abort_.c arithchk.c backspac.c c_abs.c c_cos.c \
138        c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c cabs.c close.c comptry.bat \
139        d_abs.c d_acos.c d_asin.c d_atan.c d_atn2.c d_cnjg.c d_cos.c d_cosh.c \
140        d_dim.c d_exp.c d_imag.c d_int.c d_lg10.c d_log.c d_mod.c \
141        d_nint.c d_prod.c d_sign.c d_sin.c d_sinh.c d_sqrt.c d_tan.c \
142        d_tanh.c derf_.c derfc_.c dfe.c dolio.c dtime_.c due.c ef1asc_.c \
143        ef1cmc_.c endfile.c erf_.c erfc_.c err.c etime_.c exit_.c f2c.h0 \
144        f2ch.add f77_aloc.c f77vers.c fio.h fmt.c fmt.h fmtlib.c \
145        fp.h ftell_.c \
146        getarg_.c getenv_.c h_abs.c h_dim.c h_dnnt.c h_indx.c h_len.c \
147        h_mod.c h_nint.c h_sign.c hl_ge.c hl_gt.c hl_le.c hl_lt.c \
148        i77vers.c i_abs.c i_dim.c i_dnnt.c i_indx.c i_len.c i_mod.c \
149        i_nint.c i_sign.c iargc_.c iio.c ilnw.c inquire.c l_ge.c l_gt.c \
150        l_le.c l_lt.c lbitbits.c lbitshft.c libf2c.lbc libf2c.sy lio.h \
151        lread.c lwrite.c main.c makefile.sy makefile.u makefile.vc \
152        makefile.wat math.hvc mkfile.plan9 open.c pow_ci.c pow_dd.c \
153        pow_di.c pow_hh.c pow_ii.c pow_qq.c pow_ri.c pow_zi.c pow_zz.c \
154        qbitbits.c qbitshft.c r_abs.c r_acos.c r_asin.c r_atan.c r_atn2.c \
155        r_cnjg.c r_cos.c r_cosh.c r_dim.c r_exp.c r_imag.c r_int.c r_lg10.c \
156        r_log.c r_mod.c r_nint.c r_sign.c r_sin.c r_sinh.c r_sqrt.c \
157        r_tan.c r_tanh.c rawio.h rdfmt.c rewind.c rsfe.c rsli.c rsne.c \
158        s_cat.c s_cmp.c s_copy.c s_paus.c s_rnge.c s_stop.c sfe.c \
159        sig_die.c signal1.h0 signal_.c sue.c system_.c typesize.c uio.c \
160        uninit.c util.c wref.c wrtfmt.c wsfe.c wsle.c wsne.c xwsne.c \
161        z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c >xsum1.out
162        cmp xsum0.out xsum1.out && mv xsum1.out xsum.out || diff xsum[01].out
163