# $Source$ # $Author: xmldoc $ # $Date: 2007-03-23 14:57:22 -0700 (Fri, 23 Mar 2007) $ # $Revision: 6759 $ # vim: number # # ------------------------------------------------------------------ # ** Makefile.paramDoc - create param.xsl files w/ embedded doc ** # ------------------------------------------------------------------ PARAMFILES = $(wildcard ../../*/param.xsl) PARAMFILESDOCD = $(foreach base,$(basename $(PARAMFILES)),$(base).docd.xsl) XSLT=xsltproc XSLTFLAGS= COPYDOC := <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" \ xmlns:doc="http://docbook.org/ns/docbook" \ version="1.0"> \ <xsl:template match="*[local-name() = 'param']"> \ <xsl:call-template name="copy-xsl-source"/> \ </xsl:template> \ <xsl:template match="*[local-name() = 'attribute-set']"> \ <xsl:call-template name="copy-xsl-source"/> \ </xsl:template> \ <xsl:template name="copy-xsl-source"> \ <xsl:variable \ name="source" \ select="concat('../../params/',@name,'.xml')"/> \ <xsl:apply-templates select="document($$source)/*[local-name() = 'refentry']"/> \ <xsl:copy> \ <xsl:apply-templates select="@* | node()"/> \ </xsl:copy> \ </xsl:template> \ <xsl:template match="node() | @*"> \ <xsl:copy> \ <xsl:apply-templates select="@* | node()"/> \ </xsl:copy> \ </xsl:template> \ <xsl:template match="*[local-name() = 'refentry']"> \ <xsl:text>&\#x0a;</xsl:text> \ <doc:refentry id="{@*[local-name() = 'id']}"> \ <xsl:apply-templates/> \ </doc:refentry> \ <xsl:text>&\#x0a;</xsl:text> \ </xsl:template> \ <xsl:template match="*[local-name() = 'refsynopsisdiv']"/> \ </xsl:stylesheet> all: $(PARAMFILESDOCD) %.docd.xsl: %.xsl @echo '$(COPYDOC)' | $(XSLT) $(XSLTFLAGS) - $< > $@ debug: @echo $(PARAMFILESDOCD) clean: $(RM) $(PARAMFILESDOCD)