TeX用Makefile

ここ2日ほどTeXを書いてるので、Makefileを書いてみた。
openを使っているのでMac専用だったりする。openをexplorerとかxdviで置き換えるとWindowsLinuxでも使えるかもしれない。

使い方

Makefileにはこう書く。

TeX:=meeting.tex

include ../Makefile # TeX用Makefileへのパス

すると、次のようなターゲットが使える。

# dviの生成
$ make

# dviの生成、その2
$ make dvi

# pdfの作成
$ make pdf

# dviを開く
$ make open

# dviを開く、その2
$ make open-dvi

# pdfを開く
$ make open-pdf

# .log,.aux,.dvi,.pdf,*~を消す
$ make clean

ソースコード

# example:
#  TeX=meeting.tex
#  include ../path/to/Makefile

dvi:=$(patsubst %.tex,%.dvi,$(TeX))
pdf:=$(patsubst %.tex,%.pdf,$(TeX))

.PHONY : open dvi pdf open-dvi open-pdf clean

# ショートカット
default: dvi
open : open-dvi
dvi : $(dvi)
pdf : $(pdf)

# ファイルを開くやつ
open-dvi : $(dvi)
	open $<

open-pdf : $(pdf)
	open $<

# 削除
clean:
	rm -f *.dvi *.pdf *.log *.aux *~

# ルール
%.pdf : %.dvi
	dvipdfmx $<

%.dvi : %.tex
	platex $<
	platex $<