<?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.
 -->

<project name="modules" default="test" basedir=".">
  <target name="test" description="Test all modules">
    <sequential>
      <subant target="test" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

  <target name="compile" description="Compile all modules" depends="validate">
    <sequential>
      <subant target="compile" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

  <target name="compile-test" description="Compile all tests">
    <sequential>
      <subant target="compile-test" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

  <target name="javadocs" description="Generate javadocs">
    <sequential>
      <subant target="javadocs" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

  <target name="generate-maven-artifacts" description="Generate Maven Artifacts for Modules">
    <sequential>
      <ant target="get-maven-poms" dir=".."/>
      <subant target="dist-maven" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>
  <target name="validate">
     <sequential>
      <subant target="validate" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

  <target name="clean" description="Clean all modules">
    <sequential>
      <delete dir="dist"/>
      <subant target="clean" inheritall="false" failonerror="true">
        <fileset dir="analysis" includes="build.xml" />
        <fileset dir="benchmark" includes="build.xml" />
        <fileset dir="grouping" includes="build.xml" />
        <fileset dir="suggest" includes="build.xml" />
      </subant>
    </sequential>
  </target>

</project>
