cmlenz 2002/11/28 04:11:54
Modified: framework build.xml
Log:
- Use 'location' attribute for path properties
- Add an uptodate-check for javadoc generation
- Cleaned up dependancies between the targets
Revision Changes Path
1.29 +71 -42 jakarta-cactus/framework/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-cactus/framework/build.xml,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- build.xml 24 Nov 2002 17:50:08 -0000 1.28
+++ build.xml 28 Nov 2002 12:11:54 -0000 1.29
@@ -63,7 +63,7 @@
Base directory for all file related operations
========================================================================
-->
- <property name="base.dir" value="framework"/>
+ <property name="base.dir" location="framework"/>
<!--
========================================================================
@@ -74,16 +74,16 @@
-->
<target name="properties.source">
- <property name="src.dir" value="${base.dir}/src"/>
- <property name="src.java.dir" value="${src.dir}/java"/>
- <property name="src.java.share.dir" value="${src.java.dir}/share"/>
+ <property name="src.dir" location="${base.dir}/src"/>
+ <property name="src.java.dir" location="${src.dir}/java"/>
+ <property name="src.java.share.dir" location="${src.java.dir}/share"/>
<property name="src.java.specific.dir"
- value="${src.java.dir}/j2ee${j2ee.api}"/>
- <property name="src.test.dir" value="${src.dir}/test"/>
- <property name="src.test.share.dir" value="${src.test.dir}/share"/>
- <property name="build.dir" value="${base.dir}/."/>
- <property name="conf.dir" value="${base.dir}/conf"/>
- <property name="web.dir" value="${base.dir}/web"/>
+ location="${src.java.dir}/j2ee${j2ee.api}"/>
+ <property name="src.test.dir" location="${src.dir}/test"/>
+ <property name="src.test.share.dir" location="${src.test.dir}/share"/>
+ <property name="build.dir" location="${base.dir}/."/>
+ <property name="conf.dir" location="${base.dir}/conf"/>
+ <property name="web.dir" location="${base.dir}/web"/>
</target>
@@ -96,22 +96,22 @@
-->
<target name="properties.target">
- <property name="target.dir" value="${base.dir}/target-${j2ee.api}"/>
- <property name="target.classes.dir" value="${target.dir}/classes"/>
+ <property name="target.dir" location="${base.dir}/target-${j2ee.api}"/>
+ <property name="target.classes.dir" location="${target.dir}/classes"/>
<property name="target.classes.java.dir"
- value="${target.classes.dir}/java"/>
+ location="${target.classes.dir}/java"/>
<property name="target.classes.clover.dir"
- value="${target.classes.dir}/clover"/>
+ location="${target.classes.dir}/clover"/>
<property name="target.classes.test.dir"
- value="${target.classes.dir}/test"/>
- <property name="target.doc.dir" value="${target.dir}/doc"/>
- <property name="target.doc.api.dir" value="${target.doc.dir}/api"/>
+ location="${target.classes.dir}/test"/>
+ <property name="target.doc.dir" location="${target.dir}/doc"/>
+ <property name="target.doc.api.dir" location="${target.doc.dir}/api"/>
</target>
<!-- The location of the Cactus custom Ant tasks jar -->
<property name="cactus.ant.jar"
- value="anttasks/dist/lib/cactus-ant.jar"/>
+ location="anttasks/dist/lib/cactus-ant.jar"/>
<!--
========================================================================
@@ -122,11 +122,11 @@
-->
<target name="properties.distribution">
- <property name="dist.dir" value="${base.dir}/dist-${j2ee.api}"/>
- <property name="dist.lib.dir" value="${dist.dir}/lib"/>
- <property name="dist.doc.dir" value="${dist.dir}/doc"/>
- <property name="dist.doc.api.dir" value="${dist.doc.dir}/api"/>
- <property name="dist.web.dir" value="${dist.dir}/web"/>
+ <property name="dist.dir" location="${base.dir}/dist-${j2ee.api}"/>
+ <property name="dist.lib.dir" location="${dist.dir}/lib"/>
+ <property name="dist.doc.dir" location="${dist.dir}/doc"/>
+ <property name="dist.doc.api.dir" location="${dist.doc.dir}/api"/>
+ <property name="dist.web.dir" location="${dist.dir}/web"/>
</target>
@@ -239,11 +239,13 @@
Initialize Clover related properties (for test coverage reports).
========================================================================
-->
- <target name="init.clover" if="clover.enable">
+ <target name="init.clover"
+ depends="check.j2ee.version"
+ if="clover.enable">
<!-- Clover write data at compile time *and* at runtime in this file -->
<property name="clover.initstring"
- value="${basedir}/target-${j2ee.api}/clover-coverage.db"/>
+ location="${basedir}/target-${j2ee.api}/clover-coverage.db"/>
<echo message="clover.initstring = ${clover.initstring}"/>
<dirname property="clover.db.dir" file="${clover.initstring}"/>
@@ -326,7 +328,8 @@
</target>
- <target name="compile.test" depends="init">
+ <target name="compile.test"
+ depends="compile.main">
<mkdir dir="${target.classes.test.dir}"/>
@@ -386,7 +389,9 @@
Create the runtime jar file
========================================================================
-->
- <target name="jar.clover" if="clover.enable">
+ <target name="jar.clover"
+ depends="compile.clover"
+ if="clover.enable">
<jar jarfile="${target.dir}/${framework.clover.jar.name}.jar">
@@ -415,7 +420,8 @@
</target>
- <target name="jar.main">
+ <target name="jar.main"
+ depends="compile.main">
<jar jarfile="${target.dir}/${framework.jar.name}.jar">
@@ -444,7 +450,7 @@
</target>
- <target name="jar" depends="compile,jar.main,jar.clover"
+ <target name="jar" depends="jar.main,jar.clover"
description="Generate the library jar"/>
<!--
@@ -452,7 +458,23 @@
Generate the documentation (javadoc)
========================================================================
-->
- <target name="doc" depends="init" description="Generates the documentation">
+ <target name="doc.check"
+ depends="init">
+
+ <uptodate property="doc.uptodate"
+ targetfile="${target.doc.api.dir}/index.html">
+ <srcfiles dir="${src.java.share.dir}"
+ includes="**/*.java, **/*.html"/>
+ <srcfiles dir="${src.java.specific.dir}"
+ includes="**/*.java, **/*.html"/>
+ </uptodate>
+
+ </target>
+
+ <target name="doc"
+ depends="doc.check"
+ unless="doc.uptodate"
+ description="Generates the API documentation">
<mkdir dir="${target.doc.api.dir}"/>
@@ -486,7 +508,9 @@
Run the full suite of unit tests.
========================================================================
-->
- <target name="test.clover.prepare" if="clover.enable">
+ <target name="test.clover.prepare"
+ depends="compile.test, compile.clover"
+ if="clover.enable">
<path id="test.class.path">
<pathelement path="${target.classes.clover.dir}"/>
@@ -496,7 +520,9 @@
</target>
- <target name="test.main.prepare" unless="clover.enable">
+ <target name="test.main.prepare"
+ depends="compile.test"
+ unless="clover.enable">
<path id="test.class.path">
<pathelement path="${target.classes.java.dir}"/>
@@ -506,7 +532,7 @@
</target>
- <target name="test" depends="jar,test.clover.prepare,test.main.prepare"
+ <target name="test" depends="test.clover.prepare,test.main.prepare"
description="Run the unit tests">
<junit printsummary="yes" haltonfailure="yes" fork="yes">
@@ -528,14 +554,18 @@
Generate the distributable files
========================================================================
-->
- <target name="dist.clover" if="clover.enable">
+ <target name="dist.clover"
+ depends="jar.clover"
+ if="clover.enable">
<copy todir="${dist.lib.dir}"
file="${target.dir}/${framework.clover.jar.name}.jar"/>
</target>
- <target name="dist.main">
+ <target name="dist"
+ depends="checkstyle, test, doc, jar.main, dist.clover"
+ description="Generate the distributable files">
<mkdir dir="${dist.lib.dir}"/>
<mkdir dir="${dist.doc.api.dir}"/>
@@ -552,9 +582,6 @@
</target>
- <target name="dist" depends="jar,test,doc,checkstyle,dist.main,dist.clover"
- description="Generate the distributable files"/>
-
<!--
========================================================================
Clean generated files (including distributables).
@@ -592,10 +619,12 @@
<mkdir dir="${target.dir}"/>
- <echo message="Errors are reported in ${target.dir}/checkstyle_errors.xml"/>
+ <property name="checkstyle.results.file"
+ location="${target.dir}/checkstyle_errors.xml"/>
+ <echo message="Errors are reported in ${checkstyle.results.file}"/>
<checkstyle config="./checkstyle.xml"
- failOnViolation="true">
+ failOnViolation="true">
<fileset dir="${src.java.dir}">
<include name="**/*.java"/>
@@ -606,7 +635,7 @@
</fileset>
<formatter type="plain"/>
- <formatter type="xml" toFile="${target.dir}/checkstyle_errors.xml"/>
+ <formatter type="xml" toFile="${checkstyle.results.file}"/>
<property key="checkstyle.header.file" file="./LICENSE.cactus"/>
@@ -659,7 +688,7 @@
<java classname="com.cortexeb.tools.clover.reporters.jfc.Viewer"
fork="yes">
- <arg line="${clover.initstring}"/>
+ <arg path="${clover.initstring}"/>
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>