#	Plan 9 mkfile for libf2c.a$O

</$objtype/mkfile

CC = pcc
CFLAGS = -D_POSIX_SOURCE -DNON_UNIX_STDIO -DNO_TRUNCATE

%.$O: %.c
        $CC -c $CFLAGS $stem.c

MISC =	f77vers.$O i77vers.$O main.$O s_rnge.$O abort_.$O exit_.$O\
	getarg_.$O iargc_.$O\
	getenv_.$O signal_.$O s_stop.$O s_paus.$O system_.$O cabs.$O\
	derf_.$O derfc_.$O erf_.$O erfc_.$O sig_die.$O uninit.$O
POW =	pow_ci.$O pow_dd.$O pow_di.$O pow_hh.$O pow_ii.$O pow_ri.$O\
	pow_zi.$O pow_zz.$O
CX =	c_abs.$O c_cos.$O c_div.$O c_exp.$O c_log.$O c_sin.$O c_sqrt.$O
DCX =	z_abs.$O z_cos.$O z_div.$O z_exp.$O z_log.$O z_sin.$O z_sqrt.$O
REAL =	r_abs.$O r_acos.$O r_asin.$O r_atan.$O r_atn2.$O r_cnjg.$O r_cos.$O\
	r_cosh.$O r_dim.$O r_exp.$O r_imag.$O r_int.$O\
	r_lg10.$O r_log.$O r_mod.$O r_nint.$O r_sign.$O\
	r_sin.$O r_sinh.$O r_sqrt.$O r_tan.$O r_tanh.$O
DBL =	d_abs.$O d_acos.$O d_asin.$O d_atan.$O d_atn2.$O\
	d_cnjg.$O d_cos.$O d_cosh.$O d_dim.$O d_exp.$O\
	d_imag.$O d_int.$O d_lg10.$O d_log.$O d_mod.$O\
	d_nint.$O d_prod.$O d_sign.$O d_sin.$O d_sinh.$O\
	d_sqrt.$O d_tan.$O d_tanh.$O
INT =	i_abs.$O i_dim.$O i_dnnt.$O i_indx.$O i_len.$O i_mod.$O\
	i_nint.$O i_sign.$O lbitbits.$O lbitshft.$O
HALF =	h_abs.$O h_dim.$O h_dnnt.$O h_indx.$O h_len.$O h_mod.$O\
	h_nint.$O h_sign.$O
CMP =	l_ge.$O l_gt.$O l_le.$O l_lt.$O hl_ge.$O hl_gt.$O hl_le.$O hl_lt.$O
EFL =	ef1asc_.$O ef1cmc_.$O
CHAR =	f77_aloc.$O s_cat.$O s_cmp.$O s_copy.$O
I77 =	backspac.$O close.$O dfe.$O dolio.$O due.$O endfile.$O err.$O\
	fmt.$O fmtlib.$O ftell_.$O iio.$O ilnw.$O inquire.$O lread.$O\
	lwrite.$O open.$O rdfmt.$O rewind.$O rsfe.$O rsli.$O rsne.$O\
	sfe.$O sue.$O typesize.$O uio.$O util.$O wref.$O wrtfmt.$O\
	wsfe.$O wsle.$O wsne.$O xwsne.$O
QINT =	pow_qq.$O qbitbits.$O qbitshft.$O
TIME =	dtime_.$O etime_.$O

# pcc does not currently (20010222) understand unsigned long long
# so we omit $QINT from the dependency list for libf2c.a$O.

all:N: f2c.h signal1.h libf2c.a$O

libf2c.a$O: $MISC $POW $CX $DCX $REAL $DBL $INT \
	$HALF $CMP $EFL $CHAR $I77 $TIME
	ar r $target $newprereq
	rm $newprereq

### If your system lacks ranlib, you don't need it; see README.; set -e

f77vers.$O: f77vers.c
	$CC -c f77vers.c

i77vers.$O: i77vers.c
	$CC -c i77vers.c

# To get an "f2c.h" for use with "f2c -C++", first "make hadd"
hadd: f2c.h0 f2ch.add
	cat f2c.h0 f2ch.add >f2c.h

# For use with "f2c" and "f2c -A":
f2c.h: f2c.h0
	cp f2c.h0 f2c.h

# You may need to adjust signal1.h suitably for your system...
signal1.h: signal1.h0
	cp signal1.h0 signal1.h

clean:
	rm -f libf2c.a$O *.$O arith.h

