| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| 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="host-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="host-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="host-manager.classpath"> |
| <pathelement location="${catalina.deploy}/classes"/> |
| <pathelement location="${commons-fileupload.jar}"/> |
| <pathelement location="${commons-logging.jar}"/> |
| <pathelement location="${commons-modeler.jar}"/> |
| <pathelement location="${jmx.jar}"/> |
| <pathelement location="${servlet-api.jar}"/> |
| <pathelement location="${jsp-api.jar}"/> |
| </path> |
| |
| |
| <!-- ======================== BUILD: Copy JARs ========================== --> |
| |
| |
| <!-- =================== 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 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="host-manager-howto.xml,host-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="host-manager.classpath" /> |
| </javac> |
| |
| </target> |
| |
| |
| <!-- ==================== BUILD: Rebuild Everything ===================== --> |
| <target name="all" depends="build-clean,build-main" |
| description="Clean and build host 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 host 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> |