summaryrefslogtreecommitdiffstats
path: root/Doc/html/Makefile
blob: d47ac014a19bd033a58208a79ccfa15914d0c44e (plain)
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
# Convenience Makefile for building HTML documentation.  You probably
# need to set TEXINPUTS from the command line for this to be useful,
# unless you actually build the .dvi files in the top level directory.

PAPER=letter
TOPDIR=..
TOOLSDIR=$(TOPDIR)/tools
PAPERDIR=$(TOPDIR)/paper-$(PAPER)

TEXINPUTS=$(TOPDIR)/paper-$(PAPER):$(TOPDIR)/texinputs:

# Where are the various programs?
PYTHON=	   python
WEBCHECKER=$(PYTHON) $(TOPDIR)/../Tools/webchecker/webchecker.py
MKHOWTO=   $(TOOLSDIR)/mkhowto --about $(TOPDIR)/html/stdabout.dat \
		--address $(PYTHONDOCS) --up-link ../index.html \
		--up-title "Python Documentation Index" \
		--global-module-index "../modindex.html"
MKHTML=	   $(MKHOWTO) --html

BUILDINDEX=$(TOOLSDIR)/buildindex.py

PYTHONDOCS='See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.'
HTMLBASE=  file:`pwd`

INDEXFILES=api/api.html \
	doc/doc.html \
	ext/ext.html \
	lib/lib.html \
	mac/mac.html \
	ref/ref.html \
	tut/tut.html \
	inst/inst.html \
	dist/dist.html

COMMONPERL= $(TOPDIR)/perl/manual.perl \
	$(TOPDIR)/perl/python.perl \
	$(TOPDIR)/perl/l2hinit.perl


all:	$(INDEXFILES) index.html modindex.html acks.html

.PHONY: api ext lib mac ref tut inst dist

api: api/api.html
doc: doc/doc.html
ext: ext/ext.html
lib: lib/lib.html
mac: mac/mac.html
ref: ref/ref.html
tut: tut/tut.html
inst: inst/inst.html
dist: dist/dist.html

$(INDEXFILES): $(COMMONPERL) \
	       $(TOPDIR)/html/about.dat \
	       $(TOPDIR)/tools/node2label.pl

include ../Makefile.deps

# The index.html target is at the end since it screws up font-lock.

acks.html: ../ACKS $(TOOLSDIR)/support.py $(TOOLSDIR)/mkackshtml
	$(TOOLSDIR)/mkackshtml --address $(PYTHONDOCS) --output acks.html \
		<../ACKS

modindex.html: $(TOOLSDIR)/support.py $(TOOLSDIR)/mkmodindex
modindex.html: lib/lib.html mac/mac.html
	$(TOOLSDIR)/mkmodindex --columns 4 --output modindex.html \
		--address $(PYTHONDOCS) \
		lib/modindex.html mac/modindex.html

api/api.html:  $(APIFILES) $(BUILDINDEX)
	$(MKHTML) $(TOPDIR)/api/api.tex

doc/doc.html:  $(DOCFILES) $(BUILDINDEX)
	$(MKHTML) $(TOPDIR)/doc/doc.tex

ext/ext.html:  $(EXTFILES)
	$(MKHTML) $(TOPDIR)/ext/ext.tex

lib/lib.html:  $(LIBFILES) $(BUILDINDEX)
	$(MKHTML) $(TOPDIR)/lib/lib.tex

mac/mac.html:  $(MACFILES) $(BUILDINDEX)
	$(MKHTML) $(TOPDIR)/mac/mac.tex

ref/ref.html:  $(REFFILES) $(BUILDINDEX)
	$(MKHTML) $(TOPDIR)/ref/ref.tex

tut/tut.html:  $(TUTFILES) $(TOOLSDIR)/mkhowto
	$(MKHTML) --numeric --split 3 $(TOPDIR)/tut/tut.tex

inst/inst.html: $(INSTFILES) $(TOPDIR)/perl/distutils.perl
	$(MKHTML) $(TOPDIR)/inst/inst.tex

dist/dist.html:$(DISTFILES) $(TOPDIR)/perl/distutils.perl
	$(MKHTML) $(TOPDIR)/dist/dist.tex

webcheck: all
	$(WEBCHECKER) $(HTMLBASE)/api/
	$(WEBCHECKER) $(HTMLBASE)/doc/
	$(WEBCHECKER) $(HTMLBASE)/ext/
	$(WEBCHECKER) -m290000 $(HTMLBASE)/lib/
	$(WEBCHECKER) $(HTMLBASE)/mac/
	$(WEBCHECKER) $(HTMLBASE)/ref/
	$(WEBCHECKER) $(HTMLBASE)/tut/
	$(WEBCHECKER) $(HTMLBASE)/dist/
	$(WEBCHECKER) $(HTMLBASE)/inst/

clean:
	rm -rf @webchecker.pickle

distclean realclean clobber: clean
	rm -rf index.html modindex.html acks.html
	rm -rf api/ doc/ ext/ lib/ mac/ ref/ tut/ inst/ dist/


# This is really ugly, but we're not dependent on $(RELEASE), which isn't
# defined here.  It also maintains the proper dependency on boilerplate.tex.

# index.html is dependent on $(INDEXFILES) since we want the date on
# the front index to be updated whenever any of the child documents
# are updated and boilerplate.tex uses \today as the date.

# It's at the end of the file since it wedges font-lock in XEmacs.

BOILERPLATE=$(TOPDIR)/texinputs/boilerplate.tex
index.html: $(TOPDIR)/html/index.html.in $(BOILERPLATE) $(INDEXFILES)
	REL=`grep '\\release{' $(BOILERPLATE) | sed 's/.*\\release{\(.*\)}.*$$/\1/'`; \
		REL=`echo "$$REL" | sed 's/[$$]//g'`; \
		sed "s/@RELEASE@/$$REL/g" $< >TEMP
	DATE=`grep '\\date{' $(BOILERPLATE) | sed 's/.*\\date{\(.*\)}.*$$/\1/'` ; \
		if [ "$$DATE" = '\today' ] ; then DATE=`date '+%B %e, %Y'`;fi;\
		sed "s/@DATE@/$$DATE/g" TEMP >$@
	rm -f TEMP