|
1 #------------------------------------------------------------------------------ |
|
2 # |
|
3 # LaTeX Makefile |
|
4 # |
|
5 # $Id$ |
|
6 # |
|
7 #------------------------------------------------------------------------------ |
|
8 |
|
9 FILE := ethercat_doc |
|
10 |
|
11 DVI_DEPEND := images/*.eps |
|
12 PDF_DEPEND := images/*.pdf |
|
13 |
|
14 LATEX_OPTIONS := -file-line-error-style |
|
15 |
|
16 LATEX_CMD := latex $(LATEX_OPTIONS) \\nonstopmode\\input{$(FILE).tex} |
|
17 PDFLATEX_CMD := pdflatex $(LATEX_OPTIONS) $(FILE) |
|
18 |
|
19 #------------------------------------------------------------------------------ |
|
20 |
|
21 dvi: $(FILE).dvi |
|
22 |
|
23 pdf: $(FILE).pdf |
|
24 |
|
25 all: dvi pdf |
|
26 |
|
27 $(FILE).dvi: $(FILE).tex $(DVI_DEPEND) |
|
28 @if [ ! -f $(FILE).toc ]; then touch $(FILE).toc; fi |
|
29 @if [ ! -f $(FILE).idx ]; then touch $(FILE).idx; fi |
|
30 @if [ ! -f $(FILE).glo ]; then touch $(FILE).glo; fi |
|
31 @cp $(FILE).toc $(FILE).toc.bak |
|
32 @cp $(FILE).idx $(FILE).idx.bak |
|
33 @cp $(FILE).glo $(FILE).glo.bak |
|
34 $(LATEX_CMD) |
|
35 @count=5; \ |
|
36 while (grep -s 'cross-references' $(FILE).log || \ |
|
37 ! diff -q $(FILE).toc $(FILE).toc.bak) && \ |
|
38 [ $$count -gt 0 ]; \ |
|
39 do \ |
|
40 cp $(FILE).toc $(FILE).toc.bak; \ |
|
41 $(LATEX_CMD); \ |
|
42 count=`expr $$count - 1`; \ |
|
43 done |
|
44 @rerunlatex=0 |
|
45 @if ! diff -q $(FILE).idx $(FILE).idx.bak; then \ |
|
46 echo "Rebuilding Index"; \ |
|
47 makeindex $(FILE); \ |
|
48 rerunlatex=1; \ |
|
49 fi |
|
50 @if ! diff -q $(FILE).glo $(FILE).glo.bak; then \ |
|
51 echo "Rebuilding Glossary"; \ |
|
52 makeindex $(FILE).glo -s nomencl.ist -o $(FILE).gls; \ |
|
53 rerunlatex=1; \ |
|
54 fi |
|
55 @if [ ! $$rerunlatex ]; then \ |
|
56 echo "Re-running LaTeX..."; \ |
|
57 $(LATEX_CMD); \ |
|
58 fi |
|
59 @rm -f $(FILE).toc.bak |
|
60 @rm -f $(FILE).idx.bak |
|
61 @rm -f $(FILE).glo.bak |
|
62 |
|
63 $(FILE).pdf: $(FILE).tex $(PDF_DEPEND) |
|
64 @if [ ! -f $(FILE).toc ]; then touch $(FILE).toc; fi |
|
65 @if [ ! -f $(FILE).idx ]; then touch $(FILE).idx; fi |
|
66 @if [ ! -f $(FILE).glo ]; then touch $(FILE).glo; fi |
|
67 @cp $(FILE).toc $(FILE).toc.bak |
|
68 @cp $(FILE).idx $(FILE).idx.bak |
|
69 @cp $(FILE).glo $(FILE).glo.bak |
|
70 $(PDFLATEX_CMD) |
|
71 @count=5; \ |
|
72 while (grep -s 'cross-references' $(FILE).log || \ |
|
73 ! diff -q $(FILE).toc $(FILE).toc.bak) && \ |
|
74 [ $$count -gt 0 ]; \ |
|
75 do \ |
|
76 cp $(FILE).toc $(FILE).toc.bak; \ |
|
77 $(PDFLATEX_CMD); \ |
|
78 count=`expr $$count - 1`; \ |
|
79 done |
|
80 @rerunlatex=0 |
|
81 @if ! diff -q $(FILE).idx $(FILE).idx.bak; then \ |
|
82 echo "Rebuilding Index"; \ |
|
83 makeindex $(FILE); \ |
|
84 rerunlatex=1; \ |
|
85 fi |
|
86 @if ! diff -q $(FILE).glo $(FILE).glo.bak; then \ |
|
87 echo "Rebuilding Glossary"; \ |
|
88 makeindex $(FILE).glo -s nomencl.ist -o $(FILE).gls; \ |
|
89 rerunlatex=1; \ |
|
90 fi |
|
91 @if [ ! $$rerunlatex ]; then \ |
|
92 echo "Re-running LaTeX..."; \ |
|
93 $(PDFLATEX_CMD); \ |
|
94 fi |
|
95 @rm -f $(FILE).toc.bak |
|
96 @rm -f $(FILE).idx.bak |
|
97 @rm -f $(FILE).glo.bak |
|
98 |
|
99 clean: |
|
100 @rm -f $(FILE).aux $(FILE).dvi $(FILE).idx \ |
|
101 $(FILE).ilg $(FILE).ind $(FILE).log \ |
|
102 $(FILE).out $(FILE).pdf $(FILE).ps \ |
|
103 $(FILE).toc $(FILE).lot $(FILE).lof \ |
|
104 $(FILE).lol $(FILE).glo $(FILE).gls \ |
|
105 images/*.bak *~ |
|
106 |
|
107 #------------------------------------------------------------------------------ |