I'm very impressed with the new build system. It makes Cocoon look almost
like a sane product now.
The errors that have been reported w/ oracle.jdbc, org.xml.database and some
others have to do with minor typos in tools/src/blocks-build.xsl. I have
appended a patch that remedies these typos.
The error with IOException: webapp/samples/sitemap.xmap are because the
enitre samples directory is not copied to ${build.webapp}/samples. The
second patch fixes that, but someone might take a look at it see if it acts
as intended.
Index: tools/src/blocks-build.xsl
===================================================================
RCS file: /home/cvspublic/xml-cocoon2/tools/src/blocks-build.xsl,v
retrieving revision 1.19
diff -u -r1.19 blocks-build.xsl
--- tools/src/blocks-build.xsl 20 Feb 2003 20:04:58 -0000 1.19
+++ tools/src/blocks-build.xsl 21 Feb 2003 14:08:11 -0000
@@ -4,7 +4,7 @@
<xsl:output method="xml" version="1.0" indent="yes" />
<xsl:template match="/">
- <project basedir="." name="blocks">
+ <project basedir="." name="blocks" default="compile">
<description>Autogenerated Ant build file that builds
blocks.</description>
<path id="classpath">
@@ -66,10 +66,10 @@
</xsl:if>
<!-- Test if this block has special build -->
- <available property="{$block-name}.has.build"
file="{string('${block}')}/{$block-name}/build.xml"/>
+ <available property="{$block-name}.has.build"
file="{string('${blocks}')}/{$block-name}/build.xml"/>
<!-- Test if this block has mocks -->
- <available property="{$block-name}.has.mocks" type="dir"
file="{string('${block}')}/{$block-name}/mocks/"/>
+ <available property="{$block-name}.has.mocks" type="dir"
file="{string('${blocks}')}/{$block-name}/mocks/"/>
<xsl:if test="@status='unstable'">
<echo
message="-----------------------------------------------"/>
@@ -95,7 +95,7 @@
</xsl:if>
<!-- Test if this block has samples -->
- <available property="{$block-name}.has.samples"
file="{string('${block}')}/{$block-name}/samples/sitemap.xmap"/>
+ <available property="{$block-name}.has.samples"
file="{string('${blocks}')}/{$block-name}/samples/sitemap.xmap"/>
<antcall target="{$block-name}-samples"/>
</target>
@@ -180,7 +180,7 @@
</target>
<target name="{$block-name}-mocks" if="{$block-name}.has.mocks">
- <path id="{$block-name}.classpath">
+ <path id="{$block-name}.mock.classpath">
<path refid="classpath"/>
<fileset dir="{string('${build}')}">
<include name="*.jar"/>
@@ -198,7 +198,7 @@
target="{string('${target.vm}')}"
nowarn="{string('${compiler.nowarn}')}"
compiler="{string('${compiler}')}">
- <classpath refid="{$block-name}.classpath" />
+ <classpath refid="{$block-name}.mock.classpath" />
</javac>
</target>
@@ -211,17 +211,17 @@
</target>
<target name="{$block-name}-patches" depends="{$block-name}-prepare">
- <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xmap" configuration="${build.webapp}/sitemap.xmap"/>
- <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xpipe" configuration="${build.webapp}/sitemap.xmap"/>
- <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xconf" configuration="${build.webapp}/WEB-INF/cocoon.xconf"/>
+ <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xmap" configuration="{string('${build.webapp}')}/sitemap.xmap"/>
+ <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xpipe" configuration="{string('${build.webapp}')}/sitemap.xmap"/>
+ <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xconf"
configuration="{string('${build.webapp}')}/WEB-INF/cocoon.xconf"/>
</target>
<target name="{$block-name}-samples" if="{$block-name}.has.samples">
<copy filtering="on"
todir="{string('${build.webapp}')}/samples/{$block-name}">
<fileset dir="{string('${blocks}')}/{$block-name}/samples"/>
</copy>
- <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xsamples" configuration="${build.webapp}/samples/samples.xml"/>
- <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="samplesxpipe"
configuration="${build.webapp}/samples/sitemap.xmap"/>
+ <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="xsamples"
configuration="{string('${build.webapp}')}/samples/samples.xml"/>
+ <xpatch directory="{string('${build.blocks}')}/{$block-name}/conf"
extension="samplesxpipe"
configuration="{string('${build.webapp}')}/samples/sitemap.xmap"/>
</target>
</xsl:template>
</xsl:stylesheet>
Index: build.xml
===================================================================
RCS file: /home/cvspublic/xml-cocoon2/build.xml,v
retrieving revision 1.321
diff -u -r1.321 build.xml
--- build.xml 21 Feb 2003 11:41:50 -0000 1.321
+++ build.xml 21 Feb 2003 14:09:40 -0000
@@ -665,6 +665,9 @@
<target name="prepare-webapp-samples" depends="package-samples"
unless="exclude.webapp.samples">
<copy file="${build}/${name}-samples.jar"
tofile="${build.webapp.lib}/${name}-${version}-samples.jar"/>
+ <copy todir="${build.webapp}/samples" filtering="on">
+ <fileset dir="${webapp}/samples" />
+ </copy>
<xpatch directory="${build.src}" extension="samplesxpipe"
configuration="${build.webapp}/samples/sitemap.xmap"/>