0.8.9.33:
[sbcl.git] / doc / manual / Makefile
index f3f5c5a..cf0b565 100644 (file)
@@ -7,7 +7,13 @@ PSFILE=sbcl.ps
 PDFFILE=sbcl.pdf
 DVIFILE=sbcl.dvi
 INFOFILE=sbcl.info
-HTMLDIR=sbcl
+HTMLDIR=$(basename $(ROOTFILE))
+# Place where generated documentation ends up. The value of
+# DOCSTRINGDIR has to end with a slash or you lose (it's passed to
+# Lisp's `pathname' function).
+DOCSTRINGDIR="docstrings/"
+# List of package names that documentation will be created for.
+PACKAGES=":COMMON-LISP :SB-ALIEN :SB-DEBUG :SB-EXT :SB-GRAY :SB-MOP :SB-PROFILE :SB-THREAD"
 
 
 ifeq ($(MAKEINFO),)
@@ -30,47 +36,58 @@ dist: html pdf
 
 
 
-
+# html documentation; output in $(HTMLDIR)
 .PHONY: html
 html: html-stamp
 
-html-stamp: $(DOCFILES)
+html-stamp: $(DOCFILES) docstrings
        @rm -rf $(HTMLDIR)
-       $(MAKEINFO) --html $(ROOTFILE)
+       $(MAKEINFO) -I $(DOCSTRINGDIR) --html $(ROOTFILE)
        touch html-stamp
 
-
+# Postscript documentation
 .PHONY: ps
 ps: $(PSFILE)
 
 $(PSFILE): $(DVIFILE)
        dvips -o $@ $<
 
-$(DVIFILE): $(DOCFILES)
-       texi2dvi $(ROOTFILE)
-
+$(DVIFILE): $(DOCFILES) docstrings
+       texi2dvi -I $(DOCSTRINGDIR) $(ROOTFILE)
 
+# PDF documentation
 .PHONY: pdf
 pdf: $(PDFFILE)
 
-$(PDFFILE): $(DOCFILES)
-       texi2pdf $(ROOTFILE)
-
+$(PDFFILE): $(DOCFILES) docstrings
+       texi2pdf -I $(DOCSTRINGDIR) $(ROOTFILE)
 
+# info docfiles
 .PHONY: info
 info: $(INFOFILE)
 
-$(INFOFILE): $(DOCFILES)
-       $(MAKEINFO) $(ROOTFILE)
+$(INFOFILE): $(DOCFILES) docstrings
+       $(MAKEINFO) -I $(DOCSTRINGDIR) $(ROOTFILE)
+
+# contrib-modules.texinfo includes contrib-doc-list.texi-temp
+contrib-modules.texinfo: tempfiles-stamp
+
+# Texinfo docstring snippets
+.PHONY: docstrings
+docstrings: tempfiles-stamp
 
+tempfiles-stamp:
+       DOCSTRINGDIR=$(DOCSTRINGDIR) sh make-tempfiles.sh
+       touch tempfiles-stamp
 
 
 .PHONY: clean
 clean: 
-       rm -f *~ *.bak *.orig \#*\# .\#* texput.log
-       rm -rf $(HTMLDIR)
-       rm -f $(PSFILE) $(PDFFILE) $(DVIFILE) html-stamp
-       rm -f $(TMPFILES)
+       rm -f *~ *.bak *.orig \#*\# .\#* texput.log *.fasl
+       rm -rf $(HTMLDIR) $(DOCSTRINGDIR)
+       rm -f contrib-docs.texi-temp
+       rm -f $(PSFILE) $(PDFFILE) $(DVIFILE) html-stamp tempfiles-stamp
+       rm -f $(TMPFILES) contrib-doc-list.texi-temp
        rm -f sbcl.info sbcl.info-*
 
 .PHONY: distclean