<project name="servlet" default="build" basedir=".">
  <property name="gwt.root" location=".." />
  <property name="project.tail" value="servlet" />
  <import file="${gwt.root}/common.ant.xml" />

  <property.ensure name="gwt.user.root" location="${gwt.root}/user" />
  <property.ensure name="gwt.dev.build" location="${gwt.build.out}/dev" />
  <property.ensure name="gwt.user.build" location="${gwt.build.out}/user" />
  <property.ensure name="gwt.dev.bin" location="${gwt.dev.build}/bin" />
  <property.ensure name="gwt.user.bin" location="${gwt.user.build}/bin" />

  <property name="project.lib.deps"
      location="${gwt.build.lib}/gwt-${ant.project.name}-deps.jar" />

  <target name="build" description="Packages this project into a jar"
      depends="-servlet, -deps" />

  <target name="clean" description="Cleans this project's intermediate and output files">
    <delete file="${project.lib}" />
    <delete file="${project.lib.deps}" />
  </target>

  <target name="-servlet" description="Packages this project into a jar">
    <mkdir dir="${gwt.build.lib}" />
    <gwt.jar>
      <fileset dir="${gwt.dev.bin}">
        <include name="com/google/gwt/dev/asm/**" />
        <include name="com/google/gwt/dev/util/Name*.class" />
      </fileset>
      <fileset dir="${gwt.user.bin}">
        <exclude name="**/rebind/**" />
        <exclude name="**/tools/**" />
        <exclude name="**/super/**" />
        <exclude name="com/google/gwt/json/**" />
        <exclude name="com/google/gwt/junit/*" />
        <exclude name="com/google/gwt/junit/client/GWTTestCase.*" />
        <exclude name="com/google/gwt/junit/remote/**" />
        <exclude name="com/google/gwt/junit/server/**" />
        <exclude name="com/google/gwt/benchmarks/*" />
        <exclude name="**/*.gwtar" />
      </fileset>

      <!-- additional dependencies (used by scripts). -->
    </gwt.jar>
  </target>

  <target name="-deps" description="Packages this project's dependencies into a jar">
    <mkdir dir="${gwt.build.lib}" />
    <gwt.jar destfile="${project.lib.deps}">
      <!-- The following two jars satisfy RequestFactory dependencies. -->
      <zipfileset src="${gwt.tools.redist}/json/r2_20080312/json-1.5.jar" />
      <zipfileset src="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar" />
    </gwt.jar>
  </target>
</project>
