1# LaTeX -*-Makefile-*-
2#
3# This first section contains macros whose values that you need to
4# fill in.
5#
6
7AUTOMAKE_OPTIONS	= foreign dist-tarZ no-dependencies
8
9# MAIN_TEX: In order to build your thesis/dissertation, fill in the
10# MAIN_TEX macro with the name of your main .tex file -- the one that
11# you invoke LaTeX on.
12
13MAIN_TEX	= inilib.tex
14
15# OTHER_SRC_FILES: Put in the names of all the other files that your
16# thesis depends on (e.g., other .tex files, figures, etc.) in the
17# OTHER_SRC_FILES macro.  This is ensure that whenever one of the
18# "other" files changes, "make" will rebuild your paper.  You should
19# *not* list any files in this macro that were already listed in
20# CHAP_CITE_TEX, above.
21
22OTHER_SRC_FILES	= attribute.tex       interface.tex       registry.tex  \
23	      	titlepage.tex		implementation.tex  	intro.tex \
24		overview.tex		section.tex \
25		op_overload.tex		using.tex	defs.tex ../VERSION
26
27EPS_FIGS	= ndseal_trans.eps
28
29EXTRA_DIST	= $(MAIN_TEX) $(OTHER_SRC_FILES) $(EPS_FIGS)
30
31# If you get a "command not found" for the "dvips" command, uncomment
32# one of the two commented out DVIPS macros; the first one is for running
33# on Sun (Solaris) machines, the second is for running on IBM RS/6000
34# (AIX) machines.
35
36LATEX		= latex
37PDFLATEX	= pdflatex
38DVIPS		= dvips
39
40#########################################################################
41#
42# You should not need to edit below this line
43#
44#########################################################################
45
46SUFFIXES = .tex .dvi .ps .pdf .eps
47
48CHAP_CITE	= $(CHAP_CITE_TEX:.tex=)
49MAIN_DVI	= $(MAIN_TEX:.tex=.dvi)
50MAIN_PS		= $(MAIN_TEX:.tex=.ps)
51MAIN_PDF	= $(MAIN_TEX:.tex=.pdf)
52PDF_FIGS	= $(EPS_FIGS:.eps=.pdf)
53
54#
55# Some common target names
56# Note that the default target is "ps"
57#
58all: pdf
59
60ps: $(MAIN_PS)
61postscript: ps
62pdf: $(MAIN_PDF)
63acrobat: pdf
64$(MAIN_PDF): $(PDF_FIGS)
65
66thesis: ps
67
68#
69# Make the dependencies so that things build when they need to
70#
71
72$(MAIN_PS): $(MAIN_DVI)
73$(MAIN_DVI): $(MAIN_TEX) $(CITE_TEX) $(OTHER_SRC_FILES)
74$(MAIN_PDF): $(MAIN_TEX) $(CITE_TEX) $(OTHER_SRC_FILES)
75
76#
77# General rules
78#
79
80.tex.dvi:
81	(unset TEXINPUTS; $(LATEX) $*)
82	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null ); \
83	then (unset TEXINPUTS; $(LATEX) $*) ; else :; fi
84	@ if ( grep 'Writing index file' $*.log > /dev/null ); \
85	then makeindex $* ; (unset TEXINPUTS; $(LATEX) $*) ; fi
86	@-if ( grep 'LaTeX Warning: Citation' $*.log > /dev/null ); then \
87	  if test "$(CHAP_CITE)" ; then \
88	    for file in bogus $(CHAP_CITE) ; do \
89	      if test "$$file" != "bogus"; then \
90		bibtex $$file ; \
91	      fi ; \
92	    done ; \
93	  else \
94	    bibtex $* ; \
95	  fi ; \
96	  (unset TEXINPUTS; $(LATEX) $*) ; \
97	fi
98	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
99	      grep 'LaTeX Warning: Citation' $*.log > /dev/null || \
100	      grep 'No file' $*.log > /dev/null); \
101	then (unset TEXINPUTS; $(LATEX) $*) ; else :; fi
102	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
103	      grep 'LaTeX Warning: Citation' $*.log > /dev/null); \
104	then (unset TEXINPUTS; $(LATEX) $*) ; else :; fi
105	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
106	      grep 'LaTeX Warning: Citation' $*.log > /dev/null); \
107	then (unset TEXINPUTS; $(LATEX) $*) ; else :; fi
108
109.dvi.ps:
110#	$(DVIPS) -Pps-type1 -o $*.ps $*
111	$(DVIPS) -o $*.ps $*
112
113.tex.pdf:
114	(unset TEXINPUTS; $(PDFLATEX) $*)
115	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null ); \
116	then (unset TEXINPUTS; $(PDFLATEX) $*) ; else :; fi
117	@ if ( grep 'Writing index file' $*.log > /dev/null ); \
118	then makeindex $* ; (unset TEXINPUTS; $(PDFLATEX) $*) ; fi
119	@-if ( grep 'LaTeX Warning: Citation' $*.log > /dev/null ); then \
120	  if test "$(CHAP_CITE)" ; then \
121	    for file in bogus $(CHAP_CITE) ; do \
122	      if test "$$file" != "bogus"; then \
123		bibtex $$file ; \
124	      fi ; \
125	    done ; \
126	  else \
127	    bibtex $* ; \
128	  fi ; \
129	  (unset TEXINPUTS; $(PDFLATEX) $*) ; \
130	fi
131	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
132	      grep 'LaTeX Warning: Citation' $*.log > /dev/null || \
133	      grep 'No file' $*.log > /dev/null); \
134	then (unset TEXINPUTS; $(PDFLATEX) $*) ; else :; fi
135	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
136	      grep 'LaTeX Warning: Citation' $*.log > /dev/null); \
137	then (unset TEXINPUTS; $(PDFLATEX) $*) ; else :; fi
138	@if ( grep 'LaTeX Warning: Label(s) may' $*.log > /dev/null || \
139	      grep 'LaTeX Warning: Citation' $*.log > /dev/null); \
140	then (unset TEXINPUTS; $(PDFLATEX) $*) ; else :; fi
141
142.eps.pdf:
143	epstopdf $*.eps
144
145
146#
147# Standard targets
148#
149
150clean:
151	/bin/rm -f *~ *.bak *%
152
153squeaky:
154	/bin/rm -f *.log *.aux *.dvi *.blg *.toc *.bbl *.lof *.lot \
155		$(MAIN_PS) $(MAIN_DVI) $(MAIN_PDF)
156