X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2FMakefile;h=cfae6cc7467329fed8196fe6ea113baa55b3c652;hb=6857c87b747c4d9816788432672280160d1df773;hp=ee159bf1056f2b9bfa04f8e402c385252af3897a;hpb=192193db6e4fbda90a840474d4aa2e8762597927;p=uffi.git diff --git a/doc/Makefile b/doc/Makefile index ee159bf..cfae6cc 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,3 +1,4 @@ +############################################################################## # FILE IDENTIFICATION # # Name: Makefile @@ -5,46 +6,48 @@ # Programer: Kevin M. Rosenberg # Date Started: Mar 2002 # -# CVS Id: $Id: Makefile,v 1.1 2002/03/09 19:55:33 kevin Exp $ +# CVS Id: $Id$ # -# Copyright (c) 2002 by Kevin M. Rosenberg -# -# This file is part of UFFI. -# -# UFFI is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License (version 2) as -# published by the Free Software Foundation. -# -# UFFI is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with UFFI; if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - +# This file, part of UFFI, is Copyright (c) 2002-2005 by Kevin M. Rosenberg +############################################################################## -# Set to DSSSL -# For RedHat 6.x -#DSSSL_HTML=/usr/lib/sgml/stylesheets/nwalsh-modular/html/docbook.dsl -#DSSL_PRINT=/usr/lib/sgml/stylesheets/nwalsh-modular/print/docbook.dsl +DOCFILE_BASE_DEFAULT:=uffi +DOCFILE_EXT_DEFAULT:=xml -# For RedHat 7.1 -#DSSSL_HTML=/usr/share/sgml/docbook/dsssl-stylesheets-1.59/html/docbook.dsl -#DSSSL_PRINT=/usr/share/sgml/docbook/dsssl-stylesheets-1.59/print/docbook.dsl - -# For RedHat 7.2 -DSSSL_HTML=/usr/share/sgml/docbook/dsssl-stylesheets-1.64/html/docbook.dsl -DSSSL_PRINT=/usr/share/sgml/docbook/dsssl-stylesheets-1.64/print/docbook.dsl - -# Nothing to configure beyond this point - -DOCFILE_BASE_DEFAULT=uffi -DOCFILE_EXT_DEFAULT=sgml # 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 @@ -53,59 +56,84 @@ ifndef DOCFILE_EXT DOCFILE_EXT=${DOCFILE_EXT_DEFAULT} endif -DOCFILE=${DOCFILE_BASE}.${DOCFILE_EXT} -TEXFILE=${DOCFILE_BASE}.tex -PDFFILE=${DOCFILE_BASE}.pdf -PSFILE=${DOCFILE_BASE}.ps -DVIFILE=${DOCFILE_BASE}.dvi -TMPFILES=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log +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 -dist-doc: html pdf - @rm -f ${DVIFILE} ${PSFILE} ${TEXFILE} - @rm *~ +.PHONY: all +all: html pdf -all: html pdf ps dvi +.PHONY: dist +dist: html pdf +.PHONY: doc +doc: html pdf + +.PHONY: check check: - nsgmls -s -C catalog || exit 1 + @echo "Operating System Detected: ${OS}" + @$(CHECK) -html: check ${DOCFILE} - ( rm -rf html ; mkdir html; cd html ; jade -t sgml -c ../catalog -d ${DSSSL_HTML} ../${DOCFILE}; mv book1.htm manual.htm; cd ..) +.PHONY: html +html: html.tar.gz -tex: ${TEXFILE} +html.tar.gz: $(DOCFILES) Makefile + @rm -rf html + @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 -${TEXFILE}: check ${DOCFILE} - jade -t tex -c catalog -d ${DSSSL_PRINT} ${DOCFILE} +.PHONY: fo +fo: ${FOFILE} +${FOFILE}: $(DOCFILES) Makefile + @XML_CATALOG_FILES="$(CATALOG)" xsltproc --xinclude --output $(FOFILE) fo.xsl $(DOCFILE) + +.PHONY: pdf pdf: ${PDFFILE} -${PDFFILE}: ${TEXFILE} - pdfjadetex '\pdfcompresslevel=9' '\input ${TEXFILE}' - pdfjadetex '\pdfcompresslevel=9' '\input ${TEXFILE}' - pdfjadetex '\pdfcompresslevel=9' '\input ${TEXFILE}' - pdfjadetex '\pdfcompresslevel=9' '\input ${TEXFILE}' - @rm -f ${TMPFILES} +${PDFFILE}: ${DOCFILES} Makefile + @$(MAKE) fo + @fop $(FOFILE) -pdf $(PDFFILE) > /dev/null +.PHONY: dvi dvi: ${DVIFILE} -${DVIFILE}: ${TEXFILE} - jadetex ${TEXFILE} - jadetex ${TEXFILE} - jadetex ${TEXFILE} - jadetex ${TEXFILE} - @rm -f ${TMPFILES} - +.PHONY: ps ps: ${PSFILE} -${PSFILE}: ${DVIFILE} - dvips -o ${PSFILE} ${DVIFILE} +${PSFILE}: ${DOCFILES} Makefile + @$(MAKE) fo + @fop $(FOFILE) -ps $(PSFILE) > /dev/null -clean: - @rm -rf html - @rm -f ${PSFILE} ${PDFFILE} ${DVIFILE} ${TEXFILE} - @rm -f ${TMPFILE} -realclean: clean - @rm -f *~ +.PHONY: txt +txt: ${TXTFILE} + +${TXTFILE}: ${FOFILE} + @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} ${HTMLFILE} + @rm -f ${TMPFILES} ${FOFILE} + @rm -f ${DVIFILE} ${TXTFILE} +.PHONY: distclean +distclean: clean