5 # To build everything do
15 # for rapid development do:
20 # If you are having problems getting "make" to work, debugging it is
21 # easier if can see the output from latex, which is normally redirected
22 # to /dev/null. To see it, do the following:
28 # typically the latex command will stop indicating the error (e.g. a
29 # missing \ in front of a _ or a missing { or ] ...
31 # The following characters must be preceded by a backslash
32 # to be entered as printable characters:
37 IMAGES=$(MANUALSDIR)/../images
39 MAINDOC=Console_Operators_Guide.html
40 BSYSMANUALDIR=$(MANUALSDIR)/../bsysmanual
41 COVERSDIR=$(MANUALSDIR)/../covers
42 PDFCOVERSDIR=$(COVERSDIR)/pdf
43 SVGCOVERSDIR=$(COVERSDIR)/svg
44 EPSCOVERSDIR=$(COVERSDIR)/eps
45 LICENSESDIR=$(MANUALSDIR)/licences
46 COVERNAME=coverpage-console
47 BSYSMANNAME=bsysmanual-coverpagebackground
48 LICENCES=$(wildcard $(LICENSESDIR)/*.tex)
49 BSYSCOMPILERFILE=bsys-compiler-mode.tex
50 PDFCOMPILERFILE=$(MANUALSDIR)/bsys-pdflatex-mode.tex
51 TEXCOMPILERFILE=$(MANUALSDIR)/bsys-latex-mode.tex
52 WEBCOMPILERFILE=$(MANUALSDIR)/bsys-web-mode.tex
55 TEXFILES=$(wildcard *tex)
56 WEBFILESTOLINK=$(DOCDIR)/latex2html-init.pl $(DOCDIR)/bacula.sty $(DOCDIR)/translate_images.pl
58 PDFLATEXOPTIONS=-interaction=batchmode
59 PDFOUTPUT="> $(DOC).out 2>&1"
60 MAKEFORWEB=$(DOCDIR)/web.makefile
63 all: pdflatex web mini-clean
71 @echo -n "Linking coverpage and background PDF format..."
72 @(cd $(SVGCOVERSDIR) ; make pdf)
73 @ln -sf `pwd`/${PDFCOVERSDIR}/${COVERNAME}.pdf `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.pdf
78 @echo "Converting SVG to PDF images..."
79 @(cd ${IMAGES}/svg ; make pdf)
84 @echo "Converting SVG to PNG images..."
85 @(cd ${IMAGES}/svg ; make png)
90 @echo "Converting SVG to EPS images..."
91 @(cd ${IMAGES}/svg ; make eps)
98 @echo -n "Linking coverpage and background EPS format..."
99 @(cd $(SVGCOVERSDIR) ; make eps)
100 @ln -sf `pwd`/${EPSCOVERSDIR}/${COVERNAME}.eps `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.eps
101 @rm -f `pwd`/${BSYSMANUALDIR}/${BSYSMANNAME}.pdf
105 @/bin/sh $(MANUALSDIR)/update_version
106 @echo "Making version `cat version.tex`"
107 @echo -n "Linking shared files..."
108 @(for L in $(LICENCES); do ln -sf $$L .; done)
111 pdflatex: external-references
113 @echo "Generating the PDF version of $(DOC)"
114 @makeindex ${DOC}.idx -o ${DOC}.ind 2>/dev/null
115 @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex $(PDFOUTPUT)
116 @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex $(PDFOUTPUT)
117 @echo "$(DOC).pdf generated."
119 external-references: pdfcovers pdfimages commonfiles
121 @echo "Building external references for $(DOC)"
122 @ln -sf $(PDFCOMPILERFILE) $(BSYSCOMPILERFILE)
123 @$(PDFLATEX) $(PDFLATEXOPTIONS) ${DOC}.tex $(PDFOUTPUT)
124 @echo "$(DOC) external references done."
130 @echo -"Creating tex files..."
131 @(for F in $(TEXFILES) ;\
133 cat $$F | sed -e 's/lstlisting/verbatim/g;s/lstinline/verb/g;s/\\lstset.*//g;s/bsysimage.{\(.*\)}{.*}{.*}/includegraphics{\1}/g;s/\\input{head.*//g;s/bsysmanual/book/g;s/bsysitemize/itemize/g;s/\\listoffigures//g;s/\\listoftables//g;s/\\LTXtable{.*}{\(.*\)}/\\include{\1}/g' > $(WWWDIR)/$$F ;\
135 @ln -sf $(MAKEFORWEB) $(WWWDIR)/Makefile
136 @(for F in $(WEBFILESTOLINK);\
138 ln -sf $$F $(WWWDIR)/;\
140 (cd $(WWWDIR) ; make)
141 @echo "Done making web"
147 ./check_tex.pl ${DOC}.tex
150 pic2graph -density 100 <main_configs.pic >main_configs.png
154 @rm -f *.gif *.jpg *.eps
155 @rm -f *.cp *.fn *.ky *.log *.pg
156 @rm -f *.backup *.ilg *.lof *.lot
157 @rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
158 @rm -f *.dnd *.old *.out
159 @rm -f ${DOC}/*.gif ${DOC}/*.jpg ${DOC}/*.eps
160 @rm -f ${DOC}/*.aux ${DOC}/*.cp ${DOC}/*.fn ${DOC}/*.ky ${DOC}/*.log ${DOC}/*.pg
161 @rm -f ${DOC}/*.backup ${DOC}/*.ilg ${DOC}/*.lof ${DOC}/*.lot
162 @rm -f ${DOC}/*.cdx ${DOC}/*.cnd ${DOC}/*.ddx ${DOC}/*.ddn ${DOC}/*.fdx ${DOC}/*.fnd ${DOC}/*.ind ${DOC}/*.sdx ${DOC}/*.snd
163 @rm -f ${DOC}/*.dnd ${DOC}/*.old ${DOC}/*.out
164 @rm -f ${DOC}/WARNINGS
168 @find . -type f -name ${DOC}.mtc* -exec rm {} \;
169 @find . -type l -name "*.tex" -exec rm {} \;
171 @rm -f *.png *.gif *.jpg *.eps
172 @rm -f *.pdf *.aux *.cp *.fn *.ky *.log *.pg
173 @rm -f *.html *.backup *.ps *.dvi *.ilg *.lof *.lot
174 @rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
175 @rm -f *.dnd imagename_translations
176 @rm -f *.old WARNINGS *.out *.toc *.idx
183 distclean: webclean clean
184 @rm -f images.pl labels.pl internals.pl
185 @rm -f Makefile version.tex