dgraham     2003/06/09 20:46:40

  Added:       mapper   build.xml
  Log:
  Initial build.xml file copied from commons-validator.
  
  Revision  Changes    Path
  1.1                  jakarta-commons-sandbox/mapper/build.xml
  
  Index: build.xml
  ===================================================================
  <project name="Mapper" default="dist" basedir=".">
  
  
  <!--
          Mapper component of the Jakarta Commons Subproject
          $Id$
  -->
  
  
  <!-- ========== Initialize Properties ===================================== -->
  
  
    <property file="build.properties"/>                <!-- Component local   -->
    <property file="../build.properties"/>             <!-- Commons local     -->
  <!--  <property file="${user.home}/build.properties"/> -->  <!-- User local        
-->
  
  
  <!-- ========== External Dependencies ===================================== -->
  
  
    <!-- The directories corresponding to your necessary dependencies -->
    <property name="junit.home"              value="/usr/local/junit3.7"/>
    
  
  <!-- ========== Derived Values ============================================ -->
  
  
    <!-- The locations of necessary jar files -->
    <property name="junit.jar"               value="${junit.home}/junit.jar"/>
    
  
  <!-- ========== Component Declarations ==================================== -->
  
  
    <!-- The name of this component -->
    <property name="component.name"          value="mapper"/>
  
    <!-- The primary package name of this component -->
    <property name="component.package"       value="org.apache.commons.mapper"/>
  
    <!-- The title of this component -->
    <property name="component.title"         value="Mapper"/>
  
    <!-- The current version number of this component -->
    <property name="component.version"       value="0.5-dev"/>
  
    <!-- The base directory for compilation targets -->
    <property name="build.home"              value="target"/>
  
    <!-- The base directory for component configuration files -->
    <property name="conf.home"               value="conf/share"/>
  
    <!-- The base directory for distribution targets -->
    <property name="dist.home"               value="dist"/>
  
    <!-- The base directory for release targets -->
    <property name="release.home"            value="release" />
  
    <!-- The base directory for component sources -->
    <property name="source.home"             value="src/share"/>
  
    <!-- The base directory for unit test sources -->
    <property name="test.home"               value="src/test"/>
  
    <!-- Directory where binary release files are staged -->
    <property name="stage.bin.dir"           value="${release.home}/stage/bin"/>
  
    <!-- Directory where source release files are staged -->
    <property name="stage.src.dir"           value="${release.home}/stage/src"/>
  
    <!-- Directory where release builds are prepared for upload -->
    <property name="upload.dir"              value="${release.home}/upload"/>
  
    <!-- Base file name for upload files -->
    <property name="upload.file.base"        
value="${component.name}-${component.version}"/>
  
  
  <!-- ========== Compiler Defaults ========================================= -->
  
  
    <!-- Should Java compilations set the 'debug' compiler option? -->
    <property name="compile.debug"           value="true"/>
  
    <!-- Should Java compilations set the 'deprecation' compiler option? -->
    <property name="compile.deprecation"     value="false"/>
  
    <!-- Should Java compilations set the 'optimize' compiler option? -->
    <property name="compile.optimize"        value="true"/>
  
    <!-- Construct compile classpath -->
    <path id="compile.classpath">
      <pathelement location="${build.home}/classes"/>
    </path>
  
  
  <!-- ========== Test Execution Defaults =================================== -->
  
  
    <!-- Construct unit test classpath -->
    <path id="test.classpath">
      <pathelement location="${build.home}/classes"/>
      <pathelement location="${build.home}/tests"/>
      <pathelement location="${junit.jar}"/>
  
    </path>
  
    <!-- Should all tests fail if one does? -->
    <property name="test.failonerror"        value="true"/>
  
    <!-- The test runner to execute -->
    <property name="test.runner"             value="junit.textui.TestRunner"/>
  
     
  
  <!-- ========== Executable Targets ======================================== -->
  
  
    <target name="init"
     description="Initialize and evaluate conditionals">
      <echo message="-------- ${component.name} ${component.version} --------"/>
      <filter  token="name"                  value="${component.name}"/>
      <filter  token="package"               value="${component.package}"/>
      <filter  token="version"               value="${component.version}"/>
    </target>
  
  
    <target name="prepare" depends="init"
     description="Prepare build directory">
      <mkdir dir="${build.home}"/>
      <mkdir dir="${build.home}/classes"/>
      <mkdir dir="${build.home}/conf"/>
      <mkdir dir="${build.home}/tests"/>
    </target>
  
  
    <target name="static" depends="prepare"
     description="Copy static files to build directory">
      <tstamp/>
      <copy  todir="${build.home}/conf" filtering="on">
        <fileset dir="${conf.home}" includes="*.MF"/>
      </copy>
    </target>
  
  
    <target name="compile" depends="static"
     description="Compile shareable components">
      <javac  srcdir="${source.home}"
             destdir="${build.home}/classes"
               debug="${compile.debug}"
         deprecation="${compile.deprecation}"
            optimize="${compile.optimize}">
        <classpath refid="compile.classpath"/>
      </javac>
      <copy    todir="${build.home}/classes" filtering="on">
        <fileset dir="${source.home}"
            excludes="**/*.java"/>
      </copy>
  
    </target>
  
  
    <target name="clean"
     description="Clean build and distribution directories">
      <delete    dir="${build.home}"/>
      <delete    dir="${dist.home}"/>
      <delete    dir="${release.home}"/>
    </target>
  
  
    <target name="all" depends="clean,compile"
     description="Clean and compile all components"/>
  
  
    <target name="javadoc" depends="compile"
     description="Create component Javadoc documentation">
      <mkdir      dir="${dist.home}"/>
      <mkdir      dir="${dist.home}/docs"/>
      <mkdir      dir="${dist.home}/docs/api"/>
      <javadoc sourcepath="${source.home}"
                  destdir="${dist.home}/docs/api"
             packagenames="org.apache.commons.*"
                   author="true"
                  private="true"
                  version="true"
                 doctitle="&lt;h1&gt;${component.title} (Version 
