X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2FMakefile;h=cfae6cc7467329fed8196fe6ea113baa55b3c652;hb=6857c87b747c4d9816788432672280160d1df773;hp=20a9aa6c6deca4dff7d69980addc3254e0124f1e;hpb=92b7399d3a71e78e821f3baf42507d22ff25c31b;p=uffi.git diff --git a/doc/Makefile b/doc/Makefile index 20a9aa6..cfae6cc 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -8,19 +8,46 @@ # # CVS Id: $Id$ # -# This file, part of UFFI, is Copyright (c) 2002-2003 by Kevin M. Rosenberg -# -# UFFI users are granted the rights to distribute and use this software -# as governed by the terms of the Lisp Lesser GNU Public License -# (http://opensource.franz.com/preamble.html), also known as the LLGPL. +# This file, part of UFFI, is Copyright (c) 2002-2005 by Kevin M. Rosenberg ############################################################################## +DOCFILE_BASE_DEFAULT:=uffi +DOCFILE_EXT_DEFAULT:=xml -DOCFILE_BASE_DEFAULT=uffi -DOCFILE_EXT_DEFAULT=xml # Standard docfile processing +DEBIAN=$(shell expr "`cat /etc/issue 2> /dev/null`" : '.*Debian.*') +SUSE=$(shell expr "`cat /etc/issue 2> /dev/null`" : '.*SuSE.*') +SUSE91=$(shell expr "`cat /etc/issue 2> /dev/null`" : '.*SuSE Linux 9.1.*') +REDHAT=$(shell expr "`cat /etc/issue 2> /dev/null`" : '.*Red Hat.*') +MANDRAKE=$(shell expr "`cat /etc/issue 2> /dev/null`" : '.*Mandrake.*') +DARWIN=$(shell expr "`uname -a`" : '.*Darwin.*') + +ifneq (${DEBIAN},0) +OS:=debian +else + ifneq (${SUSE91},0) + OS=suse91 + else + ifneq (${SUSE},0) + OS=suse + else + ifneq (${REDHAT},0) + OS=redhat + else + ifneq (${MANDRAKE},0) + OS=mandrake + else + ifneq (${DARWIN},0) + OS=darwin + endif + endif + endif + endif + endif +endif + ifndef DOCFILE_BASE DOCFILE_BASE=${DOCFILE_BASE_DEFAULT} endif @@ -29,14 +56,22 @@ ifndef DOCFILE_EXT DOCFILE_EXT=${DOCFILE_EXT_DEFAULT} endif -DOCFILE=${DOCFILE_BASE}.${DOCFILE_EXT} -FOFILE=${DOCFILE_BASE}.fo -PDFFILE=${DOCFILE_BASE}.pdf -PSFILE=${DOCFILE_BASE}.ps -DVIFILE=${DOCFILE_BASE}.dvi -TXTFILE=${DOCFILE_BASE}.txt -TMPFILES=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log -DOCFILES=$(shell echo *.sgml) +DOCFILE:=${DOCFILE_BASE}.${DOCFILE_EXT} +FOFILE:=${DOCFILE_BASE}.fo +PDFFILE:=${DOCFILE_BASE}.pdf +PSFILE:=${DOCFILE_BASE}.ps +DVIFILE:=${DOCFILE_BASE}.dvi +TXTFILE:=${DOCFILE_BASE}.txt +HTMLFILE:=${DOCFILE_BASE}.html +TMPFILES:=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log +DOCFILES:=$(shell echo *.xml *.xsl) + +ifeq ($(XSLTPROC),) + XSLTPROC:=xsltproc +endif + +CATALOG:=`pwd`/catalog-${OS}.xml +CHECK:=XML_CATALOG_FILES="$(CATALOG)" xmllint --noout --xinclude --postvalid $(DOCFILE) || exit 1 .PHONY: all all: html pdf @@ -49,26 +84,30 @@ doc: html pdf .PHONY: check check: + @echo "Operating System Detected: ${OS}" @$(CHECK) .PHONY: html html: html.tar.gz -html.tar.gz: $(DOCFILES) Makefile +html.tar.gz: $(DOCFILES) Makefile @rm -rf html - @xmlto -o html xhtml $(DOCFILE) + @mkdir html + @XML_CATALOG_FILES="$(CATALOG)" $(XSLTPROC) --stringparam chunker.output.encoding ISO-8859-1 \ + --xinclude --output html/ html_chunk.xsl $(DOCFILE) @GZIP='-9' tar czf html.tar.gz html .PHONY: fo fo: ${FOFILE} -${FOFILE}: $(DOCFILES) Makefile - @xmlto fo $(DOCFILE) +${FOFILE}: $(DOCFILES) Makefile + @XML_CATALOG_FILES="$(CATALOG)" xsltproc --xinclude --output $(FOFILE) fo.xsl $(DOCFILE) .PHONY: pdf pdf: ${PDFFILE} -${PDFFILE}: ${FOFILE} +${PDFFILE}: ${DOCFILES} Makefile + @$(MAKE) fo @fop $(FOFILE) -pdf $(PDFFILE) > /dev/null .PHONY: dvi @@ -77,7 +116,8 @@ dvi: ${DVIFILE} .PHONY: ps ps: ${PSFILE} -${PSFILE}: ${FOFILE} +${PSFILE}: ${DOCFILES} Makefile + @$(MAKE) fo @fop $(FOFILE) -ps $(PSFILE) > /dev/null @@ -85,12 +125,13 @@ ${PSFILE}: ${FOFILE} txt: ${TXTFILE} ${TXTFILE}: ${FOFILE} - @fop $(FOFILE) -txt $(TXTFILE) > /dev/null + @XML_CATALOG_FILES="$(CATALOG)" xsltproc --xinclude --output ${HTMLFILE} html.xsl $(DOCFILE) + lynx -dump ${HTMLFILE} > ${TXTFILE} .PHONY: clean clean: @rm -f *~ *.bak *.orig \#*\# .\#* texput.log - @rm -rf html ${PSFILE} + @rm -rf html ${PSFILE} ${HTMLFILE} @rm -f ${TMPFILES} ${FOFILE} @rm -f ${DVIFILE} ${TXTFILE}