SHELL = /bin/sh
DOC = $(NEWLINKBASE)/doc

DOCS = \
	ack.tex \
	architecture.tex \
	defines.tex \
	fileExamples.tex \
	foreword.tex \
	gettingLink.tex \
	internals.tex \
	manual.tex \
	rational.tex \
	system_introduction.tex \
	testing.tex

SOURCES = \
	c_filter.cc \
	filter.cc \
	index.cc \
	index_make 

load:	$(DOCS) $(SOURCES)
	cd postscript; $(MAKE) -f MakePostscript.document load
	cd GUI_MANUAL; $(MAKE) -f MakeGUI.document load
	cd USERS_MANUAL; $(MAKE) -f MakeUser.document load
	cd PROGRAMMERS_MANUAL; $(MAKE) -f MakeProg.document load

TEXS = manual.tex

DVIS = ${TEXS:.tex=.dvi}
PSS = ${DVIS:.dvi=.ps}

.SUFFIXES:	.tex .dvi .ps

.dvi.ps:
	- dvips -o ${?:.dvi=.ps} $?

.tex.dvi:
	- latex $?

dirs:
	cd GUI_MANUAL; $(MAKE) -f MakeGUI.document document
	cd USERS_MANUAL; $(MAKE) -f MakeUser.document document
	cd PROGRAMMERS_MANUAL; $(MAKE) -f MakeProg.document document

link_filter: filter.cc
	g++ filter.cc; mv a.out link_filter

indexmaker: index.cc
	g++ index.cc; mv a.out indexmaker

link_c_filter: c_filter.cc
	g++ c_filter.cc; mv a.out link_c_filter

msg:
	- echo 'TEXINPUTS must include NEWLINKBASE/doc/USERS_MANUAL'
	- echo '                   and NEWLINKBASE/doc/PROGRAMMERS_MANUAL'
	- echo '                   and NEWLINKBASE/doc/GUI_MANUAL'
	- gunzip dfs.ps

document:	msg link_filter link_c_filter dirs $(TEXS) $(DVIS) $(PSS)
	gzip dfs.ps

clean:
	cd GUI_MANUAL; $(MAKE) -f MakeGUI.document clean
	cd USERS_MANUAL; $(MAKE) -f MakeUser.document clean
	cd PROGRAMMERS_MANUAL; $(MAKE) -f MakeProg.document clean
	- rm -f *.toc *.log *.aux *.ilg *.idx *.lof *.dvi userman.ps
	- rm -f link_filter link_c_filter
