<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!-- $Id$ -->
<!-- ===========================================================================

============================================================================ -->

<project default="package" basedir=".">

  <property name="build.compiler" value="classic"/>
  <property name="debug" value="on"/>
  <property name="optimize" value="off"/>
  <property name="deprecation" value="on"/>

  <property name="src.dir" value="./src"/>
  <property name="packages" value="org.apache.fop.hyphenation"/>

  <property name="build.dir" value="./build"/>

  <property name="main.class" value="org.apache.fop.hyphenation.HyphenationTreeAnalysis"/>

  <path id="libs-classpath">
    <fileset dir="../../lib">
      <include name="*.jar"/>
    </fileset>
    <fileset dir="../../build">
      <include name="fop.jar"/>
    </fileset>
  </path>

  <!-- =================================================================== -->
  <!-- Initialization target                                               -->
  <!-- =================================================================== -->
  <target name="init">
    <tstamp/>
    <property name="Name" value="Hyphenation analysis"/>
    <property name="name" value="hyphenation analysis"/>
    <property name="version" value="0.1-SVN"/>
    <property name="year" value="2006"/>
    <echo message="------------------- ${Name} ${version} [${year}] ----------------"/>
  </target>

  <!-- =================================================================== -->
  <!-- Help on usage                                                       -->
  <!-- =================================================================== -->
  <target name="usage">
    <echo message="Use the -projecthelp option instead"/>
  </target>

  <!-- =================================================================== -->
  <!-- Compiles the source directory                                       -->
  <!-- =================================================================== -->
  <target name="compile" depends="init" description="Compile the Java sources">
    <echo message="Compiling the sources "/>
    <!-- create directories -->
    <mkdir dir="${build.dir}"/>

    <javac srcdir="${src.dir}"
           destdir="${build.dir}"
           debug="${debug}"
           deprecation="${deprecation}"
           optimize="${optimize}"
           excludes="">
      <classpath refid="libs-classpath"/>
    </javac>
  </target>

  <!-- =================================================================== -->
  <!-- Clean targets                                                       -->
  <!-- =================================================================== -->
  <target name="clean" depends="init" description="Cleans the build directory">
    <delete dir="${build.dir}"/>
  </target>

</project>

