<?xml version="1.0"?>
<project name="tomcatbook" default="build" basedir=".">
  <target name="init">
    <tstamp/>
    <property name="name" value="tomcatbook"/>
    <property name="tomcat-root" value="/Library/Tomcat/"/>
    <property name="build" value="./build/"/>
    <property name="build.classes" value="${build}classes/"/>
    <property name="build.lib" value="${build}lib/"/>
    <property name="build.warroot" value="${build}war-root/"/>
    <property name="deploy" value="${tomcat-root}webapps/${name}/"/>
    <property name="debug" value="on"/>
    <property name="optimize" value="on"/>
    <property name="deprecation" value="on"/>
    <property name="src" value="./src"/>
    <property name="libs" value="lib/servlet.jar:lib/jdbc2_0-
    stdext.jar "/>
  </target>

  <target name="makedirs" depends="init">
    <mkdir dir="${build}"/>
    <mkdir dir="${build.classes}"/>
    <mkdir dir="${build.lib}"/>
    <mkdir dir="${build.warroot}"/>
    <mkdir dir="${build.warroot}WEB-INF/"/>
    <mkdir dir="${build.warroot}WEB-INF/lib/"/>
  </target>

  <target name="compile" depends="init,makedirs">
    <javac srcdir="${src}"
      destdir="${build.classes}"
      debug="${debug}"
      optimize="${optimize}"
      classpath="${libs}"
      includes="com/wiley/tomcatbook/*.java"
      />
  </target>

  <target name="copyfiles" depends="init">
    <copy todir="${build.warroot}WEB-INF/">
      <fileset dir="conf"/>
    </copy>
  </target>
  <target name="build" depends="compile, copyfiles">
  </target>

  <target name="jar" depends="build">
    <jar jarfile="${build.lib}${name}.jar" basedir="${build.classes}"/>
  </target>

  <target name="war" depends="jar">
    <copy todir="${build.warroot}WEB-INF/lib">
      <fileset dir="${build.lib}"/>
    </copy>
    <jar jarfile="${build}${name}.war" basedir="${build.warroot}"/>
  </target>
  <target name="deploy" depends="jar">
    <copy todir="${deploy}WEB-INF/lib">
      <fileset dir="${build.lib}"/>
    </copy>
    <copy todir="${deploy}WEB-INF/">
      <fileset dir="conf/"/>
    </copy>
  </target>

  <target name="clean" depends="init">
    <delete dir="${build}" includeEmptyDirs="true"/>
  </target>
</project>
