Index: doc/proposals/tuples/Makefile
===================================================================
--- doc/proposals/tuples/Makefile	(revision 2298a7b8e3b12b5a036815a4c846aa7a78531850)
+++ doc/proposals/tuples/Makefile	(revision 484ee5317b3b11ba2ce1258ef73a93ff8a6715c7)
@@ -1,10 +1,15 @@
-## Define the appropriate configuration variables.
+## Define the configuration variables.
 
-MACROS = ../../LaTeXmacros
-BIB = ../../bibliography
+Build = build
+Figures = figures
+Macros = ../../LaTeXmacros
+Bib = ../../bibliography
 
-TeXLIB = .:$(MACROS):$(MACROS)/listings:$(MACROS)/enumitem:$(BIB)/:
-LaTeX  = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error
+TeXLIB = .:${Macros}:${MACROS}/listings:${MACROS}/enumitem:${Bib}/:
+LaTeX  = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${Build}
 BibTeX = BIBINPUTS=${TeXLIB} && export BIBINPUTS && bibtex
+
+MAKEFLAGS = --no-print-directory --silent #
+VPATH = ${Build} ${Figures}
 
 ## Define the text source files.
@@ -29,33 +34,36 @@
 
 DOCUMENT = tuples.pdf
+BASE = ${basename ${DOCUMENT}}
 
 # Directives #
+
+.PHONY : all clean					# not file names
 
 all : ${DOCUMENT}
 
 clean :
-	rm -f *.bbl *.aux *.dvi *.idx *.ilg *.ind *.brf *.out *.log *.toc *.blg *.pstex_t *.cf \
-		${FIGURES} ${PICTURES} ${PROGRAMS} ${GRAPHS} ${basename ${DOCUMENT}}.ps ${DOCUMENT}
+	@rm -frv ${DOCUMENT} ${BASE}.ps ${Build}
 
 # File Dependencies #
 
-${DOCUMENT} : ${basename ${DOCUMENT}}.ps
+${DOCUMENT} : ${BASE}.ps
 	ps2pdf $<
 
-${basename ${DOCUMENT}}.ps : ${basename ${DOCUMENT}}.dvi
-	dvips $< -o $@
+${BASE}.ps : ${BASE}.dvi
+	dvips ${Build}/$< -o $@
 
-${basename ${DOCUMENT}}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} ${basename ${DOCUMENT}}.tex \
-		$(MACROS)/common.tex $(MACROS)/indexstyle $(BIB)/cfa.bib
+${BASE}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} \
+		${Macros}/common.tex ${Macros}/indexstyle ${Bib}/pl.bib | ${Build}
 	# Conditionally create an empty *.ind (index) file for inclusion until makeindex is run.
-	if [ ! -r ${basename $@}.ind ] ; then touch ${basename $@}.ind ; fi
+	#if [ ! -r ${basename $@}.ind ] ; then touch ${Build}/${basename $@}.ind ; fi
 	# Must have *.aux file containing citations for bibtex
 	if [ ! -r ${basename $@}.aux ] ; then ${LaTeX} ${basename $@}.tex ; fi
-	-${BibTeX} ${basename $@}
-	# Some citations reference others so run steps again to resolve these citations
+	-${BibTeX} ${Build}/${basename $@}
+	# Some citations reference others so run again to resolve these citations
 	${LaTeX} ${basename $@}.tex
-	-${BibTeX} ${basename $@}
+	-${BibTeX} ${Build}/${basename $@}
 	# Make index from *.aux entries and input index at end of document
-	makeindex -s $(MACROS)/indexstyle ${basename $@}.idx
+	#makeindex -s ${Macros}/indexstyle ${Build}/${basename $@}.idx
+	# Run again to finish citations
 	${LaTeX} ${basename $@}.tex
 	# Run again to get index title into table of contents
@@ -67,13 +75,16 @@
 ## Define the default recipes.
 
-%.tex : %.fig
-	fig2dev -L eepic $< > $@
+${Build}:
+	mkdir -p ${Build}
 
-%.ps : %.fig
-	fig2dev -L ps $< > $@
+%.tex : %.fig | ${Build}
+	fig2dev -L eepic $< > ${Build}/$@
 
-%.pstex : %.fig
-	fig2dev -L pstex $< > $@
-	fig2dev -L pstex_t -p $@ $< > $@_t
+%.ps : %.fig | ${Build}
+	fig2dev -L ps $< > ${Build}/$@
+
+%.pstex : %.fig | ${Build}
+	fig2dev -L pstex $< > ${Build}/$@
+	fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
 
 # Local Variables: #
