1#
2#
3#  Makefile for LaTeX
4#
5# To build everything do
6#    make tex
7#    make web
8#    make html
9#    make dvipdf
10#
11# or simply
12#
13#    make
14#
15# for rapid development do:
16#    make tex
17#    make show
18#
19#
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:
23#
24#   cd docs/manual
25#   make tex
26#   latex bacula.tex
27#
28#  typically the latex command will stop indicating the error (e.g. a
29#  missing \ in front of a _ or a missing { or ] ...
30#
31#  The following characters must be preceded by a backslash
32#    to be entered as printable characters:
33#
34#    # $ % & ~ _ ^ \ { }
35#
36
37IMAGES=../../../images
38
39DOC=utility
40MAINDOC=Bacula_Utility_Programs.html
41
42first_rule: all
43
44all: tex web dvipdf mini-clean
45
46.SUFFIXES:     .tex .html
47.PHONY:
48.DONTCARE:
49
50
51tex:
52	@../../update_version
53	@echo "Making version `cat version.tex`"
54	@cp -fp ${IMAGES}/hires/*.eps .
55	@touch ${DOC}i-dir.tex ${DOC}i-fd.tex ${DOC}i-sd.tex \
56	     ${DOC}i-console.tex ${DOC}i-general.tex
57	latex -interaction=batchmode ${DOC}.tex
58	makeindex ${DOC}.idx -o ${DOC}.ind 2>/dev/null
59	latex -interaction=batchmode ${DOC}.tex
60
61pdf:
62	@echo "Making pdfm"
63	@cp -fp ${IMAGES}/hires/*.eps .
64	dvipdfm -p a4 ${DOC}.dvi
65
66dvipdf:
67	@echo "Making dvi to pdf"
68	@cp -fp ${IMAGES}/hires/*.eps .
69	dvipdf ${DOC}.dvi ${DOC}.pdf
70
71html:
72	@echo " "
73	@echo "Making html"
74	@cp -fp ${IMAGES}/*.eps .
75	@rm -f next.eps next.png prev.eps prev.png up.eps up.png
76	@(if [ -f imagename_translations ] ; then \
77	    ./translate_images.pl --from_meaningful_names ${DOC}.html; \
78	 fi)
79	latex2html -white -no_subdir -split 0 -toc_stars -white -notransparent \
80		-init_file latex2html-init.pl ${DOC} >tex.out 2>&1
81	@(if [ -f imagename_translations ] ; then \
82	    ./translate_images.pl --from_meaningful_names ${DOC}.html; \
83	 fi)
84	cp ${IMAGES}/bacula-logo.png ${DOC}
85	(cd ${DOC}; for i in *.png ; do cp -fp ../${IMAGES}/$${i} . 2>/dev/null; done)
86	@echo "Done making html"
87
88web:
89	@echo "Making web"
90	@rm -rf ${DOC}
91	@mkdir -p ${DOC}
92	@cp -fp ${IMAGES}/*.eps .
93	@rm -f next.eps next.png prev.eps prev.png up.eps up.png
94	@rm -f ${DOC}/xp-*.png
95	@rm -f ${DOC}/next.eps ${DOC}/next.png ${DOC}/prev.eps ${DOC}/prev.png ${DOC}/up.eps ${DOC}/up.png
96	latex2html -split 3 -local_icons -t "Bacula Utility Programs" -long_titles 4 \
97		-toc_stars -contents_in_nav -init_file latex2html-init.pl \
98		-no_antialias -no_antialias_text \
99		-white -notransparent ${DOC} >tex.out 2>&1
100	@(if [ -f imagename_translations ] ; then \
101	    ./translate_images.pl --from_meaningful_names ${DOC}.html; \
102	 fi)
103	@cp -f ${DOC}/${MAINDOC} ${DOC}/index.html
104	@echo "Done making web"
105show:
106	xdvi ${DOC}
107
108texcheck:
109	./check_tex.pl ${DOC}.tex
110
111main_configs:
112	pic2graph -density 100 <main_configs.pic >main_configs.png
113
114mini-clean:
115	@rm -f 1 2 3 *.tex~
116	@rm -f *.gif *.jpg *.eps
117	@rm -f *.aux *.cp *.fn *.ky *.log *.pg
118	@rm -f *.backup *.ilg *.lof *.lot
119	@rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
120	@rm -f *.dnd *.old *.out
121	@rm -f ${DOC}/*.gif ${DOC}/*.jpg ${DOC}/*.eps
122	@rm -f ${DOC}/*.aux ${DOC}/*.cp ${DOC}/*.fn ${DOC}/*.ky ${DOC}/*.log ${DOC}/*.pg
123	@rm -f ${DOC}/*.backup ${DOC}/*.ilg ${DOC}/*.lof ${DOC}/*.lot
124	@rm -f ${DOC}/*.cdx ${DOC}/*.cnd ${DOC}/*.ddx ${DOC}/*.ddn ${DOC}/*.fdx ${DOC}/*.fnd ${DOC}/*.ind ${DOC}/*.sdx ${DOC}/*.snd
125	@rm -f ${DOC}/*.dnd ${DOC}/*.old ${DOC}/*.out
126	@rm -f ${DOC}/WARNINGS
127
128
129clean:
130	@rm -f 1 2 3 *.tex~
131	@rm -f *.png *.gif *.jpg *.eps
132	@rm -f *.pdf *.aux *.cp *.fn *.ky *.log *.pg
133	@rm -f *.html *.backup *.ps *.dvi *.ilg *.lof *.lot
134	@rm -f *.cdx *.cnd *.ddx *.ddn *.fdx *.fnd *.ind *.sdx *.snd
135	@rm -f *.dnd imagename_translations
136	@rm -f *.old WARNINGS *.out *.toc *.idx
137	@rm -f ${DOC}i-*.tex
138	@rm -rf ${DOC}
139
140
141distclean: clean
142	@rm -f images.pl labels.pl internals.pl
143