4646# Customizations -- you *may* have to edit these
4747
4848# Where are the various programs?
49- LATEX = TEXINPUTS= $( TEXINPUTS ) latex
50- PDFLATEX = TEXINPUTS= $( TEXINPUTS ) pdflatex
49+ LATEX = latex
50+ PDFLATEX = pdflatex
5151DVIPS = dvips -N0
5252DISTILL = distill
5353KPSEWHICH = TEXINPUTS=$(TEXINPUTS ) kpsewhich
5454MAKEINDEX = makeindex -s $(srcdir ) /texinputs/myindex.ist
55- L2H = TEXINPUTS=$(TEXINPUTS ) latex2html -init_file $(L2HINIT )
56- L2HOUTPUTBASE = html
5755L2HARGS =
58- L2HINIT = $(srcdir ) /perl/l2hinit.perl
5956WEBCHECKER = $(PYTHON ) $(srcdir ) /../Tools/webchecker/webchecker.py
6057
6158# Install destination -- not used now but might be useful some time...
@@ -83,8 +80,8 @@ INFOFILES= python-lib.info
8380PDFFILES = api.pdf ext.pdf lib.pdf ref.pdf tut.pdf
8481PSFILES = api.ps ext.ps lib.ps ref.ps tut.ps
8582
86- MANSTYLES =$( srcdir ) / texinputs/fncychap.sty $( srcdir ) / texinputs/manual.cls \
87- $( srcdir ) / texinputs/python.sty $( srcdir ) / texinputs/myindex.ist
83+ MANSTYLES =texinputs/fncychap.sty texinputs/manual.cls \
84+ texinputs/python.sty texinputs/myindex.ist
8885
8986# Be careful when messing with this one!
9087TEXINPUTS = .:$(srcdir ) /texinputs:
@@ -138,66 +135,74 @@ tut-all: tut.dvi tut.pdf tut.ps l2htut
138135#
139136$(PDFFILES ) : $(srcdir ) /tools/toc2bkm.py
140137.dvi.pdf :
141- $(PDFLATEX ) $*
138+ TEXINPUTS= $( srcdir ) / $* : $( TEXINPUTS ) $(PDFLATEX ) $*
142139 $(PYTHON ) $(srcdir ) /tools/toc2bkm.py $*
143- $(PDFLATEX ) $*
140+ TEXINPUTS= $( srcdir ) / $* : $( TEXINPUTS ) $(PDFLATEX ) $*
144141
145142# Dependencies
146143COMMONTEX =$(MANSTYLES ) texinputs/copyright.tex texinputs/boilerplate.tex
147144COMMONPERL =perl/manual.perl perl/python.perl
148145
149146$(DVIFILES ) : tools/fix_hack tools/mkdvi.sh $(COMMONTEX )
150147
151- ref.dvi : ref1.tex ref2.tex ref3.tex ref4.tex \
152- ref5.tex ref6.tex ref7.tex ref8.tex
148+ ref.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
153150
154151# LaTeX source files for the Python Library Reference
155- LIBFILES = lib.tex \
156- libintro.tex libobjs.tex libtypes.tex libexcs.tex libfuncs.tex \
157- libpython.tex libsys.tex libtypes2.tex libtraceback.tex libpickle.tex \
158- libshelve.tex libcopy.tex libmarshal.tex libimp.tex libparser.tex \
159- libbltin.tex libmain.tex libstrings.tex libstring.tex libregex.tex \
160- libregsub.tex libstruct.tex libmisc.tex libmath.tex librand.tex \
161- libwhrandom.tex libarray.tex liballos.tex libos.tex libtime.tex \
162- libgetopt.tex libtempfile.tex liberrno.tex libsomeos.tex libsignal.tex \
163- libsocket.tex libselect.tex libthread.tex libunix.tex libposix.tex \
164- libppath.tex libpwd.tex libgrp.tex libcrypt.tex libdbm.tex libgdbm.tex \
165- libtermios.tex libfcntl.tex libposixfile.tex libsyslog.tex libpdb.tex \
166- libprofile.tex libwww.tex libcgi.tex liburllib.tex libhttplib.tex \
167- libftplib.tex libgopherlib.tex libnntplib.tex liburlparse.tex \
168- libhtmllib.tex libsgmllib.tex librfc822.tex libmimetools.tex \
169- libbinascii.tex libmm.tex libaudioop.tex libimageop.tex libaifc.tex \
170- libjpeg.tex librgbimg.tex libcrypto.tex libmd5.tex libmpz.tex \
171- librotor.tex libstdwin.tex libsgi.tex libal.tex \
172- libcd.tex libfl.tex libfm.tex libgl.tex libimgfile.tex libsun.tex \
173- libxdrlib.tex libimghdr.tex \
174- librestricted.tex librexec.tex libbastion.tex \
175- libformatter.tex liboperator.tex libsoundex.tex libresource.tex \
176- libstat.tex libstrio.tex libundoc.tex libmailcap.tex libglob.tex \
177- libuser.tex libanydbm.tex librandom.tex libsite.tex libwhichdb.tex \
178- libbase64.tex libfnmatch.tex libquopri.tex libzlib.tex libsocksvr.tex \
179- libmailbox.tex libcommands.tex libcmath.tex libni.tex libgzip.tex \
180- libpprint.tex libcode.tex libmimify.tex libre.tex \
181- libuserdict.tex libdis.tex libxmllib.tex libqueue.tex \
182- liblocale.tex libbasehttp.tex libcopyreg.tex libsymbol.tex libtoken.tex \
183- libframework.tex libminiae.tex libbinhex.tex libuu.tex libsunaudio.tex \
184- libfileinput.tex libimaplib.tex libpoplib.tex libcalendar.tex \
185- libpopen2.tex libbisect.tex
186-
187- MACLIBFILES = mac.tex libmac.tex libctb.tex libmacconsole.tex \
188- libmacdnr.tex libmacfs.tex libmacos.tex libmacostools.tex \
189- libmactcp.tex libmacspeech.tex libmacui.tex libmacic.tex
152+ LIBFILES = 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
189+
190+ # LaTeX source files for Macintosh Library Modules.
191+ MACLIBFILES = 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
190195
191196# Python Library Reference
192197lib.dvi : tools/indfix.py $(LIBFILES )
193198 $(srcdir ) /tools/newind.py > $* .ind
194199 $(srcdir ) /tools/newind.py modindex > mod$* .ind
195- $(LATEX ) $*
200+ TEXINPUTS= $( srcdir ) /lib: $( TEXINPUTS ) $(LATEX ) $*
196201 $(MAKEINDEX ) mod$* .idx
197202 $(srcdir ) /tools/fix_hack $* .idx
198203 $(MAKEINDEX ) $* .idx
199204 $(srcdir ) /tools/indfix.py $* .ind
200- $(LATEX ) $*
205+ TEXINPUTS= $( srcdir ) /lib: $( TEXINPUTS ) $(LATEX ) $*
201206
202207# Python/C API Reference Manual
203208api.dvi : api/api.tex
@@ -259,46 +264,34 @@ lib.texi: python-lib.texi
259264# a (trivial) index.html. Change the definition of $ICONSERVER in
260265# perl/l2hinit.perl to use a different location for the icons directory.
261266
262- $(L2HOUTPUTBASE ) :
263- mkdir $(L2HOUTPUTBASE )
264267
265- l2h : l2hapi l2hext l2hlib l2href l2htut
268+ l2h :
269+ (cd html; $( MAKE) )
266270
267- l2hapi : $(COMMONPERL ) $(L2HOUTPUTBASE )
268- $(L2H ) $(L2HARGS ) -dir $(L2HOUTPUTBASE ) /api api.tex
269- (MYDIR=` pwd` ; cd $( L2HOUTPUTBASE) /api; \
270- $$ MYDIR/tools/node2label.pl * .html)
271+ l2hapi : $(COMMONPERL )
272+ TEXINPUTS=$(TEXINPUTS ) $(srcdir ) /tools/mkhtml.sh api $(L2HARGS )
271273
272- l2hext : $(COMMONPERL ) $(L2HOUTPUTBASE )
273- $(L2H ) $(L2HARGS ) -dir $(L2HOUTPUTBASE ) /ext ext.tex
274- (MYDIR=` pwd` ; cd $( L2HOUTPUTBASE) /ext; \
275- $$ MYDIR/tools/node2label.pl * .html)
274+ l2hext : $(COMMONPERL )
275+ TEXINPUTS=$(TEXINPUTS ) $(srcdir ) /tools/mkhtml.sh ext $(L2HARGS )
276276
277- l2hlib : $(COMMONPERL ) $( L2HOUTPUTBASE )
277+ l2hlib : $(COMMONPERL )
278278 $(srcdir ) /tools/fix_libaux.sed < ` $( KPSEWHICH) lib.aux` > lib1.aux
279279 mv lib1.aux ` $( KPSEWHICH) lib.aux`
280- if test -d lib ; then rm -f lib/* .html ; fi
281- $(L2H ) $(L2HARGS ) -dir $(L2HOUTPUTBASE ) /lib lib.tex
282- (MYDIR=` pwd` ; cd $( L2HOUTPUTBASE) /lib; \
283- $$ MYDIR/tools/node2label.pl * .html)
280+ TEXINPUTS=$(TEXINPUTS ) $(srcdir ) /tools/mkhtml.sh lib $(L2HARGS )
284281
285- l2href : $(COMMONPERL ) $(L2HOUTPUTBASE )
286- $(L2H ) $(L2HARGS ) -dir $(L2HOUTPUTBASE ) /ref ref.tex
287- (MYDIR=` pwd` ; cd $( L2HOUTPUTBASE) /ref; \
288- $$ MYDIR/tools/node2label.pl * .html)
282+ l2href : $(COMMONPERL )
283+ TEXINPUTS=$(TEXINPUTS ) $(srcdir ) /tools/mkhtml.sh ref $(L2HARGS )
289284
290- l2htut : $(COMMONPERL ) $(L2HOUTPUTBASE )
291- $(L2H ) $(L2HARGS ) -dir $(L2HOUTPUTBASE ) /tut tut.tex
292- (MYDIR=` pwd` ; cd $( L2HOUTPUTBASE) /tut; \
293- $$ MYDIR/tools/node2label.pl * .html)
285+ l2htut : $(COMMONPERL )
286+ TEXINPUTS=$(TEXINPUTS ) $(srcdir ) /tools/mkhtml.sh tut $(L2HARGS )
294287
295288# webchecker needs an extra flag to process the huge index from the libref
296289webcheck :
297- $(WEBCHECKER ) file:` pwd` /$( L2HOUTPUTBASE ) / api/
298- $(WEBCHECKER ) file:` pwd` /$( L2HOUTPUTBASE ) / ext/
299- $(WEBCHECKER ) -m290000 file:` pwd` /$( L2HOUTPUTBASE ) / lib/
300- $(WEBCHECKER ) file:` pwd` /$( L2HOUTPUTBASE ) / ref/
301- $(WEBCHECKER ) file:` pwd` /$( L2HOUTPUTBASE ) / tut/
290+ $(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/
302295
303296lib-info-$(RELEASE ) .tar.gz : $(INFOFILES )
304297 tar cf - python-??? .info* | gzip -9 > $@
@@ -308,19 +301,13 @@ latex-$(RELEASE).tar.gz:
308301
309302# This snags a PDF version if available, but doesn't fail if not.
310303pdf-$(RELEASE ) .tar.gz : $(PDFFILES )
311- if test -f $( srcdir) /ref/ref.pdf ; then \
312- cp $(srcdir ) /ref/ref.pdf . ; else true ; fi
313304 tar cf - ??? .pdf | gzip -9 > $@
314- if test -f ref.pdf ; then rm ref.pdf ; else true ; fi
315305
316- postscript-$(RELEASE ) .tar.gz : $(PSFILES ) ref/ref.ps
317- cp $(srcdir ) /ref/ref.ps .
306+ postscript-$(RELEASE ) .tar.gz : $(PSFILES )
318307 tar cf - ??? .ps | gzip -9 > $@
319- rm ref.ps
320308
321309html-$(RELEASE ) .tar.gz :
322- tar cf - index.html icons/ \
323- -C $(L2HOUTPUTBASE ) ??? /??? .css ??? /* .html * /* .gif \
310+ tar cf - index.html ??? /??? .css ??? /* .html * /* .gif \
324311 | gzip -9 > html-$(RELEASE ) .tar.gz
325312
326313# convenience targets:
0 commit comments