blob: db6ecdae4ac437e7ba2032d39f30088702ca8e4f [file] [log] [blame]
<project name="manager" default="build-main" basedir=".">
<!-- ===================== Initialize Property Values =================== -->
<!-- See "build.properties.sample" in the top level directory for all -->
<!-- property values you must customize for successful building!!! -->
<property file="build.properties"/>
<property file="../build.properties"/>
<property file="../../build.properties"/>
<property file="${user.home}/build.properties"/>
<property name="build.compiler" value="modern"/>
<property name="webapps.build" value="../build"/>
<property name="webapps.dist" value="../dist"/>
<property name="webapp.name" value="manager"/>
<!-- Dependent JARs and files -->
<property name="servlet-api.jar" value="${api.home}/jsr154/dist/lib/servlet-api.jar"/>
<property name="jsp-api.jar" value="${api.home}/jsr152/dist/lib/jsp-api.jar"/>
<!-- Construct Admin classpath -->
<path id="manager.classpath">
<pathelement location="${catalina.deploy}/classes"/>
<pathelement location="${commons-fileupload.jar}"/>
<pathelement location="${commons-modeler.jar}"/>
<pathelement location="${jmx.jar}"/>
<pathelement location="${servlet-api.jar}"/>
<pathelement location="${jsp-api.jar}"/>
</path>
<!-- ======================== BUILD: Copy JARs ========================== -->
<target name="copy-fileupload.jar">
<copy todir="${webapps.build}/${webapp.name}/WEB-INF/lib" file="${commons-fileupload.jar}"/>
</target>
<!-- =================== BUILD: Create Directories ====================== -->
<target name="build-prepare">
<mkdir dir="${webapps.build}"/>
<mkdir dir="${webapps.build}/${webapp.name}"/>
<mkdir dir="${webapps.build}/${webapp.name}/images"/>
<mkdir dir="${webapps.build}/${webapp.name}/WEB-INF"/>
<mkdir dir="${webapps.build}/${webapp.name}/WEB-INF/classes"/>
</target>
<!-- ================ BUILD: Copy Static Files ========================== -->
<target name="build-static" depends="build-prepare,copy-fileupload.jar">
<copy todir="${webapps.build}/${webapp.name}">
<fileset dir=".">
<exclude name="build.*"/>
</fileset>
</copy>
</target>
<!-- ================= BUILD: Compile Server Components ================= -->
<target name="build-main" depends="build-static">
<!-- Top Level Directory -->
<style basedir="../docs"
destdir="${webapps.build}/${webapp.name}"
extension=".html"
style="tomcat-docs.xsl"
excludes="build.xml project.xml"
includes="manager-howto.xml,html-manager-howto.xml">
<param name="relative-path" expression="."/>
<param name="project-menu" expression="nomenu"/>
<param name="standalone" expression="standalone"/>
</style>
<!-- Images Subdirectory -->
<copy todir="${webapps.build}/${webapp.name}/images">
<fileset dir="../docs/images">
<exclude name="printer.gif"/>
</fileset>
</copy>
<javac srcdir="WEB-INF/classes"
destdir="${webapps.build}/${webapp.name}/WEB-INF/classes"
debug="${compile.debug}" deprecation="${compile.deprecation}"
optimize="${compile.optimize}"
excludes="**/CVS/**">
<classpath refid="manager.classpath" />
</javac>
</target>
<!-- ==================== BUILD: Rebuild Everything ===================== -->
<target name="all" depends="build-clean,build-main"
description="Clean and build manager webapp"/>
<!-- ======================= BUILD: Clean Directory ===================== -->
<target name="build-clean">
<delete dir="${webapps.build}/${webapp.name}"/>
</target>
<!-- ======================= DIST: Create Directories =================== -->
<target name="dist-prepare">
<mkdir dir="${webapps.dist}"/>
</target>
<!-- ======================= DIST: Create Distribution Files ============ -->
<target name="dist" depends="build-main,dist-prepare"
description="Create manager webapp binary distribution">
<jar jarfile="${webapps.dist}/${webapp.name}.war"
basedir="${webapps.build}/${webapp.name}" includes="**"/>
</target>
<!-- ======================= DIST: Clean Directory ====================== -->
<target name="dist-clean">
<deltree dir="${dist.dir}/${webapp.name}"/>
</target>
<!-- ====================== Convenient Synonyms ========================= -->
<target name="clean" depends="build-clean,dist-clean"
description="Clean build and dist directories"/>
</project>