Peter M. Goldstein wrote:
Please let me know if this doesn't resolve your
problems.  Thanks.

A quick test of both new src distributions shows build successful for the 'with-phoenix' dist. Without phoenix has an error in build.xml (line 175), where it will try to do a fixcrlf on dist/bin, which has not yet been created.

Here is a working version.

Cheers

ADK
<?xml version="1.0"?>
<!-- ==========================================================================

 James build file $Revision: 1.115 $  Committed on $Date: 2002/12/14 20:41:36 $ by: $Author: pgoldstein $

Authors:
 Federico Barbieri <[EMAIL PROTECTED]>
 Serge
 Charles Benett    <[EMAIL PROTECTED]>
 Peter Donald      <[EMAIL PROTECTED]>
 Harmeet Bedi      <[EMAIL PROTECTED]>
 Danny Angus       <[EMAIL PROTECTED]>
 Peter M. Goldstein <[EMAIL PROTECTED]>

Legal:
  Copyright (c) 1999-2002 The Apache Software Foundation. All Rights Reserved.


==============================================================================
 -->
<project default="main" basedir=".">
    <!--
    Give user a chance to override without editing this file
    (and without typing -D each time he compiles it)
  -->
    <property file=".ant.properties"/>
    <property file="${user.home}/.ant.properties"/>
    <property name="name" value="james"/>
    <property name="Name" value="James"/>
    <property name="version" value="2.1"/>
    <property name="year" value="1999-2002"/>
    <!-- There should be no need to override default compiler but need to change
    javac task to run without this -->
    <property name="build.compiler" value="modern"/>
    <!--
    these are here only for those who use jikes compiler. For other
    developers this part makes no difference.
  -->
    <property name="build.compiler.emacs" value="on"/>
    <property name="build.compiler.pedantic" value="true"/>
    <property name="build.compiler.depend" value="true"/>
    <property name="build.compiler.fulldepend" value="true"/>
    <property name="debug" value="on"/>
    <property name="optimize" value="on"/>
    <property name="deprecation" value="off"/>

    <!--
       ===================================================================
       Set the properties for proposal directories
       ===================================================================
  -->

    <property name="proposal.base" value="proposals"/>
    <property name="proposal.dir" value="${proposal.base}/${proposal.name}"/>
    <property name="java.proposal.dir" value="${proposal.dir}/java"/>
    <property name="conf.proposal.dir" value="${proposal.dir}/conf"/>


    <!--
       ===================================================================
       Set the properties for intermediate directory
       ===================================================================
  -->
    <property name="build.dir" value="build"/>
    <property name="build.lib" value="${build.dir}/lib"/>
    <property name="build.src" value="${build.dir}/src"/>
    <property name="build.classes" value="${build.dir}/classes"/>
    <property name="build.javadocs" value="${build.dir}/javadocs"/>
    <property name="build.docs" value="${build.dir}/docs"/>
    <property name="build.mailetdocs" value="${build.dir}/mailetdocs"/>
    <property name="build.conf" value="${build.dir}/conf"/>

    <!--
       ===================================================================
       Set the properties for source directories and parameters
       ===================================================================
  -->
    <property name="src.dir" value="src"/>
    <property name="java.dir" value="${src.dir}/java"/>
    <property name="conf.dir" value="${src.dir}/conf"/>
    <property name="xdocs.dir" value="${src.dir}/xdocs"/>
    <property name="docs.src" value="${xdocs.dir}"/>

    <property name="constants.file" value="org/apache/james/Constants.java"/>
    <property name="poolconn.file" value="org/apache/james/util/mordred/PoolConnEntry.java"/>


    <!--
       ===================================================================
       Set the properties for the distribution directories
       ===================================================================
  -->
    <property name="dist.base" value="dist"/>
    <property name="dist.name" value="${name}-${version}"/>
    <property name="dist.dir" value="${dist.base}/${dist.name}"/>

    <!--
       ===================================================================
       Third party binary directories
       ===================================================================
  -->
    <property name="lib.dir" value="lib"/>
    <property name="phoenix.dir" value="phoenix-bin"/>
    <property name="phoenix.lib.dir" value="${phoenix.dir}/lib"/>

    <!--
       ===================================================================
       Set the properties for the website directories
       ===================================================================
  -->
    <property name="www.dir" value="www"/>

    <!--
       ===================================================================
       Set the classpath
       ===================================================================
  -->
    <property name="xerces.jar" value="${lib.dir}/xerces-1.4.3.jar"/>
    <!--
    <property name="activation.jar" value="${lib.dir}/activation.jar"/>
  -->
    <path id="project.class.path">
        <pathelement location="${xerces.jar}"/>
        <pathelement path="${java.class.path}"/>
        <fileset dir="${lib.dir}">
            <include name="*.jar"/>
            <exclude name="xerces.jar"/>
        </fileset>
        <fileset dir="${phoenix.lib.dir}">
            <include name="*.jar"/>
        </fileset>
        <pathelement path="${build.classes}"/>
    </path>
    <taskdef name="sar" classname="org.apache.avalon.phoenix.tools.tasks.Sar">
        <classpath refid="project.class.path"/>
    </taskdef>
    <!--
       ===================================================================
                                  Main target
       ===================================================================
  -->
    <target name="main" depends="dist-lite"/>
    <!--
       ===================================================================
                                  Prepare
       ===================================================================
  -->
    <target name="prepare">
    <echo message="preparing code"/>

        <tstamp/>
        <property name="dist.bin" value="${dist.dir}/bin"/>
        <property name="dist.apps" value="${dist.dir}/apps"/>
        <property name="dist.lib" value="${dist.dir}/lib"/>
        <property name="dist.docs" value="${dist.dir}/docs"/>
        <property name="dist.javadocs" value="${dist.dir}/docs/api"/>
        <available property="jdbc3.present" classname="java.sql.Savepoint"/>
        <mkdir dir="${dist.bin}"/>
        <copy todir="${dist.dir}">
            <fileset dir="${phoenix.dir}">
                <exclude name="CVS/**"/>
            </fileset>
            <fileset dir=".">
                <include name="release-notes.txt"/>
                <include name="LICENSE.txt"/>
                <include name="README"/>
            </fileset>
        </copy>
        <fixcrlf srcdir="${java.dir}" includes="**/*.java" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${java.dir}" includes="**/*.minfo" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${java.dir}" includes="**/*.xinfo" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${java.dir}" includes="**/*.html" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${xdocs.dir}" includes="**/*.xml" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${conf.dir}" includes="**/*.xml" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${dist.dir}/bin" includes="run.sh" eol="lf"/>
        <fixcrlf srcdir="${dist.dir}/bin" includes="run.bat" eol="crlf"/>
        
        <chmod perm="+x">
            <fileset dir="${dist.dir}/bin">
                <include name="run.sh"/>
                <include name="phoenix.sh"/>
            </fileset>
        </chmod>
        <fixcrlf srcdir="." includes="build.sh" eol="lf"/>
        <fixcrlf srcdir="." includes="build.bat" eol="crlf"/>
        <chmod perm="+x">
            <fileset dir=".">
                <include name="build.sh"/>
            </fileset>
        </chmod>
        <available classname="org.apache.velocity.anakia.AnakiaTask" property="AnakiaTask.present"/>
        <mkdir dir="${build.src}"/>
        <copy todir="${build.src}">
            <fileset dir="${java.dir}">
                <include name="${constants.file}"/>
                <include name="${poolconn.file}"/>
            </fileset>
        </copy>
        <replace file="${build.src}/${constants.file}" token="@@VERSION@@" value="${version}"/>
        <replace file="${build.src}/${constants.file}" token="@@NAME@@" value="${Name}"/>
        <replace file="${build.src}/${constants.file}" token="@@DATE@@" value="${TODAY}"/>
    </target>
    <!--
       ===================================================================
                                   jdbc3 
       ===================================================================
  -->
    <target name="prepare-jdbc3" depends="prepare" if="jdbc3.present">
    <echo message="preparing for JDBC3"/>
        <replace file="${build.src}/${poolconn.file}" token="/* JDBC_3_ANT_KEY" value=""/>
        <replace file="${build.src}/${poolconn.file}" token="JDBC_3_ANT_KEY */" value=""/>
    </target>


    <!--
       ===================================================================
                                  compile
       ===================================================================
  -->
    <target name="compile" depends="prepare,prepare-jdbc3">
    <echo message="compiling James"/>
        <available property="jndi.present" classname="javax.naming.InitialContext"/>
        <mkdir dir="${build.classes}"/>
        <javac destdir="${build.classes}" debug="${debug}" optimize="${optimize}" deprecation="${deprecation}">
            <classpath refid="project.class.path"/>
            <src path="${build.src}"/>
            <src path="${java.dir}"/>
            <exclude name="${constants.file}"/>
            <exclude name="${poolconn.file}"/>
            <exclude name="org/apache/james/userrepository/UsersLDAPRepository.java" unless="jndi.present"/>
        </javac>
        <copy todir="${build.classes}">
            <fileset dir="${java.dir}">
                <include name="**/*.properties"/>
                <include name="**/*.xinfo"/>
                <include name="**/*.mxinfo"/>
            </fileset>
        </copy>
    </target>
    <!--
       ===================================================================
                                  Javadocs, and mailet javadocs
       ===================================================================
  -->
    <target name="javadocs">
    <echo message="Making James javadocs"/>

        <delete dir="${build.javadocs}"/>
        <mkdir dir="${build.javadocs}"/>
        <javadoc packagenames="org.apache.*" sourcepath="${java.dir}" destdir="${build.javadocs}">
            <classpath refid="project.class.path"/>
            <doclet name="com.sun.tools.doclets.standard.Standard">
                <param name="-author"/>
                <param name="-version"/>
                <param name="-use"/>
                <param name="-breakiterator"/>
                <param name="-link" value="http://java.sun.com/j2se/1.4/docs/api"/>
                <param name="-link" value="http://java.sun.com/j2ee/sdk_1.3/techdocs/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/phoenix/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/cornerstone/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/logkit/api"/>
                <param name="-doctitle" value="${Name} ${version}"/>
                <param name="-windowtitle" value="${Name} API"/>
                <param name="-bottom" value="&quot;Copyright &#169; ${year} Apache Jakarta Project. All Rights Reserved.&quot;"/>
            </doclet>
        </javadoc>
        <echo message="Making Mailet javadocs"/>
        <javadoc packagenames="org.apache.mailet.*" sourcepath="${java.dir}" destdir="${build.dir}/mailet">
            <classpath refid="project.class.path"/>
            <doclet name="com.sun.tools.doclets.standard.Standard">
                <param name="-author"/>
                <param name="-version"/>
                <param name="-breakiterator"/>
                <param name="-use"/>
                <param name="-link" value="http://java.sun.com/j2se/1.4/docs/api"/>
                <param name="-link" value="http://java.sun.com/j2ee/sdk_1.3/techdocs/api"/>  
                <param name="-link" value="http://jakarta.apache.org/avalon/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/phoenix/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/cornerstone/api"/>
                <param name="-link" value="http://jakarta.apache.org/avalon/logkit/api"/>
                <param name="-doctitle" value="Apache Jakarta Mailet API"/>
                <param name="-windowtitle" value="Apache Jakarta Mailet API"/>
                <param name="-bottom" value="&quot;Copyright &#169; ${year} Apache Jakarta Project. All Rights Reserved.&quot;"/>
            </doclet>
        </javadoc>
    </target>
    <!--
       ===================================================================
                                  build xdocs
       ===================================================================
  -->
    <target name="xdocs" depends="prepare,prepare-jdbc3">
        <style style="${docs.src}/stylesheets/site.xsl"
                basedir="${docs.src}/"
                destdir="${build.docs}/" 
                includes="**/*.xml" >
        </style>
        <copy todir="${build.docs}" filtering="no">
            <fileset dir="${docs.src}">
                        <include name="**/*.css"/>
            </fileset>
        </copy>
        <copy todir="${build.docs}/images" filtering="no">
            <fileset dir="${docs.src}/images">
                <include name="**/*.gif"/>
                <include name="**/*.jpeg"/>
                <include name="**/*.jpg"/>
            </fileset>
        </copy>
        <mkdir dir="${dist.dir}/docs"/>
        <copy todir="${dist.dir}/docs" filtering="no">
            <fileset dir="${build.docs}"/>
        </copy>
    </target>
    <!--
       ===================================================================
                                build   website 
       ===================================================================
  -->
    <target name="website" depends="xdocs,javadocs">
    <echo message="preparing website in ${www.dir}"/>
        <delete>
            <fileset dir="${www.dir}">
                <exclude name="CVS/**"/>
                <exclude name="rfclist/**"/>
                <exclude name="javadocs/**"/>
                <exclude name="mailet/**"/>
            </fileset>
        </delete>
        <mkdir dir="${www.dir}"/>
        <copy todir="${www.dir}" filtering="no">
            <fileset dir="${build.docs}"/>
        </copy>
        <copy todir="${www.dir}" filtering="no">
            <fileset dir="${build.dir}">
                <include name="javadocs/**"/>
                <include name="mailet/**"/>
            </fileset>
        </copy>
        <fixcrlf srcdir="${www.dir}" includes="**/*.html" eol="lf" tab="remove" tablength="4" />
        <fixcrlf srcdir="${www.dir}" includes="**/*.css" eol="lf" tab="remove" tablength="4" />
    </target>
    <!--
       ===================================================================
                Build everything
       ===================================================================
  -->
    <target name="everything" depends="clean,website,dist-bin,dist-src,dist-mailet-SDK"/>
    <!--
       ===================================================================
                                  Build all distributions
       ===================================================================
  -->
    <target name="dist" depends="dist-bin,dist-src,dist-mailet-SDK"/>
    <!--
       ===================================================================
                                  Make james.sar
       ===================================================================
  -->
    <target name="sar" depends="prepare,compile">
    <echo message="Making James.sar"/>

        <!-- builds james-sar-->
        <mkdir dir="${build.lib}"/>
        <!-- Make james.jar-->
        <jar jarfile="${build.lib}/${name}.jar" basedir="${build.classes}" manifest="${src.dir}/Manifest.mf">
            <include name="org/apache/james/**"/>
            <include name="org/apache/mailet/**"/>
        </jar>
        <!-- Make sar file-->
        <sar sarfile="${build.lib}/${name}.sar" config="${conf.dir}/james-config.xml" environment="${conf.dir}/james-server.xml" assembly="${conf.dir}/james-assembly.xml">
            <lib dir="${build.lib}/">
                <include name="*.jar"/>
            </lib>
            <lib dir="lib">
                <include name="dnsjava-1.2.3.jar"/>
                <include name="jakarta-oro-2.0.1.jar"/>
                <include name="mm.mysql-2.0.14.jar"/>
                <include name="mm.mysql.LICENCE"/>
                <include name="avalon-framework-4.1.3.jar"/>
                <include name="cornerstone.jar"/>
                <include name="excalibur-datasource-1.0.jar"/>
                <include name="activation.jar"/>
                <include name="mail_1_2.jar"/>
                <include name="commons-net-1.0.0-dev.jar"/>
            </lib>
            <zipfileset dir="${conf.dir}" fullpath="conf/sqlResources.xml">
                <include name="sqlResources.xml"/>
            </zipfileset>
        </sar>
    </target>
    <!--
       ===================================================================
                                  Make dist directory with unpacked dist ready to run
       ===================================================================
  -->
    <target name="dist-lite" depends="sar">
    <echo message="Installing James to ${dist.dir}"/>

        <!--installs sar into ./dist/ ready to test-->
        <copy file="${build.lib}/${name}.sar" todir="${dist.dir}/apps"/>
        
        <!-- Make mailet.jar-->
        <jar jarfile="${build.lib}/mailet.jar" basedir="${build.classes}" manifest="${src.dir}/Manifest.mf" includes="org/apache/mailet/**"/>
        <!-- copy file="${build.lib}/mailet.jar" todir="${dist.dir}/lib"/ -->
    </target>
    <!--
       ===================================================================
                                  binary distributions
       ===================================================================
  -->
    <target name="dist-bin" depends="dist-lite,xdocs,javadocs">
    <echo message ="building binary distributions"/>
        <mkdir dir="${dist.dir}/downloads/bin"/>
        <!-- binary with phoenix -->
        <zip zipfile="${dist.dir}/downloads/bin/${name}-binary-${version}.zip">
            <fileset dir="dist">
                <include name="${name}-${version}/**"/>
                <exclude name="${name}-${version}/downloads/**"/>
                <include name="release-notes.txt"/>
                <include name="LICENSE.txt"/>
            </fileset>
        </zip>
        <tar longfile="gnu" tarfile="${dist.dir}/downloads/bin/${name}-binary-${version}.tar">
            <tarfileset dir="dist" username="${name}" group="${name}">
                <include name="${name}-${version}/**"/>
                <exclude name="${name}-${version}/downloads/**"/>
                <include name="release-notes.txt"/>
                <include name="LICENSE.txt"/>
            </tarfileset>
        </tar>
        <gzip zipfile="${dist.dir}/downloads/bin/${name}-binary-${version}.tar.gz" src="${dist.dir}/downloads/bin/${name}-binary-${version}.tar"/>
        <delete file="${dist.dir}/downloads/bin/${name}-binary-${version}.tar"/>
        <!-- Sar only-->
        <copy file="${dist.dir}/apps/${name}.sar" todir="${dist.dir}/downloads/bin"/>
    </target>
    <!--
       ===================================================================
                                  source distributions
       ===================================================================
  -->
    <target name="dist-src" depends="dist-lite,xdocs,javadocs">
        <echo message ="building source distributions"/>

        <mkdir dir="${dist.dir}/downloads/src"/>
        <zip zipfile="${dist.dir}/downloads/src/${dist.name}-src.zip">
            <fileset dir=".">
                <include name="src/**"/>
                <include name="lib/**"/>
                <include name="${phoenix.lib.dir}/**"/>
                <include name="proposals/**"/>
                <include name="www/**"/>
                <include name="tools/**"/>
                <include name="*.xml"/>
                <include name="*.txt"/>
                <include name="README"/>
                <include name="KEYS"/>
                <include name="build.*"/>
            </fileset>
        </zip>
        <tar longfile="gnu" tarfile="${dist.dir}/downloads/src/${dist.name}-src.tar">
            <tarfileset dir="." username="${name}" group="${name}">
                <include name="src/**"/>
                <include name="lib/**"/>
                <include name="${phoenix.lib.dir}/**"/>
                <include name="proposals/**"/>
                <include name="www/**"/>
                <include name="tools/**"/>
                <include name="*.xml"/>
                <include name="*.txt"/>
                <include name="README"/>
                <include name="KEYS"/>
                <include name="build.*"/>
            </tarfileset>
        </tar>
        <gzip zipfile="${dist.dir}/downloads/src/${dist.name}-src.tar.gz" src="${dist.dir}/downloads/src/${dist.name}-src.tar"/>
        <delete file="${dist.dir}/downloads/src/${dist.name}-src.tar"/>
        <!--Source  With Phoenix -->
        <zip zipfile="${dist.dir}/downloads/src/${name}-with-phoenix-${version}-src.zip">
            <fileset dir=".">
                <include name="${dist.dir}/**"/>
                <exclude name="${dist.dir}/downloads/**"/>
                <exclude name="${dist.dir}/apps/*.sar"/>
                <exclude name=""/>
                <include name="*.txt"/>
                <include name="*.xml"/>
                <include name="KEYS"/>
                <include name="README"/>
                <include name="build.*"/>
                <include name="lib/**"/>
                <include name="${phoenix.dir}/**"/>
                <include name="proposals/**"/>
                <include name="src/**"/>
                <include name="tools/**"/>
                <include name="www/**"/>
            </fileset>
        </zip>
        <tar longfile="gnu" tarfile="${dist.dir}/downloads/src/${name}-with-phoenix-${version}-src.tar">
            <tarfileset dir="." username="${name}" group="${name}">
                <include name="${dist.dir}/**"/>
                <exclude name="${dist.dir}/downloads/**"/>
                <exclude name="${dist.dir}/apps/*.sar"/>
                <include name="*.txt"/>
                <include name="*.xml"/>
                <include name="KEYS"/>
                <include name="README"/>
                <include name="build.*"/>
                <include name="lib/**"/>
                <include name="${phoenix.dir}/**"/>
                <include name="proposals/**"/>
                <include name="src/**"/>
                <include name="tools/**"/>
                <include name="www/**"/>
            </tarfileset>
        </tar>
        <gzip zipfile="${dist.dir}/downloads/src/${name}-with-phoenix-${version}-src.tar.gz" src="${dist.dir}/downloads/src/${name}-with-phoenix-${version}-src.tar"/>
        <delete file="${dist.dir}/downloads/src/${name}-with-phoenix-${version}-src.tar"/>
    </target>
    <!--
       ===================================================================
                                  Mailet SDK distribution
       ===================================================================
  -->
    <target name="dist-mailet-SDK" depends="dist-lite,xdocs,javadocs">
        <echo message ="building mailet SDK distributions"/>

        <mkdir dir="${dist.dir}/MailetSDK/src"/>
        <mkdir dir="${dist.dir}/MailetSDK/javadocs"/>
        <copy todir="${dist.dir}/MailetSDK/src">
            <fileset dir="src">
                <include name="**/mailet/**"/>
            </fileset>
        </copy>
        <copy todir="${dist.dir}/MailetSDK/javadocs">
            <fileset dir="${build.dir}/mailet">
                <include name="**/*"/>
            </fileset>
        </copy>
        <zip zipfile="${dist.dir}/downloads/bin/${name}-MailetSDK-${version}.zip">
            <fileset dir="dist">
                <include name="${name}-${version}/**"/>
                <exclude name="${name}-${version}/downloads/**"/>
            </fileset>
        </zip>
        <tar longfile="gnu" tarfile="${dist.dir}/downloads/bin/${name}-MailetSDK-${version}.tar">
            <tarfileset dir="dist" username="${name}" group="${name}">
                <include name="${name}-${version}/**"/>
                <exclude name="${name}-${version}/downloads/**"/>
            </tarfileset>
        </tar>
        <gzip zipfile="${dist.dir}/downloads/bin/${name}-MailetSDK-${version}.tar.gz" src="${dist.dir}/downloads/bin/${name}-MailetSDK-${version}.tar"/>
        <delete file="${dist.dir}/downloads/bin/${name}-MailetSDK-${version}.tar"/>
        <delete dir="${dist.dir}/MailetSDK"/>
    </target>
    <!--
       ===================================================================
                                  delete dist/ and build/
       ===================================================================
  -->
    <target name="clean">
        <echo message ="deleting working directories ready for a clean build"/>

        <delete dir="${dist.dir}"/>
        <delete dir="${build.dir}"/>
    </target>
    <!-- =================================================================== -->
    <!-- Help on usage                                                       -->
    <!-- =================================================================== -->
    <target name="usage">
        <echo message=""/>
        <echo message=""/>
        <echo message="JAMES Build file"/>
        <echo message="-------------------------------------------------------------"/>
        <echo message=""/>
        <echo message=" available targets are:"/>
        <echo message=""/>
        <echo message="   dist-lite --> generates unpacked distribution (default)"/>
        <echo message="   website   --> makes all the docs and javadocs"/>
        <echo message="   compile   --> compiles the source code"/>
        <echo message="   dist      --> generates all the JAMES distributions, packed"/>
        <echo message="   clean     --> cleans up the directory"/>
        <echo message="   xdocs     --> creates the documentaion for James"/>
        <echo message="   javadocs  --> creates the Javadoc"/>
        <echo message=""/>
        <echo message=" See the comments inside the build.xml file for more details."/>
        <echo message="-------------------------------------------------------------"/>
        <echo message=""/>
        <echo message=""/>
    </target>
    </project>

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

Reply via email to