User: user57  
  Date: 01/09/10 22:29:13

  Modified:    .        build.xml
  Log:
   o updating build system, see mail to jboss-dev for more details
  
  Revision  Changes    Path
  1.24      +471 -349  jboss/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/build.xml,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- build.xml 2001/09/04 05:08:09     1.23
  +++ build.xml 2001/09/11 05:29:13     1.24
  @@ -10,7 +10,7 @@
   <!--                                                                        -->
   <!-- ====================================================================== -->
   
  -<!-- $Id: build.xml,v 1.23 2001/09/04 05:08:09 user57 Exp $ -->
  +<!-- $Id: build.xml,v 1.24 2001/09/11 05:29:13 user57 Exp $ -->
   
   <project default="main" name="JBoss/Server">
   
  @@ -19,298 +19,340 @@
     <!-- ================================================================== -->
   
     <!-- Load Buildmagic extention tasks. -->
  -  <taskdef name="taskdef" classname="planet57.tools.buildmagic.task.Taskdef"/>
     <taskdef resource="planet57/tools/buildmagic/task/autoload.properties"/>
  +  <taskdef name="property" classname="planet57.tools.buildmagic.task.Property"/>
   
  -  <!-- Setup the basic project roots. -->
  -  <path id="project.root"><pathelement location=".."/></path>
  -  <property name="project.root" refid="project.root"/>
  -  <property name="control.root" value="${project.root}/build"/>
  +  <!-- Initialize the build system. -->
  +  <target name="init" depends="_init-prepare" unless="init.disable">
  +    <!-- Perform any setup required if we are a child of another build -->
  +    <call target="_init-child"/>
  +
  +    <!-- Setup the basic project roots. -->
  +    <path id="project.root"><pathelement location=".."/></path>
  +    <property name="project.root" refid="project.root"/> 
  +    <property name="project.build" value="${project.root}/build"/>
     
  -  <!-- Include user and project property overrides. -->
  -  <property file="${user.home}/.buildmagic.properties"/>
  -  <property file="${user.home}/.ant.properties"/>
  -  <property file="${control.root}/local.properties"/>
  -
  -  <!-- Setup the basic environment for a project build module. -->
  -  <property name="project.output" value="${control.root}/output"/>
  -  <property name="project.release" value="${project.output}"/>
  -  <property name="tools.root" value="${project.root}/tools"/>
  -  <property name="thirdparty.root" value="${project.root}/thirdparty"/>
  -
  -  <!-- Setup the basic environment for a source module. -->
  -  <property name="module.root" value="${basedir}"/>
  -  <property name="module.source" value="${module.root}/src"/>
  -  <property name="module.output" value="${module.root}/output"/>
  -  <property name="module.build" value="${module.output}"/>
  -  <property name="module.release" value="${module.output}"/>
  -  <property file="${module.root}/local.properties"/>
  +    <!-- Include user and project property overrides. -->
  +    <property file="${user.home}/.buildmagic.properties"/>
  +    <property file="${user.home}/.ant.properties"/>
  +
  +    <!-- Setup the project environment. -->
  +    <property file="${project.build}/local.properties"/>
  +    <property name="project.tools" value="${project.root}/tools"/>
  +    <property name="project.thirdparty" value="${project.root}/thirdparty"/>
  +
  +    <!-- Setup the module environment. -->
  +    <property name="module.root" value="${basedir}"/>
  +    <call target="_init-local-properties"/>
  +    <property file="${module.root}/local.properties"/>
  +    <property name="module.source" value="${module.root}/src"/>
  +    <property name="module.output" value="${module.root}/output"/>
  +    <property name="module.tools" value="${module.root}/tools"/>
  +    <property name="module.thirdparty" value="${module.root}/thirdparty"/>
   
  -  <!-- Initialize the build system. -->
  -  <target name="init" unless="initialized-already" depends="init-buildlog">
  +    <!-- Setup the build.log -->
  +    <call target="_init-buildlog"/>
  +
  +    <!-- Load common properties -->
  +    <property resource="planet57/tools/buildmagic/common.properties"/>
  +
  +    <!-- Setup the build timestamp & build identifer properties -->
       <tstamp>
         <format property="build.number" pattern="yyyyMMddHHmm"/>
       </tstamp>
  -    <property name="build.id" value="DEV"/>
  +    <property name="build.id" value="${build.number}"/>
   
  -    <property resource="planet57/tools/buildmagic/common.properties"/>
  -    <property resource="planet57/tools/buildmagic/task.properties"/>
  +    <!-- Invoke the configure task -->
  +    <call target="_configure"/>
   
  -    <moduleinfo/>
  +    <!-- Late bind properties & install filters -->
       <resolver force="${buildmagic.resolveproperties.force}"/>
       <propertyfilter all="${buildmagic.propertyfilter.all}"/>
  -    <property name="initialized-already" value="true"/>
  +
  +    <!-- Show some information -->
  +    <call target="_init-show-environment"/>
  +
  +    <!-- Finish up -->
  +    <property name="init.disable" value="true"/>
     </target>
   
  -  <target name="init-buildlog" unless="buildlog-disabled">
  -    <record name="${basedir}/build.log" append="no" loglevel="info"/>
  +  <!-- Perform any preperation before init. -->
  +  <target name="_init-prepare">
  +    <available file="${module.root}/etc/local.properties-example"
  +            property="init.have-local-properties"/>
     </target>
   
  +  <!-- Perform any setup required if we are a child of another build -->
  +  <target name="_init-child" if="init.have-parent">
  +    <!-- Disable the build.log, our parent will catch it -->
  +    <property name="init-buildlog.disable" value="true"/>
  +  </target>
   
  -  <!-- ================================================================== -->
  -  <!-- Module Configuration                                               -->
  -  <!-- ================================================================== -->
  +  <!-- Install the local.properties example if it is there -->
  +  <target name="_init-local-properties" if="init.have-local-properties">
  +    <!-- Setup the local.properties file as needed -->
  +    <copy file="${module.root}/etc/local.properties-example"
  +          tofile="${module.root}/local.properties" filtering="yes"/>
  +    <property file="${module.root}/local.properties"/>
  +  </target>
   
  -  <!-- Module name(s) & version -->
  -  <property name="module.name" value="server"/>
  -  <property name="module.Name" value="JBoss Server"/>
  -  <property name="module.version" value="unspecified"/>
  -
  -
  -  <!-- ================================================================== -->
  -  <!-- Tool Configuration                                                 -->
  -  <!-- ================================================================== -->
  -
  -  <!-- No non-standard tools are required for this module. -->
  -
  -
  -  <!-- ================================================================== -->
  -  <!-- Library Configuration                                              -->
  -  <!-- ================================================================== -->
  -
  -  <!-- Java Naming and Directory Interface (JNDI) -->
  -  <property name="sun.jndi.root" value="${thirdparty.root}/sun/jndi"/>
  -  <property name="sun.jndi.lib" value="${sun.jndi.root}/lib"/>
  -  <path id="sun.jndi.classpath">
  -    <pathelement path="${sun.jndi.lib}/jndi.jar"/>
  -  </path>
  -
  -  <!-- Java Management Extensions (JMX) -->
  -  <property name="sun.jmx.root" value="${thirdparty.root}/sun/jmx"/>
  -  <property name="sun.jmx.lib" value="${sun.jmx.root}/lib"/>
  -  <path id="sun.jmx.classpath">
  -    <pathelement path="${sun.jmx.lib}/jmxri.jar"/>
  -  </path>
  -
  -  <!-- Java API for XML Processing (JAXP) -->
  -  <property name="sun.jaxp.root" value="${thirdparty.root}/sun/jaxp"/>
  -  <property name="sun.jaxp.lib" value="${sun.jaxp.root}/lib"/>
  -  <path id="sun.jaxp.classpath">
  -    <fileset dir="${sun.jaxp.lib}">
  -      <include name="*.jar"/>
  -    </fileset>
  -  </path>
  -
  -  <!-- Java Authentication and Authorization Service (JAAS) -->
  -  <property name="sun.jaas.root" value="${thirdparty.root}/sun/jaas"/>
  -  <property name="sun.jaas.lib" value="${sun.jaas.root}/lib"/>
  -  <path id="sun.jaas.classpath">
  -    <pathelement path="${sun.jaas.lib}/jaas.jar"/>
  -  </path>
  -
  -  <!-- JavaBeans Activation Framework (JAF) -->
  -  <property name="sun.jaf.root" value="${thirdparty.root}/sun/jaf"/>
  -  <property name="sun.jaf.lib" value="${sun.jaf.root}/lib"/>
  -  <path id="sun.jaf.classpath">
  -    <pathelement path="${sun.jaf.lib}/activation.jar"/>
  -  </path>
  -
  -  <!-- JavaMail -->
  -  <property name="sun.javamail.root" value="${thirdparty.root}/sun/javamail"/>
  -  <property name="sun.javamail.lib" value="${sun.javamail.root}/lib"/>
  -  <path id="sun.javamail.classpath">
  -    <pathelement path="${sun.javamail.lib}/mail.jar"/>
  -  </path>
  -
  -  <!-- Java Transaction Service (JTS) -->
  -  <property name="sun.jts.root" value="${thirdparty.root}/sun/jts"/>
  -  <property name="sun.jts.lib" value="${sun.jts.root}/lib"/>
  -  <path id="sun.jts.classpath">
  -    <pathelement path="${sun.jts.lib}/jts.jar"/>
  -  </path>
  -
  -  <!-- Log4j -->
  -  <property name="apache.log4j.root" value="${thirdparty.root}/apache/log4j"/>
  -  <property name="apache.log4j.lib" value="${apache.log4j.root}/lib"/>
  -  <path id="apache.log4j.classpath">
  -    <pathelement path="${apache.log4j.lib}/log4j.jar"/>
  -  </path>
  -
  -  <!-- EDU.oswego.cs.dl.util.concurrent -->
  -  <property name="oswego.concurrent.root" 
