.PHONY: all clean
.PRECIOUS: %.xml %.txml %.texi %.mxml

SX = sgml2xml

DSSSL_BASE = /usr/lib/dsssl/stylesheets/docbook
DSSSL_HTML = $(DSSSL_BASE)/html/docbook.dsl
XMLDECL = /usr/lib/sgml/declaration/xml.decl

TEXI_XML = ../texi_xml
DOCBOOK2TEXIXML = ../docbook2texixml
DOCBOOK2TEXIXSLT_DIR = ../xslt/texi

MAN_XML = ../man_xml
DOCBOOK2MANXML = ../docbook2manxml
DOCBOOK2MAN = ../docbook2man


SAXON_JAR = /usr/local/share/java/repository/saxon.jar
SAXON = java -classpath $(SAXON_JAR):$(DOCBOOK2TEXIXSLT_DIR) com.icl.saxon.StyleSheet

# The following settings allow jade to work with non-ASCII XML,
# but tidy does not yet using <meta> charset settings, so
# avoid non-ASCII encodings for now.
#SP_CHARSET_FIXED = 1
#SP_ENCODING = XML
#export SP_CHARSET_FIXED
#export SP_ENCODING

all: svxdocs.info at1.info ggpg.info docbook2X2.info

svxdocs.sgml:
	wget http://www.survex.com/docs/svxdocs.sgml


# Generic rules

# Need some sed magic here to output DOCTYPE or else entities don't get
# parsed
%.xml: %.sgml
	$(SX) -x lower $? > $@

# HTML rules (using Jade)
# (or maybe using the DocBook XSL stylesheets...)
#
%.html:	%.xml
	jade -d $(DSSSL_HTML) -V nochunks -t sgml $(XMLDECL) $? >$@
	-tidy -m -f /dev/null $@

# Texinfo rules (using docbook2texixml)
#
%.txml:	%.xml
	$(DOCBOOK2TEXIXML) $*.xml > $@

%.texi:	%.txml
	$(TEXI_XML) $*.txml
	recode -df utf8..texi < $@ > tmp
	mv tmp $@
# recode requires ucs2texi patch

%.info: %.texi
	makeinfo $?

# Man page rules (using docbook2man)
# (broken, sheesh)
#
%.man:	%.xml
	$(DOCBOOK2MAN) $*.xml > $@

clean:
	rm -f *.txml *.texi *.info* *.[1-8]* *.html *.mxml *.refs

