From SnOwy - Ed's Wiki Notebook
makefile
LATEX=latex
DVIPS=dvips
PS2PDF=ps2pdf
BIBTEX=bibtex
P=main
SYSTEM=$(shell uname)
ifeq ($(SYSTEM),Linux)
VIEWER=gv
else ifeq ($(SYSTEM),Darwin)
VIEWER=open
endif
default: all
view: all
$(VIEWER) $(P).pdf
all: cleaner $(P).pdf clean
$(P).dvi: $(P).tex $(P).bib
$(LATEX) $(P).tex;\
$(BIBTEX) $(P);\
$(LATEX) $(P).tex;\
$(LATEX) $(P).tex;\
$(LATEX) $(P).tex
$(P).ps: $(P).dvi
$(DVIPS) -o $(P).ps -G0 -tletter $(P).dvi
#$(P).pdf: $(P).ps
# ps2pdf -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sPAPERSIZE=a4 -dPDFSETTINGS=/printer \
#-dCompatibilityLevel=1.4 -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true \
#-sOutputFile=$(P).pdf $(P).ps
$(P).pdf: $(P).ps
$(PS2PDF) $(P).ps $(P).pdf
clean:
rm -f *.aux *.bbl *.blg *.dvi *.log *.ps *.out *.tdo
cleaner: clean
rm -f $(P).pdf
scan: main.tex main.bib
@echo "Scanning main.tex for non-ascii characters ..."
@perl ascii_analyze.pl < main.tex
@echo "Scanning main.bib for non-ascii characters ..."
@perl ascii_analyze.pl < main.bib
comma: main.bib
@echo "Scanning main.bib for stray commas in author lists ..."
@grep AUTHOR < main.bib | grep "," | grep -v "},"
ascii_analyze.pl
use strict;
my $input_line = 1;
while(<>) {
if($_ =~ /[^[:ascii:]]/) {
print "line ${input_line}\n";
}
$input_line ++;
}