Default LaTeX Makefile

From SnOwy - Ed's Wiki Notebook

Jump to: navigation, search

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 ++;
}
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox