This commit was manufactured by cvs2svn to create tag 'r221c2'.
[python/dscho.git] / Doc / Makefile
blob3a17bb815a8aeb68906e4d4f299c7d3dc0887e86
1 # Makefile for Python documentation
2 # ---------------------------------
4 # See also the README file.
6 # This is a bit of a mess. The documents are identified by short names:
7 # api -- Python/C API Reference Manual
8 # doc -- Documenting Python
9 # ext -- Extending and Embedding the Python Interpreter
10 # lib -- Library Reference Manual
11 # mac -- Macintosh Library Modules
12 # ref -- Python Reference Manual
13 # tut -- Python Tutorial
14 # inst -- Installing Python Modules
15 # dist -- Distributing Python Modules
17 # The LaTeX sources for each of these documents are in subdirectories
18 # with the three-letter designations above as the directory names.
20 # The main target creates HTML for each of the documents. You can
21 # also do "make lib" (etc.) to create the HTML versions of individual
22 # documents.
24 # The document classes and styles are in the texinputs/ directory.
25 # These define a number of macros that are similar in name and intent
26 # as macros in Texinfo (e.g. \code{...} and \emph{...}), as well as a
27 # number of environments for formatting function and data definitions.
28 # Documentation for the macros is included in "Documenting Python"; see
29 # http://www.python.org/doc/current/doc/doc.html, or the sources for
30 # this document in the doc/ directory.
32 # Everything is processed by LaTeX. See the file `README' for more
33 # information on the tools needed for processing.
35 # There's a problem with generating the index which has been solved by
36 # a sed command applied to the index file. The shell script fix_hack
37 # does this (the Makefile takes care of calling it).
39 # Additional targets attempt to convert selected LaTeX sources to
40 # various other formats. These are generally site specific because
41 # the tools used are all but universal. These targets are:
43 # ps -- convert all documents from LaTeX to PostScript
44 # pdf -- convert all documents from LaTeX to the
45 # Portable Document Format
47 # See the README file for more information on these targets.
49 # The formatted output is located in subdirectories. For PDF and
50 # PostScript, look in the paper-$(PAPER)/ directory. For HTML, look in
51 # the html/ directory. If you want to fix the GNU info process, look
52 # in the info/ directory; please send patches to python-docs@python.org.
54 # This Makefile only includes information on how to perform builds; for
55 # dependency information, see Makefile.deps.
57 # Customization -- you *may* have to edit this
59 # You could set this to a4:
60 PAPER=letter
62 # Ideally, you shouldn't need to edit beyond this point
64 INFODIR= info
65 TOOLSDIR= tools
67 # This is the *documentation* release, and is used to construct the file
68 # names of the downloadable tarballs.
69 RELEASE=2.2.1c2
71 PYTHON= python
72 DVIPS= dvips -N0 -t $(PAPER)
74 MKDVI= $(PYTHON) ../tools/mkhowto --paper=$(PAPER) --dvi
75 MKHTML= $(PYTHON) tools/mkhowto --html --about html/stdabout.dat \
76 --address $(PYTHONDOCS) --up-link ../index.html \
77 --up-title "Python Documentation Index" \
78 --global-module-index "../modindex.html" --dvips-safe
79 MKISILOHTML=$(PYTHON) tools/mkhowto --html --about html/stdabout.dat \
80 --l2h-init perl/isilo.perl --numeric --split 1 \
81 --dvips-safe
82 MKISILO= iSilo386 -U -y -rCR -d0
83 MKPDF= $(PYTHON) ../tools/mkhowto --paper=$(PAPER) --pdf
84 MKPS= $(PYTHON) ../tools/mkhowto --paper=$(PAPER) --ps
86 BUILDINDEX=$(TOOLSDIR)/buildindex.py
88 PYTHONDOCS="See <i><a href=\"about.html\">About this document...</a></i> for information on suggesting changes."
89 HTMLBASE= file:`pwd`
91 # what's what
92 MANDVIFILES= paper-$(PAPER)/api.dvi paper-$(PAPER)/ext.dvi \
93 paper-$(PAPER)/lib.dvi paper-$(PAPER)/mac.dvi \
94 paper-$(PAPER)/ref.dvi paper-$(PAPER)/tut.dvi
95 HOWTODVIFILES= paper-$(PAPER)/doc.dvi paper-$(PAPER)/inst.dvi \
96 paper-$(PAPER)/dist.dvi
98 MANPDFFILES= paper-$(PAPER)/api.pdf paper-$(PAPER)/ext.pdf \
99 paper-$(PAPER)/lib.pdf paper-$(PAPER)/mac.pdf \
100 paper-$(PAPER)/ref.pdf paper-$(PAPER)/tut.pdf
101 HOWTOPDFFILES= paper-$(PAPER)/doc.pdf paper-$(PAPER)/inst.pdf \
102 paper-$(PAPER)/dist.pdf
104 MANPSFILES= paper-$(PAPER)/api.ps paper-$(PAPER)/ext.ps \
105 paper-$(PAPER)/lib.ps paper-$(PAPER)/mac.ps \
106 paper-$(PAPER)/ref.ps paper-$(PAPER)/tut.ps
107 HOWTOPSFILES= paper-$(PAPER)/doc.ps paper-$(PAPER)/inst.ps \
108 paper-$(PAPER)/dist.ps
110 DVIFILES= $(MANDVIFILES) $(HOWTODVIFILES)
111 PDFFILES= $(MANPDFFILES) $(HOWTOPDFFILES)
112 PSFILES= $(MANPSFILES) $(HOWTOPSFILES)
114 HTMLCSSFILES=html/api/api.css \
115 html/doc/doc.css \
116 html/ext/ext.css \
117 html/lib/lib.css \
118 html/mac/mac.css \
119 html/ref/ref.css \
120 html/tut/tut.css \
121 html/inst/inst.css \
122 html/dist/dist.css
124 ISILOCSSFILES=isilo/api/api.css \
125 isilo/doc/doc.css \
126 isilo/ext/ext.css \
127 isilo/lib/lib.css \
128 isilo/mac/mac.css \
129 isilo/ref/ref.css \
130 isilo/tut/tut.css \
131 isilo/inst/inst.css \
132 isilo/dist/dist.css
134 ALLCSSFILES=$(HTMLCSSFILES) $(ISILOCSSFILES)
136 INDEXFILES=html/api/api.html \
137 html/doc/doc.html \
138 html/ext/ext.html \
139 html/lib/lib.html \
140 html/mac/mac.html \
141 html/ref/ref.html \
142 html/tut/tut.html \
143 html/inst/inst.html \
144 html/dist/dist.html
146 ALLHTMLFILES=$(INDEXFILES) html/index.html html/modindex.html html/acks.html
148 COMMONPERL= perl/manual.perl perl/python.perl perl/l2hinit.perl
150 ANNOAPI=api/refcounts.dat tools/anno-api.py
152 include Makefile.deps
154 # These must be declared phony since there
155 # are directories with matching names:
156 .PHONY: api doc ext lib mac ref tut inst dist
157 .PHONY: html info isilo
160 # Main target
161 all: html
163 dvi: $(DVIFILES)
164 pdf: $(PDFFILES)
165 ps: $(PSFILES)
167 world: ps pdf html distfiles
170 # Rules to build PostScript and PDF formats
171 .SUFFIXES: .dvi .ps
173 .dvi.ps:
174 $(DVIPS) -o $@ $<
177 # Targets for each document:
178 # Python/C API Reference Manual
179 paper-$(PAPER)/api.dvi: $(ANNOAPIFILES)
180 cd paper-$(PAPER) && $(MKDVI) api.tex
182 paper-$(PAPER)/api.pdf: $(ANNOAPIFILES)
183 cd paper-$(PAPER) && $(MKPDF) api.tex
185 paper-$(PAPER)/api.tex: api/api.tex $(ANNOAPI)
186 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/api.tex
188 paper-$(PAPER)/abstract.tex: api/abstract.tex $(ANNOAPI)
189 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/abstract.tex
191 paper-$(PAPER)/concrete.tex: api/concrete.tex $(ANNOAPI)
192 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/concrete.tex
194 paper-$(PAPER)/exceptions.tex: api/exceptions.tex $(ANNOAPI)
195 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/exceptions.tex
197 paper-$(PAPER)/init.tex: api/init.tex $(ANNOAPI)
198 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/init.tex
200 paper-$(PAPER)/intro.tex: api/intro.tex $(ANNOAPI)
201 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/intro.tex
203 paper-$(PAPER)/memory.tex: api/memory.tex $(ANNOAPI)
204 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/memory.tex
206 paper-$(PAPER)/newtypes.tex: api/newtypes.tex $(ANNOAPI)
207 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/newtypes.tex
209 paper-$(PAPER)/refcounting.tex: api/refcounting.tex $(ANNOAPI)
210 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/refcounting.tex
212 paper-$(PAPER)/utilities.tex: api/utilities.tex $(ANNOAPI)
213 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/utilities.tex
215 paper-$(PAPER)/veryhigh.tex: api/veryhigh.tex $(ANNOAPI)
216 $(PYTHON) $(TOOLSDIR)/anno-api.py -o $@ api/veryhigh.tex
218 # Distributing Python Modules
219 paper-$(PAPER)/dist.dvi: $(DISTFILES)
220 cd paper-$(PAPER) && $(MKDVI) ../dist/dist.tex
222 paper-$(PAPER)/dist.pdf: $(DISTFILES)
223 cd paper-$(PAPER) && $(MKPDF) ../dist/dist.tex
225 # Documenting Python
226 paper-$(PAPER)/doc.dvi: $(DOCFILES)
227 cd paper-$(PAPER) && $(MKDVI) ../doc/doc.tex
229 paper-$(PAPER)/doc.pdf: $(DOCFILES)
230 cd paper-$(PAPER) && $(MKPDF) ../doc/doc.tex
232 # Extending and Embedding the Python Interpreter
233 paper-$(PAPER)/ext.dvi: $(EXTFILES)
234 cd paper-$(PAPER) && $(MKDVI) ../ext/ext.tex
236 paper-$(PAPER)/ext.pdf: $(EXTFILES)
237 cd paper-$(PAPER) && $(MKPDF) ../ext/ext.tex
239 # Installing Python Modules
240 paper-$(PAPER)/inst.dvi: $(INSTFILES)
241 cd paper-$(PAPER) && $(MKDVI) ../inst/inst.tex
243 paper-$(PAPER)/inst.pdf: $(INSTFILES)
244 cd paper-$(PAPER) && $(MKPDF) ../inst/inst.tex
246 # Python Library Reference
247 paper-$(PAPER)/lib.dvi: $(LIBFILES)
248 cd paper-$(PAPER) && $(MKDVI) ../lib/lib.tex
250 paper-$(PAPER)/lib.pdf: $(LIBFILES)
251 cd paper-$(PAPER) && $(MKPDF) ../lib/lib.tex
253 # Macintosh Library Modules
254 paper-$(PAPER)/mac.dvi: $(MACFILES)
255 cd paper-$(PAPER) && $(MKDVI) ../mac/mac.tex
257 paper-$(PAPER)/mac.pdf: $(MACFILES)
258 cd paper-$(PAPER) && $(MKPDF) ../mac/mac.tex
260 # Python Reference Manual
261 paper-$(PAPER)/ref.dvi: $(REFFILES)
262 cd paper-$(PAPER) && $(MKDVI) ../ref/ref.tex
264 paper-$(PAPER)/ref.pdf: $(REFFILES)
265 cd paper-$(PAPER) && $(MKPDF) ../ref/ref.tex
267 # Python Tutorial
268 paper-$(PAPER)/tut.dvi: $(TUTFILES)
269 cd paper-$(PAPER) && $(MKDVI) ../tut/tut.tex
271 paper-$(PAPER)/tut.pdf: $(TUTFILES)
272 cd paper-$(PAPER) && $(MKPDF) ../tut/tut.tex
274 # The remaining part of the Makefile is concerned with various
275 # conversions, as described above. See also the README file.
277 info:
278 cd $(INFODIR) && $(MAKE)
280 # Targets to convert the manuals to HTML using Nikos Drakos' LaTeX to
281 # HTML converter. For more info on this program, see
282 # <URL:http://cbl.leeds.ac.uk/nikos/tex2html/doc/latex2html/latex2html.html>.
284 # Note that LaTeX2HTML inserts references to an icons directory in
285 # each page that it generates. I have placed a copy of this directory
286 # in the distribution to simplify the process of creating a
287 # self-contained HTML distribution; for this purpose I have also added
288 # a (trivial) index.html. Change the definition of $ICONSERVER in
289 # perl/l2hinit.perl to use a different location for the icons directory.
291 # If you have the standard LaTeX2HTML icons installed, the versions shipped
292 # with this documentation should be stored in a separate directory and used
293 # instead. The standard set does *not* include all the icons used in the
294 # Python documentation.
296 $(ALLCSSFILES): html/style.css
297 cp $< $@
299 $(INDEXFILES): $(COMMONPERL) html/about.dat tools/node2label.pl
301 html/acks.html: ACKS $(TOOLSDIR)/support.py $(TOOLSDIR)/mkackshtml
302 $(PYTHON) $(TOOLSDIR)/mkackshtml --address $(PYTHONDOCS) \
303 --output html/acks.html <ACKS
306 # html/index.html is dependent on $(INDEXFILES) since we want the date
307 # on the front index to be updated whenever any of the child documents
308 # are updated and boilerplate.tex uses \today as the date. The index
309 # files are not used to actually generate content.
311 BOILERPLATE=texinputs/boilerplate.tex
312 html/index.html: $(INDEXFILES)
313 html/index.html: html/index.html.in $(BOILERPLATE) tools/rewrite.py
314 $(PYTHON) tools/rewrite.py $(BOILERPLATE) RELEASE=$(RELEASE) \
315 <$< >$@
317 html/modindex.html: $(TOOLSDIR)/support.py $(TOOLSDIR)/mkmodindex
318 html/modindex.html: html/lib/lib.html html/mac/mac.html
319 cd html && \
320 $(PYTHON) ../$(TOOLSDIR)/mkmodindex --columns 4 \
321 --output modindex.html --address $(PYTHONDOCS) \
322 lib/modindex.html mac/modindex.html
324 html: $(ALLHTMLFILES) $(HTMLCSSFILES)
326 api: html/api/api.html html/api/api.css
327 html/api/api.html: $(APIFILES)
328 $(MKHTML) --dir html/api api/api.tex
330 doc: html/doc/doc.html html/doc/doc.css
331 html/doc/doc.html: $(DOCFILES)
332 $(MKHTML) --dir html/doc doc/doc.tex
334 ext: html/ext/ext.html html/ext/ext.css
335 html/ext/ext.html: $(EXTFILES)
336 $(MKHTML) --dir html/ext ext/ext.tex
338 lib: html/lib/lib.html html/lib/lib.css
339 html/lib/lib.html: $(LIBFILES)
340 $(MKHTML) --dir html/lib lib/lib.tex
342 mac: html/mac/mac.html html/mac/mac.css
343 html/mac/mac.html: $(MACFILES)
344 $(MKHTML) --dir html/mac mac/mac.tex
346 ref: html/ref/ref.html html/ref/ref.css
347 html/ref/ref.html: $(REFFILES)
348 $(MKHTML) --dir html/ref ref/ref.tex
350 tut: html/tut/tut.html html/tut/tut.css
351 html/tut/tut.html: $(TUTFILES)
352 $(MKHTML) --dir html/tut --numeric --split 3 tut/tut.tex
354 inst: html/inst/inst.html html/inst/inst.css
355 html/inst/inst.html: $(INSTFILES) perl/distutils.perl
356 $(MKHTML) --dir html/inst --split 4 inst/inst.tex
358 dist: html/dist/dist.html html/dist/dist.css
359 html/dist/dist.html: $(DISTFILES) perl/distutils.perl
360 $(MKHTML) --dir html/dist --split 4 dist/dist.tex
363 # The iSilo format is used by the iSilo document reader for PalmOS devices.
365 ISILOINDEXFILES=isilo/api/api.html \
366 isilo/doc/doc.html \
367 isilo/ext/ext.html \
368 isilo/lib/lib.html \
369 isilo/mac/mac.html \
370 isilo/ref/ref.html \
371 isilo/tut/tut.html \
372 isilo/inst/inst.html \
373 isilo/dist/dist.html
375 $(ISILOINDEXFILES): $(COMMONPERL) html/about.dat perl/isilo.perl
377 isilo: isilo/python-api-$(RELEASE).pdb \
378 isilo/python-doc-$(RELEASE).pdb \
379 isilo/python-ext-$(RELEASE).pdb \
380 isilo/python-lib-$(RELEASE).pdb \
381 isilo/python-mac-$(RELEASE).pdb \
382 isilo/python-ref-$(RELEASE).pdb \
383 isilo/python-tut-$(RELEASE).pdb \
384 isilo/python-dist-$(RELEASE).pdb \
385 isilo/python-inst-$(RELEASE).pdb
387 isilo/python-api-$(RELEASE).pdb: isilo/api/api.html isilo/api/api.css
388 $(MKISILO) "-iPython/C API Reference Manual" \
389 isilo/api/api.html $@
391 isilo/python-doc-$(RELEASE).pdb: isilo/doc/doc.html isilo/doc/doc.css
392 $(MKISILO) "-iDocumenting Python" \
393 isilo/doc/doc.html $@
395 isilo/python-ext-$(RELEASE).pdb: isilo/ext/ext.html isilo/ext/ext.css
396 $(MKISILO) "-iExtending & Embedding Python" \
397 isilo/ext/ext.html $@
399 isilo/python-lib-$(RELEASE).pdb: isilo/lib/lib.html isilo/lib/lib.css
400 $(MKISILO) "-iPython Library Reference" \
401 isilo/lib/lib.html $@
403 isilo/python-mac-$(RELEASE).pdb: isilo/mac/mac.html isilo/mac/mac.css
404 $(MKISILO) "-iPython/C API Reference Manual" \
405 isilo/mac/mac.html $@
407 isilo/python-ref-$(RELEASE).pdb: isilo/ref/ref.html isilo/ref/ref.css
408 $(MKISILO) "-iPython Reference Manual" \
409 isilo/ref/ref.html $@
411 isilo/python-tut-$(RELEASE).pdb: isilo/tut/tut.html isilo/tut/tut.css
412 $(MKISILO) "-iPython Tutorial" \
413 isilo/tut/tut.html $@
415 isilo/python-dist-$(RELEASE).pdb: isilo/dist/dist.html isilo/dist/dist.css
416 $(MKISILO) "-iDistributing Python Modules" \
417 isilo/dist/dist.html $@
419 isilo/python-inst-$(RELEASE).pdb: isilo/inst/inst.html isilo/inst/inst.css
420 $(MKISILO) "-iInstalling Python Modules" \
421 isilo/inst/inst.html $@
423 isilo/api/api.html: $(APIFILES)
424 $(MKISILOHTML) --dir isilo/api api/api.tex
426 isilo/doc/doc.html: $(DOCFILES)
427 $(MKISILOHTML) --dir isilo/doc doc/doc.tex
429 isilo/ext/ext.html: $(EXTFILES)
430 $(MKISILOHTML) --dir isilo/ext ext/ext.tex
432 isilo/lib/lib.html: $(LIBFILES)
433 $(MKISILOHTML) --dir isilo/lib lib/lib.tex
435 isilo/mac/mac.html: $(MACFILES)
436 $(MKISILOHTML) --dir isilo/mac mac/mac.tex
438 isilo/ref/ref.html: $(REFFILES)
439 $(MKISILOHTML) --dir isilo/ref ref/ref.tex
441 isilo/tut/tut.html: $(TUTFILES)
442 $(MKISILOHTML) --dir isilo/tut tut/tut.tex
444 isilo/inst/inst.html: $(INSTFILES) perl/distutils.perl
445 $(MKISILOHTML) --dir isilo/inst inst/inst.tex
447 isilo/dist/dist.html: $(DISTFILES) perl/distutils.perl
448 $(MKISILOHTML) --dir isilo/dist dist/dist.tex
450 # These are useful if you need to transport the iSilo-ready HTML to
451 # another machine to perform the conversion:
453 isilozip: isilo-html-$(RELEASE).zip
455 isilo-html-$(RELEASE).zip: $(ISILOINDEXFILES)
456 rm -f $@
457 cd isilo && \
458 zip -q -9 ../$@ */*.css */*.html */*.txt
461 # webchecker needs an extra flag to process the huge index from the libref
462 WEBCHECKER=$(PYTHON) ../Tools/webchecker/webchecker.py
463 HTMLBASE= file:`pwd`/html
465 webcheck: $(ALLHTMLFILES)
466 $(WEBCHECKER) $(HTMLBASE)/api/
467 $(WEBCHECKER) $(HTMLBASE)/doc/
468 $(WEBCHECKER) $(HTMLBASE)/ext/
469 $(WEBCHECKER) -m290000 $(HTMLBASE)/lib/
470 $(WEBCHECKER) $(HTMLBASE)/mac/
471 $(WEBCHECKER) $(HTMLBASE)/ref/
472 $(WEBCHECKER) $(HTMLBASE)/tut/
473 $(WEBCHECKER) $(HTMLBASE)/dist/
474 $(WEBCHECKER) $(HTMLBASE)/inst/
476 fastwebcheck: $(ALLHTMLFILES)
477 $(WEBCHECKER) -x $(HTMLBASE)/api/
478 $(WEBCHECKER) -x $(HTMLBASE)/doc/
479 $(WEBCHECKER) -x $(HTMLBASE)/ext/
480 $(WEBCHECKER) -x -m290000 $(HTMLBASE)/lib/
481 $(WEBCHECKER) -x $(HTMLBASE)/mac/
482 $(WEBCHECKER) -x $(HTMLBASE)/ref/
483 $(WEBCHECKER) -x $(HTMLBASE)/tut/
484 $(WEBCHECKER) -x $(HTMLBASE)/dist/
485 $(WEBCHECKER) -x $(HTMLBASE)/inst/
488 # Release packaging targets:
490 paper-$(PAPER)/README: $(PSFILES) $(TOOLSDIR)/getpagecounts
491 cd paper-$(PAPER) && ../$(TOOLSDIR)/getpagecounts >../$@
493 info-$(RELEASE).tgz: info
494 cd $(INFODIR) && tar cf - README python.dir python-*.info* \
495 | gzip -9 >$@
497 info-$(RELEASE).tar.bz2: info
498 cd $(INFODIR) && tar cf - README python.dir python-*.info* \
499 | bzip2 -9 >$@
501 latex-$(RELEASE).tgz:
502 $(PYTHON) $(TOOLSDIR)/mksourcepkg --gzip $(RELEASE)
504 latex-$(RELEASE).tar.bz2:
505 $(PYTHON) $(TOOLSDIR)/mksourcepkg --bzip2 $(RELEASE)
507 latex-$(RELEASE).zip:
508 rm -f $@
509 $(PYTHON) $(TOOLSDIR)/mksourcepkg --zip $(RELEASE)
511 pdf-$(PAPER)-$(RELEASE).tar: $(PDFFILES)
512 cd paper-$(PAPER) && tar cf ../$@ *.pdf
514 pdf-$(PAPER)-$(RELEASE).tgz: pdf-$(PAPER)-$(RELEASE).tar
515 gzip -9 <$? >$@
517 pdf-$(PAPER)-$(RELEASE).tar.bz2: pdf-$(PAPER)-$(RELEASE).tar
518 bzip2 -9 <$? >$@
520 pdf-$(PAPER)-$(RELEASE).zip: pdf
521 rm -f $@
522 cd paper-$(PAPER) && zip -q -9 ../$@ *.pdf
524 postscript-$(PAPER)-$(RELEASE).tar: $(PSFILES) paper-$(PAPER)/README
525 cd paper-$(PAPER) && tar cf ../$@ *.ps README
527 postscript-$(PAPER)-$(RELEASE).tar.bz2: postscript-$(PAPER)-$(RELEASE).tar
528 bzip2 -9 <$< >$@
530 postscript-$(PAPER)-$(RELEASE).tgz: postscript-$(PAPER)-$(RELEASE).tar
531 gzip -9 <$< >$@
533 postscript-$(PAPER)-$(RELEASE).zip: $(PSFILES) paper-$(PAPER)/README
534 rm -f $@
535 cd paper-$(PAPER) && zip -q -9 ../$@ *.ps README
537 html-$(RELEASE).tar: $(ALLHTMLFILES) $(HTMLCSSFILES)
538 cd html && \
539 tar cf ../html-$(RELEASE).tar *.html */*.css */*.html \
540 */*.gif */*.txt
542 html-$(RELEASE).tgz: html-$(RELEASE).tar
543 gzip -9 <$? >$@
545 html-$(RELEASE).tar.bz2: html-$(RELEASE).tar
546 bzip2 -9 <$? >$@
548 html-$(RELEASE).zip: $(ALLHTMLFILES) $(HTMLCSSFILES)
549 rm -f $@
550 cd html && \
551 zip -q -9 ../$@ *.html */*.css */*.html */*.gif */*.txt
553 isilo-$(RELEASE).zip: isilo
554 cd isilo && zip -q -9 ../$@ python-*-$(RELEASE).pdb
557 # convenience targets:
559 tarhtml: html-$(RELEASE).tgz
560 tarinfo: info-$(RELEASE).tgz
561 tarps: postscript-$(PAPER)-$(RELEASE).tgz
562 tarpdf: pdf-$(PAPER)-$(RELEASE).tgz
563 tarlatex: latex-$(RELEASE).tgz
565 tarballs: tarpdf tarps tarhtml
567 ziphtml: html-$(RELEASE).zip
568 zipps: postscript-$(PAPER)-$(RELEASE).zip
569 zippdf: pdf-$(PAPER)-$(RELEASE).zip
570 ziplatex: latex-$(RELEASE).zip
571 zipisilo: isilo-$(RELEASE).zip
573 zips: zippdf zipps ziphtml
575 bziphtml: html-$(RELEASE).tar.bz2
576 bzipinfo: info-$(RELEASE).tar.bz2
577 bzipps: postscript-$(PAPER)-$(RELEASE).tar.bz2
578 bzippdf: pdf-$(PAPER)-$(RELEASE).tar.bz2
579 bziplatex: latex-$(RELEASE).tar.bz2
581 bzips: bzippdf bzipps bziphtml
583 disthtml: tarhtml bziphtml ziphtml
584 distinfo: tarinfo bzipinfo
585 distps: tarps bzipps zipps
586 distpdf: tarpdf bzippdf zippdf
587 distlatex: tarlatex bziplatex ziplatex
589 paperdist: distpdf distps
590 edist: disthtml zipisilo
592 distfiles: paperdist edist
593 $(TOOLSDIR)/mksourcepkg --all $(RELEASE)
596 # Housekeeping targets
598 # Remove temporary files; all except the following:
599 # - sources: .tex, .bib, .sty, *.cls
600 # - useful results: .dvi, .pdf, .ps, .texi, .info
601 clean:
602 rm -f html-$(RELEASE).tar
603 cd $(INFODIR) && $(MAKE) clean
605 # Remove temporaries as well as final products
606 clobber:
607 rm -f html-$(RELEASE).tar
608 rm -f html-$(RELEASE).tgz info-$(RELEASE).tgz
609 rm -f pdf-$(RELEASE).tgz postscript-$(RELEASE).tgz
610 rm -f latex-$(RELEASE).tgz html-$(RELEASE).zip
611 rm -f pdf-$(RELEASE).zip postscript-$(RELEASE).zip
612 rm -f $(DVIFILES) $(PSFILES) $(PDFFILES)
613 cd $(INFODIR) && $(MAKE) clobber
614 rm -rf html/index.html html/modindex.html html/acks.html
615 rm -rf html/api/ html/doc/ html/ext/ html/lib/ html/mac/
616 rm -rf html/ref/ html/tut/ html/inst/ html/dist/
617 rm -rf isilo/api/ isilo/doc/ isilo/ext/ isilo/lib/ isilo/mac/
618 rm -rf isilo/ref/ isilo/tut/ isilo/inst/ isilo/dist/
619 rm -f isilo/python-*-$(RELEASE).pdb isilo-$(RELEASE).zip
621 realclean distclean: clobber