value="${thirdparty.root}/oswego/concurrent"/>
  -  <property name="oswego.concurrent.lib" value="${oswego.concurrent.root}/lib"/>
  -  <path id="oswego.concurrent.classpath">
  -    <pathelement path="${oswego.concurrent.lib}/concurrent.jar"/>
  -  </path>
  -
  -  <!-- JPL-Util -->
  -  <property name="gjt.jpl-util.root" value="${thirdparty.root}/gjt/jpl-util"/>
  -  <property name="gjt.jpl-util.lib" value="${gjt.jpl-util.root}/lib"/>
  -  <path id="gjt.jpl-util.classpath">
  -    <fileset dir="${gjt.jpl-util.lib}">
  -      <include name="*.jar"/>
  -    </fileset>
  -  </path>
  -
  -  <!-- JUnit -->
  -  <property name="junit.junit.root" value="${thirdparty.root}/junit/junit"/>
  -  <property name="junit.junit.lib" value="${junit.junit.root}/lib"/>
  -  <path id="junit.junit.classpath">
  -    <pathelement path="${junit.junit.lib}/junit.jar"/>
  -  </path>
  -
  -  <!-- JavaGroups -->
  -  <property name="javagroups.javagroups.root" 
value="${thirdparty.root}/javagroups/javagroups"/>
  -  <property name="javagroups.javagroups.lib" 
