<project default="dist">
  <property name="test-database.dir" value="test-database"/>
  <property name="dist.dir" value="dist"/>

  <property name="cm.component" value="bdb-sisc"/>
  <property name="cm.version" value="v0.1"/>
  <property name="cm.vendor" value="lshift.net"/>
  <target name="print-version" description="Print packaging information for Use packager">
    <echo message="COMPONENT(${cm.component})"/>
    <echo message="VERSION(${cm.version})"/>
    <echo message="VENDOR(${cm.vendor})"/>
  </target>

  <taskdef name="use" classname="net.lshift.cm.Use"/>
  <use>
    <moduleset>
      <module name="je" vendor="sleepycat.com" version="3.0.12">
	<import src="http://downloads.sleepycat.com/je-3.0.12.tar.gz"
		prefix="je-3.0.12/"/>
      </module>
      <module name="sisc" vendor="sisc.sourceforge.net" version="1.13.7">
	<import src="http://kent.dl.sourceforge.net/sourceforge/sisc/sisc-1.13.7.tar.gz"
		prefix="sisc-1.13.7/"/>
      </module>
    </moduleset>
  </use>

  <path id="compile.classpath">
    <pathelement path="${je.home}/lib/je.jar"/>
    <fileset dir="${sisc.home}">
      <include name="sisc.jar"/>
      <include name="sisc-lib.jar"/>
      <include name="sisc-opt.jar"/>
    </fileset>
  </path>

  <use>
    <moduleset>
      <module name="sisc-ant" vendor="lshift.net" version="v1.0-sisc${sisc.version}"/>
    </moduleset>
  </use>
  <taskdef name="sisc-task" classname="net.lshift.sisc.SiscTask">
    <classpath>
      <pathelement location="${sisc-ant.home}/build/sisc-ant.jar"/>
      <path refid="compile.classpath"/>
    </classpath>
  </taskdef>

  <target name="clean" description="Delete build products">
    <delete dir="${dist.dir}"/>
  </target>

  <target name="dist" description="Construct distribution directory">
    <mkdir dir="${dist.dir}"/>
    <jar destfile="${dist.dir}/${cm.component}-${cm.version}.jar">
      <fileset dir="src/scm" includes="lshift/**/*"/>
    </jar>
  </target>

  <target name="run" description="Run main server">
    <sisc-task execFile="main.scm"
	       listen="8922"
	       siscHome="${sisc.home}"
	       classpathref="compile.classpath"
	       baseDir="src/scm"/>
  </target>

  <target name="drop-db" description="Remove all database files in the ${test-database.dir} directory">
    <delete>
      <fileset dir="${test-database.dir}" includes="**/*"/>
    </delete>
  </target>
</project>

