1 # $Cambridge: exim/doc/doc-docbook/Makefile,v 1.7 2006/02/01 11:01:01 ph10 Exp $
3 # Make file for Exim documentation from xfpt source.
5 notarget:; @echo "** You must specify a target, in the form x.y, where x is 'filter', 'spec',"
6 @echo "** or 'test', and y is 'xml', 'fo', 'ps', 'pdf', 'html', 'txt', or 'info'."
7 @echo "** One other possible target is 'exim.8'".
11 ############################## MAN PAGE ################################
13 exim.8: spec.xml x2man
16 ########################################################################
19 ############################### FILTER #################################
21 filter.xml: filter.xfpt
24 filter-fo.xml: filter.xml Pre-xml
25 ./Pre-xml -bookinfo <filter.xml >filter-fo.xml
27 filter-html.xml: filter.xml Pre-xml
28 ./Pre-xml -html <filter.xml >filter-html.xml
30 filter-txt.xml: filter.xml Pre-xml
31 ./Pre-xml -ascii -html -quoteliteral <filter.xml >filter-txt.xml
33 filter-info.xml: filter.xml Pre-xml
34 ./Pre-xml -ascii -html <filter.xml >filter-info.xml
36 filter.fo: filter-fo.xml MyStyle-filter-fo.xsl MyStyle-fo.xsl MyStyle.xsl
37 /bin/rm -rf filter.fo filter-fo.fo
38 xmlto -x MyStyle-filter-fo.xsl fo filter-fo.xml
39 /bin/mv -f filter-fo.fo filter.fo
41 # Do not use pdf2ps from the PDF version; better PS is generated directly.
44 fop filter.fo -ps filter-tmp.ps
45 mv filter-tmp.ps filter.ps
47 # Do not use ps2pdf from the PS version; better PDF is generated directly. It
48 # contains cross links etc.
51 fop filter.fo -pdf filter-tmp.pdf
52 mv filter-tmp.pdf filter.pdf
54 filter.html: filter-html.xml TidyHTML-filter MyStyle-nochunk-html.xsl \
55 MyStyle-html.xsl MyStyle.xsl
56 /bin/rm -rf filter.html filter-html.html
57 xmlto -x MyStyle-nochunk-html.xsl html-nochunks filter-html.xml
58 /bin/mv -f filter-html.html filter.html
61 filter.txt: filter-txt.xml Tidytxt MyStyle-txt-html.xsl MyStyle-html.xsl \
63 /bin/rm -rf filter-txt.html
64 xmlto -x MyStyle-txt-html.xsl html-nochunks filter-txt.xml
65 w3m -dump filter-txt.html | ./Tidytxt >filter.txt
67 # I have not found a way of making docbook2texi write its output anywhere
68 # other than the file name that it makes up. The --to-stdout option does not
71 filter.info: filter-info.xml
72 docbook2texi filter-info.xml
73 perl -ne 's/conceptindex/cindex/;s/optionindex/findex/;print;' \
74 <exim_filtering.texi | Tidytxt >filter.texinfo
75 /bin/rm -rf exim_filtering.texi
76 makeinfo -o filter.info filter.texinfo
78 ########################################################################
81 ################################ SPEC ##################################
86 spec-fo.xml: spec.xml Pre-xml
87 ./Pre-xml -optbreak <spec.xml >spec-fo.xml
89 spec-html.xml: spec.xml Pre-xml
90 ./Pre-xml -html -oneindex \
91 <spec.xml >spec-html.xml
93 spec-txt.xml: spec.xml Pre-xml
94 ./Pre-xml -ascii -html -noindex -quoteliteral \
95 <spec.xml >spec-txt.xml
97 spec-info.xml: spec.xml Pre-xml
98 ./Pre-xml -ascii -html -noindex <spec.xml >spec-info.xml
100 spec.fo: spec-fo.xml MyStyle-spec-fo.xsl MyStyle-fo.xsl MyStyle.xsl \
102 /bin/rm -rf spec.fo spec-fo.fo
103 xmlto -x MyStyle-spec-fo.xsl fo spec-fo.xml
104 /bin/mv -f spec-fo.fo spec.fo
106 # Do not use pdf2ps from the PDF version; better PS is generated directly.
109 FOP_OPTS=-Xmx512m fop spec.fo -ps spec-tmp.ps
110 mv spec-tmp.ps spec.ps
112 # Do not use ps2pdf from the PS version; better PDF is generated directly. It
113 # contains cross links etc. We post-process it to add page label information
114 # so that the page identifiers shown by acroread are the correct page numbers.
116 spec.pdf: spec.fo PageLabelPDF
117 FOP_OPTS=-Xmx512m fop spec.fo -pdf spec-tmp.pdf
118 ./PageLabelPDF <spec-tmp.pdf >spec.pdf
120 spec.html: spec-html.xml TidyHTML-spec MyStyle-chunk-html.xsl \
121 MyStyle-html.xsl MyStyle.xsl
122 /bin/rm -rf spec.html
123 xmlto -x MyStyle-chunk-html.xsl -o spec.html html spec-html.xml
126 spec.txt: spec-txt.xml Tidytxt MyStyle-txt-html.xsl MyStyle-html.xsl \
128 /bin/rm -rf spec-txt.html
129 xmlto -x MyStyle-txt-html.xsl html-nochunks spec-txt.xml
130 w3m -dump spec-txt.html | ./Tidytxt >spec.txt
132 # I have not found a way of making docbook2texi write its output anywhere
133 # other than the file name that it makes up. The --to-stdout option does not
136 spec.info: spec-info.xml
137 docbook2texi spec-info.xml
138 perl -ne 's/conceptindex/cindex/;s/optionindex/findex/;print;' \
139 <the_exim_mta.texi >spec.texinfo
140 /bin/rm -rf the_exim_mta.texi
141 makeinfo -o spec.info spec.texinfo
143 ########################################################################
146 ################################ TEST ##################################
148 # These targets (similar to the above) are for running little tests.
153 test-fo.xml: test.xml Pre-xml
154 ./Pre-xml <test.xml >test-fo.xml
156 test-html.xml: test.xml Pre-xml
157 ./Pre-xml -html -oneindex <test.xml >test-html.xml
159 test-txt.xml: test.xml Pre-xml
160 ./Pre-xml -ascii -html -noindex -quoteinfo \
161 <test.xml >test-txt.xml
163 test-info.xml: test.xml Pre-xml
164 ./Pre-xml -ascii -html -noindex <test.xml >test-info.xml
166 test.fo: test-fo.xml MyStyle-spec-fo.xsl MyStyle-fo.xsl MyStyle.xsl \
168 /bin/rm -rf test.fo test-fo.fo
169 xmlto -x MyStyle-spec-fo.xsl fo test-fo.xml
170 /bin/mv -f test-fo.fo test.fo
172 # Do not use pdf2ps from the PDF version; better PS is generated directly.
175 fop test.fo -ps test-tmp.ps
176 mv test-tmp.ps test.ps
178 # Do not use ps2pdf from the PS version; better PDF is generated directly. It
179 # contains cross links etc.
182 fop test.fo -pdf test-tmp.pdf
183 mv test-tmp.pdf test.pdf
185 test.html: test-html.xml MyStyle-nochunk-html.xsl MyStyle-html.xsl \
187 /bin/rm -rf test.html test-html.html
188 xmlto -x MyStyle-nochunk-html.xsl html-nochunks test-html.xml
189 /bin/mv -f test-html.html test.html
191 test.txt: test-txt.xml Tidytxt MyStyle-txt-html.xsl MyStyle-html.xsl \
193 /bin/rm -rf test-txt.html
194 xmlto -x MyStyle-txt-html.xsl html-nochunks test-txt.xml
195 w3m -dump test-txt.html | Tidytxt >test.txt
197 # I have not found a way of making docbook2texi write its output anywhere
198 # other than the file name that it makes up. The --to-stdout option does not
201 test.info: test-info.xml
202 docbook2texi test-info.xml
203 perl -ne 's/conceptindex/cindex/;s/optionindex/findex/;print;' \
204 <short_title.texi >test.texinfo
205 /bin/rm -rf short_title.texi
206 makeinfo -o test.info test.texinfo
208 ########################################################################
211 ################################ CLEAN #################################
213 clean:; /bin/rm -rf exim.8 \
214 filter*.xml spec*.xml test*.xml \
215 *.fo *.html *.pdf *.ps \
216 filter*.txt spec*.txt test*.txt \
217 *.info* *.texinfo *.texi
219 ########################################################################