<project name="Struts Web Applications" default="compile" basedir=".">


<!--
        This is a build file that creates all of the web applications included
        in a Struts distribution, using the generic "build-webapp.xml" script
        for the details
-->


<!-- ========== Prerequisite Properties =================================== -->


<!--
        These properties MUST be set on the "ant" command line, the "antrc"
        properties file in your home directory, or from settings in a superior
        build.xml script.

        build.home                    Base directory into which we are building
                                      the Struts components.

        compile.classpath             If specified, contains a set of JAR files
                                      and/or directories to be added to the
                                      compilation classpath.

        servlet.jar                   The pathname of the servlet API classes
                                      that you wish to compile against.

        struts.libs                   The directory containing struts.jar and
                                      the associated TLD files.

        webapp.libs                   If specified, must be the pathname of a
                                      directory from which all available
                                      "*.jar" files are copied to the web
                                      application's WEB-INF/lib directory.
-->

<property name="build.home"           value="target"/>
<property name="servlet.jar"          value="../jakarta-servletapi/lib/servlet.jar"/>
<property name="struts.libs"          value="${build.home}/library"/>



<!-- ========== Initialization Properties ================================= -->


<!--
        These property values may optionally be overridden with property
        settings from an "ant" command line, the "antrc" properties file
        in your home directory, or from settings in a superior build.xml
        script.
-->


<!-- Should Java compilations set the debug compiler option? -->
<property name="compile.debug"         value="true" />

<!-- Should Java compilations set the deprecation compiler option? -->
<property name="compile.deprecation"   value="false" />

<!-- Should Java compilations set the optimize compiler option? -->
<property name="compile.optimize"      value="true" />

<!-- The base directory for distribution targets -->
<property name="dist.home"             value="dist" />

<!-- The directory into which Struts JAR and TLD files have been created -->
<property name="struts.home"           value="${build.home}/library" />

<!-- Directory where core struts library configurations files are stored -->
<property name="conf.share.dir" value="conf/share"/>

<!-- Doc directory -->
<property name="doc.dir" value="doc"/>


<!-- ========== Executable Targets ======================================== -->


<!--
        The "static.generic" target causes the "static" target of each
        individual web application to be executed.
-->
<target name="static.generic">
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="blank"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="documentation"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="example"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="exercise-taglib"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="template-example"/>
  </ant>
  <!--ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="test"/>
  </ant-->
  <ant  antfile="build-webapp.xml"    target="static">
    <property name="webapp.name"      value="upload"/>
  </ant>
</target>


<!--
        The "static" target causes non-generic static activity required
        for specific tag libraries to be executed.
-->
<target name="static" depends="static.generic"
        description="Copy static resources for individual web applications">
    <!-- Copy DTDs for Struts constructs -->
    <copy  todir="${build.home}/documentation/dtds">
      <fileset dir="${conf.share.dir}" includes="**/*.dtd"/>
    </copy>
    <!-- Copy required image for the Struts example application -->
    <copy tofile="${build.home}/example/struts-power.gif"
            file="${doc.dir}/images/struts-power.gif"/>
</target>


<!--
        The "compile.generic" target causes the "compile" target of each
        individual web application to be executed.
-->
<target name="compile.generic">
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="blank"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="documentation"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="example"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="exercise-taglib"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="template-example"/>
  </ant>
  <!--ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="test"/>
  </ant-->
  <ant  antfile="build-webapp.xml"    target="compile">
    <property name="webapp.name"      value="upload"/>
  </ant>
</target>


<!--
        The "compile" target causes non-generic compile activity required
        for specific tag libraries to be executed.
-->
<target name="compile" depends="compile.generic"
        description="Compile individual web applications">
    <!-- Create the taglib documentation -->
    <style   basedir="${doc.dir}" destdir="${build.home}/documentation"
           extension=".html" style="stylesheets/struts.xsl" includes="*.xml"/>
    <!-- Create the user guide -->
    <style   basedir="${doc.dir}/userGuide"
             destdir="${build.home}/documentation/userGuide"
           extension=".html" style="../stylesheets/userGuide.xsl"
            includes="*.xml"/>
    <!-- Copy the basic documentation files -->
    <copy      todir="${build.home}/documentation">
      <fileset   dir="${doc.dir}">
        <include name="**/*.css"/>
        <include name="**/*.gif"/>
        <include name="**/*.html"/>
        <include name="**/*.jpg"/>
        <include name="**/*.js"/>
      </fileset>
    </copy>
    <!-- Copy the basic user guide files -->
    <copy      todir="${build.home}/documentation/userGuide">
      <fileset   dir="${doc.dir}/userGuide">
        <include name="**/*.css"/>
        <include name="**/*.gif"/>
        <include name="**/*.html"/>
        <include name="**/*.jpg"/>
        <include name="**/*.js"/>
      </fileset>
    </copy>

</target>


<!--
        The "dist.generic" target causes the "dist" target of each
        individual web application to be executed.
-->
<target name="dist.generic">
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="blank"/>
    <property name="webapp.war"       value="struts-blank.war"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="documentation"/>
    <property name="webapp.war"       value="struts-documentation.war"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="example"/>
    <property name="webapp.war"       value="struts-example.war"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="exercise-taglib"/>
    <property name="webapp.war"       value="struts-exercise-taglib.war"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="template-example"/>
    <property name="webapp.war"       value="struts-template.war"/>
  </ant>
  <!--ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="test"/>
    <property name="webapp.war"       value="struts-test.war"/>
  </ant-->
  <ant  antfile="build-webapp.xml"    target="dist">
    <property name="webapp.name"      value="upload"/>
    <property name="webapp.war"       value="struts-upload.war"/>
  </ant>
</target>


<!--
        The "dist" target causes non-generic dist activity required
        for specific tag libraries to be executed.
-->
<target name="dist" depends="dist.generic"
        description="Create distribution output of web applications">
</target>


<!--
        The "clean.generic" target causes the "clean" target of each
        individual web application to be executed.
-->
<target name="clean.generic">
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="blank"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="documentation"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="example"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="exercise-taglib"/>
  </ant>
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="template-example"/>
  </ant>
  <!--ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="test"/>
  </ant-->
  <ant  antfile="build-webapp.xml"    target="clean">
    <property name="webapp.name"      value="upload"/>
  </ant>
</target>


<!--
        The "clean" target causes non-generic clean activity required
        for specific tag libraries to be executed.
-->
<target name="clean" depends="clean.generic"
        description="Clean output for individual web applications">
</target>


</project>
