]> git.sur5r.net Git - bacula/docs/blob - docs/manuals/en/main/Makefile.in
Makefiles have been modified to share the patter-to-handle file which defines itself...
[bacula/docs] / docs / manuals / en / main / Makefile.in
1 #
2 #  Makefile for Bacula LaTeX  Manual
3 #
4 # To build everything do
5 #    make tex
6 #    make web
7 #    make html
8 #    make dvipdf
9 #
10 # or simply
11 #
12 #    make
13 #
14 # for rapid development do:
15 #    make tex
16 #    make show
17 #
18 #
19 # If you are having problems getting "make" to work, debugging it is
20 #  easier if can see the output from latex, which is normally redirected
21 #  to /dev/null.  To see it, do the following:
22 #
23 #   cd docs/manual
24 #   make tex
25 #   latex bacula.tex
26 #
27 #  typically the latex command will stop indicating the error (e.g. a
28 #  missing \ in front of a _ or a missing { or ] ...
29 #
30 #  The following characters must be preceded by a backslash
31 #    to be entered as printable characters:
32
33 #    # $ % & ~ _ ^ \ { }
34 #
35 MANUALSDIR=../..
36 IMAGES=$(MANUALSDIR)/../images
37 DOC=main
38 MAINDOC=Bacula_Main_Reference.html
39 BSYSMANUALDIR=../../../bsysmanual
40 COVERSDIR=../../../covers
41 PDFCOVERSDIR=$(COVERSDIR)/pdf
42 SVGCOVERSDIR=$(COVERSDIR)/svg
43 EPSCOVERSDIR=$(COVERSDIR)/eps
44 LICENSESDIR=$(MANUALSDIR)/licences
45 COVERNAME=coverpage-main
46 BSYSMANNAME=bsysmanual-coverpagebackground
47 LICENCES=$(wildcard $(LICENSESDIR)/*.tex)
48 BSYSCOMPILERFILE=bsys-compiler-mode.tex
49 PDFCOMPILERFILE=$(MANUALSDIR)/bsys-pdflatex-mode.tex
50 TEXCOMPILERFILE=$(MANUALSDIR)/bsys-latex-mode.tex
51 WEBCOMPILERFILE=$(MANUALSDIR)/bsys-web-mode.tex
52 WWWDIR=../www-$(DOC)
53 DOCDIR=../${DOC}
54 TEXFILES=$(wildcard *.tex)
55 WEBFILESTOLINK=$(DOCDIR)/latex2html-init.pl $(DOCDIR)/bacula.sty $(DOCDIR)/translate_images.pl
56 MAKEFORWEB=$(DOCDIR)/web.makefile
57 PDFLATEX=pdflatex
58 PDFLATEXOPTIONS=-interaction=batchmode
59
60 first_rule: all
61
62 all: pdflatex web mini-clean
63
64 .SUFFIXES:     .tex .html
65 .PHONY:
66 .DONTCARE:
67
68
69 pdfcovers:
70         @echo -n "Linking coverpage and background PDF format..."
71         @(cd $(SVGCOVERSDIR) ; make pdf)
72         @ln -sf `pwd`/${PDFCOVERSDIR}/${COVERNAME}.pdf `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.pdf
73         @echo "Done."
74
75 pdfimages: 
76         @echo "Generating PDF images..."
77         @(cd ${IMAGES}/svg ; make pdf)
78         @echo "Done."
79
80 pngimages:
81         @echo "Generating PNG images..."
82         @(cd ${IMAGES}/svg ; make png)
83         @echo "Done."
84
85 epsimages:
86         @echo "Generating EPS images..."
87         @(cd ${IMAGES}/svg ; make eps)
88         @rm -rf ${IMAGES}/png
89         @rm -rf ${IMAGES}/pdf
90         @echo "Done."
91
92 epscovers:
93         @echo -n "Linking coverpage and background EPS format..."
94         @(cd $(SVGCOVERSDIR) ; make eps)
95         @ln -sf `pwd`/${EPSCOVERSDIR}/${COVERNAME}.eps `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.eps
96         @rm -f `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.pdf
97         @echo "Done."
98
99 commonfiles:
100         @../../update_version
101         @echo "Making version `cat version.tex`"
102         @echo -n "Linking shared files..."
103         @(for L in $(LICENCES); do ln -sf $$L .; done)
104         @echo "Done"
105
106 tex:    epscovers epsimages commonfiles
107         @ln -sf $(TEXCOMPILERFILE) $(BSYSCOMPILERFILE)
108         @touch ${DOC}i-dir.tex ${DOC}i-fd.tex ${DOC}i-sd.tex \
109              ${DOC}i-console.tex ${DOC}i-general.tex
110         latex -interaction=batchmode ${DOC}.tex
111         makeindex ${DOC}.idx -o ${DOC}.ind 2>/dev/null
112         makeindex ${DOC}.ddx -o ${DOC}.dnd >/dev/null 2>/dev/null
113         makeindex ${DOC}.fdx -o ${DOC}.fnd >/dev/null 2>/dev/null
114         makeindex ${DOC}.sdx -o ${DOC}.snd >/dev/null 2>/dev/null
115         makeindex ${DOC}.cdx -o ${DOC}.cnd >/dev/null 2>/dev/null
116         latex -interaction=batchmode ${DOC}.tex
117
118 external-references: pdfcovers pdfimages commonfiles
119         @echo " "
120         @echo "Building external references for $(DOC)"
121         @ln -sf $(PDFCOMPILERFILE) $(BSYSCOMPILERFILE)
122         @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex
123         @echo "$(DOC) external references done."
124
125 pdflatex: external-references
126         @echo " "
127         @echo " Generating the PDF version of $(DOC)"
128         @echo "   building indexes"
129         @makeindex ${DOC}.idx -o ${DOC}.ind 2>/dev/null
130         @echo -n "   compiling..."
131         @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex
132         @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex
133         @echo "$(DOC).pdf generated."
134 html:
135         @echo " "
136         @echo "Making html"
137         @ln -sf $(WEBCOMPILERFILE) $(BSYSCOMPILERFILE)
138 #       @cp -fp ${IMAGES}/*.eps .
139 #       @rm -f next.eps next.png prev.eps prev.png up.eps up.png
140         @(if [ -f imagename_translations ] ; then \
141             ./translate_images.pl --from_meaningful_names ${DOC}.html; \
142          fi)
143         latex2html -white -no_subdir -split 0 -toc_stars -white -notransparent \
144                 -init_file latex2html-init.pl ${DOC} >tex.out 2>&1
145         @(if [ -f imagename_translations ] ; then \
146             ./translate_images.pl --from_meaningful_names ${DOC}.html; \
147          fi)
148         (cd ${DOC}; for i in *.png ; do cp -fp ../${IMAGES}/$${i} . 2>/dev/null; done)
149         @echo "Done making html"
150
151
152 web: mini-clean
153         @echo "Making web"
154         @rm -rf $(WWWDIR)
155         @mkdir -p $(WWWDIR)
156         @echo -"Creating tex files..."
157         @(for F in $(TEXFILES) ;\
158         do \
159         cat $$F | sed -f ../pattern-to-handle > $(WWWDIR)/$$F ; \
160         done)
161         @ln -sf $(MAKEFORWEB) $(WWWDIR)/Makefile
162         @(for F in $(WEBFILESTOLINK);\
163         do \
164         ln -sf $$F $(WWWDIR)/;\
165         done)
166         (cd $(WWWDIR) ; make )
167         @echo "Done making web"
168
169 show:
170         xdvi ${DOC}
171
172 texcheck:
173         ./check_tex.pl ${DOC}.tex
174
175 main_configs:
176         pic2graph -density 100 <main_configs.pic >main_configs.png
177
178 mini-clean:
179         @rm -f 1 2 3 *.tex~
180         @rm -f *.gif *.jpg *.eps
181         @rm -f *.cp *.fn *.ky *.log *.pg
182         @rm -f *.backup *.ilg *.lof *.lot
183         @rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
184         @rm -f *.dnd *.old *.out 
185         @rm -f ${DOC}/*.gif ${DOC}/*.jpg ${DOC}/*.eps
186         @rm -f ${DOC}/*.aux ${DOC}/*.cp ${DOC}/*.fn ${DOC}/*.ky ${DOC}/*.log ${DOC}/*.pg
187         @rm -f ${DOC}/*.backup ${DOC}/*.ilg ${DOC}/*.lof ${DOC}/*.lot
188         @rm -f ${DOC}/*.cdx ${DOC}/*.cnd ${DOC}/*.ddx ${DOC}/*.ddn ${DOC}/*.fdx ${DOC}/*.fnd ${DOC}/*.ind ${DOC}/*.sdx ${DOC}/*.snd
189         @rm -f ${DOC}/*.dnd ${DOC}/*.old ${DOC}/*.out
190         @rm -f ${DOC}/WARNINGS
191
192
193 clean:
194         @find . -type f -name "${DOC}.mtc*" -exec rm {} \;
195         @find . -type l -name "*.tex" -exec rm {} \;
196         @rm -f 1 2 3 *.tex~
197         @rm -f *.png *.gif *.jpg *.eps
198         @rm -f *.pdf *.aux *.cp *.fn *.ky *.log *.pg
199         @rm -f *.html *.backup *.ps *.dvi *.ilg *.lof *.lot
200         @rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
201         @rm -f *.dnd imagename_translations
202         @rm -f *.old WARNINGS *.out *.toc *.idx
203         @rm -f ${DOC}i-*.tex
204         @rm -rf ${DOC}
205
206 webclean:
207         @rm -rf $(WWWDIR)
208
209 distclean:  webclean clean
210         @rm -f *.pdf
211         @rm -f images.pl labels.pl internals.pl
212         @rm -f Makefile version.tex