- $(LATEX) $*
- grep -q '^\\bibdata{' $*.aux && $(BIBTEX) $* || true
- grep -q '\@istfilename' $*.aux && $(MAKEGLOSSARIES) $* || true
- [ -f $*.idx ] && $(MAKEINDEX) $* || true
- $(LATEX) $*
- $(LATEX) $*
+ $(RM) -f $*.bcf
+ $(LATEX) $(LATEXFLAGS) $*
+ (grep -q '^\\bibdata{' $*.aux || [ -f $*.bcf ]; ) && $(BIBTEX) $(BIBTEXFLAGS) $* || true
+ grep -q '\@istfilename' $*.aux && $(MAKEGLOSSARIES) $(MAKEGLOSSARIESFLAGS) $* || true
+ [ -f $*.idx ] && $(MAKEINDEX) $(MAKEINDEXFLAGS) $* || true
+ $(LATEX) $(LATEXFLAGS) $*
+ $(LATEX) $(LATEXFLAGS) $*
+
+clean: $(addprefix clean-,$(DOCUMENTS))
+ $(RM) texput.log
+
+clean-%:
+ $(RM) $(addprefix $*.,acn acr alg aux bbl bcf blg fmt glg glo gls idx ilg ind ist loa lof log lol lot nav out snm tdo toc vrb run.xml)