#
# This file makes some font utilities (that are not part of MFware)
# from their respective sources.
#
# The file ../common/common.h uses the symbol `INDEX' to decide whether
# to include string.h or not. hence the addition to CFLAGS.
# 

SITEDIR=/
CC=lc
OPT= -cw -f8 -j100i94i84i -m2 -O
CFLAGS= -b0 -i$(SITEDIR) -r0 -v $(OPT) -dINDEX
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:		pktogf pktype vftovp vptovf

docs:		pktogf.dvi pktype.dvi vftovp.dvi vptovf.dvi


# PKtoGF:
#
pktogf:		pktogf.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
pktogf.o:	pktogf.c $(commonh)
pktogf.c:	pktogf.p $(commondefines)
pktogf.p:	pktogf.web pktogf.ch
pktogf.dvi:	pktogf.tex
pktogf.tex:	pktogf.web pktogf.ch


# PKtype:
#

pktype:		pktype.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
pktype.o:	pktype.c $(commonh)
pktype.c:	pktype.p $(commondefines)
pktype.p:	pktype.web pktype.ch
pktype.dvi:	pktype.tex
pktype.tex:	pktype.web pktype.ch


# VFtoVP:
#
vftovp:		vftovp.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
vftovp.o:	vftovp.c $(commonh)
		$(CC) $(CFLAGS) -dindex=index_var -dlink=link_array $*.c
vftovp.c:	vftovp.p $(commondefines)
vftovp.p:	vftovp.web vftovp.ch
vftovp.dvi:	vftovp.tex
vftovp.tex:	vftovp.web vftovp.ch


# VPtoVF:
#
vptovf:		vptovf.o $(commono)
		blink FROM lib:c.o $*.o $(commono) TO $@ $(BLINKCMDS)
vptovf.o:	vptovf.c $(commonh)
		$(CC) $(CFLAGS) -dindex=index_arr -dlink=link_array $*.c
vptovf.c:	vptovf.p $(commondefines)
vptovf.p:	vptovf.web vptovf.ch
vptovf.dvi:	vptovf.tex
vptovf.tex:	vptovf.web vptovf.ch


clean:
		delete pktogf.o pktype.o vftovp.o vptovf.o QUIET
		delete pktogf pktype vftovp vptovf QUIET

veryclean:	clean
		delete pktogf.p pktype.p vftovp.p vptovf.p QUIET
		delete pktogf.c pktype.c vftovp.c vptovf.c QUIET
		delete pktogf.h pktype.h vftovp.h vptovf.h QUIET
		delete pktogf.dvi pktype.dvi vftovp.dvi vptovf.dvi QUIET
		delete pktogf.tex pktype.tex vftovp.tex vptovf.tex CONTENTS.tex QUIET
		delete pktogf.log pktype.log vftovp.log vptovf.log QUIET