value="${javagroups.javagroups.root}/lib"/>
  -  <path id="javagroups.javagroups.classpath">
  -    <pathelement path="${javagroups.javagroups.lib}/JavaGroups.jar"/>
  -  </path>
  -
  -  <!-- JSR 77 -->
  -  <property name="sun.jsr77.root" value="${thirdparty.root}/sun/jsr77"/>
  -  <property name="sun.jsr77.lib" value="${sun.jsr77.root}/lib"/>
  -  <path id="sun.jsr77.classpath">
  -    <pathelement path="${sun.jsr77.lib}/jsr77.jar"/>
  -  </path>
  -
  -  <!-- The combined library classpath -->
  -  <path id="library.classpath">
  -    <path refid="sun.jndi.classpath"/>
  -    <path refid="sun.jmx.classpath"/>
  -    <path refid="sun.jaxp.classpath"/>
  -    <path refid="sun.jaas.classpath"/>
  -    <path refid="sun.jaf.classpath"/>
  -    <path refid="sun.javamail.classpath"/>
  -    <path refid="sun.jts.classpath"/>
  -    <path refid="apache.log4j.classpath"/>
  -    <path refid="gjt.jpl-util.classpath"/>
  -    <path refid="oswego.concurrent.classpath"/>
  -    <path refid="junit.junit.classpath"/>
  -    <path refid="sun.jsr77.classpath"/>
  -  </path>
  -
  -
  -  <!-- ================================================================== -->
  -  <!-- Dependent Module Configuration                                     -->
  -  <!-- ================================================================== -->
  - 
  -  <!-- J2EE -->
  -  <property name="jboss.j2ee.root" value="${project.root}/j2ee/output"/>
  -  <property name="jboss.j2ee.lib" value="${jboss.j2ee.root}/lib"/>
  -  <path id="jboss.j2ee.classpath">
  -    <pathelement path="${jboss.j2ee.lib}/jboss-j2ee.jar"/>
  -  </path>
  -
  -  <!-- Naming -->
  -  <property name="jboss.naming.root" value="${project.root}/naming/output"/>
  -  <property name="jboss.naming.lib" value="${jboss.naming.root}/lib"/>
  -  <path id="jboss.naming.classpath">
  -    <pathelement path="${jboss.naming.lib}/jnpserver.jar"/>
  -  </path>
  -
  -  <!-- The combined dependant module classpath -->
  -  <path id="dependentmodule.classpath">
  -    <path refid="jboss.j2ee.classpath"/>
  -    <path refid="jboss.naming.classpath"/>
  -  </path>
  -
  -
  -  <!-- ================================================================== -->
  -  <!-- Task Configuration                                                 -->
  -  <!-- ================================================================== -->
  -
  -  <!-- The combined thirdparty classpath -->
  -  <path id="thirdparty.classpath">
  -    <path refid="library.classpath"/>
  -    <path refid="dependentmodule.classpath"/>
  -  </path>
  -
  -  <!-- This module is based on Java 1.2 -->
  -  <property name="javac.target" value="1.2"/>
  -
  -  <!-- classpath and local.classpath must have a value using with a path -->
  -  <property name="classpath" value=""/>
  -  <property name="local.classpath" value=""/>
  -
  -  <!-- The classpath required to build classes. -->
  -  <path id="javac.classpath">
  -    <pathelement path="${classpath}"/>
  -    <pathelement path="${local.classpath}"/>
  -    <path refid="thirdparty.classpath"/>
  -  </path>
  -
  -  <!-- Packages to include when generating api documentation -->
  -  <property name="javadoc.packages" value="org.jboss.*"/>
  -
  -  <!-- The classpath required to build javadocs. -->
  -  <path id="javadoc.classpath">
  -    <path refid="javac.classpath"/>
  -  </path>
  -
  -  <!-- Override JUnit defaults -->
  -  <property name="junit.timeout" value="240000"/> <!-- 4 minutes -->
  -  <property name="junit.batchtest.todir" value="${build.reports}"/>
  -  <property name="junit.jvm.options" value="-Ddummy"/>
  -
  -  <!-- RMIC should generate stubs compatible with Java 1.2+ -->
  -  <property name="rmic.stubVersion" value="1.2"/>
  -
  -  <!-- Where source files live -->
  -  <property name="source.java" value="${module.source}/main"/>
  -  <property name="source.etc" value="${module.source}/etc"/>
  -  <property name="source.bin" value="${module.source}/bin"/>
  -  <property name="source.docs" value="${module.source}/docs"/>
  -  <property name="source.resources" value="${module.source}/resources"/>
  -
  -  <!-- Where build generated files will go -->
  -  <property name="build.classes" value="${module.build}/classes"/>
  -  <property name="build.jars" value="${module.build}/lib"/>
  -  <property name="build.api" value="${module.build}/api"/>
  -  <property name="build.etc" value="${module.build}/etc"/>
  -  <property name="build.bin" value="${module.build}/bin"/>
  -  <property name="build.docs" value="${module.build}/docs"/>
  -  <property name="build.resources" value="${module.build}/resources"/>
  -  <property name="build.reports" value="${module.build}/reports"/>
  -
  -  <!-- Where release generated files will go -->
  -  <property name="release.id" value="${module.name}-${module.version}-${build.id}"/>
  -  <property name="release.root" value="${module.release}/${release.id}"/>
  -  <property name="release.archive.basename" 
value="${module.release}/${release.id}"/>
  +  <!-- Initialize the build.log -->
  +  <target name="_init-buildlog" unless="init-buildlog.disable">
  +    <record name="${basedir}/build.log" append="no" loglevel="info"/>
  +    <property name="init-buildlog.disable" value="true"/>
  +  </target>
  +
  +  <!-- Show the running environment if -Dinit.verbose=true -->
  +  <target name="_init-show-environment" if="init.verbose">
  +    <echo><![CDATA[
  +project.root:    ${project.root}
  +module.root:     ${module.root}
  +user.home:       ${user.home}
  +build.compiler:  ${build.compiler}
  +java.home:       ${java.home}
  +java.class.path: ${java.class.path}
  +java.version:    ${java.version}
  +java.vendor:     ${java.vendor}
  +java.vm.version: ${java.vm.version}
  +java.vm.name:    ${java.vm.name}
  +java.vm.info:    ${java.vm.info}
  +os.name:         ${os.name}
  +os.arch:         ${os.arch}
  +os.version:      ${os.version}
  +]]></echo>
  +  </target>
   
   
     <!-- ================================================================== -->
  -  <!-- Pretty                                                             -->
  +  <!-- Configuration                                                      -->
     <!-- ================================================================== -->
   
  -  <!-- 
  -     |  Pretty print everything.
  -     |
  -     |  This uses the jedit JavaStyle plugin via the ejbdoclet pretty ant task.
  +  <!--
  +     | Configure the build system.
        |
  -     |  cvs="true" only pretties files you have already modified.
  -     |  cvs="false" pretties all files.
  -    -->
  -
  -  <property name="pretty.cvs" value="true"/>
  -  <property name="pretty.includes" value="**/*.java"/>
  +     | Configuration elements should be placed in the appropriate 
  +     | _configure-* targets.
  +   -->
  +
  +  <target name="_configure" unless="configure.disable">
  +    <!-- Module name(s) & version -->
  +    <property name="module.name" value="server"/>
  +    <property name="module.Name" value="JBoss Server"/>
  +    <property name="module.version" value="unspecified"/>
  +
  +    <!-- Invoke the rest of the configuration targets -->
  +    <call target="_configure-tools"/>
  +    <call target="_configure-libraries"/>
  +    <call target="_configure-modules"/>
  +    <call target="_configure-tasks"/>
  +  </target>
  +
  +  <!-- Configure the thirdparty tools required to build this module. -->
  +  <target name="_configure-tools" unless="configure-tools.disable">
  +    <!-- No non-standard tools are required for this module. -->
  +  </target>
  +
  +  <!-- Configure the thirdparty libraries required by this module. -->
  +  <target name="_configure-libraries" unless="configure-libraries.disable">
  +
  +    <!-- Java Naming and Directory Interface (JNDI) -->
  +    <property name="sun.jndi.root" value="${project.thirdparty}/sun/jndi"/>
  +    <property name="sun.jndi.lib" value="${sun.jndi.root}/lib"/>
  +    <path id="sun.jndi.classpath">
  +      <pathelement path="${sun.jndi.lib}/jndi.jar"/>
  +    </path>
  +
  +    <!-- Java Management Extensions (JMX) -->
  +    <property name="sun.jmx.root" value="${project.thirdparty}/sun/jmx"/>
  +    <property name="sun.jmx.lib" value="${sun.jmx.root}/lib"/>
  +    <path id="sun.jmx.classpath">
  +      <pathelement path="${sun.jmx.lib}/jmxri.jar"/>
  +    </path>
  +
  +    <!-- Java API for XML Processing (JAXP) -->
  +    <property name="sun.jaxp.root" value="${project.thirdparty}/sun/jaxp"/>
  +    <property name="sun.jaxp.lib" value="${sun.jaxp.root}/lib"/>
  +    <path id="sun.jaxp.classpath">
  +      <fileset dir="${sun.jaxp.lib}">
  +        <include name="*.jar"/>
  +      </fileset>
  +    </path>
  +
  +    <!-- Java Authentication and Authorization Service (JAAS) -->
  +    <property name="sun.jaas.root" value="${project.thirdparty}/sun/jaas"/>
  +    <property name="sun.jaas.lib" value="${sun.jaas.root}/lib"/>
  +    <path id="sun.jaas.classpath">
  +      <pathelement path="${sun.jaas.lib}/jaas.jar"/>
  +    </path>
  +
  +    <!-- JavaBeans Activation Framework (JAF) -->
  +    <property name="sun.jaf.root" value="${project.thirdparty}/sun/jaf"/>
  +    <property name="sun.jaf.lib" value="${sun.jaf.root}/lib"/>
  +    <path id="sun.jaf.classpath">
  +      <pathelement path="${sun.jaf.lib}/activation.jar"/>
  +    </path>
  +
  +    <!-- JavaMail -->
  +    <property name="sun.javamail.root" value="${project.thirdparty}/sun/javamail"/>
  +    <property name="sun.javamail.lib" value="${sun.javamail.root}/lib"/>
  +    <path id="sun.javamail.classpath">
  +      <pathelement path="${sun.javamail.lib}/mail.jar"/>
  +    </path>
  +
  +    <!-- Java Transaction Service (JTS) -->
  +    <property name="sun.jts.root" value="${project.thirdparty}/sun/jts"/>
  +    <property name="sun.jts.lib" value="${sun.jts.root}/lib"/>
  +    <path id="sun.jts.classpath">
  +      <pathelement path="${sun.jts.lib}/jts.jar"/>
  +    </path>
  +
  +    <!-- Log4j -->
  +    <property name="apache.log4j.root" value="${project.thirdparty}/apache/log4j"/>
  +    <property name="apache.log4j.lib" value="${apache.log4j.root}/lib"/>
  +    <path id="apache.log4j.classpath">
  +      <pathelement path="${apache.log4j.lib}/log4j.jar"/>
  +    </path>
  +
  +    <!-- EDU.oswego.cs.dl.util.concurrent -->
  +    <property name="oswego.concurrent.root" 
value="${project.thirdparty}/oswego/concurrent"/>
  +    <property name="oswego.concurrent.lib" value="${oswego.concurrent.root}/lib"/>
  +    <path id="oswego.concurrent.classpath">
  +      <pathelement path="${oswego.concurrent.lib}/concurrent.jar"/>
  +    </path>
  +
  +    <!-- JPL-Util -->
  +    <property name="gjt.jpl-util.root" value="${project.thirdparty}/gjt/jpl-util"/>
  +    <property name="gjt.jpl-util.lib" value="${gjt.jpl-util.root}/lib"/>
  +    <path id="gjt.jpl-util.classpath">
  +      <fileset dir="${gjt.jpl-util.lib}">
  +        <include name="*.jar"/>
  +      </fileset>
  +    </path>
  +
  +    <!-- JUnit -->
  +    <property name="junit.junit.root" value="${project.thirdparty}/junit/junit"/>
  +    <property name="junit.junit.lib" value="${junit.junit.root}/lib"/>
  +    <path id="junit.junit.classpath">
  +      <pathelement path="${junit.junit.lib}/junit.jar"/>
  +    </path>
  +
  +    <!-- JavaGroups -->
  +    <property name="javagroups.javagroups.root" 
value="${project.thirdparty}/javagroups/javagroups"/>
  +    <property name="javagroups.javagroups.lib" 
value="${javagroups.javagroups.root}/lib"/>
  +    <path id="javagroups.javagroups.classpath">
  +      <pathelement path="${javagroups.javagroups.lib}/JavaGroups.jar"/>
  +    </path>
  +
  +    <!-- JSR 77 -->
  +    <property name="sun.jsr77.root" value="${project.thirdparty}/sun/jsr77"/>
  +    <property name="sun.jsr77.lib" value="${sun.jsr77.root}/lib"/>
  +    <path id="sun.jsr77.classpath">
  +      <pathelement path="${sun.jsr77.lib}/jsr77.jar"/>
  +    </path>
  +
  +    <!-- The combined library classpath -->
  +    <path id="library.classpath">
  +      <path refid="sun.jndi.classpath"/>
  +      <path refid="sun.jmx.classpath"/>
  +      <path refid="sun.jaxp.classpath"/>
  +      <path refid="sun.jaas.classpath"/>
  +      <path refid="sun.jaf.classpath"/>
  +      <path refid="sun.javamail.classpath"/>
  +      <path refid="sun.jts.classpath"/>
  +      <path refid="apache.log4j.classpath"/>
  +      <path refid="gjt.jpl-util.classpath"/>
  +      <path refid="oswego.concurrent.classpath"/>
  +      <path refid="junit.junit.classpath"/>
  +      <path refid="sun.jsr77.classpath"/>
  +    </path>
  +  </target>
  +
  +  <!-- Configure the external modules which this module depends on. -->
  +  <target name="_configure-modules" unless="configure-modules.disable">
  +
  +    <!-- J2EE -->
  +    <property name="jboss.j2ee.root" value="${project.root}/j2ee/output"/>
  +    <property name="jboss.j2ee.lib" value="${jboss.j2ee.root}/lib"/>
  +    <path id="jboss.j2ee.classpath">
  +      <pathelement path="${jboss.j2ee.lib}/jboss-j2ee.jar"/>
  +    </path>
  +
  +    <!-- Naming -->
  +    <property name="jboss.naming.root" value="${project.root}/naming/output"/>
  +    <property name="jboss.naming.lib" value="${jboss.naming.root}/lib"/>
  +    <path id="jboss.naming.classpath">
  +      <pathelement path="${jboss.naming.lib}/jnpserver.jar"/>
  +    </path>
  +
  +    <!-- The combined dependant module classpath -->
  +    <path id="dependentmodule.classpath">
  +      <path refid="jboss.j2ee.classpath"/>
  +      <path refid="jboss.naming.classpath"/>
  +    </path>
  +  </target>
  +
  +  <!-- Configure the tasks used by this module. -->
  +  <target name="_configure-tasks" unless="configure-tasks.disable">
  +    <!-- Load common task properties -->
  +    <property resource="planet57/tools/buildmagic/task.properties"/>
   
  -  <target name="pretty" depends="init">
  -    <taskdef name="pretty" classname="pretty.Pretty"/>
  -    <pretty settingsDir="${control.root}/etc" cvs="${pretty.cvs}">
  -      <fileset dir="${source.java}">
  -        <include name="${pretty.includes}"/>
  -      </fileset>
  -    </pretty>
  +    <!-- Where source files live -->
  +    <property name="source.java" value="${module.source}/main"/>
  +    <property name="source.etc" value="${module.source}/etc"/>
  +    <property name="source.bin" value="${module.source}/bin"/>
  +    <property name="source.docs" value="${module.source}/docs"/>
  +    <property name="source.resources" value="${module.source}/resources"/>
  +
  +    <!-- Where build generated files will go -->
  +    <property name="build.classes" value="${module.output}/classes"/>
  +    <property name="build.lib" value="${module.output}/lib"/>
  +    <property name="build.api" value="${module.output}/api"/>
  +    <property name="build.etc" value="${module.output}/etc"/>
  +    <property name="build.bin" value="${module.output}/bin"/>
  +    <property name="build.docs" value="${module.output}/docs"/>
  +    <property name="build.resources" value="${module.output}/resources"/>
  +    <property name="build.reports" value="${module.output}/reports"/>
  +
  +    <!-- Install/Release structure -->
  +    <property name="install.id" value="${module.name}-${module.version}"/>
  +    <property name="release.id" value="${install.id}"/>
  +    <property name="install.root" value="${module.output}/${install.id}"/>
  +
  +    <!-- The combined thirdparty classpath -->
  +    <path id="thirdparty.classpath">
  +      <path refid="library.classpath"/>
  +      <path refid="dependentmodule.classpath"/>
  +    </path>
  +
  +    <!-- This module is based on Java 1.2 -->
  +    <property name="javac.target" value="1.2"/>
  +
  +    <!-- RMIC should generate stubs compatible with Java 1.2+ -->
  +    <property name="rmic.stubVersion" value="1.2"/>
  +
  +    <!-- classpath and local.classpath must have a value using with a path -->
  +    <property name="classpath" value=""/>
  +    <property name="local.classpath" value=""/>
  +
  +    <!-- The classpath required to build classes. -->
  +    <path id="javac.classpath">
  +      <pathelement path="${classpath}"/>
  +      <pathelement path="${local.classpath}"/>
  +      <path refid="thirdparty.classpath"/>
  +    </path>
  +
  +    <!-- The classpath required to build javadocs. -->
  +    <path id="javadoc.classpath">
  +      <path refid="javac.classpath"/>
  +    </path>
  +
  +    <!-- Packages to include when generating api documentation -->
  +    <property name="javadoc.packages" value="org.jboss.*"/>
  +
  +    <!-- Override JUnit defaults -->
  +    <property name="junit.timeout" value="240000"/> <!-- 4 minutes -->
  +    <property name="junit.batchtest.todir" value="${build.reports}"/>
  +    <property name="junit.jvm.options" value="-Ddummy"/>
     </target>
   
   
  @@ -421,17 +463,17 @@
   
   
     <!-- ================================================================== -->
  -  <!-- Build Jars                                                         -->
  +  <!-- Archives                                                           -->
     <!-- ================================================================== -->
   
     <!-- 
        |  Build all jar files.
       -->
     <target name="jars" depends="compile" description="Builds all jar files.">
  -    <mkdir dir="${build.jars}"/>
  +    <mkdir dir="${build.lib}"/>
   
       <!-- Build jboss.jar -->
  -    <jar jarfile="${build.jars}/jboss.jar"
  +    <jar jarfile="${build.lib}/jboss.jar"
            manifest="${build.etc}/jboss.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/**"/>
  @@ -450,7 +492,7 @@
       </jar>
   
       <!-- Build jboss-boot.jar -->
  -    <jar jarfile="${build.jars}/jboss-boot.jar">
  +    <jar jarfile="${build.lib}/jboss-boot.jar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/system/URLClassLoader.class"/>
           <include name="org/jboss/system/URLClassLoaderMBean.class"/>
  @@ -463,7 +505,7 @@
       </jar>
   
       <!-- Build jboss-spine.jar -->
  -    <jar jarfile="${build.jars}/jboss-spine.jar">
  +    <jar jarfile="${build.lib}/jboss-spine.jar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/logging/**"/>
           <include name="org/jboss/system/Service.class"/>
  @@ -486,7 +528,7 @@
       </jar>
         
       <!-- Build jboss-client.jar -->
  -    <jar jarfile="${build.jars}/jboss-client.jar"
  +    <jar jarfile="${build.lib}/jboss-client.jar"
            manifest="${build.etc}/jboss-client.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/ejb/DeploymentException.class"/>
  @@ -508,7 +550,7 @@
       </jar>
   
       <!-- Build run.jar -->
  -    <jar jarfile="${build.jars}/run.jar"
  +    <jar jarfile="${build.lib}/run.jar"
            manifest="${build.etc}/run.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/Main*"/>
  @@ -520,7 +562,7 @@
       </jar>
   
       <!-- Build verifier.jar -->
  -    <jar jarfile="${build.jars}/verifier.jar"
  +    <jar jarfile="${build.lib}/verifier.jar"
            manifest="${build.etc}/verifier.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/verifier/**"/>
  @@ -530,7 +572,7 @@
   
       <!-- Build jmx-connector.jsr (should try to use jlink for this)--> 
       <unjar src="${sun.jmx.lib}/jmxtools.jar" dest="${build.classes}"/>
  -    <jar jarfile="${build.jars}/jmx-connector.jsr"
  +    <jar jarfile="${build.lib}/jmx-connector.jsr"
            manifest="${build.etc}/rmiconnector.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/jmx/**"/>
  @@ -542,7 +584,7 @@
       </jar>
   
       <!-- Build rmiconnector.jar -->
  -    <jar jarfile="${build.jars}/rmiconnector.jar"
  +    <jar jarfile="${build.lib}/rmiconnector.jar"
            manifest="${build.etc}/rmiconnector.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/jmx/interfaces/JMXConnector**"/>
  @@ -560,7 +602,7 @@
       </jar>
   
       <!-- Build deploy.jar -->
  -    <jar jarfile="${build.jars}/deploy.jar"
  +    <jar jarfile="${build.lib}/deploy.jar"
            manifest="${build.etc}/deploy.mf">
         <fileset dir="${build.classes}">
            <include name="org/jboss/jmx/client/Deployer.class"/>
  @@ -572,7 +614,7 @@
       </jar>
   
       <!-- Build stop.jar -->
  -    <jar jarfile="${build.jars}/stop.jar"
  +    <jar jarfile="${build.lib}/stop.jar"
            manifest="${build.etc}/stop.mf">
         <fileset dir="${build.classes}">
            <include name="org/jboss/jmx/client/Stop.class"/>
  @@ -584,7 +626,7 @@
       </jar>
   
       <!-- Build connector.jar -->
  -    <jar jarfile="${build.jars}/connector.jar"
  +    <jar jarfile="${build.lib}/connector.jar"
            manifest="${build.etc}/connector.mf">
         <fileset dir="${build.classes}">
           <include name="org/jboss/jmx/interfaces/JMXConnector.class"/>
  @@ -607,7 +649,7 @@
       </jar>
   
       <!-- Build jms-ra.rar -->
  -    <jar jarfile="${build.jars}/jms-ra.rar">
  +    <jar jarfile="${build.lib}/jms-ra.rar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/jms/ra/**"/>
         </fileset>
  @@ -617,7 +659,7 @@
       </jar>
   
       <!-- HACK Build jboss-security.jar -->
  -    <jar jarfile="${build.jars}/jboss-security.jar">
  +    <jar jarfile="${build.lib}/jboss-security.jar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/security/**"/>
         </fileset>
  @@ -626,7 +668,7 @@
       <!-- The following might not be needed any more -->
   
       <!-- Build jboss-metadata.jar -->
  -    <jar jarfile="${build.jars}/jboss-metadata.jar">
  +    <jar jarfile="${build.lib}/jboss-metadata.jar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/metadata/**"/>
           <include name="org/jboss/ejb/DeploymentException.class"/>
  @@ -637,7 +679,7 @@
       </jar>
   
       <!-- Build jboss-util.jar -->
  -    <jar jarfile="${build.jars}/jboss-util.jar">
  +    <jar jarfile="${build.lib}/jboss-util.jar">
         <fileset dir="${build.classes}">
           <include name="org/jboss/util/Service.class"/>
           <include name="org/jboss/util/ServiceMBean*"/>
  @@ -650,7 +692,7 @@
       </jar>
   
       <!-- Build jboss-deployer.jar -->
  -    <jar jarfile="${build.jars}/jboss-deployer.jar">
  +    <jar jarfile="${build.lib}/jboss-deployer.jar">
         <fileset dir="${build.classes}">
            <include name="org/jboss/deployment/DeployerMBean*"/>
            <include name="org/jboss/deployment/DeploymentException*"/>
  @@ -660,42 +702,52 @@
   
   
     <!-- ================================================================== -->
  -  <!-- Build documents                                                    -->
  +  <!-- Documents                                                          -->
     <!-- ================================================================== -->
   
     <!-- 
  -     |  Create all generated documenation.
  +     | Create all generated documenation.
        |
  -     |  This target should depend on other docs-* targets for each 
  -     |  different type of docuementation that is to be generated.
  -    -->
  -  <target name="docs" depends="docs-api, docs-static"
  -       description="Builds all documentation."/>
  +     | This target should depend on other docs-* targets for each 
  +     | different type of docuementation that is to be generated.
  +   -->
  +
  +  <target name="docs" depends="init" description="Builds all documentation.">
  +    <call target="docs-static"/>
  +    <call target="docs-api"/>
  +  </target>
  +
  +  <!-- Compile static documents -->
  +  <target name="docs-static" depends="init">
  +    <mkdir dir="${build.docs}"/>
  +    <copy todir="${build.docs}" filtering="yes">
  +      <fileset dir="${source.docs}">
  +         <include name="**/*"/>
  +      </fileset>
  +    </copy>
  +  </target>
   
     <!-- Javadocs is an exception, but provide a docs-api to conform. -->
  -  <target name="docs-api" depends="javadocs"/>
  +  <target name="docs-api" depends="docs-javadocs"/>
   
     <!-- 
  -     |  Check if we need to build javadocs 
  +     | Check if we need to build javadocs 
        |
  -     |  Javadocs will only be generated if one or more .java source files
  -     |  is newer than the generated index.html.
  -    -->
  -  <target name="javadocs-check" depends="init">
  +     | Javadocs will only be generated if one or more .java source files
  +     | is newer than the generated index.html.
  +   -->
  +
  +  <target name="docs-javadocs-check" depends="init">
       <!-- if index.html is newer than the sources we are up to date -->
  -    <uptodate property="javadoc-generated-already"
  +    <uptodate property="docs-javadocs.disable"
              targetfile="${build.api}/index.html">
         <srcfiles dir="${source.java}" includes="**/*.java"/>
       </uptodate>
  -
  -    <!-- create the directory here to prevent install/release from failing -->
  -    <mkdir dir="${build.api}"/>
     </target>        
   
     <!-- Generate Javadoc if we are out of date -->
  -  <target name="javadocs" 
  -       depends="javadocs-check" 
  -       unless="javadoc-generated-already">
  +  <target name="docs-javadocs" depends="docs-javadocs-check" 
