#
# This file makes GFtoDVI, GFtoPK, GFtype, mft, PKtoGF, and PKtype from
# their respective sources.
#

SITEDIR=/
CC=lc
OPT= -cw -f8 -j100i94i84i -m2
CFLAGS= -b0 -i$(SITEDIR) -r0 -v $(OPT)
BLINKCMDS = LIB lib:lcm881.lib lib:lcnb.lib


.SUFFIXES: .o .c .p .ch
.SUFFIXES: .dvi .tex .ch
.ch.p:
		/web/tangle $*.web $*.ch
.p.c:
		execute /common/convert $*
.c.o:
		$(CC) $(CFLAGS) $*.c
.ch.tex:
		/web/weave $*.web $*.ch
.tex.dvi:
		virtex &plain. \language=\usenglish \input $*.tex


# Routines used everywhere.
#
commondefines=/common/common.defines
commonh=/common/extra.h
commono=/common/extra.o /common/main.o


default:        all

all:		triptrap gftodvi gftopk mft

triptrap:	gftype

docs:		gftype.dvi gftodvi.dvi gftopk.dvi mft.dvi


# GFtoDVI:
#
gftodvi:	gftodvi.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
gftodvi.o:	gftodvi.c $(commonh)
		$(CC) $(CFLAGS) -O $*
gftodvi.c:	gftodvi.p $(commondefines)
gftodvi.p:	gftodvi.web gftodvi.ch
gftodvi.dvi:	gftodvi.tex
gftodvi.tex:	gftodvi.web gftodvi.ch


# GFtoPK:
#
gftopk:		gftopk.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
gftopk.o:	gftopk.c $(commonh)
		$(CC) $(CFLAGS) -O $*
gftopk.c:	gftopk.p $(commondefines)
gftopk.p:	gftopk.web gftopk.ch
gftopk.dvi:	gftopk.tex
gftopk.tex:	gftopk.web gftopk.ch


# GFtype:
#
gftype:		gftype.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
gftype.o:	gftype.c $(commonh)
		$(CC) $(CFLAGS) -O $*
gftype.c:	gftype.p $(commondefines)
gftype.p:	gftype.web gftype.ch
gftype.dvi:	gftype.tex
gftype.tex:	gftype.web gftype.ch


# MFT:
#
mft:		mft.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
mft.o:		mft.c $(commonh)
		$(CC) $(CFLAGS) $*
mft.c:		mft.p $(commondefines)
mft.p:		mft.web mft.ch
mft.dvi:	mft.tex
mft.tex:	mft.web mft.ch


clean:
		delete gftype.o gftodvi.o gftopk.o mft.o QUIET
		delete gftype gftodvi gftopk mft QUIET

veryclean:	clean
		delete gftype.p gftodvi.p gftopk.p mft.p QUIET
		delete gftype.c gftodvi.c gftopk.c mft.c QUIET
		delete gftype.h gftodvi.h gftopk.h mft.h QUIET
		delete gftype.log gftodvi.log gftopk.log mft.log QUIET
		delete gftype.dvi gftodvi.dvi gftopk.dvi mft.dvi QUIET
		delete gftype.tex gftodvi.tex gftopk.tex mft.tex CONTENTS.tex QUIET
		delete gftype.log gftodvi.log gftopk.log mft.log QUIET
