<!-- 
@version $Rev$ $Date$
-->
<project name="artimus" basedir="." default="project">
<property name="project.title" value="Artimus"/>
<property name="project.version" value="0.2"/>
<property name="dist.name" value="artimus"/>


    <!-- Build working classpath -->
    <path id="project.class.path">
        <pathelement path ="lib/commons-digester.jar"/>
        <pathelement path ="lib/commons-beanutils.jar"/>
        <pathelement path ="lib/commons-collections.jar"/>
        <pathelement path ="lib/lucene.jar"/>
        <pathelement path ="lib/poolman.jar"/>
        <pathelement path ="lib/scaffold.jar"/>
        <pathelement path ="lib/struts.jar"/>
        <pathelement path ="lib/validator.jar"/>
        <pathelement path ="classes"/>
        <pathelement path ="${classpath}"/>
    </path>

    <target name="prepare">
        <tstamp/>
    </target>

    <target name="conf">
        <!-- Copy any configuration files -->
        <copy todir="classes">
            <fileset dir="src/conf"/>
        </copy>
    </target>

    <target name="compile" depends="prepare,conf">
        <!-- Remove jikes if you must use javac instead -->
        <property name="build.compiler" value="jikes"/>
        <javac srcdir="src" destdir="classes">
            <classpath refid="project.class.path"/>
        </javac>
    </target>

    <!-- Remove classes directory for clean build -->
    <target name="clean" 
      description="Prepare for clean build">
      <delete dir="classes"/>
      <mkdir    dir="classes"/>
    </target>

    <!-- Build Javadoc documentation -->
    <target name="javadoc"
     description="Generate JavaDoc API docs">
        
        <delete dir="./doc/api"/>
        <mkdir dir="./doc/api"/>
        <javadoc sourcepath="./src/java"
            destdir="./doc/api"
            classpath="std-ext/servlet_22.jar:
                std-ext/jdbc20ext.jar:
                lib/commons-digester.jar:
                lib/scaffold.jar:
                lib/struts-101.jar:
                lib/lucene.jar:"
            packagenames="org.apache.artimus.*"
            author="false"
            private="true"
            version="true"
            windowtitle="Artimus API Documentation"
            doctitle="&lt;h1&gt;${project.title} Documentation (Version ${project.version})&lt;/h1&gt;"
            bottom="Copyright &#169; 2001 - The Apache Software Foundation"/>
    </target>

    <!-- Build binary distribution -->
    <target name="dist" depends="clean,compile"
        description="Create binary distribution">
      <delete dir="./dist"/>
      <mkdir    dir="./dist"/>
      <copy     file="../LICENSE"
                todir="./dist"/>
      <jar    jarfile="./dist/${dist.name}.jar"
              basedir="./classes"
              manifest="../META-INF/MANIFEST.MF"/>
      <war    warfile="./dist/${dist.name}.war"
              webxml="../WEB-INF/web.xml"
              manifest="../META-INF/MANIFEST.MF"
              basedir="../"
              excludes="WEB-INF/dist,WEB-INF/web.xml,META-INF/MANIFEST.MF"/>
    </target>

    <!-- Build entire project -->
    <target name="project" depends="clean,prepare,compile,javadoc,dist"/>
</project>
