Index: build.xml
===================================================================
RCS file: /home/cvspublic/jakarta-alexandria/build.xml,v
retrieving revision 1.17
diff -b -B -U3 -r1.17 build.xml
--- build.xml	2001/07/07 23:28:44	1.17
+++ build.xml	2001/08/02 13:36:34
@@ -15,14 +15,14 @@
     </path>
 
     <!-- classpath for generating docs with Anakia -->
-    <path id="site-classpath">
+    <path id="site.classpath">
         <fileset dir="../jakarta-site2/lib">
             <include name="**/*.jar"/>
         </fileset>
     </path>
 
     <!-- classpath for compiling Alexandria -->
-    <path id="build-classpath">
+    <path id="build.classpath">
         <fileset dir="lib" includes="*.jar"/>
     </path>
 
@@ -44,7 +44,7 @@
         </uptodate>
         <available classname="org.apache.velocity.anakia.AnakiaTask" 
           property="AnakiaTask.present">
-            <classpath refid="site-classpath"/>
+            <classpath refid="site.classpath"/>
         </available>
     </target>
 
@@ -174,7 +174,7 @@
     <target name="docs">
       <property name="docs.src" value="./xdocs"/>
       <taskdef name="anakia" classname="org.apache.velocity.anakia.AnakiaTask">
-        <classpath refid="site-classpath"/>
+        <classpath refid="site.classpath"/>
       </taskdef>
       <anakia basedir="${docs.src}" destdir="${doc.dir}"
         extension=".html" style="./site.vsl"
Index: src/xsl/build.build.xsl
===================================================================
RCS file: /home/cvspublic/jakarta-alexandria/src/xsl/build.build.xsl,v
retrieving revision 1.18
diff -b -B -U3 -r1.18 build.build.xsl
--- src/xsl/build.build.xsl	2001/03/31 09:35:42	1.18
+++ src/xsl/build.build.xsl	2001/08/02 13:36:36
@@ -29,8 +29,23 @@
 
   </xsl:template>
 
+  
   <xsl:template match="project">
     <xsl:if test="build">
+	
+	<!-- We need to create a logfile name from the CVS module name -->
+      <xsl:variable name="flattened.module.tmp">
+        <xsl:call-template name="replaceCharsInString">
+          <xsl:with-param name="stringIn" select="module"/>
+          <xsl:with-param name="charsIn" select="'/'"/>
+          <xsl:with-param name="charsOut" select="'-'"/>
+        </xsl:call-template>
+      </xsl:variable>
+
+      <!-- Create a string object from the variable -->
+      <xsl:variable name="flattened.module" select="string($flattened.module.tmp)" />
+      <!--<xsl:variable name="flattened.module" select="module" />-->
+
       <target name="{module}.{@tag}">
         <echo file="logs/alexandria.log" append="yes">
           Building <xsl:value-of select="module"/><xsl:value-of select="@tag"/>
@@ -49,14 +64,14 @@
           <arg value="org.apache.tools.ant.XmlLogger" />
           <arg value="-listener" />
           <arg value="org.apache.alexandria.blame.BlameListener" />
-          <arg value="-DXmlLogger.file=logs/{module}.{@tag}.build.log.xml" />
-          <jvmarg value="-Dalexandria.module={module}" />
+          <arg value="-DXmlLogger.file=logs/{$flattened.module}.{@tag}.build.log.xml" />
+          <jvmarg value="-Dalexandria.module={$flattened.module}" />
           <jvmarg value="-Dalexandria.tag={@tag}" />
           <jvmarg value="-Dalexandria.content.dir=${{content.dir}}/cvs/{module}/{@tag}/{module}/{javasrc}/" />
           <jvmarg value="-Dant.home=${{ant.home}}" />
           <jvmarg value="-Djava.compiler=NONE" />
           <arg value="-logfile" />
-          <arg value="logs/{module}.{@tag}.build.log" />
+          <arg value="logs/{$flattened.module}.{@tag}.build.log" />
 	  <xsl:for-each select="build/arg">
             <xsl:element name="arg">
               <xsl:attribute name="value">-D<xsl:value-of select="@name"/>=<xsl:value-of select="@value"/></xsl:attribute>
@@ -77,26 +92,47 @@
         </java>
   
         <xstyle
-          in="logs/{module}.{@tag}.build.log.xml"
+          in="logs/{$flattened.module}.{@tag}.build.log.xml"
           style="{/workspace/build-sheet/@style}"
           out="${{content.dir}}/cvs/{module}/{@tag}/{module}/build.html" />
 
        <xstyle
-         in="var/{module}.{@tag}.blame.xml"
+         in="var/{$flattened.module}.{@tag}.blame.xml"
          style="xsl/blame.kull.xsl"
-         out="var/{module}.{@tag}.blame.trim.xml">
+         out="var/{$flattened.module}.{@tag}.blame.trim.xml">
         <param name="limit" expression="'{/workspace/blame-sheet/@size}'"/>
        </xstyle>
 
        <move
-         file="var/{module}.{@tag}.blame.trim.xml"
-         tofile="var/{module}.{@tag}.blame.xml"/>
+         file="var/{$flattened.module}.{@tag}.blame.trim.xml"
+         tofile="var/{$flattened.module}.{@tag}.blame.xml"/>
 
        <xstyle
-         in="var/{module}.{@tag}.blame.xml"
+         in="var/{$flattened.module}.{@tag}.blame.xml"
          style="{/workspace/blame-sheet/@style}"
          out="${{content.dir}}/html/{module}.{@tag}.blame.html" />
       </target>
     </xsl:if>
   </xsl:template>
+
+  <!-- Here is the template that does the char replacement -->
+  <xsl:template name="replaceCharsInString">
+    <xsl:param name="stringIn"/>
+    <xsl:param name="charsIn"/>
+    <xsl:param name="charsOut"/>
+    <xsl:choose>
+      <xsl:when test="contains($stringIn,$charsIn)">
+        <xsl:value-of select="concat(substring-before($stringIn,$charsIn),$charsOut)"/>
+        <xsl:call-template name="replaceCharsInString">
+          <xsl:with-param name="stringIn" select="substring-after($stringIn,$charsIn)"/>
+          <xsl:with-param name="charsIn" select="$charsIn"/>
+          <xsl:with-param name="charsOut" select="$charsOut"/>
+        </xsl:call-template>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:value-of select="$stringIn"/>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:template>
+
 </xsl:stylesheet>
