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]>

Reply via email to