1 # Makefile for SBCL document generation
3 DOCFILE_BASE_DEFAULT:=user-manual
4 DOCFILE_EXT_DEFAULT:=xml
6 # Standard docfile processing as copied from UFFI
7 # Placed into public domain by author Kevin Rosenberg
11 ifeq ($(SYSTEM),Linux)
12 ifneq ($(shell expr "`cat /etc/issue`" : '.*Debian.*'),0)
15 ifneq ($(shell expr "`cat /etc/issue`" : '.*SuSE.*'),0)
18 ifneq ($(shell expr "`cat /etc/issue`" : 'Red Hat Linux release 9'),0)
21 ifneq ($(shell expr "`cat /etc/issue`" : '.*Yarrow.*'),0)
29 ifeq ($(SYSTEM),Darwin)
34 DOCFILE_BASE=${DOCFILE_BASE_DEFAULT}
38 DOCFILE_EXT=${DOCFILE_EXT_DEFAULT}
41 DOCFILE:=${DOCFILE_BASE}.${DOCFILE_EXT}
42 FOFILE:=${DOCFILE_BASE}.fo
43 PDFFILE:=${DOCFILE_BASE}.pdf
44 PSFILE:=${DOCFILE_BASE}.ps
45 DVIFILE:=${DOCFILE_BASE}.dvi
46 TXTFILE:=${DOCFILE_BASE}.txt
47 HTMLFILE:=${DOCFILE_BASE}.html
48 TMPFILES:=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log
49 DOCFILES:=$(shell echo *.xml *.xsl)
55 CATALOG:=`pwd`/catalogs/catalog-${OS}.xml
56 CHECK:=XML_CATALOG_FILES="$(CATALOG)" xmllint --noout --xinclude --postvalid $(DOCFILE) || exit 1
69 @echo "Operating system detected: ${OS}"
75 html-stamp: $(DOCFILES) Makefile
78 @XML_CATALOG_FILES="$(CATALOG)" $(XSLTPROC) --stringparam chunker.output.encoding ISO-8859-1 \
79 --xinclude --output html/ html_chunk.xsl $(DOCFILE)
85 ${FOFILE}: $(DOCFILES) Makefile
86 @XML_CATALOG_FILES="$(CATALOG)" $(XSLTPROC) --xinclude --output $(FOFILE) fo.xsl $(DOCFILE)
91 ${PDFFILE}: ${DOCFILES} Makefile
93 @fop $(FOFILE) -pdf $(PDFFILE) > /dev/null
101 ${PSFILE}: ${DOCFILES} Makefile
103 @fop $(FOFILE) -ps $(PSFILE) > /dev/null
109 ${TXTFILE}: ${FOFILE}
110 @XML_CATALOG_FILES="$(CATALOG)" $(XSLTPROC) --xinclude --output ${HTMLFILE} html.xsl $(DOCFILE)
111 lynx -dump ${HTMLFILE} > ${TXTFILE}
115 @rm -f *~ *.bak *.orig \#*\# .\#* texput.log
116 @rm -rf html $(PSFILE) $(HTMLFILE) $(PDFFILE) html-stamp
117 @rm -f $(TMPFILES) $(FOFILE)
118 @rm -f $(DVIFILE) $(TXTFILE)