X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=doc%2Fmanual%2FMakefile;h=c9b03dd61a75dd24f7b28e83e741a0e53fa0c663;hb=e29e584efdc110f14698801ad1004f9a34a3b448;hp=48c5ec5f7fad72f9fe5df44cc0562988e8a08de6;hpb=df01da3bc94cf28a52fe949a4f157a970b597ec9;p=sbcl.git diff --git a/doc/manual/Makefile b/doc/manual/Makefile index 48c5ec5..c9b03dd 100644 --- a/doc/manual/Makefile +++ b/doc/manual/Makefile @@ -7,10 +7,17 @@ PSFILE=sbcl.ps PDFFILE=sbcl.pdf DVIFILE=sbcl.dvi INFOFILE=sbcl.info +VARSFILE=variables.template HTMLDIR=$(basename $(ROOTFILE)) -# The value of DOCSTRINGDIR has to end with a slash or you lose (it's -# passed to Lisp's `pathname' function). +# 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 contrib modules that docstring docs will be created for. +# FIXME: should check test-passed and not load them. +MODULES=':sb-md5 :sb-rotate-byte :sb-grovel :sb-sprof' +# List of package names that docstring docs will be created for. +PACKAGES=":COMMON-LISP :SB-ALIEN :SB-DEBUG :SB-EXT :SB-GRAY :SB-MOP :SB-PROFILE :SB-THREAD :SB-MD5 :SB-ROTATE-BYTE :SB-SPROF" ifeq ($(MAKEINFO),) @@ -32,12 +39,14 @@ all: ps pdf info html dist: html pdf +variables: ${VARSFILE} + ./extract-values.sh < ${VARSFILE} >variables.texinfo # html documentation; output in $(HTMLDIR) .PHONY: html html: html-stamp -html-stamp: $(DOCFILES) docstrings +html-stamp: variables $(DOCFILES) docstrings @rm -rf $(HTMLDIR) $(MAKEINFO) -I $(DOCSTRINGDIR) --html $(ROOTFILE) touch html-stamp @@ -49,39 +58,42 @@ ps: $(PSFILE) $(PSFILE): $(DVIFILE) dvips -o $@ $< -$(DVIFILE): $(DOCFILES) docstrings +$(DVIFILE): variables $(DOCFILES) docstrings texi2dvi -I $(DOCSTRINGDIR) $(ROOTFILE) # PDF documentation .PHONY: pdf pdf: $(PDFFILE) -$(PDFFILE): $(DOCFILES) docstrings +$(PDFFILE): variables $(DOCFILES) docstrings texi2pdf -I $(DOCSTRINGDIR) $(ROOTFILE) # info docfiles .PHONY: info info: $(INFOFILE) -$(INFOFILE): $(DOCFILES) docstrings +$(INFOFILE): variables $(DOCFILES) docstrings $(MAKEINFO) -I $(DOCSTRINGDIR) $(ROOTFILE) -# Texinfo docstring snippets; output hardcoded in docstrings/ for now. -.PHONY: docstrings -docstrings: docstrings-stamp +# contrib-modules.texinfo includes contrib-doc-list.texi-temp +contrib-modules.texinfo: tempfiles-stamp -docstrings-stamp: - DOCSTRINGDIR=$(DOCSTRINGDIR) sh docstrings.sh - touch docstrings-stamp +# Texinfo docstring snippets +.PHONY: docstrings +docstrings: tempfiles-stamp +tempfiles-stamp: + DOCSTRINGDIR=$(DOCSTRINGDIR) PACKAGES=$(PACKAGES) MODULES=$(MODULES) sh make-tempfiles.sh && touch tempfiles-stamp .PHONY: clean clean: - rm -f *~ *.bak *.orig \#*\# .\#* texput.log + rm -f *~ *.bak *.orig \#*\# .\#* texput.log *.fasl rm -rf $(HTMLDIR) $(DOCSTRINGDIR) - rm -f $(PSFILE) $(PDFFILE) $(DVIFILE) html-stamp docstrings-stamp - rm -f $(TMPFILES) + rm -f contrib-docs.texi-temp + rm -f package-locks.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