<!-- ant build file for getopt -->

<project name="gnu.getopt" default="all" basedir=".">

  <!-- Properties -->

  <property name="name" value="gnu.getopt"/>
  <property name="src" value="src"/>
  <property name="build" value="build"/>
  <property name="build.classes" value="${build}/classes"/>
  <property name="build.doc" value="${build}/api"/>
  <property name="build.lib" value="${build}/lib"/>
  <property name="packagenames" value="gnu.getopt.*"/>

  <!-- Targets -->

  <!-- Prepare build directories -->
  <target name="prepare">
    <mkdir dir="${src}"/>
    <mkdir dir="${build}"/>
    <mkdir dir="${build.classes}"/>
    <mkdir dir="${build.lib}"/>
    <mkdir dir="${build.doc}"/>
    <copy todir="${src}/gnu">
      <fileset dir="gnu"/>
    </copy>
  </target>

  <!-- Kill all the created directories -->
  <target name="clean">
    <delete dir="${build}"/>
    <delete dir="${src}"/>
  </target>

  <!-- Build classes -->
  <target name="classes" depends="prepare">
    <javac srcdir="${src}" destdir="${build.classes}" debug="off" 
optimize="on"/>
    <copy todir="${build.classes}">
      <fileset dir="${src}">
        <include name="**/*.properties"/>
      </fileset>
    </copy>
  </target>

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

  <!-- Build the full JavaDocs -->
  <target name="javadoc" depends="prepare">
    <javadoc sourcepath="${src}"
            destdir="${build.doc}"
            doctitle="${name} JavaDoc"
            windowtitle="${name} JavaDoc"
            package="true"
            author="true"
            version="true"
            packagenames="${packagenames}"
    />
  </target>

  <!-- Build everything -->
  <target name="all" depends="jar,javadoc"/>

</project>

