<project name="Buzztroll Mud" default="jar" basedir=".">

  <property file="build.properties"/>

  <property name="project"        value="Buzztroll Mud"/>

  <property name="build.dir"      value="BUILD"/>
  <property name="src.dir"        value="src"/>
  <property name="dst.dir"        value="src"/>


  <property name="jar.filename"   value="BuzzTrollMud.jar"/>
  <property name="jar.file"       value="${build.dir}/${jar.filename}"/>

  <property name="jars" value = "${jar.file}"/>

  <property name="exclude.dirs" value="" />
  <property name="debug" value="on" />


  <path id="classpath">
    <fileset dir="lib">
     <include name="*.jar"/>
     <include name="*.zip"/>
    </fileset>
  </path>

  <!-- =================================================================== -->
  <!-- Functions                                                           -->
  <!-- =================================================================== -->
  
  <target name="prepare">
	<mkdir dir="${build.dir}"/>
  </target>

  <target name="setenv">
    <echo message=""/>
    <echo message="--- Property values ---" />
    <echo message="debug=${debug}" />
    <echo message="deprecation=${deprecation}" />
    <echo message="optimize=${optimize}" />
  </target>

  <target name="compile" depends="setenv">
	<javac  srcdir="${src.dir}" 
		destdir="${dst.dir}"
 		includes="org/buzztroll/**/*.java"
		excludes="${exclude.dirs}"
		classpathref="classpath"
        	debug="${debug}" 
		optimize="${optimize}"
		deprecation="${deprecation}">
	</javac>
  </target>  

  <target name="clean">
	<delete>
		<fileset dir="${dst.dir}" includes="org/buzztroll/**/*.class, ${jars}" />
	</delete>
        <delete file="${jar.file}"/>
  </target>

  <!-- =================================================================== -->
  <!-- Distclean -->
  <!-- =================================================================== -->

  <target name="distclean" depends="clean">
        <delete dir="${build.dir}"/>
  </target>

  <target name="jar" depends="prepare,compile" >
	<jar    jarfile="${jar.file}"
		basedir="${dst.dir}"
		includes="org/buzztroll/**/*.class"
		manifest="src/mf"
	/>
  </target>

  <!-- =================================================================== -->
  <!-- Binary distribution                                                 -->
  <!-- =================================================================== -->

  <target name="dist" depends="jar" >
	<mkdir dir="${dist.dir}"/>
	<mkdir dir="${dist.dir}/bin"/>
	<mkdir dir="${dist.dir}/lib"/>
	<mkdir dir="${dist.dir}/include"/>
        <mkdir dir="${dist.dir}/etc"/>

	<copy todir="${dist.dir}/lib" >
		<fileset dir="lib" excludes="junit.jar" />
	</copy>

	<copy todir="${dist.dir}/bin" >
		<fileset dir="etc/unix">
		  <exclude name="dnd-desktop" />
		  <exclude name="garaGUI" />
		  <exclude name="gramGUI" />
 		</fileset>
		<fileset dir="etc/windows">
		 <exclude name="dnd-desktop.bat" />
		 <exclude name="garaGUI.bat" />
		 <exclude name="gramGUI.bat" />
		</fileset>
	</copy>

	<copy todir="${dist.dir}/include" >
		<fileset dir="include" includes="**/*dtd*" />
	</copy>

	<copy file="${jar.file}" todir="${dist.dir}/lib" />
	<copy file="etc/README.TXT" todir="${dist.dir}" />
	<copy file="FAQ.TXT" todir="${dist.dir}" />
        <copy file="CHANGES.TXT" todir="${dist.dir}" />
	<copy file="LICENSE.TXT" todir="${dist.dir}" />
	<copy file="bin/mkprops.pl" todir="${dist.dir}/bin/" />
	<copy file="etc/cog.properties.sample" todir="${dist.dir}/etc" />

	<chmod file="${dist.dir}/bin/globus-gass-server" perm="+x" />
	<chmod file="${dist.dir}/bin/globus-personal-gatekeeper" perm="+x" />
	<chmod file="${dist.dir}/bin/globus-gass-server-shutdown" perm="+x" />
	<chmod file="${dist.dir}/bin/globus-url-copy" perm="+x" />
	<chmod file="${dist.dir}/bin/globusrun" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-proxy-init" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-proxy-info" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-proxy-destroy" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-cert-info" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-info-search" perm="+x" />
	<chmod file="${dist.dir}/bin/grid-change-pass-phrase" perm="+x" />
	<chmod file="${dist.dir}/bin/visual-grid-proxy-init" perm="+x" />
	<chmod file="${dist.dir}/bin/visual-myproxy" perm="+x" />
	<chmod file="${dist.dir}/bin/myproxy" perm="+x" />
	<chmod file="${dist.dir}/bin/setup" perm="+x" />
	<chmod file="${dist.dir}/bin/mdsml-converter" perm="+x" />
	<chmod file="${dist.dir}/bin/globus2jks" perm="+x" />

	<fixcrlf srcdir="${dist.dir}/bin"
		 eol="crlf"
		 includes="**/*.bat" />
  </target>

  <target name="distzip" depends="dist">
	<zip zipfile="${build.dir}/cog-${version}-bin.zip"
	     basedir="${build.dir}"
	     includes="cog-${version}/**" />
  </target>

  <target name="distgzip" depends="dist">
	<tar tarfile="${build.dir}/cog-${version}-bin.tar" 
	     basedir="${build.dir}" 
	     includes="cog-${version}/**" />
	<gzip zipfile="${build.dir}/cog-${version}-bin.tar.gz" 
	      src="${build.dir}/cog-${version}-bin.tar" />
	<delete file="${build.dir}/cog-${version}-bin.tar" />
  </target>

  <target name="distsrc" depends="prepare" >
        <delete file="${build.dir}/cog-${version}-src.tar.gz" />

        <exec dir="." executable="mv">
          <arg line="cog/ cog-${version}" />
        </exec>

        <tar tarfile="${build.dir}/cog-${version}-src.tar"
                basedir="." includes="cog-${version}/**"/>

        <gzip zipfile="${build.dir}/cog-${version}-src.tar.gz"
                src="${build.dir}/cog-${version}-src.tar"/>

        <delete file="${build.dir}/cog-${version}-src.tar" />
  </target>

 <target name="client">
    <java     classname="org.globus.security.gsi.gssapi.GssClient" fork="yes">
		<classpath>
			<pathelement location="src" />
			<path refid="classpath" />
			<pathelement location="${test.cfg.dir}" />
		</classpath>
		<arg line ="${cmd}"/>
   </java>
 </target>

</project>