# cpython-withatomic / Doc / Makefile

The branch 'legacy-trunk' does not exist.
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 # Makefile for Python documentation # --------------------------------- # # See also the README file. # # This is a bit of a mess. The main documents are: # tut -- Tutorial (file tut.tex) # lib -- Library Reference (file lib.tex, inputs lib*.tex) # ext -- Extending and Embedding (file ext.tex) # # The Reference Manual is now maintained as a FrameMaker document. # See the subdirectory ref; PostScript is included as ref/ref.ps. # (In the future, the Tutorial will also be converted to FrameMaker; # the other documents will be maintained in a text format such # as LaTeX or perhaps TIM.) # # The main target "make all" creates DVI and PostScript for these # four. You can also do "make lib" (etc.) to process individual # documents. # # There's also: # qua -- Paper published in the CWI Quarterly (file qua.tex) # # There's one local style file: myformat.sty. This defines a number # of macros that are similar in name and intent as macros in Texinfo # (e.g. \code{...} and \emph{...}), as well as a number of # environments for formatting function and data definitions, also in # the style of Texinfo. # # Everything is processed by LaTeX. The following tools are used: # latex # makeindex # dvips # bibtex (only for formatting qua.tex) # # There's a problem with generating the index which has been solved by # a sed command applied to the index file. The shell script fix_hack # does this (the Makefile takes care of calling it). # # To preview the dvi files produced by LaTeX it would be useful to # have xdvi as well. # # Additional targets attempt to convert selected LaTeX sources to # various other formats. These are generally site specific because # the tools used are all but universal. These targets are: # l2h -- convert tut, ref, ext (but not lib!) from LaTeX to HTML # lib.texi -- convert lib from LaTeX to Texinfo # lib.info -- convert lib from Texinfo to Emacs INFO # libwww -- convert lib from Texinfo to HTML # See the README file for more info on these targets. # Customizations -- you *may* have to edit these # Where are the various programs? LATEX= latex BIBTEX= bibtex EMACS= emacs DVIPS= dvips -f MAKEINDEX= makeindex PYTHON= python MAKEINFO= makeinfo L2H= /ufs/guido/l2h/latex2html L2HARGS= -address USER@domainname -dont_include myformat # Destination directory for output of libwww target. PARTPARSE= $(PYTHON) ./partparse.pyc TEXI2HTMLFLAGS= -d TEXI2HTML=$(PYTHON) ./texi2html.pyc LIBHTMLDIR= ./python-lib # Install destination -- not used now but might be useful some time... DESTDIR= /usr/local LIBDESTDIR= $DESTDIR/lib LIBDEST=$LIBDESTDIR/python DOCDESTDIR= $LIBDEST/doc # Ideally, you shouldn't need to edit beyond this point # Main target all: all-ps all-dvi: tut.dvi lib.dvi ext.dvi all-ps: tut.ps lib.ps ext.ps # Individual document fake targets tut: tut.ps lib: lib.ps ext: ext.ps # CWI Quarterly document fake target qua: qua.ps # Dependencies tut.dvi lib.dvi ext.dvi: myformat.sty fix_hack # Tutorial document tut.dvi: tut.tex$(LATEX) tut $(LATEX) tut tut.ps: tut.dvi$(DVIPS) tut >tut.ps # LaTeX source files for the Python Library Reference LIBFILES = lib.tex \ libintro.tex libobjs.tex libtypes.tex libexcs.tex libfuncs.tex \ libpython.tex libsys.tex libtypes2.tex libtraceback.tex libpickle.tex \ libshelve.tex libcopy.tex libmarshal.tex libimp.tex libparser.tex \ libbltin.tex libmain.tex libstrings.tex libstring.tex libregex.tex \ libregsub.tex libstruct.tex libmisc.tex libmath.tex librand.tex \ libwhrandom.tex libarray.tex liballos.tex libos.tex libtime.tex \ libgetopt.tex libtempfile.tex liberrno.tex libsomeos.tex libsignal.tex \ libsocket.tex libselect.tex libthread.tex libunix.tex libposix.tex \ libppath.tex libpwd.tex libgrp.tex libcrypt.tex libdbm.tex libgdbm.tex \ libtermios.tex libfcntl.tex libposixfile.tex libsyslog.tex libpdb.tex \ libprofile.tex libwww.tex libcgi.tex liburllib.tex libhttplib.tex \ libftplib.tex libgopherlib.tex libnntplib.tex liburlparse.tex \ libhtmllib.tex libsgmllib.tex librfc822.tex libmimetools.tex \ libbinascii.tex libmm.tex libaudioop.tex libimageop.tex libaifc.tex \ libjpeg.tex librgbimg.tex libcrypto.tex libmd5.tex libmpz.tex \ librotor.tex libmac.tex libctb.tex libmacconsole.tex libmacdnr.tex \ libmacfs.tex libmacos.tex libmacostools.tex libmactcp.tex \ libmacspeech.tex libmacui.tex libstdwin.tex libsgi.tex libal.tex \ libcd.tex libfl.tex libfm.tex libgl.tex libimgfile.tex libsun.tex \ libxdrlib.tex libimghdr.tex \ librestricted.tex librexec.tex libbastion.tex \ libformatter.tex # Library document lib.dvi: $(LIBFILES) touch lib.ind$(LATEX) lib ./fix_hack lib.idx $(MAKEINDEX) lib$(LATEX) lib lib.ps: lib.dvi $(DVIPS) lib >lib.ps # Extensions document ext.dvi: ext.tex extref.tex touch ext.ind$(LATEX) ext ./fix_hack ext.idx $(MAKEINDEX) ext$(LATEX) ext ext.ps: ext.dvi $(DVIPS) ext >ext.ps # Quarterly document qua.dvi: qua.tex quabib.bib$(LATEX) qua $(BIBTEX) qua$(LATEX) qua $(BIBTEX) qua qua.ps: qua.dvi$(DVIPS) qua >qua.ps # The remaining part of the Makefile is concerned with various # conversions, as described above. See also the README file. .SUFFIXES: .py .pyc .py.pyc: $(PYTHON) -c "import$*" .PRECIOUS: lib.texi lib.texi: lib*.tex texipre.dat texipost.dat partparse.pyc fix.el $(PARTPARSE) -o @lib.texi ./whichlibs$(EMACS) -batch -l fix.el -f save-buffer -kill mv @lib.texi lib.texi python-lib.info: lib.texi -$(MAKEINFO) --footnote-style end --fill-column 72 \ --paragraph-indent 0 lib.texi lib.info: python-lib.info libwww: lib.texi texi2html.pyc if test ! -d$(LIBHTMLDIR); then mkdir $(LIBHTMLDIR); else true; fi$(TEXI2HTML) $(TEXI2HTMLFLAGS) lib.texi$(LIBHTMLDIR) # Targets to convert the manuals to HTML using Nikos Drakos' LaTeX to # HTML converter. For more info on this program, see # . # (I've had some trouble getting this to work with the netpbm version # of the pbmplus library; ppmtogif dumped core because giftopnm # outputs bitmap (pbm) files. I've fixed this by changing the source # of LaTeX2HTML to insert a call to pnmtoppm, which I wrote myself. # You can probably also use "pbmtopgm | pgmtoppm"... # In order to use these targets, you must edit the definition of L2H # earlier in the Makefile to point to the latex2html program. Note # that LaTeX2HTML inserts references to an "icons" directory in each # page that it generates. You can customize where these icons are to # be found; I generally make it point to "../icons" and then create a # symbolic link to the icons directory in the LaTeX2HTML source at the # appropriate place. l2h: l2htut l2href l2hext l2htut: tut.dvi $(L2H)$(L2HARGS) tut.tex @rm -rf python-tut mv tut python-tut l2hext: ext.dvi $(L2H)$(L2HARGS) ext.tex @rm -rf python-ext mv ext python-ext # This target doesn't quite work, since l2h doesn't understand the # funcdesc and similar environments, and turns them into GIF images. # Use the "libwww" target above instead. l2hlib: lib.dvi $(L2H)$(L2HARGS) lib.tex @rm -rf python-lib mv lib python-lib # Housekeeping targets # Remove temporary files clean: rm -f @* *~ *.aux *.idx *.ilg *.ind *.log *.toc *.blg *.bbl *.pyc rm -f *.bak *.orig # Sources: .tex, .bib, .sty # Useful results: .dvi, .ps, .texi, .info # Remove temporaries as well as final products clobber: clean rm -f *.dvi *.ps *.texi *.info *.info-[0-9]*