<?xml version="1.0"?>
<!--
Copyright (c) 2006, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution.  The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-->
<project name="Tools" default="all" basedir=".">

  <property environment="env"/>

  <target name="all" depends="C_Code"/>

  <target name="C_Code" depends="JavaCode">
    <subant target="" inheritall="false">
      <filelist dir="."
        files="
          Source/TianoTools/build.xml
          "/>
    </subant>
  </target>

  <target name="JavaCode" depends="SurfaceArea">
    <subant target="" verbose="true" inheritall="false">
      <!-- Note: this is an ordered list. The projects have dependencies between them. -->
      <filelist dir="."
        files="
          Source/Common/build.xml
          Source/GenBuild/build.xml
          Source/FrameworkTasks/build.xml
          Source/Cpptasks/build.xml
          Source/FrameworkWizard/build.xml
          "/>
    </subant>
  </target>

  <target name="SurfaceArea" depends="makeCatalog">
    <subant target="" verbose="true" inheritall="false">
      <filelist dir="."
        files="
          Source/SurfaceArea/build.xml
          "/>
    </subant>
  </target>

  <target name="makeCatalog">
    <echo file="XMLSchema/catalog.xml">
      <![CDATA[<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.xsd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
  <rewriteSystem systemIdStartString="http://www.TianoCore.org/2006/Edk2.0/"
    rewritePrefix="file:/]]>${env.WORKSPACE}<![CDATA[/Tools/XMLSchema/"/>
  <rewriteURI uriStartString="http://www.TianoCore.org/2006/Edk2.0/"
    rewritePrefix="file:/]]>${env.WORKSPACE}<![CDATA[/Tools/XMLSchema/"/>
</catalog>]]>
    </echo>
    <copy file="Conf/tools_def.template" tofile="Conf/tools_def.txt" overwrite="false"/>
    <copy file="Conf/target.template" tofile="Conf/target.txt" overwrite="false"/>
  </target>

  <target name="clean">
    <subant target="clean" inheritall="false">
      <filelist dir="."
        files="
          Source/TianoTools/build.xml
          Source/FrameworkWizard/build.xml
          Source/Cpptasks/build.xml
          Source/FrameworkTasks/build.xml
          Source/GenBuild/build.xml
          Source/Common/build.xml
          Source/SurfaceArea/build.xml
          "/>
    </subant>
  </target>

  <target name="cleanall">
    <subant target="cleanall" inheritall="false">
      <filelist dir="."
        files="
          Source/TianoTools/build.xml
          Source/FrameworkWizard/build.xml
          Source/Cpptasks/build.xml
          Source/FrameworkTasks/build.xml
          Source/GenBuild/build.xml
          Source/Common/build.xml
          Source/SurfaceArea/build.xml
          "/>
    </subant>
  </target>
</project>