backspac.$O:	fio.h
close.$O:	fio.h
dfe.$O:		fio.h
dfe.$O:		fmt.h
due.$O:		fio.h
endfile.$O:	fio.h rawio.h
err.$O:		fio.h rawio.h
fmt.$O:		fio.h
fmt.$O:		fmt.h
iio.$O:		fio.h
iio.$O:		fmt.h
ilnw.$O:		fio.h
ilnw.$O:		lio.h
inquire.$O:	fio.h
lread.$O:	fio.h
lread.$O:	fmt.h
lread.$O:	lio.h
lread.$O:	fp.h
lwrite.$O:	fio.h
lwrite.$O:	fmt.h
lwrite.$O:	lio.h
open.$O:		fio.h rawio.h
rdfmt.$O:	fio.h
rdfmt.$O:	fmt.h
rdfmt.$O:	fp.h
rewind.$O:	fio.h
rsfe.$O:		fio.h
rsfe.$O:		fmt.h
rsli.$O:		fio.h
rsli.$O:		lio.h
rsne.$O:		fio.h
rsne.$O:		lio.h
sfe.$O:		fio.h
sue.$O:		fio.h
uio.$O:		fio.h
uninit.$O:	arith.h
util.$O:		fio.h
wref.$O:		fio.h
wref.$O:		fmt.h
wref.$O:		fp.h
wrtfmt.$O:	fio.h
wrtfmt.$O:	fmt.h
wsfe.$O:		fio.h
wsfe.$O:		fmt.h
wsle.$O:		fio.h
wsle.$O:		fmt.h
wsle.$O:		lio.h
wsne.$O:		fio.h
wsne.$O:		lio.h
xwsne.$O:	fio.h
xwsne.$O:	lio.h
xwsne.$O:	fmt.h

arith.h: arithchk.c
	pcc -DNO_FPINIT -o arithchk arithchk.c
	arithchk >$target
	rm arithchk

xsum.out:V: check

check:
	xsum Notice README abort_.c arithchk.c backspac.c c_abs.c c_cos.c \
	c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c cabs.c close.c comptry.bat \
	d_abs.c d_acos.c d_asin.c d_atan.c d_atn2.c d_cnjg.c d_cos.c d_cosh.c \
	d_dim.c d_exp.c d_imag.c d_int.c d_lg10.c d_log.c d_mod.c \
	d_nint.c d_prod.c d_sign.c d_sin.c d_sinh.c d_sqrt.c d_tan.c \
	d_tanh.c derf_.c derfc_.c dfe.c dolio.c dtime_.c due.c ef1asc_.c \
	ef1cmc_.c endfile.c erf_.c erfc_.c err.c etime_.c exit_.c f2c.h0 \
	f2ch.add f77_aloc.c f77vers.c fio.h fmt.c fmt.h fmtlib.c \
	fp.h ftell_.c \
	getarg_.c getenv_.c h_abs.c h_dim.c h_dnnt.c h_indx.c h_len.c \
	h_mod.c h_nint.c h_sign.c hl_ge.c hl_gt.c hl_le.c hl_lt.c \
	i77vers.c i_abs.c i_dim.c i_dnnt.c i_indx.c i_len.c i_mod.c \
	i_nint.c i_sign.c iargc_.c iio.c ilnw.c inquire.c l_ge.c l_gt.c \
	l_le.c l_lt.c lbitbits.c lbitshft.c libf2c.lbc libf2c.sy lio.h \
	lread.c lwrite.c main.c makefile.sy makefile.u makefile.vc \
	makefile.wat math.hvc mkfile.plan9 open.c pow_ci.c pow_dd.c \
	pow_di.c pow_hh.c pow_ii.c pow_qq.c pow_ri.c pow_zi.c pow_zz.c \
	qbitbits.c qbitshft.c r_abs.c r_acos.c r_asin.c r_atan.c r_atn2.c \
	r_cnjg.c r_cos.c r_cosh.c r_dim.c r_exp.c r_imag.c r_int.c r_lg10.c \
	r_log.c r_mod.c r_nint.c r_sign.c r_sin.c r_sinh.c r_sqrt.c \
	r_tan.c r_tanh.c rawio.h rdfmt.c rewind.c rsfe.c rsli.c rsne.c \
	s_cat.c s_cmp.c s_copy.c s_paus.c s_rnge.c s_stop.c sfe.c \
	sig_die.c signal1.h0 signal_.c sue.c system_.c typesize.c uio.c \
	uninit.c util.c wref.c wrtfmt.c wsfe.c wsle.c wsne.c xwsne.c \
	z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c >xsum1.out
	cmp xsum0.out xsum1.out && mv xsum1.out xsum.out || diff xsum[01].out