unless="docs-javadocs.disable">
  +    <mkdir dir="${build.api}"/>
       <javadoc packagenames="${javadoc.packages}"
                sourcepath="${source.java}"
                destdir="${build.api}"
  @@ -709,64 +761,66 @@
                package="${javadoc.package}"
                protected="${javadoc.protected}"
                private="${javadoc.private}"
  +             encoding="${javadoc.encoding}"
                use="${javadoc.use}"
  -          verbose="${javadoc.verbose}">
  -      <!-- <group title="???" packages="*"/> -->
  +          verbose="${javadoc.verbose}"> 
  +      <group title="JDBC Extension" packages="javax.sql*"/>
  +      <group title="J2EE" packages="javax*"/>
       </javadoc>
     </target>
   
  -  <!-- Compile static documents -->
  -  <target name="docs-static" depends="init">
  -    <mkdir dir="${build.docs}"/>
  -    <copy todir="${build.docs}" filtering="yes">
  -      <fileset dir="${source.docs}">
  -         <include name="**/*"/>
  -      </fileset>
  -    </copy>
  -  </target>
  +  <target name="javadocs" depends="docs-javadocs"/>
   
   
     <!-- ================================================================== -->
  -  <!-- Builds a release distribution.                                     -->
  +  <!-- Install                                                            -->
     <!-- ================================================================== -->
   
  -  <target name="release" depends="all"
  -       description="Builds a release distribution.">
  -    <!-- Copy the output directory to the release directory -->
  -    <mkdir dir="${release.root}"/>
  -    <copy todir="${release.root}" filtering="no">
  -      <fileset dir="${module.build}">
  +  <target name="install" depends="all">
  +    <!-- Copy the output directory to the install directory -->
  +    <mkdir dir="${install.root}"/>
  +    <copy todir="${install.root}" filtering="no">
  +      <fileset dir="${module.output}">
            <include name="**/*"/>
  -         <exclude name="${release.id}/**"/>
  +         <exclude name="${install.id}/**"/>
         </fileset>
       </copy>
     </target>
  +
   
  -  <target name="release-archive-prepare" depends="release">
  -    <mkdir dir="${module.release}"/>
  +  <!-- ================================================================== -->
  +  <!-- Release                                                            -->
  +  <!-- ================================================================== -->
  +
  +  <!-- 
  +     | Builds a release distribution.
  +   -->
  +
  +  <target name="release" depends="install">
  +    <!-- install handles most of the work -->
     </target>
   
  -  <target name="release-zip" depends="release-archive-prepare"
  +  <target name="release-zip" depends="release"
          description="Builds a ZIP release distribution.">
  -    <zip zipfile="${release.archive.basename}.zip">
  -      <fileset dir="${module.release}">
  +    <zip zipfile="${module.output}/${release.id}.zip">
  +      <fileset dir="${module.output}">
           <include name="${release.id}/**"/>
         </fileset>
       </zip>
     </target>
   
  -  <target name="release-tar" depends="release-archive-prepare"
  +  <target name="release-tar" depends="release"
          description="Builds a TAR release distribution.">
  -    <tar tarfile="${release.archive.basename}.tar" longfile="gnu"
  -      basedir="${module.release}"
  +    <tar tarfile="${module.output}/${release.id}.tar" longfile="gnu"
  +      basedir="${module.output}"
         includes="${release.id}/**">
       </tar>
     </target>
   
     <target name="release-tgz" depends="release-tar"
          description="Builds a TAR-GZIP release distribution.">
  -    <gzip src="${release.archive.basename}.tar"
  -       zipfile="${release.archive.basename}.tgz"/>
  +    <gzip src="${module.output}/${release.id}.tar"
  +       zipfile="${module.output}/${release.id}.tgz"/>
     </target>
   
     <target name="release-all" depends="release-zip, release-tgz"
  @@ -774,12 +828,22 @@
   
   
     <!-- ================================================================== -->
  -  <!-- Run tests                                                          -->
  +  <!-- Tests                                                              -->
     <!-- ================================================================== -->
   
  -  <target name="tests" depends="tests-junit"
  -       description="Execute all tests."/>
  +  <!--
  +     | Run all tests.
  +   -->
   
  +  <target name="tests" depends="init" description="Execute all tests.">
  +    <call target="tests-junit"/>
  +    <call target="tests-reports"/>
  +  </target>
  +
  +  <!--
  +     | Run JUnit tests.
  +   -->
  +
     <target name="tests-junit" depends="jars">
       <mkdir dir="${build.reports}"/>
       <junit dir="${module.output}"
  @@ -790,9 +854,7 @@
           timeout="${junit.timeout}"
           jvm="${junit.jvm}">
   
  -      <!-- junit.jvm.options must have a valid value -->
         <jvmarg value="${junit.jvm.options}"/>
  -      <sysproperty key="jbosstest.deploy.dir" file="${build.jars}"/>
   
         <classpath>
           <pathelement location="${build.classes}"/>
  @@ -808,39 +870,68 @@
                 fork="${junit.batchtest.fork}">
   
           <fileset dir="${build.classes}">
  -          <include name="**/Test*.class"/>
  -          <include name="**/*Test.class"/>
  -          <include name="**/AllJUnitTests.class"/>
  +          <include name="**/*TestCase.class"/>
  +          <include name="**/*TestSuite.class"/>
           </fileset>
         </batchtest>
       </junit>
     </target>
   
  +  <target name="reports" depends="tests-reports" 
  +       description="Generates all reports."/>
  +
  +  <target name="tests-reports" depends="tests-reports-html"/>
   
  +  <target name="tests-reports-html" depends="compile">
  +    <mkdir dir="${build.reports}/html"/>
  +
  +    <junitreport todir="${build.reports}">
  +      <fileset dir="${build.reports}">
  +        <include name="TEST-*.xml"/>
  +      </fileset>
  +      <report format="frames" todir="${build.reports}/html"/>
  +    </junitreport>
  +  </target>
  +
  +
     <!-- ================================================================== -->
  -  <!-- Cleans up generated stuff                                          -->
  +  <!-- Cleaning                                                           -->
     <!-- ================================================================== -->
   
     <!-- Clean up all build output -->
     <target name="clean" depends="init"
          description="Cleans up most generated files.">
  -    <delete dir="${module.build}"/>
  -    <delete dir="${module.release}"/>
       <delete dir="${module.output}"/>
     </target>
   
     <!-- Clean up all generated files -->
     <target name="clobber" depends="clean"
          description="Cleans up all generated files.">
  +    <delete file="${module.root}/local.properties"/>
       <delete file="${module.root}/build.log"/>
     </target>
   
   
  +  <!-- ================================================================== -->
  +  <!-- Workspace                                                          -->
  +  <!-- ================================================================== -->
  +
  +  <target name="update-project" depends="init">
  +    <echo>Updating project workspace...</echo>
  +    <cvs command="update -d" dest="${project.root}"/>
  +  </target>
  +
  +  <target name="update-module" depends="init">
  +    <echo>Updating module workspace...</echo>
  +    <cvs command="update -d" dest="${module.root}"/>
  +  </target>
  +
  +
     <!-- ================================================================== -->
  -  <!-- Other Targets                                                      -->
  +  <!-- Help                                                               -->
     <!-- ================================================================== -->
   
  -  <target name="help">
  +  <target name="help" depends="init">
       <projecthelp taskname="help">
         <header><![CDATA[
     The ${module.Name} module.
  @@ -852,6 +943,11 @@
       </projecthelp>
     </target>
   
  +
  +  <!-- ================================================================== -->
  +  <!-- Misc.                                                              -->
  +  <!-- ================================================================== -->
  +
     <target name="main" depends="most"
          description="Executes the default target (most)."/>
       
  @@ -860,5 +956,31 @@
   
     <target name="most" depends="jars"
          description="Builds almost everything."/>
  +
  +
  +  <!-- ================================================================== -->
  +  <!-- Pretty                                                             -->
  +  <!-- ================================================================== -->
  +
  +  <!-- 
  +     |  Pretty print everything.
  +     |
  +     |  This uses the jedit JavaStyle plugin via the ejbdoclet pretty ant task.
  +     |
  +     |  cvs="true" only pretties files you have already modified.
  +     |  cvs="false" pretties all files.
  +    -->
  +
  +  <property name="pretty.cvs" value="true"/>
  +  <property name="pretty.includes" value="**/*.java"/>
  +
  +  <target name="pretty" depends="init">
  +    <taskdef name="pretty" classname="pretty.Pretty"/>
  +    <pretty settingsDir="${project.build}/etc" cvs="${pretty.cvs}">
  +      <fileset dir="${source.java}">
  +        <include name="${pretty.includes}"/>
  +      </fileset>
  +    </pretty>
  +  </target>
   
   </project>
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to