<project name="Tribes" default="dist" basedir="..">
    
  <property file="${user.home}/build.properties"/>
  <property file="build/build.properties"/>
  <property file="build/build.properties.default"/>
  
  <property name="tribes.version" value="1.0-SNAPSHOT"/>

  <!--Independent build script for Tribes, to not require the entire Tomcat tree to build 
        this module-->
    
  <path id="java.sourcepath">
    <pathelement location="${basedir}/src/share"/>
    <pathelement location="${basedir}/test/java"/>
  </path>

  <path id="javadoc.sourcepath">
    <pathelement location="${basedir}/src/share"/>
    <pathelement location="${basedir}/test/java"/>
  </path>


  <property name="dist.path" value="${basedir}/dist/tribes"/>
  <property name="temp.path" value="${basedir}/dist/temp"/>
  <property name="compile.path" value="${temp.path}/classes"/>
  <property name="docs.path" value="${temp.path}/docs"/>
  <property name="javadoc.path" value="${temp.path}/javadoc"/>
  <property name="download.path" value="${base.path}"/>

  <path id="tribes.classpath">
    <!--
    <pathelement location="${basedir}/build/commons-logging-api.jar"/>
    <pathelement location="${basedir}/build/commons-logging.jar"/>
    -->
    <pathelement location="${junit.jar}"/>
    <pathelement location="${commons-logging.jar}"/>
    <pathelement location="${commons-logging-api.jar}"/>

  </path>

  <!--Borrowed from the tomcat build script to download dependencies-->
  <target name="testexist">
    <echo message="Testing  for ${destfile}"/>
    <available file="${destfile}" property="exist"/>
  </target>
  
  <target name="downloadzip" unless="exist" depends="testexist">
    <!-- Download and extract the package -->
    <get src="${sourcefile}" dest="${download.path}/file.zip" />
    <mkdir dir="${download.path}" />
    <unzip src="${download.path}/file.zip" dest="${lib.path}"/>
    <delete file="${download.path}/file.zip"/>
  </target>
  
  <target name="downloadgz" unless="exist" depends="testexist">
    <!-- Download and extract the package -->
    <get src="${sourcefile}" dest="${download.path}/file.tar.gz" />
    <gunzip src="${download.path}/file.tar.gz" dest="${download.path}/file.tar"/>
    <untar src="${download.path}/file.tar" dest="${lib.path}"/>
    <delete file="${download.path}/file.tar"/>
    <delete file="${download.path}/file.tar.gz"/>
  </target>
  
  <target name="clean">
      <delete dir="${dist.path}"/>  
      <delete dir="${temp.path}"/>  
  </target>
  
  <target name="dependencies" depends="clean">
    <antcall target="downloadzip">       
      <param name="sourcefile" value="${junit.loc}"/>
      <param name="destfile" value="${junit.jar}"/>
    </antcall>  
    <antcall target="downloadgz">
      <param name="sourcefile" value="${commons-logging.loc}"/>
      <param name="destfile" value="${commons-logging.jar}"/>
    </antcall> 
  </target>
  
  <target name="init" depends="clean">
      <mkdir dir="${dist.path}"/>
      <mkdir dir="${compile.path}"/>
      <mkdir dir="${docs.path}"/>
      <mkdir dir="${javadoc.path}"/>
      <mkdir dir="${download.path}"/>
      <mkdir dir="${lib.path}"/>
  </target>
  
  <target name="compile" depends="init,dependencies">
    <javac debug="true" 
           deprecation="true" 
           destdir="${compile.path}" 
           nowarn="true" 
           source="1.4" 
           target="1.4">
      <classpath refid="tribes.classpath"/>     
      <src refid="java.sourcepath" />
    </javac>
    <!--include all the other resources, including source code-->
    <copy todir="${compile.path}">
        <fileset dir="${basedir}/src/share"/>
        <fileset dir="${basedir}/test/java"/>
    </copy>
  </target>
  
  <target name="docs">
    <style basedir="${basedir}/doc"
           destdir="${docs.path}"
           extension=".html"
           style="tomcat-docs.xsl"
           excludes="build.xml project.xml *_transform.xml"
           includes="*.xml">
      <param name="relative-path" expression="."/>
    </style>
    <copy todir="${docs.path}">
        <fileset dir="${basedir}/doc"/>
    </copy>
  </target>
  
  <target name="javadoc">
    <javadoc packagenames="org.apache.catalina.*"
      sourcepathref="java.sourcepath"
      destdir="${javadoc.path}"
      author="true"
      version="true"
      windowtitle="Tribes API Documentation"
      doctitle="Tribes API"
      bottom="Copyright &#169; 2000-2006 Apache Software Foundation.  All Rights Reserved."
      verbose="false">
      <classpath refid="tribes.classpath"/>
    </javadoc>
  </target>

  <target name="dist" depends="compile,docs,javadoc">
    <jar destfile="${dist.path}/apache-tribes.jar">
      <fileset dir="${compile.path}"/>
      <fileset dir="${basedir}">
        <include name="VERSION"/>
      </fileset>
    </jar>
    <mkdir dir="${dist.path}/archive"/>
    <copyfile src="${dist.path}/apache-tribes.jar" dest="${dist.path}/archive/tribes-${tribes.version}-sources.jar"/>
    <delete dir="${compile.path}">
        <include name="**/*.java"/>
    </delete>
    <jar destfile="${dist.path}/apache-tribes-bin.jar">
      <fileset dir="${compile.path}"/>
      <fileset dir="${basedir}">
        <include name="VERSION"/>
      </fileset>
    </jar>
    <copyfile src="${dist.path}/apache-tribes-bin.jar" dest="${dist.path}/archive/tribes-${tribes.version}.jar"/>

    <jar destfile="${dist.path}/tribes-all.zip">
      <fileset dir="${dist.path}">
        <include name="apache-tribes.jar"/>
        <include name="apache-tribes-bin.jar"/>
        <include name="archive/*.jar"/>
        
      </fileset>
      <fileset dir="${temp.path}">
        <exclude name="classes/**"/>
      </fileset>
      <fileset dir="${basedir}">
        <include name="VERSION"/>
      </fileset>
    </jar>
  </target>
  
  <target name="mvn" depends="dist">
      <mkdir dir="${dist.path}/mvn"/>
      <copy todir="${dist.path}/mvn">
          <fileset dir="${dist.path}/archive">
              <include name="tribes-${tribes.version}-sources.jar"/>
              <include name="tribes-${tribes.version}.jar"/>
          </fileset>
      </copy>
      <copy tofile="${dist.path}/mvn/tribes-${tribes.version}.pom"
            file="${basedir}/build/mvn/tribes.pom">
          <filterset>
              <filter token="tribes.version" value="${tribes.version}"/>
          </filterset>
      </copy>
      <exec dir="${dist.path}/mvn" 
            executable="openssl" 
            input="${dist.path}/mvn/tribes-${tribes.version}.jar"
            output="${dist.path}/mvn/tribes-${tribes.version}.jar.sha1">
          <arg line="sha1"/>
      </exec>
      <exec dir="${dist.path}/mvn" 
            executable="openssl" 
            input="${dist.path}/mvn/tribes-${tribes.version}-sources.jar"
            output="${dist.path}/mvn/tribes-${tribes.version}-sources.jar.sha1">
          <arg line="sha1"/>
      </exec>
      <exec dir="${dist.path}/mvn" 
            executable="openssl" 
            input="${dist.path}/mvn/tribes-${tribes.version}.pom"
            output="${dist.path}/mvn/tribes-${tribes.version}.pom.sha1">
          <arg line="sha1"/>
      </exec>
  </target>
  
</project>
