Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 1 | # 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 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 8 | PAPER=letter |
Fred Drake | f832f4c | 1998-08-11 19:36:35 +0000 | [diff] [blame] | 9 | TOPDIR=.. |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 10 | TOOLSDIR=$(TOPDIR)/tools |
| 11 | PAPERDIR=$(TOPDIR)/paper-$(PAPER) |
Fred Drake | f832f4c | 1998-08-11 19:36:35 +0000 | [diff] [blame] | 12 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 13 | TEXINPUTS=$(TOPDIR)/paper-$(PAPER):$(TOPDIR)/texinputs: |
| 14 | |
| 15 | # Where are the various programs? |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 16 | PYTHON= python |
| 17 | WEBCHECKER=$(PYTHON) $(TOPDIR)/../Tools/webchecker/webchecker.py |
| 18 | MKAUX= PAPER=$(PAPER) TEXINPUTS=$(TEXINPUTS) $(TOOLSDIR)/mkdvi.sh --aux |
| 19 | MKHTML= PAPER=$(PAPER) $(TOOLSDIR)/mkhtml.sh |
| 20 | KPSEWHICH= TEXINPUTS=$(TEXINPUTS) kpsewhich tex |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 21 | |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 22 | BUILDINDEX=$(TOOLSDIR)/buildindex.py |
Fred Drake | 5d56d36 | 1999-01-05 15:49:39 +0000 | [diff] [blame] | 23 | |
Fred Drake | 5761b76 | 1999-02-12 21:42:23 +0000 | [diff] [blame] | 24 | # make it clear to l2h, since our support only generates HTML 4.0 |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 25 | L2HARGS= -html_version 4.0 |
| 26 | |
Fred Drake | 4050e00 | 1999-04-28 15:06:08 +0000 | [diff] [blame] | 27 | PYTHONDOCS='<hr>Send comments on this document to <a href="mailto:python-docs@python.org">python-docs@python.org</a>.' |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 28 | HTMLBASE= file:`pwd` |
Fred Drake | 5761b76 | 1999-02-12 21:42:23 +0000 | [diff] [blame] | 29 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 30 | INDEXFILES=api/api.html \ |
Fred Drake | 1468d77 | 1999-03-18 19:07:04 +0000 | [diff] [blame] | 31 | doc/doc.html \ |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 32 | ext/ext.html \ |
| 33 | lib/lib.html \ |
| 34 | mac/mac.html \ |
| 35 | ref/ref.html \ |
| 36 | tut/tut.html |
| 37 | |
| 38 | COMMONPERL= $(TOPDIR)/perl/manual.perl \ |
Fred Drake | 54c5205 | 1998-08-13 19:03:19 +0000 | [diff] [blame] | 39 | $(TOPDIR)/perl/python.perl \ |
| 40 | $(TOPDIR)/perl/l2hinit.perl |
Fred Drake | f832f4c | 1998-08-11 19:36:35 +0000 | [diff] [blame] | 41 | |
| 42 | |
Fred Drake | 5cc0a9b | 1999-04-29 15:42:19 +0000 | [diff] [blame] | 43 | all: $(INDEXFILES) index.html modindex.html |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 44 | |
| 45 | .PHONY: api ext lib mac ref tut |
| 46 | |
Fred Drake | 6f9dd5d | 1999-02-15 21:43:55 +0000 | [diff] [blame] | 47 | api: api/api.html |
Fred Drake | 766e0cb | 1999-04-05 19:28:29 +0000 | [diff] [blame] | 48 | doc: doc/doc.html |
Fred Drake | 6f9dd5d | 1999-02-15 21:43:55 +0000 | [diff] [blame] | 49 | ext: ext/ext.html |
| 50 | lib: lib/lib.html |
| 51 | mac: mac/mac.html |
| 52 | ref: ref/ref.html |
| 53 | tut: tut/tut.html |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 54 | |
Fred Drake | a8ba364 | 1998-11-30 20:28:35 +0000 | [diff] [blame] | 55 | $(INDEXFILES): $(COMMONPERL) $(TOPDIR)/html/about.dat |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 56 | |
Fred Drake | 664c72f | 1999-04-29 17:04:21 +0000 | [diff] [blame^] | 57 | # The index.html target is at the end since it screws up font-lock. |
| 58 | |
Fred Drake | 684f78f | 1999-02-24 17:34:12 +0000 | [diff] [blame] | 59 | modindex.html: lib/lib.html mac/mac.html $(TOOLSDIR)/mkmodindex |
Fred Drake | 368b16a | 1999-03-02 15:56:19 +0000 | [diff] [blame] | 60 | $(TOOLSDIR)/mkmodindex --columns 4 --output modindex.html \ |
Fred Drake | b41f97d | 1999-03-04 21:25:05 +0000 | [diff] [blame] | 61 | --address $(PYTHONDOCS) \ |
Fred Drake | 684f78f | 1999-02-24 17:34:12 +0000 | [diff] [blame] | 62 | lib/modindex.html mac/modindex.html |
| 63 | |
Fred Drake | 5d56d36 | 1999-01-05 15:49:39 +0000 | [diff] [blame] | 64 | api/api.html: $(PAPERDIR)/api.aux $(BUILDINDEX) |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 65 | $(MKHTML) api $(L2HARGS) |
| 66 | |
Fred Drake | 1468d77 | 1999-03-18 19:07:04 +0000 | [diff] [blame] | 67 | doc/doc.html: $(DOCFILES) $(BUILDINDEX) $(TOPDIR)/perl/ltxmarkup.perl |
| 68 | $(TOOLSDIR)/mkhowto --address $(PYTHONDOCS) --html \ |
| 69 | $(TOPDIR)/doc/doc.tex |
| 70 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 71 | ext/ext.html: $(PAPERDIR)/ext.aux |
| 72 | $(MKHTML) ext $(L2HARGS) |
| 73 | |
Fred Drake | 5d56d36 | 1999-01-05 15:49:39 +0000 | [diff] [blame] | 74 | lib/lib.html: $(PAPERDIR)/lib.aux $(BUILDINDEX) |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 75 | $(TOOLSDIR)/fix_libaux.sed <`$(KPSEWHICH) lib.aux` >lib1.aux |
| 76 | mv lib1.aux `$(KPSEWHICH) lib.aux` |
| 77 | $(MKHTML) lib $(L2HARGS) |
| 78 | |
Fred Drake | 5d56d36 | 1999-01-05 15:49:39 +0000 | [diff] [blame] | 79 | mac/mac.html: $(MACFILES) $(BUILDINDEX) |
Fred Drake | b41f97d | 1999-03-04 21:25:05 +0000 | [diff] [blame] | 80 | $(TOOLSDIR)/mkhowto --address $(PYTHONDOCS) --html \ |
| 81 | $(TOPDIR)/mac/mac.tex |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 82 | |
Fred Drake | 5d56d36 | 1999-01-05 15:49:39 +0000 | [diff] [blame] | 83 | ref/ref.html: $(PAPERDIR)/ref.aux $(BUILDINDEX) |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 84 | $(MKHTML) ref $(L2HARGS) |
| 85 | |
| 86 | tut/tut.html: $(PAPERDIR)/tut.aux |
Fred Drake | 664c72f | 1999-04-29 17:04:21 +0000 | [diff] [blame^] | 87 | $(MKHTML) tut $(L2HARGS) -split 4 |
Fred Drake | f832f4c | 1998-08-11 19:36:35 +0000 | [diff] [blame] | 88 | |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 89 | |
Fred Drake | 2e23c31 | 1998-10-07 22:03:45 +0000 | [diff] [blame] | 90 | include ../Makefile.deps |
| 91 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 92 | $(PAPERDIR)/api.aux: $(APIFILES) |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 93 | (cd $(PAPERDIR); $(MKAUX) api) |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 94 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 95 | $(PAPERDIR)/ext.aux: $(EXTFILES) |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 96 | (cd $(PAPERDIR); $(MKAUX) ext) |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 97 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 98 | $(PAPERDIR)/lib.aux: $(LIBFILES) |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 99 | (cd $(PAPERDIR); $(MKAUX) lib) |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 100 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 101 | $(PAPERDIR)/ref.aux: $(REFFILES) |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 102 | (cd $(PAPERDIR); $(MKAUX) ref) |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 103 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 104 | $(PAPERDIR)/tut.aux: $(TUTFILES) |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 105 | (cd $(PAPERDIR); $(MKAUX) tut) |
Fred Drake | 60515f4 | 1998-05-07 14:50:22 +0000 | [diff] [blame] | 106 | |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 107 | |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 108 | webcheck: all |
| 109 | $(WEBCHECKER) $(HTMLBASE)/api/ |
Fred Drake | 1468d77 | 1999-03-18 19:07:04 +0000 | [diff] [blame] | 110 | $(WEBCHECKER) $(HTMLBASE)/doc/ |
Fred Drake | 4d33e4e | 1999-02-15 19:29:08 +0000 | [diff] [blame] | 111 | $(WEBCHECKER) $(HTMLBASE)/ext/ |
| 112 | $(WEBCHECKER) -m290000 $(HTMLBASE)/lib/ |
| 113 | $(WEBCHECKER) $(HTMLBASE)/mac/ |
| 114 | $(WEBCHECKER) $(HTMLBASE)/ref/ |
| 115 | $(WEBCHECKER) $(HTMLBASE)/tut/ |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 116 | |
| 117 | clean: |
Fred Drake | 6f9dd5d | 1999-02-15 21:43:55 +0000 | [diff] [blame] | 118 | rm -rf @webchecker.pickle |
Fred Drake | 07b12f2 | 1998-08-12 17:06:03 +0000 | [diff] [blame] | 119 | |
| 120 | clobber: clean |
Fred Drake | 664c72f | 1999-04-29 17:04:21 +0000 | [diff] [blame^] | 121 | rm -rf index.html api/ doc/ ext/ lib/ mac/ ref/ tut/ |
| 122 | |
| 123 | |
| 124 | # This is really ugly, but we're not dependent on $(RELEASE), which isn't |
| 125 | # defined here. It also maintains the proper dependency on boilerplate.tex. |
| 126 | |
| 127 | # It's at the end of the file since it wedges font-lock in XEmacs. |
| 128 | |
| 129 | BOILERPLATE=$(TOPDIR)/texinputs/boilerplate.tex |
| 130 | index.html: index.html.in $(BOILERPLATE) |
| 131 | REL=`grep '\\release{' $(BOILERPLATE) | sed 's/.*\\release{\(.*\)}.*$$/\1/'` ; \ |
| 132 | sed "s/@RELEASE@/$$REL/g" $< >TEMP |
| 133 | DATE=`grep '\\date{' $(BOILERPLATE) | sed 's/.*\\date{\(.*\)}.*$$/\1/'` ; \ |
| 134 | sed "s/@DATE@/$$DATE/g" TEMP >$@ |
| 135 | rm -f TEMP |
| 136 | |