blob: 7053958bf5f35f08c90aecd989d0288653317f4b [file] [log] [blame]
Guido van Rossume83e3801995-03-17 16:01:35 +00001# Makefile for Python documentation
2# ---------------------------------
3#
Guido van Rossum73827c61995-03-20 13:00:32 +00004# See also the README file.
5#
Guido van Rossume83e3801995-03-17 16:01:35 +00006# This is a bit of a mess. The main documents are:
7# tut -- Tutorial (file tut.tex)
8# lib -- Library Reference (file lib.tex, inputs lib*.tex)
Guido van Rossume83e3801995-03-17 16:01:35 +00009# ext -- Extending and Embedding (file ext.tex)
Guido van Rossum9231c8f1997-05-15 21:43:21 +000010# api -- Python-C API Reference
Guido van Rossume83e3801995-03-17 16:01:35 +000011#
Guido van Rossum1f175431996-10-22 20:00:02 +000012# The Reference Manual is now maintained as a FrameMaker document.
13# See the subdirectory ref; PostScript is included as ref/ref.ps.
14# (In the future, the Tutorial will also be converted to FrameMaker;
15# the other documents will be maintained in a text format such
16# as LaTeX or perhaps TIM.)
17#
Guido van Rossume83e3801995-03-17 16:01:35 +000018# The main target "make all" creates DVI and PostScript for these
19# four. You can also do "make lib" (etc.) to process individual
20# documents.
21#
Fred Drake6659c301998-03-03 22:02:19 +000022# There's one local style file: python.sty. This defines a number
Guido van Rossume83e3801995-03-17 16:01:35 +000023# of macros that are similar in name and intent as macros in Texinfo
24# (e.g. \code{...} and \emph{...}), as well as a number of
25# environments for formatting function and data definitions, also in
26# the style of Texinfo.
27#
28# Everything is processed by LaTeX. The following tools are used:
29# latex
30# makeindex
31# dvips
Guido van Rossume83e3801995-03-17 16:01:35 +000032#
33# There's a problem with generating the index which has been solved by
34# a sed command applied to the index file. The shell script fix_hack
35# does this (the Makefile takes care of calling it).
36#
37# To preview the dvi files produced by LaTeX it would be useful to
38# have xdvi as well.
39#
40# Additional targets attempt to convert selected LaTeX sources to
41# various other formats. These are generally site specific because
42# the tools used are all but universal. These targets are:
Guido van Rossum9231c8f1997-05-15 21:43:21 +000043# l2h -- convert tut, lib, ext, api from LaTeX to HTML
Guido van Rossum73827c61995-03-20 13:00:32 +000044# See the README file for more info on these targets.
Guido van Rossume83e3801995-03-17 16:01:35 +000045
Guido van Rossum73827c61995-03-20 13:00:32 +000046# Customizations -- you *may* have to edit these
Guido van Rossume83e3801995-03-17 16:01:35 +000047
Guido van Rossum73827c61995-03-20 13:00:32 +000048# Where are the various programs?
Fred Drake9cdf0871998-05-07 15:03:25 +000049LATEX= latex
50PDFLATEX= pdflatex
Fred Drake9fab3aa1998-04-28 19:20:43 +000051DVIPS= dvips -N0
Fred Drake126d8401998-02-04 19:54:40 +000052DISTILL= distill
Fred Drake9fab3aa1998-04-28 19:20:43 +000053KPSEWHICH= TEXINPUTS=$(TEXINPUTS) kpsewhich
Fred Drake3af9f251998-04-24 21:07:22 +000054MAKEINDEX= makeindex -s $(srcdir)/texinputs/myindex.ist
Fred Drake0d27d081998-04-23 20:07:55 +000055L2HARGS=
Fred Drake3af9f251998-04-24 21:07:22 +000056WEBCHECKER= $(PYTHON) $(srcdir)/../Tools/webchecker/webchecker.py
Guido van Rossum73827c61995-03-20 13:00:32 +000057
58# Install destination -- not used now but might be useful some time...
59DESTDIR= /usr/local
60LIBDESTDIR= $DESTDIR/lib
Fred Drakee4837a11998-03-06 21:29:34 +000061LIBDEST= $LIBDESTDIR/python$(VERSION)
Guido van Rossum73827c61995-03-20 13:00:32 +000062DOCDESTDIR= $LIBDEST/doc
63
Fred Drakebbe33c51998-05-07 01:39:06 +000064# These is only used for .info generation:
Fred Drake05dd3c01997-12-29 17:17:54 +000065EMACS= emacs
66PYTHON= python
67MAKEINFO= makeinfo
Fred Drake3af9f251998-04-24 21:07:22 +000068PARTPARSE= $(PYTHON) $(srcdir)/tools/partparse.py
69
70srcdir=.
71VPATH=.
Fred Drake05dd3c01997-12-29 17:17:54 +000072
Guido van Rossum73827c61995-03-20 13:00:32 +000073# Ideally, you shouldn't need to edit beyond this point
Guido van Rossum5b343731992-07-07 09:06:34 +000074
Fred Drakef5013f11998-04-13 21:02:49 +000075RELEASE=1.5.1
Fred Drake33d05b91998-01-13 16:33:09 +000076VERSION=1.5
77
Fred Drakea6bb3961998-05-06 19:51:39 +000078DVIFILES= api.dvi ext.dvi lib.dvi ref.dvi tut.dvi
Fred Drakea7998351998-02-19 16:01:04 +000079INFOFILES= python-lib.info
Fred Drakea6bb3961998-05-06 19:51:39 +000080PDFFILES= api.pdf ext.pdf lib.pdf ref.pdf tut.pdf
81PSFILES= api.ps ext.ps lib.ps ref.ps tut.ps
Fred Drake04cf4dc1998-02-12 22:33:50 +000082
Fred Drake9cdf0871998-05-07 15:03:25 +000083MANSTYLES=texinputs/fncychap.sty texinputs/manual.cls \
84 texinputs/python.sty texinputs/myindex.ist
Fred Drakee4837a11998-03-06 21:29:34 +000085
Fred Drakebbe33c51998-05-07 01:39:06 +000086# Be careful when messing with this one!
87TEXINPUTS= .:$(srcdir)/texinputs:
88
89MKDVI= TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkdvi.sh
90
Guido van Rossume83e3801995-03-17 16:01:35 +000091# Main target
Guido van Rossumeb8d5031996-08-09 21:46:05 +000092all: all-ps
93
Fred Drake2c954fa1998-03-07 19:59:45 +000094world: all-ps all-pdf l2h tarballs
Fred Drakee4837a11998-03-06 21:29:34 +000095
Fred Drake04cf4dc1998-02-12 22:33:50 +000096all-dvi: $(DVIFILES)
97all-pdf: $(PDFFILES)
98all-ps: $(PSFILES)
Guido van Rossum20aca5a1991-01-25 13:29:04 +000099
Fred Drake5fd242b1998-02-17 18:20:30 +0000100# This target gets both the PDF and PS files updated; the all-pdf target
101# above doesn't ensure that both are done if the "alternate" rule (using
102# pdflatex) for PDF generation is used.
Fred Drakeddae4141998-02-17 15:45:25 +0000103#
104all-formats: $(PSFILES) $(PDFFILES)
105
Guido van Rossume83e3801995-03-17 16:01:35 +0000106# Individual document fake targets
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000107tut: tut.ps
108lib: lib.ps
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000109ext: ext.ps
Guido van Rossum9231c8f1997-05-15 21:43:21 +0000110api: api.ps
Guido van Rossume83e3801995-03-17 16:01:35 +0000111
Fred Drakedd946761998-02-18 16:02:14 +0000112# All formats for a single document
113api-all: api.dvi api.pdf api.ps l2hapi
114ext-all: ext.dvi ext.pdf ext.ps l2hext
115lib-all: lib.dvi lib.pdf lib.ps l2hlib
116tut-all: tut.dvi tut.pdf tut.ps l2htut
117
118
Fred Drake126d8401998-02-04 19:54:40 +0000119# Rules to build PostScript and PDF formats
Fred Drake5ad78f31998-02-22 19:47:13 +0000120.SUFFIXES: .dvi .ps .pdf .tex
Fred Drake126d8401998-02-04 19:54:40 +0000121
122.dvi.ps:
Fred Drake9fab3aa1998-04-28 19:20:43 +0000123 $(DVIPS) -o $@ $<
Fred Drake126d8401998-02-04 19:54:40 +0000124
Fred Drakeddae4141998-02-17 15:45:25 +0000125#.ps.pdf:
126# $(DISTILL) $<
Fred Drake126d8401998-02-04 19:54:40 +0000127
Fred Drake3b26eed1998-02-16 17:06:10 +0000128# An alternate formulation of PDF creation; requires latex format with
129# pdftex. To use this instead of the Acrobat distiller solution, comment
130# out the above .ps.pdf rule and uncomment this rule. This was tested
131# using a pre-release of the teTeX distribution. See
132# http://www.tug.org/tetex/ for more information on getting & using teTeX.
133# This rule avoids creation of the intermediate PostScript files and uses
134# only free software.
135#
Fred Drake3af9f251998-04-24 21:07:22 +0000136$(PDFFILES): $(srcdir)/tools/toc2bkm.py
137.dvi.pdf:
Fred Drake9cdf0871998-05-07 15:03:25 +0000138 TEXINPUTS=$(srcdir)/$*:$(TEXINPUTS) $(PDFLATEX) $*
Fred Drake3af9f251998-04-24 21:07:22 +0000139 $(PYTHON) $(srcdir)/tools/toc2bkm.py $*
Fred Drake9cdf0871998-05-07 15:03:25 +0000140 TEXINPUTS=$(srcdir)/$*:$(TEXINPUTS) $(PDFLATEX) $*
Fred Drake3b26eed1998-02-16 17:06:10 +0000141
Guido van Rossume83e3801995-03-17 16:01:35 +0000142# Dependencies
Fred Drakebbe33c51998-05-07 01:39:06 +0000143COMMONTEX=$(MANSTYLES) texinputs/copyright.tex texinputs/boilerplate.tex
Fred Drakee4837a11998-03-06 21:29:34 +0000144COMMONPERL=perl/manual.perl perl/python.perl
Fred Drake5d8f0ed1998-02-11 14:43:38 +0000145
Fred Drakebbe33c51998-05-07 01:39:06 +0000146$(DVIFILES): tools/fix_hack tools/mkdvi.sh $(COMMONTEX)
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000147
Fred Drake9cdf0871998-05-07 15:03:25 +0000148ref.dvi: ref/ref1.tex ref/ref2.tex ref/ref3.tex ref/ref4.tex \
149 ref/ref5.tex ref/ref6.tex ref/ref7.tex ref/ref8.tex
Fred Drakea6bb3961998-05-06 19:51:39 +0000150
Guido van Rossum16d6e711994-08-08 12:30:22 +0000151# LaTeX source files for the Python Library Reference
Fred Drake9cdf0871998-05-07 15:03:25 +0000152LIBFILES = lib/lib.tex \
153 lib/libintro.tex lib/libobjs.tex lib/libtypes.tex lib/libexcs.tex \
154 lib/libfuncs.tex lib/libpython.tex lib/libsys.tex lib/libtypes2.tex \
155 lib/libtraceback.tex lib/libpickle.tex lib/libshelve.tex \
156 lib/libcopy.tex lib/libmarshal.tex lib/libimp.tex lib/libparser.tex \
157 lib/libbltin.tex lib/libmain.tex lib/libstrings.tex lib/libstring.tex \
158 lib/libregex.tex lib/libregsub.tex lib/libstruct.tex lib/libmisc.tex \
159 lib/libmath.tex lib/librand.tex lib/libwhrandom.tex lib/libarray.tex \
160 lib/liballos.tex lib/libos.tex lib/libtime.tex lib/libgetopt.tex \
161 lib/libtempfile.tex lib/liberrno.tex lib/libsomeos.tex lib/libsignal.tex \
162 lib/libsocket.tex lib/libselect.tex lib/libthread.tex lib/libunix.tex \
163 lib/libposix.tex lib/libppath.tex lib/libpwd.tex lib/libgrp.tex \
164 lib/libcrypt.tex lib/libdbm.tex lib/libgdbm.tex lib/libtermios.tex \
165 lib/libfcntl.tex lib/libposixfile.tex lib/libsyslog.tex lib/libpdb.tex \
166 lib/libprofile.tex lib/libwww.tex lib/libcgi.tex lib/liburllib.tex \
167 lib/libhttplib.tex lib/libftplib.tex lib/libgopherlib.tex \
168 lib/libnntplib.tex lib/liburlparse.tex lib/libhtmllib.tex \
169 lib/libsgmllib.tex lib/librfc822.tex lib/libmimetools.tex \
170 lib/libbinascii.tex lib/libmm.tex lib/libaudioop.tex lib/libimageop.tex \
171 lib/libaifc.tex lib/libjpeg.tex lib/librgbimg.tex lib/libcrypto.tex \
172 lib/libmd5.tex lib/libmpz.tex lib/librotor.tex lib/libstdwin.tex \
173 lib/libsgi.tex lib/libal.tex lib/libcd.tex lib/libfl.tex lib/libfm.tex \
174 lib/libgl.tex lib/libimgfile.tex lib/libsun.tex lib/libxdrlib.tex \
175 lib/libimghdr.tex lib/librestricted.tex lib/librexec.tex \
176 lib/libbastion.tex lib/libformatter.tex lib/liboperator.tex \
177 lib/libsoundex.tex lib/libresource.tex lib/libstat.tex lib/libstrio.tex \
178 lib/libundoc.tex lib/libmailcap.tex lib/libglob.tex lib/libuser.tex \
179 lib/libanydbm.tex lib/librandom.tex lib/libsite.tex lib/libwhichdb.tex \
180 lib/libbase64.tex lib/libfnmatch.tex lib/libquopri.tex lib/libzlib.tex \
181 lib/libsocksvr.tex lib/libmailbox.tex lib/libcommands.tex \
182 lib/libcmath.tex lib/libgzip.tex lib/libpprint.tex \
183 lib/libcode.tex lib/libmimify.tex lib/libre.tex lib/libuserdict.tex \
184 lib/libdis.tex lib/libxmllib.tex lib/libqueue.tex lib/liblocale.tex \
185 lib/libbasehttp.tex lib/libcopyreg.tex lib/libsymbol.tex lib/libtoken.tex \
186 lib/libbinhex.tex lib/libuu.tex \
187 lib/libsunaudio.tex lib/libfileinput.tex lib/libimaplib.tex \
188 lib/libpoplib.tex lib/libcalendar.tex lib/libpopen2.tex lib/libbisect.tex
Guido van Rossum16d6e711994-08-08 12:30:22 +0000189
Fred Drake9cdf0871998-05-07 15:03:25 +0000190# LaTeX source files for Macintosh Library Modules.
191MACLIBFILES = mac/mac.tex mac/libmac.tex mac/libctb.tex mac/libmacconsole.tex \
192 mac/libmacdnr.tex mac/libmacfs.tex mac/libmacos.tex mac/libmacostools.tex \
193 mac/libmactcp.tex mac/libmacspeech.tex mac/libmacui.tex mac/libmacic.tex \
194 mac/libframework.tex mac/libminiae.tex
Fred Drakebdbdb801998-04-17 14:01:44 +0000195
Fred Drakebbe33c51998-05-07 01:39:06 +0000196# Python Library Reference
Fred Drake520f8bd1998-03-09 16:43:54 +0000197lib.dvi: tools/indfix.py $(LIBFILES)
Fred Drake3af9f251998-04-24 21:07:22 +0000198 $(srcdir)/tools/newind.py >$*.ind
199 $(srcdir)/tools/newind.py modindex >mod$*.ind
Fred Drake9cdf0871998-05-07 15:03:25 +0000200 TEXINPUTS=$(srcdir)/lib:$(TEXINPUTS) $(LATEX) $*
Fred Drake8bc96571998-03-09 16:37:52 +0000201 $(MAKEINDEX) mod$*.idx
Fred Drake3af9f251998-04-24 21:07:22 +0000202 $(srcdir)/tools/fix_hack $*.idx
Fred Drake5ad78f31998-02-22 19:47:13 +0000203 $(MAKEINDEX) $*.idx
Fred Drake3af9f251998-04-24 21:07:22 +0000204 $(srcdir)/tools/indfix.py $*.ind
Fred Drake9cdf0871998-05-07 15:03:25 +0000205 TEXINPUTS=$(srcdir)/lib:$(TEXINPUTS) $(LATEX) $*
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000206
Fred Drakebbe33c51998-05-07 01:39:06 +0000207# Python/C API Reference Manual
208api.dvi: api/api.tex
209 $(MKDVI) api
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000210
Fred Drakebbe33c51998-05-07 01:39:06 +0000211# Extending and Embedding the Python Interpreter
212ext.dvi: ext/ext.tex
213 $(MKDVI) ext
214
215# Python Reference Manual
216ref.dvi: ref/ref.tex
217 $(MKDVI) ref
218
219# Python Tutorial
220tut.dvi: tut/tut.tex
221 $(MKDVI) tut
Guido van Rossumeb8d5031996-08-09 21:46:05 +0000222
Guido van Rossume83e3801995-03-17 16:01:35 +0000223
224# The remaining part of the Makefile is concerned with various
Guido van Rossum73827c61995-03-20 13:00:32 +0000225# conversions, as described above. See also the README file.
Guido van Rossume83e3801995-03-17 16:01:35 +0000226
Fred Drake5ad78f31998-02-22 19:47:13 +0000227.PRECIOUS: python-lib.texi
Fred Drake05dd3c01997-12-29 17:17:54 +0000228
Fred Drake3d913ad1997-12-29 21:31:23 +0000229# The sed script in this target fixes a really nasty little condition in
230# libcgi.tex where \e has to be used in a group to get the right behavior,
Fred Drake5ad78f31998-02-22 19:47:13 +0000231# and makeinfo can't handle a group without a leading @command. But at
232# least the info file gets generated.
Fred Drake3d913ad1997-12-29 21:31:23 +0000233
Fred Drakebdbdb801998-04-17 14:01:44 +0000234lib1.texi: $(LIBFILES) texipre.dat texipost.dat tools/partparse.py
Fred Drakee4837a11998-03-06 21:29:34 +0000235 $(PARTPARSE) -o $@ `tools/whichlibs`
Fred Drakea7998351998-02-19 16:01:04 +0000236 sed 's/"{\\}n{\\}n/"\\n\\n/' $@ >temp.texi
237 mv temp.texi $@
Fred Drake05dd3c01997-12-29 17:17:54 +0000238
Fred Drakee4837a11998-03-06 21:29:34 +0000239python-lib.texi: lib1.texi tools/fix.el
Fred Drakea7998351998-02-19 16:01:04 +0000240 cp lib1.texi temp.texi
Fred Drakee4837a11998-03-06 21:29:34 +0000241 $(EMACS) -batch -l tools/fix.el -f save-buffer -kill
Fred Drakea7998351998-02-19 16:01:04 +0000242 mv temp.texi $@
Fred Drake05dd3c01997-12-29 17:17:54 +0000243
Fred Drake5ad78f31998-02-22 19:47:13 +0000244python-lib.info: python-lib.texi
Fred Drakef7f2e701998-02-19 21:40:51 +0000245 $(MAKEINFO) --footnote-style end --fill-column 72 \
Fred Drake9fab3aa1998-04-28 19:20:43 +0000246 --paragraph-indent 0 $<
Fred Drake05dd3c01997-12-29 17:17:54 +0000247
Fred Drake13704a81997-12-29 22:04:44 +0000248# this is needed to prevent a second set of info files from being generated,
249# at least when using GNU make
Fred Drake5ad78f31998-02-22 19:47:13 +0000250.PHONY: lib.info lib.texi
Fred Drake13704a81997-12-29 22:04:44 +0000251
Fred Drake05dd3c01997-12-29 17:17:54 +0000252lib.info: python-lib.info
253
Fred Drake5ad78f31998-02-22 19:47:13 +0000254lib.texi: python-lib.texi
255
Guido van Rossum73827c61995-03-20 13:00:32 +0000256# Targets to convert the manuals to HTML using Nikos Drakos' LaTeX to
257# HTML converter. For more info on this program, see
Guido van Rossume83e3801995-03-17 16:01:35 +0000258# <URL:http://cbl.leeds.ac.uk/nikos/tex2html/doc/latex2html/latex2html.html>.
Guido van Rossume83e3801995-03-17 16:01:35 +0000259
Guido van Rossum9cb64801997-12-29 20:01:55 +0000260# Note that LaTeX2HTML inserts references to an icons directory in
261# each page that it generates. I have placed a copy of this directory
262# in the distribution to simplify the process of creating a
263# self-contained HTML distribution; for this purpose I have also added
264# a (trivial) index.html. Change the definition of $ICONSERVER in
Fred Drake9fab3aa1998-04-28 19:20:43 +0000265# perl/l2hinit.perl to use a different location for the icons directory.
Guido van Rossume83e3801995-03-17 16:01:35 +0000266
Fred Drakebbe33c51998-05-07 01:39:06 +0000267
Fred Drake9cdf0871998-05-07 15:03:25 +0000268l2h:
269 (cd html; $(MAKE))
Guido van Rossum6938f061994-08-01 12:22:53 +0000270
Fred Drake9cdf0871998-05-07 15:03:25 +0000271l2hapi: $(COMMONPERL)
272 TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkhtml.sh api $(L2HARGS)
Guido van Rossum6938f061994-08-01 12:22:53 +0000273
Fred Drake9cdf0871998-05-07 15:03:25 +0000274l2hext: $(COMMONPERL)
275 TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkhtml.sh ext $(L2HARGS)
Guido van Rossum970871f1993-02-21 20:10:26 +0000276
Fred Drake9cdf0871998-05-07 15:03:25 +0000277l2hlib: $(COMMONPERL)
Fred Drake9fab3aa1998-04-28 19:20:43 +0000278 $(srcdir)/tools/fix_libaux.sed <`$(KPSEWHICH) lib.aux` >lib1.aux
279 mv lib1.aux `$(KPSEWHICH) lib.aux`
Fred Drake9cdf0871998-05-07 15:03:25 +0000280 TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkhtml.sh lib $(L2HARGS)
Fred Drakea6bb3961998-05-06 19:51:39 +0000281
Fred Drake9cdf0871998-05-07 15:03:25 +0000282l2href: $(COMMONPERL)
283 TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkhtml.sh ref $(L2HARGS)
Guido van Rossume83e3801995-03-17 16:01:35 +0000284
Fred Drake9cdf0871998-05-07 15:03:25 +0000285l2htut: $(COMMONPERL)
286 TEXINPUTS=$(TEXINPUTS) $(srcdir)/tools/mkhtml.sh tut $(L2HARGS)
Guido van Rossum9231c8f1997-05-15 21:43:21 +0000287
Fred Drakee4837a11998-03-06 21:29:34 +0000288# webchecker needs an extra flag to process the huge index from the libref
289webcheck:
Fred Drake9cdf0871998-05-07 15:03:25 +0000290 $(WEBCHECKER) file:`pwd`/api/
291 $(WEBCHECKER) file:`pwd`/ext/
292 $(WEBCHECKER) -m290000 file:`pwd`/lib/
293 $(WEBCHECKER) file:`pwd`/ref/
294 $(WEBCHECKER) file:`pwd`/tut/
Fred Drakee4837a11998-03-06 21:29:34 +0000295
Fred Drakef5013f11998-04-13 21:02:49 +0000296lib-info-$(RELEASE).tar.gz: $(INFOFILES)
Fred Drakea7998351998-02-19 16:01:04 +0000297 tar cf - python-???.info* | gzip -9 >$@
298
Fred Drakef5013f11998-04-13 21:02:49 +0000299latex-$(RELEASE).tar.gz:
Fred Drake9fab3aa1998-04-28 19:20:43 +0000300 $(srcdir)/tools/mktarball.sh
Fred Drakee61d7af1998-03-05 16:37:34 +0000301
Fred Drakeb1cd7711998-03-04 16:49:36 +0000302# This snags a PDF version if available, but doesn't fail if not.
Fred Drakef5013f11998-04-13 21:02:49 +0000303pdf-$(RELEASE).tar.gz: $(PDFFILES)
Fred Drakea7998351998-02-19 16:01:04 +0000304 tar cf - ???.pdf | gzip -9 >$@
Fred Drake04cf4dc1998-02-12 22:33:50 +0000305
Fred Drake9cdf0871998-05-07 15:03:25 +0000306postscript-$(RELEASE).tar.gz: $(PSFILES)
Fred Drakea7998351998-02-19 16:01:04 +0000307 tar cf - ???.ps | gzip -9 >$@
Fred Drake04cf4dc1998-02-12 22:33:50 +0000308
Fred Drakebbe33c51998-05-07 01:39:06 +0000309html-$(RELEASE).tar.gz:
Fred Drake9cdf0871998-05-07 15:03:25 +0000310 tar cf - index.html ???/???.css ???/*.html */*.gif \
Fred Drakef5013f11998-04-13 21:02:49 +0000311 | gzip -9 >html-$(RELEASE).tar.gz
Fred Drake33d05b91998-01-13 16:33:09 +0000312
Fred Drakea7998351998-02-19 16:01:04 +0000313# convenience targets:
314
Fred Drakebbe33c51998-05-07 01:39:06 +0000315tarhtml: html-$(RELEASE).tar.gz
316
Fred Drakef5013f11998-04-13 21:02:49 +0000317tarinfo: lib-info-$(RELEASE).tar.gz
Fred Drakea7998351998-02-19 16:01:04 +0000318
Fred Drakef5013f11998-04-13 21:02:49 +0000319tarps: postscript-$(RELEASE).tar.gz
Fred Drake33d05b91998-01-13 16:33:09 +0000320
Fred Drakef5013f11998-04-13 21:02:49 +0000321tarpdf: pdf-$(RELEASE).tar.gz
Fred Drake04cf4dc1998-02-12 22:33:50 +0000322
Fred Drakef5013f11998-04-13 21:02:49 +0000323tarlatex: latex-$(RELEASE).tar.gz
Fred Drakee61d7af1998-03-05 16:37:34 +0000324
Fred Drake2c954fa1998-03-07 19:59:45 +0000325tarballs: tarpdf tarps tarhtml tarlatex
Guido van Rossum84cca441997-11-25 20:49:09 +0000326
Guido van Rossume83e3801995-03-17 16:01:35 +0000327
328# Housekeeping targets
329
Guido van Rossum9231c8f1997-05-15 21:43:21 +0000330# Remove temporary files; all except the following:
Fred Drake6659c301998-03-03 22:02:19 +0000331# - sources: .tex, .bib, .sty, *.cls
Fred Drake04cf4dc1998-02-12 22:33:50 +0000332# - useful results: .dvi, .pdf, .ps, .texi, .info
Fred Drakee4837a11998-03-06 21:29:34 +0000333clean:
Fred Drake6eab2fb1998-02-13 03:23:33 +0000334 rm -f @* *~ *.aux *.idx *.ilg *.ind *.log *.toc *.blg *.bbl *.py[co]
Fred Drake23916e71998-04-25 04:15:56 +0000335 rm -f *.bak *.orig lib1.texi *.out @webchecker.pickle *.bkm
Fred Drakef5013f11998-04-13 21:02:49 +0000336 rm -f html-$(RELEASE).tar.gz info-$(RELEASE).tar.gz
337 rm -f pdf-$(RELEASE).tar.gz postscript-$(RELEASE).tar.gz
338 rm -f latex-$(RELEASE).tar.gz
Guido van Rossum5b343731992-07-07 09:06:34 +0000339
Fred Drake03ff6f71997-08-22 18:18:54 +0000340l2hclean:
Fred Drake5de31fc1997-08-22 18:20:33 +0000341 rm -rf api ext lib tut
Fred Drake03ff6f71997-08-22 18:18:54 +0000342
Guido van Rossume83e3801995-03-17 16:01:35 +0000343# Remove temporaries as well as final products
Fred Drakee4837a11998-03-06 21:29:34 +0000344clobber: clean l2hclean
Fred Drake9fab3aa1998-04-28 19:20:43 +0000345 rm -f $(DVIFILES) $(PSFILES) $(PDFFILES)
346 rm -f *.texi python-???.info python-???.info-[0-9]*
Fred Drake5ad78f31998-02-22 19:47:13 +0000347
348realclean: clobber
349distclean: clobber