blob: 02ddb6cda5f949d487397997b1fa3fcb85e293c6 [file] [log] [blame]
Fred Drakee018bee2000-03-31 20:22:29 +00001# Convenience Makefile for building HTML documentation. You probably need to
2# set TEXINPUTS from the command line for this to be useful, unless you
3# actually build the .dvi files in the top level directory.
4#
5# Note that the .dvi files must already be built and TEXINPUTS must include the
6# directory where latex's working files (esp. *.aux) are kept.
7
8PAPER=letter
9TOPDIR=..
10TOOLSDIR=$(TOPDIR)/tools
11PAPERDIR=$(TOPDIR)/paper-$(PAPER)
12
13TEXINPUTS=$(TOPDIR)/paper-$(PAPER):$(TOPDIR)/texinputs:
14
15# Where are the various programs?
16PYTHON= python
17MKAUX= PAPER=$(PAPER) TEXINPUTS=$(TEXINPUTS) $(TOOLSDIR)/mkdvi.sh --aux
18MKHTML= PAPER=$(PAPER) $(TOOLSDIR)/mkhtml.sh --numeric
19KPSEWHICH= TEXINPUTS=$(TEXINPUTS) kpsewhich tex
20
21BUILDINDEX=$(TOOLSDIR)/buildindex.py
22
23# make it clear to l2h, since our support only generates HTML 4.0
24L2HARGS= -html_version 4.0
25
26PYTHONDOCS='<hr>Send comments on this document to <a href="mailto:python-docs@python.org">python-docs@python.org</a>.'
27HTMLBASE= file:`pwd`
28
29INDEXFILES=api/api.html \
30 doc/doc.html \
31 ext/ext.html \
32 lib/lib.html \
33 mac/mac.html \
34 ref/ref.html \
35 tut/tut.html
36
37COMMONPERL= $(TOPDIR)/perl/manual.perl \
38 $(TOPDIR)/perl/python.perl \
39 $(TOPDIR)/perl/l2hinit.perl
40
41
Fred Drake9c26f5d2000-03-31 20:26:33 +000042all: $(INDEXFILES) icons
Fred Drakee018bee2000-03-31 20:22:29 +000043
44.PHONY: api ext lib mac ref tut
45
46api: api/api.html
47doc: doc/doc.html
48ext: ext/ext.html
49lib: lib/lib.html
50mac: mac/mac.html
51ref: ref/ref.html
52tut: tut/tut.html
53
54$(INDEXFILES): $(COMMONPERL) \
55 $(TOPDIR)/html/about.dat
56
Fred Drake9c26f5d2000-03-31 20:26:33 +000057icons: ../html/icons
58 if [ ! -d icons ] ; then mkdir icons; fi
59 cp ../html/icons/*.* icons/
60
Fred Drakee018bee2000-03-31 20:22:29 +000061api/api.html: $(PAPERDIR)/api.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
62 $(MKHTML) api $(L2HARGS) -split 3
63
64doc/doc.html: $(DOCFILES) $(BUILDINDEX) $(TOPDIR)/perl/ltxmarkup.perl
65 $(TOOLSDIR)/mkhowto --numeric --split=3 --address $(PYTHONDOCS) \
66 --html $(TOPDIR)/doc/doc.tex
67
68ext/ext.html: $(PAPERDIR)/ext.aux $(TOOLSDIR)/mkhtml.sh
69 $(MKHTML) ext $(L2HARGS) -split 3
70
71lib/lib.html: $(PAPERDIR)/lib.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
72 $(TOOLSDIR)/fix_libaux.sed <`$(KPSEWHICH) lib.aux` >lib1.aux
73 mv lib1.aux `$(KPSEWHICH) lib.aux`
74 $(MKHTML) lib $(L2HARGS) -split 3
75
76mac/mac.html: $(MACFILES) $(BUILDINDEX)
77 $(TOOLSDIR)/mkhowto --numeric --split=3 --address $(PYTHONDOCS) \
78 --html $(TOPDIR)/mac/mac.tex
79
80ref/ref.html: $(PAPERDIR)/ref.aux $(BUILDINDEX) $(TOOLSDIR)/mkhtml.sh
81 $(MKHTML) ref $(L2HARGS) -split 3
82
83tut/tut.html: $(PAPERDIR)/tut.aux $(TOOLSDIR)/mkhtml.sh
84 $(MKHTML) tut $(L2HARGS) -split 3
85
86
87include ../Makefile.deps
88
89$(PAPERDIR)/api.aux: $(APIFILES)
90 (cd $(PAPERDIR); $(MKAUX) api)
91
92$(PAPERDIR)/ext.aux: $(EXTFILES)
93 (cd $(PAPERDIR); $(MKAUX) ext)
94
95$(PAPERDIR)/lib.aux: $(LIBFILES)
96 (cd $(PAPERDIR); $(MKAUX) lib)
97
98$(PAPERDIR)/ref.aux: $(REFFILES)
99 (cd $(PAPERDIR); $(MKAUX) ref)
100
101$(PAPERDIR)/tut.aux: $(TUTFILES)
102 (cd $(PAPERDIR); $(MKAUX) tut)
103
104
105clean:
106 :
107
108clobber:
109 rm -rf api/ doc/ ext/ lib/ mac/ ref/ tut/