Index: doc/theses/mubeen_zulfiqar_MMath/Makefile
===================================================================
--- doc/theses/mubeen_zulfiqar_MMath/Makefile	(revision d286e94d541ce120a5b7bf87ada0ae8fd56f923b)
+++ doc/theses/mubeen_zulfiqar_MMath/Makefile	(revision 5cefa433745f174ac307ad32f414eb2fef7476a2)
@@ -1,14 +1,15 @@
-DOC = uw-ethesis.pdf
-BASE = ${DOC:%.pdf=%} # remove suffix
 # directory for latex clutter files
-BUILD = build
-TEXSRC = $(wildcard *.tex)
-FIGSRC = $(wildcard *.fig)
-BIBSRC = $(wildcard *.bib)
-TEXLIB = .:../../LaTeXmacros:${BUILD}: # common latex macros
-BIBLIB = .:../../bibliography # common citation repository
+Build = build
+Figures = figures
+Pictures = pictures
+TeXSRC = ${wildcard *.tex}
+FigSRC = ${notdir ${wildcard ${Figures}/*.fig}}
+PicSRC = ${notdir ${wildcard ${Pictures}/*.fig}}
+BIBSRC = ${wildcard *.bib}
+TeXLIB = .:../../LaTeXmacros:${Build}: # common latex macros
+BibLIB = .:../../bibliography # common citation repository
 
 MAKEFLAGS = --no-print-directory # --silent
-VPATH = ${BUILD}
+VPATH = ${Build} ${Figures} ${Pictures} # extra search path for file names used in document
 
 ### Special Rules:
@@ -18,38 +19,46 @@
 
 ### Commands:
-LATEX = TEXINPUTS=${TEXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${BUILD}
-BIBTEX = BIBINPUTS=${BIBLIB} bibtex
-#GLOSSARY = INDEXSTYLE=${BUILD} makeglossaries-lite
+
+LaTeX = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${Build}
+BibTeX = BIBINPUTS=${BibLIB} bibtex
+#Glossary = INDEXSTYLE=${Build} makeglossaries-lite
 
 ### Rules and Recipes:
 
+DOC = uw-ethesis.pdf
+BASE = ${DOC:%.pdf=%} # remove suffix
+
 all: ${DOC}
 
-${BUILD}/%.dvi: ${TEXSRC} ${FIGSRC:%.fig=%.tex} ${BIBSRC} Makefile | ${BUILD}
-	${LATEX} ${BASE}
-	${BIBTEX} ${BUILD}/${BASE}
-	${LATEX} ${BASE}
-#	${GLOSSARY} ${BUILD}/${BASE}
-#	${LATEX} ${BASE}
+clean:
+	@rm -frv ${DOC} ${Build}
 
-${BUILD}:
+# File Dependencies #
+
+${Build}/%.dvi : ${TeXSRC} ${FigSRC:%.fig=%.tex} ${PicSRC:%.fig=%.pstex} ${BIBSRC} Makefile | ${Build}
+	${LaTeX} ${BASE}
+	${BibTeX} ${Build}/${BASE}
+	${LaTeX} ${BASE}
+	# if nedded, run latex again to get citations
+	if fgrep -s "LaTeX Warning: Citation" ${basename $@}.log ; then ${LaTeX} ${BASE} ; fi
+#	${Glossary} ${Build}/${BASE}
+#	${LaTeX} ${BASE}
+
+${Build}:
 	mkdir $@
 
-%.pdf : ${BUILD}/%.ps | ${BUILD}
+%.pdf : ${Build}/%.ps | ${Build}
 	ps2pdf $<
 
-%.ps : %.dvi | ${BUILD}
+%.ps : %.dvi | ${Build}
 	dvips $< -o $@
 
-%.tex : %.fig | ${BUILD}
-	fig2dev -L eepic $< > ${BUILD}/$@
+%.tex : %.fig | ${Build}
+	fig2dev -L eepic $< > ${Build}/$@
 
-%.ps : %.fig | ${BUILD}
-	fig2dev -L ps $< > ${BUILD}/$@
+%.ps : %.fig | ${Build}
+	fig2dev -L ps $< > ${Build}/$@
 
-%.pstex : %.fig | ${BUILD}
-	fig2dev -L pstex $< > ${BUILD}/$@
-	fig2dev -L pstex_t -p ${BUILD}/$@ $< > ${BUILD}/$@_t
-
-clean:
-	@rm -frv ${DOC} ${BUILD} *.fig.bak
+%.pstex : %.fig | ${Build}
+	fig2dev -L pstex $< > ${Build}/$@
+	fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