${component.version})&lt;/h1&gt;"
              windowtitle="${component.title} (Version ${component.version})"
                   bottom="Copyright (c) 2003 - Apache Software Foundation"
             classpathref="compile.classpath" />
    </target>
  
  
    <target name="dist" depends="compile,javadoc"
     description="Create binary distribution">
      <mkdir      dir="${dist.home}"/>
      <copy      file="LICENSE"
                todir="${dist.home}"/>
      <mkdir      dir="${build.home}/classes/META-INF"/>
      <copy      file="LICENSE"
               tofile="${build.home}/classes/META-INF/LICENSE"/>
      <jar    jarfile="${dist.home}/commons-${component.name}.jar"
              basedir="${build.home}/classes"
             manifest="${build.home}/conf/MANIFEST.MF"/>
    </target>
  
  
  <!-- ========== Unit Test Targets ========================================= -->
  
  
    <target name="compile.tests" depends="compile"
     description="Compile unit test cases">
      <javac  srcdir="${test.home}"
             destdir="${build.home}/tests"
               debug="${compile.debug}"
         deprecation="${compile.deprecation}"
            optimize="${compile.optimize}">
        <classpath refid="test.classpath"/>
      </javac>
      <copy    todir="${build.home}/tests" filtering="on">
        <fileset dir="${test.home}" excludes="**/*.java"/>
      </copy>
    </target>
  
  
    <target name="test"  depends="compile.tests"
     description="Run all unit test cases">
      <echo message="Running tests ..."/>
      <java classname="${test.runner}" fork="yes"
          failonerror="${test.failonerror}">
        <arg value="org.apache.commons.mapper.util.ObjectFactoryTest"/>
        <classpath refid="test.classpath"/>
      </java>
    </target>
  
  
  <!-- ========== Release Targets =========================================== -->
  
  
      <target name="release" depends="clean,dist"
      description="Construct release distribution">
          <mkdir dir="${stage.bin.dir}/${upload.file.base}"/>
          <mkdir dir="${stage.src.dir}/${upload.file.base}-src"/>
          <copy todir="${stage.bin.dir}/${upload.file.base}">
              <fileset dir="${dist.home}"/>
          </copy>
          <copy todir="${stage.src.dir}/${upload.file.base}-src">
              <fileset dir=".">
                  <exclude name="build.properties"/>
                  <exclude name="target/**"/>
                  <exclude name="dist/**"/>
                  <exclude name="release/**"/>
              </fileset>
          </copy>
          <mkdir dir="${upload.dir}"/>
          <zip  zipfile="${upload.dir}/${upload.file.base}.zip"
                basedir="${stage.bin.dir}"/>
          <zip  zipfile="${upload.dir}/${upload.file.base}-src.zip"
                basedir="${stage.src.dir}"/>
          <tar  tarfile="${upload.dir}/${upload.file.base}.tar"
                basedir="${stage.bin.dir}"
               longfile="gnu"/>
          <tar  tarfile="${upload.dir}/${upload.file.base}-src.tar"
                basedir="${stage.src.dir}"
               longfile="gnu"/>
          <gzip     src="${upload.dir}/${upload.file.base}.tar"
                zipfile="${upload.dir}/${upload.file.base}.tar.gz"/>
          <gzip     src="${upload.dir}/${upload.file.base}-src.tar"
                zipfile="${upload.dir}/${upload.file.base}-src.tar.gz"/>
      </target>
  
        
  </project>
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to