Author: jelmer
Date: 2005-03-16 15:33:49 +0000 (Wed, 16 Mar 2005)
New Revision: 425

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba-docs&rev=425

Log:
Add xslt script that can generate dependency makefiles

Added:
   trunk/xslt/generate-dependencies.xsl


Changeset:
Copied: trunk/xslt/generate-dependencies.xsl (from rev 415, 
trunk/xslt/find-image-dependencies.xsl)
===================================================================
--- trunk/xslt/find-image-dependencies.xsl      2005-03-13 19:20:25 UTC (rev 
415)
+++ trunk/xslt/generate-dependencies.xsl        2005-03-16 15:33:49 UTC (rev 
425)
@@ -0,0 +1,52 @@
+<?xml version='1.0'?>
+<!--
+       Find the image dependencies of a certain XML file
+       Generates (part of) a Makefile
+
+       - $(FNAME)-images-latex-{png,dvi} for role=latex
+       - $(FNAME)-images-role for all other roles
+       - $(TXTDIR)/$(FNAME)-text 
+
+       (C) Jelmer Vernooij     2004-2005
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.1">
+       <xsl:output method="text"/>
+
+       <xsl:template match="/">
+               <xsl:for-each select="//mediaobject/[EMAIL PROTECTED] and 
not(@role=following::imageobject/@role)]">
+                       <xsl:call-template name="generate-images">
+                               <xsl:with-param name="role"><xsl:value-of 
select="@role"/></xsl:with-param>
+                       </xsl:call-template>
+               </xsl:for-each>
+               <xsl:call-template name="generate-images">
+                       <xsl:with-param name="role"/>
+               </xsl:call-template>
+               <xsl:call-template name="generate-txt-chunks"/>
+       </xsl:template>
+
+       <xsl:template name="generate-images">
+               <xsl:value-of 
select="$target"/><xsl:text>-images-</xsl:text><xsl:value-of 
select="$role"/><xsl:text> = </xsl:text>
+               <xsl:for-each select="//mediaobject/[EMAIL PROTECTED]">
+                       <xsl:value-of select="imagedata/@fileref"/>
+                       <xsl:text> </xsl:text>
+               </xsl:for-each>
+               <xsl:text>&#10;</xsl:text>
+       </xsl:template>
+
+       <xsl:template name="generate-txt-chunks">
+               <xsl:value-of select="$target"/><xsl:text>-txt-chunks: 
</xsl:text>
+               <xsl:for-each select="(//chapter|//preface|//appendix)[EMAIL 
PROTECTED]|book">
+                       <xsl:value-of select="$txtbasedir"/>
+                       <xsl:choose>
+                               <xsl:when test="name() = 'book'">
+                                       <xsl:text>index</xsl:text>
+                               </xsl:when>
+                               <xsl:when test="@id != ''">
+                                       <xsl:value-of select="@id"/>
+                               </xsl:when>
+                       </xsl:choose>
+                       <xsl:text>.txt </xsl:text>
+               </xsl:for-each>
+               <xsl:text>&#10;</xsl:text>
+       </xsl:template>
+</xsl:stylesheet>

Reply via email to