| <?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="Catalina" default="deploy" 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="${user.home}/build.properties"/--> |
| |
| <!-- Build Defaults --> |
| <property name="catalina.home" location=".."/> |
| <property name="catalina.build" value="${catalina.home}/catalina/build"/> |
| <property name="classes.dir" value="${catalina.build}/server/classes" /> |
| <property name="catalina.deploy" value="${catalina.home}/build"/> |
| <property name="catalina.dist" value="${catalina.home}/dist"/> |
| <property name="test.failonerror" value="true"/> |
| <property name="test.runner" value="junit.textui.TestRunner"/> |
| <property name="test.webapp" value="../webapps/build/ROOT"/> |
| <property name="test.webapp.war" value="${java.io.tmpdir}/webapp.war"/> |
| |
| <!-- Source dependencies --> |
| <property name="tomcat-util.home" value="${jtc.home}/util"/> |
| <property name="tomcat-coyote.home" value="${jtc.home}/coyote"/> |
| <property name="tomcat-jk.home" value="${jtc.home}/jk"/> |
| <property name="tomcat-http11.home" value="${jtc.home}/http11"/> |
| <property name="tomcat-jni.home" value="${jtc.home}/jni"/> |
| |
| <!-- Dependent JARs and files --> |
| <property name="ant.jar" value="${ant.home}/lib/ant.jar"/> |
| <property name="servlet-api.jar" value="${api.home}/jsr154/dist/lib/servlet-api.jar"/> |
| <property name="tomcat-util.jar" |
| value="${tomcat-util.home}/build/lib/tomcat-util.jar"/> |
| <property name="tomcat-coyote.jar" |
| value="${tomcat-coyote.home}/build/lib/tomcat-coyote.jar"/> |
| <property name="tomcat-jk2.jar" |
| value="${tomcat-jk.home}/build/lib/tomcat-jk2.jar"/> |
| <property name="tomcat-jni.jar" |
| value="${tomcat-jni.home}/dist/tomcat-jni.jar"/> |
| <property name="jk2.properties" |
| value="${tomcat-jk.home}/build/conf/jk2.properties"/> |
| <property name="tomcat-http11.jar" |
| value="${tomcat-http11.home}/build/lib/tomcat-http11.jar"/> |
| <property name="tomcat-dbcp.jar" |
| value="${base.path}/tomcat-deps/naming-factory-dbcp.jar"/> |
| <!-- Construct Catalina classpath --> |
| <path id="catalina.classpath"> |
| <pathelement location="${activation.jar}"/> |
| <pathelement location="${ant.jar}"/> |
| <pathelement location="${commons-beanutils.jar}"/> |
| <pathelement location="${commons-collections.jar}"/> |
| <pathelement location="${tomcat-dbcp.jar}"/> |
| <pathelement location="${commons-digester.jar}"/> |
| <pathelement location="${commons-fileupload.jar}"/> |
| <pathelement location="${commons-launcher.jar}"/> |
| <pathelement location="${commons-logging.jar}"/> |
| <pathelement location="${commons-modeler.jar}"/> |
| <pathelement location="${tomcat-util.jar}"/> |
| <pathelement location="${tomcat-coyote.jar}"/> |
| <pathelement location="${tomcat-http11.jar}"/> |
| <pathelement location="${jaas.jar}"/> |
| <pathelement location="${javagroups.jar}"/> |
| <pathelement location="${jcert.jar}"/> |
| <pathelement location="${jmx.jar}"/> |
| <pathelement location="${jmx-remote.jar}"/> |
| <pathelement location="${jndi.jar}"/> |
| <pathelement location="${jnet.jar}"/> |
| <pathelement location="${jsse.jar}"/> |
| <pathelement location="${java.home}/lib/jsse.jar"/> |
| <pathelement location="${jta.jar}"/> |
| <pathelement location="${ldap.jar}"/> |
| <pathelement location="${mail.jar}"/> |
| <pathelement location="${regexp.jar}"/> |
| <pathelement location="${servlet-api.jar}"/> |
| <pathelement location="${xercesImpl.jar}"/> |
| <pathelement location="${xml-apis.jar}"/> |
| <pathelement location="${classes.dir}"/> |
| </path> |
| |
| <!-- Construct unit tests classpath --> |
| <path id="test.classpath"> |
| <pathelement location="${junit.jar}"/> |
| <pathelement location="${activation.jar}"/> |
| <pathelement location="${ant.jar}"/> |
| <pathelement location="${commons-beanutils.jar}"/> |
| <pathelement location="${commons-collections.jar}"/> |
| <pathelement location="${tomcat-dbcp.jar}"/> |
| <pathelement location="${commons-digester.jar}"/> |
| <pathelement location="${commons-fileupload.jar}"/> |
| <pathelement location="${commons-launcher.jar}"/> |
| <pathelement location="${commons-logging.jar}"/> |
| <pathelement location="${commons-modeler.jar}"/> |
| <pathelement location="${jaas.jar}"/> |
| <pathelement location="${jcert.jar}"/> |
| <pathelement location="${jmx.jar}"/> |
| <pathelement location="${jndi.jar}"/> |
| <pathelement location="${jnet.jar}"/> |
| <pathelement location="${jsse.jar}"/> |
| <pathelement location="${jta.jar}"/> |
| <pathelement location="${ldap.jar}"/> |
| <pathelement location="${mail.jar}"/> |
| <pathelement location="${regexp.jar}"/> |
| <pathelement location="${servlet-api.jar}"/> |
| <pathelement location="${xercesImpl.jar}"/> |
| <pathelement location="${xml-apis.jar}"/> |
| <pathelement location="${classes.dir}"/> |
| <pathelement location="${catalina.build}/tests"/> |
| </path> |
| |
| <!-- Source path --> |
| <path id="javadoc.sourcepath"> |
| <pathelement location="src/share"/> |
| <pathelement location="${tomcat-util.home}/java"/> |
| <pathelement location="${tomcat-coyote.home}/src/java"/> |
| <pathelement location="${tomcat-jk.home}/java"/> |
| <pathelement location="${tomcat-http11.home}/src/java"/> |
| <pathelement location="../modules/cluster/src/share"/> |
| <pathelement location="../modules/storeconfig/src/share"/> |
| </path> |
| |
| |
| <!-- =================== BUILD: Set compile flags ======================= --> |
| <target name="flags"> |
| |
| <!-- JDK flags --> |
| <available property="jdk.1.2.present" classname="java.util.HashMap" /> |
| <available property="jdk.1.3.present" |
| classname="java.lang.reflect.Proxy" /> |
| <available property="jdk.1.4.present" classname="java.nio.Buffer" /> |
| <available property="jdk.1.5.present" |
| classname="java.util.concurrent.Semaphore" /> |
| |
| <!-- Ant flags --> |
| <available property="style.available" |
| classname="org.apache.tools.ant.taskdefs.optional.TraXLiaison" /> |
| |
| <!-- Source path --> |
| <available property="jtc.home.present" file="${jtc.home}" /> |
| |
| <!-- Class availability flags --> |
| <available property="beanutils.present" |
| classname="org.apache.commons.beanutils.BeanUtils" |
| classpath="${commons-beanutils.jar}"/> |
| <available property="collections.present" |
| classname="org.apache.commons.collections.FastHashMap" |
| classpath="${commons-collections.jar}"/> |
| <available property="dbcp.present" |
| classname="org.apache.tomcat.dbcp.dbcp.ConnectionFactory" |
| classpath="${tomcat-dbcp.jar}"/> |
| <available property="digester.present" |
| classname="org.apache.commons.digester.Digester" |
| classpath="${commons-digester.jar}"/> |
| <available property="fileupload.present" |
| classname="org.apache.commons.fileupload.FileUpload" |
| classpath="${commons-fileupload.jar}"/> |
| <available property="launcher.present" |
| classname="org.apache.commons.launcher.Launcher" |
| classpath="${commons-launcher.jar}"/> |
| <available property="launcher.bootstrap.present" |
| file="${commons-launcher.bootstrap.class}"/> |
| <available property="logging.present" |
| classname="org.apache.commons.logging.Log" |
| classpath="${commons-logging.jar}"/> |
| <available property="modeler.present" |
| classname="org.apache.commons.modeler.Registry" |
| classpath="${commons-modeler.jar}:${jmx.jar}"/> |
| <available property="jaas.present" |
| classname="javax.security.auth.Subject" |
| classpath="${jaas.jar}" /> |
| <condition property="jaxp.present"> |
| <and> |
| <available classname="javax.xml.parsers.SAXParser" |
| classpath="${xml-apis.jar}" /> |
| <available classname="org.xml.sax.ContentHandler" |
| classpath="${xml-apis.jar}" /> |
| </and> |
| </condition> |
| <condition property="javamail.present"> |
| <and> |
| <available classname="javax.activation.DataSource" |
| classpath="${activation.jar}" /> |
| <available classname="javax.mail.Service" |
| classpath="${mail.jar}" /> |
| </and> |
| </condition> |
| <available property="jmx.present" |
| classname="javax.management.MBeanServer" |
| classpath="${jmx.jar}" /> |
| <available property="jndi.present" |
| classname="javax.naming.Context" |
| classpath="${jndi.jar}" /> |
| <condition property="jsse.present"> |
| <and> |
| <available classname="javax.security.cert.Certificate" |
| classpath="${jcert.jar}" /> |
| <available classname="javax.net.SocketFactory" |
| classpath="${jnet.jar}" /> |
| <available classname="javax.net.ssl.SSLSocket" |
| classpath="${jsse.jar}" /> |
| </and> |
| </condition> |
| <available property="jta.present" |
| classname="javax.transaction.UserTransaction" |
| classpath="${jta.jar}" /> |
| <available property="junit.present" |
| classname="junit.framework.TestCase" |
| classpath="${junit.jar}" /> |
| <available property="ldap.present" |
| classname="com.sun.jndi.ldap.LdapClient" |
| classpath="${ldap.jar}" /> |
| <available property="pool.present" |
| classname="org.apache.tomcat.dbcp.pool.ObjectPool" |
| classpath="${tomcat-dbcp.jar}"/> |
| <available property="regexp.present" |
| classname="org.apache.regexp.RE" |
| classpath="${regexp.jar}" /> |
| <available property="xerces.present" |
| classname="org.apache.xerces.parsers.SAXParser" |
| classpath="${xercesImpl.jar}" /> |
| |
| <!-- JAR files availability flags --> |
| <available property="dbcp.jar.present" file="${tomcat-dbcp.jar}" /> |
| <available property="fileupload.jar.present" file="${commons-fileupload.jar}" /> |
| <available property="jaas.jar.present" file="${jaas.jar}" /> |
| <condition property="javamail.jar.present"> |
| <and> |
| <available file="${activation.jar}" /> |
| <available file="${mail.jar}" /> |
| </and> |
| </condition> |
| <available property="jmx.jar.present" file="${jmx.jar}" /> |
| <available property="jcert.jar.present" file="${jcert.jar}" /> |
| <available property="jndi.jar.present" file="${jndi.jar}" /> |
| <available property="jnet.jar.present" file="${jnet.jar}" /> |
| <available property="jsse.jar.present" file="${jsse.jar}" /> |
| <available property="jta.jar.present" file="${jta.jar}" /> |
| <available property="junit.jar.present" file="${junit.jar}" /> |
| <condition property="launcher.jars.present"> |
| <and> |
| <equals arg1="${launcher.present}" arg2="true"/> |
| <equals arg1="${launcher.bootstrap.present}" arg2="true"/> |
| </and> |
| </condition> |
| <available property="ldap.jar.present" file="${ldap.jar}" /> |
| <available property="logging.jar.present" file="${commons-logging.jar}" /> |
| <available property="modeler.jar.present" file="${commons-modeler.jar}" /> |
| <available property="pool.jar.present" file="${tomcat-dbcp.jar}" /> |
| <available property="regexp.jar.present" file="${regexp.jar}" /> |
| <available property="servlet-api.jar.present" file="${servlet-api.jar}" /> |
| <available property="tomcat-util.jar.present" file="${tomcat-util.jar}" /> |
| <available property="xercesImpl.jar.present" file="${xercesImpl.jar}"/> |
| <available property="xml-apis.jar.present" file="${xml-apis.jar}"/> |
| <condition property="xerces2.jars.present"> |
| <and> |
| <equals arg1="${xercesImpl.jar.present}" arg2="true"/> |
| <equals arg1="${xml-apis.jar.present}" arg2="true"/> |
| </and> |
| </condition> |
| |
| <!-- Conditional compilation flags (determined from the flags above) --> |
| <condition property="compile.dbcp"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <and> |
| <equals arg1="${dbcp.present}" arg2="true" /> |
| <equals arg1="${pool.present}" arg2="true" /> |
| </and> |
| </or> |
| </condition> |
| <condition property="compile.jaas"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${jaas.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.javamail"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${javamail.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.jmx"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <and> |
| <equals arg1="${jmx.present}" arg2="true" /> |
| <equals arg1="${modeler.present}" arg2="true" /> |
| </and> |
| </or> |
| </condition> |
| <condition property="compile.jndi"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${jndi.present}" arg2="true" /> |
| <equals arg1="${jdk.1.3.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.jsse"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${jsse.present}" arg2="true" /> |
| <equals arg1="${jdk.1.4.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.jta"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${jta.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.junit"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${junit.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="compile.launcher"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <and> |
| <equals arg1="${launcher.present}" arg2="true" /> |
| <equals arg1="${launcher.bootstrap.present}" arg2="true" /> |
| </and> |
| </or> |
| </condition> |
| <condition property="compile.ldap"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${ldap.present}" arg2="true" /> |
| <equals arg1="${jdk.1.3.present}" arg2="true" /> |
| </or> |
| </condition> |
| <property name="compile.ssi" value="true"/> |
| |
| |
| <!-- Conditional copy flags (determined from the flags above) --> |
| <condition property="copy.dbcp.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${dbcp.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.jmx.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${jmx.jar.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.lang.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${lang.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.launcher.jars"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${launcher.jars.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.modeler.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${modeler.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.logging.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${logging.present}" arg2="true" /> |
| </or> |
| </condition> |
| <condition property="copy.pool.jar"> |
| <or> |
| <equals arg1="${full.dist}" arg2="on" /> |
| <equals arg1="${pool.present}" arg2="true" /> |
| </or> |
| </condition> |
| |
| </target> |
| |
| |
| <!-- =================== BUILD: Set compile flags ======================= --> |
| <target name="flags.display" depends="flags" unless="flags.hide"> |
| |
| <echo message="--- Build environment for Catalina ---" /> |
| |
| <echo message="If ${property_name} is displayed, then the property is not set)" /> |
| |
| <echo message="--- Build options ---" /> |
| <echo message="full.dist=${full.dist}" /> |
| <echo message="build.sysclasspath=${build.sysclasspath}" /> |
| <echo message="compile.debug=${compile.debug}" /> |
| <echo message="compile.deprecation=${compile.deprecation}" /> |
| <echo message="compile.optimize=${compile.optimize}" /> |
| |
| <echo message="--- Ant Flags ---" /> |
| <echo message="<style> task available (required)=${style.available}" /> |
| |
| <echo message="--- JDK ---" /> |
| <echo message="jdk.1.2.present=${jdk.1.2.present}" /> |
| <echo message="jdk.1.3.present=${jdk.1.3.present}" /> |
| <echo message="jdk.1.4.present=${jdk.1.4.present}" /> |
| <echo message="jdk.1.5.present=${jdk.1.5.present}" /> |
| |
| <echo message="--- Source Dependencies ---" /> |
| <echo message="jtc.home.present=${jtc.home.present}" /> |
| |
| <echo message="--- Required Libraries ---" /> |
| <echo message="beanutils.present=${beanutils.present}" /> |
| <echo message="collections.present=${collections.present}" /> |
| <echo message="digester.present=${digester.present}" /> |
| <echo message="jaxp.present=${jaxp.present}" /> |
| <echo message="jndi.present=${jndi.present}" /> |
| <echo message="logging.present=${logging.present}" /> |
| <echo message="regexp.present=${regexp.present}" /> |
| |
| <echo message="--- Optional Libraries ---" /> |
| <echo message="dbcp.present=${dbcp.present}" /> |
| <echo message="fileupload.present=${fileupload.present}" /> |
| <echo message="jaas.present=${jaas.present}" /> |
| <echo message="javamail.present=${javamail.present}" /> |
| <echo message="jmx.present=${jmx.present}" /> |
| <echo message="jsse.present=${jsse.present}" /> |
| <echo message="jta.present=${jta.present}" /> |
| <echo message="junit.present=${junit.present}" /> |
| <echo message="lang.present=${lang.present}" /> |
| <echo message="launcher.present=${launcher.present}" /> |
| <echo message="launcher.bootstrap.present=${launcher.bootstrap.present}" /> |
| <echo message="ldap.present=${ldap.present}" /> |
| <echo message="modeler.present=${modeler.present}" /> |
| <echo message="pool.present=${pool.present}" /> |
| |
| <echo message="--- Required JARs ---" /> |
| <echo message="jndi.jar.present(except JDK 1.3+)=${jndi.jar.present}" /> |
| <echo message="regexp.jar.present=${regexp.jar.present}" /> |
| <echo message="servlet-api.jar.present=${servlet-api.jar.present}" /> |
| <echo message="xerces2.jars.present(except JDK 1.4+)=${xerces2.jars.present}" /> |
| |
| <echo message="--- Optional JARs ---" /> |
| <echo message="dbcp.jar.present=${dbcp.jar.present}" /> |
| <echo message="fileupload.jar.present=${fileupload.jar.present}" /> |
| <echo message="jaas.jar.present=${jaas.jar.present}" /> |
| <echo message="javamail.jar.present=${javamail.jar.present}" /> |
| <echo message="jmx.jar.present=${jmx.jar.present}" /> |
| <echo message="jta.jar.present=${jta.jar.present}" /> |
| <echo message="junit.jar.present=${junit.jar.present}" /> |
| <echo message="modeler.jar.present=${modeler.jar.present}" /> |
| <echo message="pool.jar.present=${pool.jar.present}" /> |
| |
| <echo message="--- Conditional compilation flags ---" /> |
| <echo message="compile.dbcp=${compile.dbcp}" /> |
| <echo message="compile.jaas=${compile.jaas}" /> |
| <echo message="compile.javamail=${compile.javamail}" /> |
| <echo message="compile.jmx=${compile.jmx}" /> |
| <echo message="compile.jndi=${compile.jndi}" /> |
| <echo message="compile.jsse=${compile.jsse}" /> |
| <echo message="compile.jta=${compile.jta}" /> |
| <echo message="compile.junit=${compile.junit}" /> |
| <echo message="compile.ldap=${compile.ldap}" /> |
| <echo message="compile.ssi=${compile.ssi}" /> |
| |
| <echo message="--- Distribution flags ---" /> |
| <echo message="copy.dbcp.jar=${copy.dbcp.jar}" /> |
| <echo message="copy.jmx.jar=${copy.jmx.jar}" /> |
| <echo message="copy.launcher.jars=${copy.launcher.jars}" /> |
| <echo message="copy.logging.jar=${copy.logging.jar}" /> |
| <echo message="copy.modeler.jar=${copy.modeler.jar}" /> |
| <echo message="copy.pool.jar=${copy.pool.jar}" /> |
| |
| </target> |
| |
| <!-- =================== BUILD: Create Directories ====================== --> |
| <target name="build-prepare"> |
| |
| <mkdir dir="${catalina.build}"/> |
| <mkdir dir="${catalina.build}/bin"/> |
| <mkdir dir="${catalina.build}/common/classes"/> |
| <mkdir dir="${catalina.build}/common/lib"/> |
| <mkdir dir="${catalina.build}/common/endorsed"/> |
| <mkdir dir="${catalina.build}/conf"/> |
| <mkdir dir="${catalina.build}/logs"/> |
| <mkdir dir="${classes.dir}"/> |
| <mkdir dir="${catalina.build}/server/lib"/> |
| <mkdir dir="${catalina.build}/shared/classes"/> |
| <mkdir dir="${catalina.build}/shared/lib"/> |
| <mkdir dir="${catalina.build}/work"/> |
| <mkdir dir="${catalina.build}/temp"/> |
| |
| </target> |
| |
| |
| <!-- ======================== BUILD: Copy JARs ========================== --> |
| <target name="copy-dbcp.jar" if="copy.dbcp.jar"> |
| <copy todir="${catalina.build}/common/lib" file="${commons-dbcp.jar}"/> |
| </target> |
| <target name="copy-fileupload.jar" if="fileupload.jar.present"> |
| </target> |
| <target name="copy-jmx.jar" if="copy.jmx.jar"> |
| <copy tofile="${catalina.build}/bin/jmx.jar" file="${jmx.jar}"/> |
| </target> |
| <target name="copy-launcher.jars" if="copy.launcher.jars"> |
| <!-- <copy todir="${catalina.build}/common/lib" file="${ant.jar}"/> --> |
| <copy todir="${catalina.build}/bin" file="${commons-launcher.jar}"/> |
| <copy todir="${catalina.build}/bin" file="${commons-launcher.bootstrap.class}"/> |
| <copy todir="${catalina.build}/bin"> |
| <fileset dir="src/bin" includes="*-using-launcher.*,launcher.properties,catalina.xml" /> |
| </copy> |
| </target> |
| <target name="copy-modeler.jar" if="copy.modeler.jar"> |
| <copy todir="${catalina.build}/server/lib" file="${commons-modeler.jar}"/> |
| </target> |
| <target name="copy-pool.jar" if="copy.pool.jar"> |
| <copy todir="${catalina.build}/common/lib" file="${commons-pool.jar}"/> |
| </target> |
| <target name="copy-tomcat-util.jar"> |
| <!-- |
| <copy todir="${catalina.build}/server/lib" file="${tomcat-util.jar}"/> |
| --> |
| <jar jarfile="${tomcat-util.jar}"> |
| <fileset dir="${catalina.build}/classes"> |
| <include name="org/apache/tomcat/util/**"/> |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| </fileset> |
| </jar> |
| </target> |
| <target name="copy-xerces2.jars"> |
| <copy todir="${catalina.build}/common/endorsed" file="${xercesImpl.jar}"/> |
| <copy todir="${catalina.build}/common/endorsed" file="${xml-apis.jar}"/> |
| </target> |
| |
| |
| <!-- =================== BUILD: Copy Static Files ======================= --> |
| <target name="build-static" depends="flags,flags.display,build-prepare,copy-fileupload.jar,copy-launcher.jars,copy-modeler.jar"> |
| |
| <!-- Executable Commands --> |
| <copy todir="${catalina.build}/bin"> |
| <fileset dir="src/bin" excludes="*-using-launcher.*,launcher.properties,catalina.xml,*-tasks.xml" /> |
| </copy> |
| <fixcrlf srcdir="${catalina.build}/bin" includes="*.sh" eol="lf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <fixcrlf srcdir="${catalina.build}/bin" includes="*.bat" eol="crlf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <chmod perm="+x" dir="${catalina.build}/bin" includes="*.sh"/> |
| |
| <!-- Common Extensions --> |
| <copy todir="${catalina.build}/bin" |
| file="${commons-logging-api.jar}"/> |
| <!-- |
| <copy todir="${catalina.build}/common/lib" file="${servlet-api.jar}"/> |
| --> |
| <copy todir="${catalina.build}/common/lib" |
| file="${tomcat-dbcp.jar}" /> |
| |
| <!-- Configuration Files --> |
| <copy todir="${catalina.build}/conf"> |
| <fileset dir="src/conf"> |
| <exclude name="catalina.conf.xml" /> |
| </fileset> |
| </copy> |
| |
| <!-- JVM Temporary Directory README --> |
| <copy todir="${catalina.build}/temp" |
| file="src/temp/README.txt"/> |
| |
| <!-- Catalina Server Libraries --> |
| <!-- |
| <copy todir="${catalina.build}/server/lib" file="${regexp.jar}"/> |
| --> |
| |
| </target> |
| |
| |
| <!-- =================== BUILD: Build tomcat-util ======================= --> |
| <target name="build-tomcat-util" depends="build-tomcat-jni"> |
| |
| <ant dir="${tomcat-util.home}" target="build-main"> |
| <property name="jmx.jar" value="${jmx.jar}" /> |
| <property name="puretls.jar" value="${puretls.jar}" /> |
| <property name="jsse.lib" value="${jsse.lib}" /> |
| </ant> |
| |
| <copy todir="${catalina.build}/server/lib" |
| file="${tomcat-util.jar}"/> |
| |
| </target> |
| |
| |
| <!-- =================== BUILD: Build tomcat-jni ======================== --> |
| <target name="build-tomcat-jni"> |
| |
| <ant dir="${tomcat-jni.home}" target="jar" inheritAll="false" > |
| <property name="final.name" value="tomcat-jni" /> |
| </ant> |
| |
| </target> |
| |
| |
| <!-- =================== BUILD: Build tomcat-jni ======================== --> |
| <target name="build-webapps"> |
| |
| <ant dir="../webapps" target="ROOT" inheritAll="false" > |
| </ant> |
| |
| </target> |
| |
| |
| <!-- ================ BUILD: Compile Catalina Components ================ --> |
| <target name="build-catalina" depends="build-catalina-core,build-catalina-optional"/> |
| |
| <target name="build-catalina-core"> |
| <!-- Compile internal server components --> |
| <javac srcdir="src/share" destdir="${classes.dir}" |
| debug="${compile.debug}" |
| deprecation="${compile.deprecation}" |
| source="${compile.source}" |
| optimize="${compile.optimize}" |
| excludes="**/CVS/**" |
| encoding="ISO-8859-1"> |
| <classpath refid="catalina.classpath" /> |
| |
| <exclude name="org/apache/catalina/util/ProcessHelper.java" |
| unless="jdk.1.3.present"/> |
| <exclude name="org/apache/catalina/valves/CertificatesValve.java" |
| unless="compile.jsse"/> |
| |
| <exclude name="org/apache/catalina/servlets/CGIServlet.java" /> |
| <exclude name="org/apache/catalina/servlets/HTMLManagerServlet.java" /> |
| <exclude name="org/apache/naming/factory/DbcpDataSourceFactory.java" /> |
| <exclude name="org/apache/catalina/ssi/**"/> |
| <exclude name="org/apache/catalina/cluster/**"/> |
| <exclude name="org/apache/naming/factory/MailSessionFactory.java"/> |
| <exclude name="org/apache/naming/factory/SendMailFactory.java"/> |
| <exclude name="org/apache/catalina/launcher/**"/> |
| <exclude name="org/apache/catalina/valves/SemaphoreValve.java"/> |
| <exclude name="org/apache/catalina/mbeans/JMXAdaptorLifecycleListener.java" /> |
| </javac> |
| <tstamp> |
| <format property="TODAY" pattern="MMM d yyyy" locale="en"/> |
| <format property="TSTAMP" pattern="hh:mm:ss"/> |
| </tstamp> |
| <!-- Copy static resource files --> |
| <filter token="VERSION" value="${version}"/> |
| <filter token="VERSION_NUMBER" value="${version.number}"/> |
| <filter token="VERSION_BUILT" value="${TODAY} ${TSTAMP}"/> |
| <copy todir="${classes.dir}" filtering="true" encoding="ISO-8859-1"> |
| <fileset dir="src/share"> |
| <exclude name="**/*.java"/> |
| <exclude name="**/*.ser"/> |
| </fileset> |
| </copy> |
| <copy todir="${classes.dir}"> |
| <fileset dir="src/share"> |
| <include name="**/*.ser"/> |
| </fileset> |
| </copy> |
| |
| </target> |
| |
| |
| |
| |
| <target name="build-catalina-optional" unless="build.tomcat.base"> |
| <!-- Compile internal server components --> |
| <javac srcdir="src/share" destdir="${classes.dir}" |
| debug="${compile.debug}" |
| deprecation="${compile.deprecation}" |
| optimize="${compile.optimize}" |
| source="${compile.source}" |
| excludes="**/CVS/**" |
| encoding="ISO-8859-1"> |
| <classpath refid="catalina.classpath" /> |
| <exclude name="org/apache/naming/factory/MailSessionFactory.java" |
| unless="compile.javamail"/> |
| <exclude name="org/apache/naming/factory/SendMailFactory.java" |
| unless="compile.javamail"/> |
| <exclude name="org/apache/catalina/valves/CertificatesValve.java" |
| unless="compile.jsse"/> |
| <exclude name="org/apache/catalina/valves/SemaphoreValve.java" |
| unless="jdk.1.5.present"/> |
| <exclude name="org/apache/catalina/mbeans/JMXAdaptorLifecycleListener.java" |
| unless="jdk.1.5.present"/> |
| </javac> |
| |
| <!-- Copy static resource files --> |
| <filter token="VERSION" value="${version}"/> |
| <copy todir="${classes.dir}" filtering="true" encoding="ISO-8859-1"> |
| <fileset dir="src/share"> |
| <exclude name="**/*.java"/> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- ================== BUILD: Build tomcat-coyote ====================== --> |
| <target name="build-tomcat-coyote"> |
| |
| <ant dir="${tomcat-coyote.home}" target="compile"> |
| <property name="build.home" value="${tomcat-coyote.home}/build" /> |
| <property name="catalina.home" value="${catalina.deploy}"/> |
| <property name="servlet.jar" value="${servlet-api.jar}"/> |
| <property name="commons-logging.jar" value="${commons-logging.jar}"/> |
| <property name="commons-modeler.jar" value="${commons-modeler.jar}"/> |
| <property name="jmx.jar" value="${jmx.jar}"/> |
| </ant> |
| |
| <!-- |
| <copy todir="${catalina.deploy}/server/lib" |
| file="${tomcat-coyote.jar}"/> |
| --> |
| |
| </target> |
| |
| |
| <!-- ==================== BUILD: Build tomcat-jk ======================== --> |
| <target name="build-tomcat-jk"> |
| |
| <ant dir="${tomcat-jk.home}" target="build-main"> |
| <property name="tomcat5.home" value="${catalina.deploy}"/> |
| <property name="commons-logging.jar" value="${commons-logging.jar}"/> |
| <property name="commons-modeler.jar" value="${commons-modeler.jar}"/> |
| <property name="jmx.jar" value="${jmx.jar}"/> |
| </ant> |
| |
| <!-- |
| <copy tofile="${catalina.deploy}/server/lib/tomcat-ajp.jar" |
| file="${tomcat-jk2.jar}"/> |
| --> |
| <!-- |
| <copy todir="${catalina.deploy}/conf" |
| file="${jk2.properties}"/> |
| --> |
| |
| </target> |
| |
| |
| <!-- ============== BUILD: Build tomcat-coyote-http11 =================== --> |
| <target name="build-tomcat-http11"> |
| |
| <ant dir="${tomcat-http11.home}" target="compile"> |
| <property name="build.home" value="${tomcat-http11.home}/build" /> |
| <property name="commons-logging.jar" value="${commons-logging.jar}"/> |
| <property name="commons-modeler.jar" value="${commons-modeler.jar}"/> |
| <property name="jmx.jar" value="${jmx.jar}"/> |
| </ant> |
| <!-- |
| <copy todir="${catalina.deploy}/server/lib" |
| file="${tomcat-http11.jar}"/> |
| --> |
| |
| </target> |
| |
| |
| <!-- ================= BUILD: Compile All Server Components ============= --> |
| <target name="build-main" |
| depends="build-static,build-tomcat-util,build-tomcat-coyote,build-tomcat-http11,build-catalina,build-webapps"> |
| </target> |
| |
| |
| <!-- ================ BUILD: Create Catalina Javadocs =================== --> |
| <target name="javadoc" unless="docs.uptodate" > |
| <delete dir="${catalina.build}/javadoc"/> |
| <mkdir dir="${catalina.build}/javadoc"/> |
| |
| <!-- To fix Bugzilla 35880, we need to ensure files that use J2SE 5.0 |
| syntax are not JavaDoc'ed. Even though no other target uses |
| javadoc.sourcepath and I could rewrite the javadoc target below, |
| that might impact users who use javadoc.sourcepath in their own |
| build scripts. Accordingly, let's try this ugly temporary |
| fix. When we start building Tomcat with J2SE 5.0, we can remove |
| this ugliness. |
| --> |
| <move file="${jtc.home}/util/java/org/apache/tomcat/util/net/jsse/JSSE15SocketFactory.java" |
| tofile="${jtc.home}/util/java/org/apache/tomcat/util/net/jsse/JSSE15SocketFactory.temp" /> |
| |
| <javadoc packagenames="org.apache.*" |
| classpathref="catalina.classpath" |
| sourcepathref="javadoc.sourcepath" |
| destdir="${catalina.build}/javadoc" |
| author="true" |
| version="true" |
| windowtitle="Tomcat API Documentation" |
| doctitle="Tomcat API" |
| bottom="Copyright &#169; 2000-2012 Apache Software Foundation. All Rights Reserved." |
| additionalparam="-breakiterator"> |
| <excludepackage name="org.apache.ajp.*" /> |
| <excludepackage name="org.apache.coyote.tomcat3" /> |
| <excludepackage name="org.apache.coyote.tomcat4" /> |
| <excludepackage name="org.apache.jk.apr" /> |
| |
| </javadoc> |
| |
| <move file="${jtc.home}/util/java/org/apache/tomcat/util/net/jsse/JSSE15SocketFactory.temp" |
| tofile="${jtc.home}/util/java/org/apache/tomcat/util/net/jsse/JSSE15SocketFactory.java" /> |
| </target> |
| |
| |
| <!-- ======================= BUILD: Clean Directory ===================== --> |
| <target name="build-clean"> |
| |
| <delete dir="${catalina.build}"/> |
| |
| <ant dir="${tomcat-util.home}" target="clean"/> |
| <ant dir="${tomcat-coyote.home}" target="clean"> |
| <property name="build.home" value="${tomcat-coyote.home}/build" /> |
| </ant> |
| <ant dir="${tomcat-jk.home}" target="clean"/> |
| <ant dir="${tomcat-http11.home}" target="clean" > |
| <property name="build.home" value="${tomcat-http11.home}/build" /> |
| </ant> |
| <ant dir="${tomcat-jni.home}" target="clean"/> |
| |
| </target> |
| |
| |
| <!-- ==================== BUILD: Rebuild Everything ===================== --> |
| <target name="all" depends="build-clean,build-main" |
| description="Clean, build, and deploy Catalina component"/> |
| |
| |
| <!-- ================ TEST: Compile Unit Tests ========================== --> |
| <target name="build-tests" depends="build-main" if="junit.present"> |
| <mkdir dir="${catalina.build}/tests"/> |
| <!-- Compile unit test classes --> |
| <javac srcdir="src/test" destdir="${catalina.build}/tests" |
| deprecation="${compile.deprecation}" |
| debug="${compile.debug}" |
| optimize="off" |
| source="${compile.source}" |
| excludes="**/CVS/**" |
| encoding="ISO-8859-1"> |
| <classpath refid="test.classpath"/> |
| </javac> |
| </target> |
| |
| |
| <!-- ==================== TEST: Execute Unit Tests ====================== --> |
| <target name="test" if="junit.present" |
| description="Run all unit test cases" |
| depends="build-tests,test-dir-context,test-util"> |
| </target> |
| |
| <target name="test-dir-context" if="junit.present"> |
| |
| <echo message="Running FileDirContext tests"/> |
| <java classname="${test.runner}" fork="yes" |
| failonerror="${test.failonerror}"> |
| <sysproperty key="doc.base" value="${test.webapp}"/> |
| <arg value="org.apache.naming.resources.FileDirContextTestCase"/> |
| <classpath refid="test.classpath"/> |
| </java> |
| |
| <echo message="Running WARDirContext tests"/> |
| <jar jarfile="${test.webapp.war}"> |
| <fileset dir="${test.webapp}"/> |
| </jar> |
| <java classname="${test.runner}" fork="yes" |
| failonerror="${test.failonerror}"> |
| <sysproperty key="doc.base" value="${test.webapp.war}"/> |
| <arg value="org.apache.naming.resources.WARDirContextTestCase"/> |
| <classpath refid="test.classpath"/> |
| </java> |
| <delete file="${test.webapp.war}"/> |
| |
| </target> |
| |
| <target name="test-util" if="junit.present"> |
| |
| <echo message="Running CookieTools tests"/> |
| <java classname="${test.runner}" fork="yes" |
| failonerror="${test.failonerror}"> |
| <arg value="org.apache.catalina.util.CookieToolsTestCase"/> |
| <classpath refid="test.classpath"/> |
| </java> |
| |
| <echo message="Running URL tests"/> |
| <java classname="${test.runner}" fork="yes" |
| failonerror="${test.failonerror}"> |
| <arg value="org.apache.catalina.util.URLTestCase"/> |
| <classpath refid="test.classpath"/> |
| </java> |
| |
| </target> |
| |
| |
| <!-- ====================== DEPLOY: Create Directories ================== --> |
| <target name="deploy-prepare"> |
| <mkdir dir="${catalina.deploy}"/> |
| <mkdir dir="${catalina.deploy}/bin"/> |
| <mkdir dir="${catalina.deploy}/conf"/> |
| <mkdir dir="${catalina.deploy}/logs"/> |
| <mkdir dir="${catalina.deploy}/common/classes"/> |
| <mkdir dir="${catalina.deploy}/common/endorsed"/> |
| <mkdir dir="${catalina.deploy}/common/i18n"/> |
| <mkdir dir="${catalina.deploy}/common/lib"/> |
| <mkdir dir="${catalina.deploy}/server/classes"/> |
| <mkdir dir="${catalina.deploy}/server/lib"/> |
| <mkdir dir="${catalina.deploy}/work"/> |
| <mkdir dir="${catalina.deploy}/temp"/> |
| </target> |
| |
| |
| <!-- ====================== DEPLOY: Copy Static Files =================== --> |
| <target name="deploy-static" depends="build-main,deploy-prepare,deploy-static-only,deploy-libs"/> |
| |
| <target name="deploy-static-only" depends="deploy-prepare"> |
| |
| <!-- Executable Commands --> |
| <copy todir="${catalina.deploy}/bin"> |
| <fileset dir="src/bin" excludes="*-using-launcher.*,launcher.properties,catalina.xml" /> |
| </copy> |
| <fixcrlf srcdir="${catalina.deploy}/bin" includes="*.sh" eol="lf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <fixcrlf srcdir="${catalina.deploy}/bin" includes="*.bat" eol="crlf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <chmod perm="+x" dir="${catalina.build}/bin" includes="*.sh"/> |
| |
| <!-- Configuration Files --> |
| <copy todir="${catalina.deploy}/conf"> |
| <fileset dir="${catalina.build}/conf" /> |
| </copy> |
| |
| </target> |
| |
| <target name="deploy-libs"> |
| |
| <!-- Common Extensions --> |
| <copy todir="${catalina.deploy}/common/endorsed"> |
| <fileset dir="${catalina.build}/common/endorsed" /> |
| </copy> |
| |
| <copy todir="${catalina.deploy}/common/lib"> |
| <fileset dir="${catalina.build}/common/lib" /> |
| </copy> |
| |
| <!-- Server Components --> |
| <copy todir="${catalina.deploy}/server/lib"> |
| <fileset dir="${catalina.build}/server/lib" /> |
| </copy> |
| |
| <!-- Shared Extensions --> |
| <!-- |
| <copy todir="${catalina.deploy}/shared/lib"> |
| <fileset dir="${catalina.build}/shared/lib" /> |
| </copy> |
| --> |
| </target> |
| |
| |
| <!-- ====================== DEPLOY: Create Catalina JARs ================ --> |
| <target name="catalina-jars" depends="build-static,deploy-prepare,flags,flags.display,build-catalina" |
| description="Build catalina jars"> |
| |
| <!-- Catalina Bootstrap JAR File. It is a very wrong idea to split packages in multiple jars !!! --> |
| <jar jarfile="${catalina.deploy}/bin/bootstrap.jar" |
| manifest="etc/bootstrap.MF"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/startup/Bootstrap.class" /> |
| <include name="org/apache/catalina/startup/catalina.properties" /> |
| <include name="org/apache/catalina/startup/CatalinaProperties.class" /> |
| <include name="org/apache/catalina/startup/ClassLoaderFactory.class" /> |
| <include name="org/apache/catalina/startup/Tool.class" /> |
| <include name="org/apache/catalina/loader/StandardClassLoader*.class" /> |
| <include name="org/apache/catalina/loader/Extension.class" /> |
| <include name="org/apache/catalina/loader/Reloader.class" /> |
| <include name="org/apache/catalina/security/SecurityClassLoad.class" /> |
| <include name="org/apache/catalina/launcher/CatalinaLaunchFilter.class" /> |
| <include name="org/apache/naming/JndiPermission.class" /> |
| <include name="org/apache/tomcat/util/compat/*" /> |
| |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Catalina Main JAR File --> |
| <!-- Excluding files from here is worse than duplicating them - a loader that uses the |
| package name as index and includes both bootstrap and catalina will be confused --> |
| |
| <jar jarfile="${catalina.deploy}/server/lib/catalina.jar"> |
| <fileset dir="${classes.dir}"> |
| |
| <include name="org/apache/catalina/**" /> |
| |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| |
| <!-- Modules --> |
| <exclude name="org/apache/catalina/ant/**" /> |
| <exclude name="org/apache/catalina/cluster/**" /> |
| <exclude name="org/apache/catalina/launcher/**" /> |
| <exclude name="org/apache/catalina/servlets/**" /> |
| <exclude name="org/apache/catalina/startup/Bootstrap.class" /> |
| <exclude name="org/apache/catalina/storeconfig/**" /> |
| <exclude name="org/apache/catalina/ssi/**" /> |
| <exclude name="org/apache/naming/**" /> |
| |
| <!-- Catalina-optional classes --> |
| <exclude name="org/apache/catalina/realm/DataSourceRealm.class" /> |
| <exclude name="org/apache/catalina/realm/JAAS*" /> |
| <exclude name="org/apache/catalina/realm/JDBC*" /> |
| <exclude name="org/apache/catalina/realm/JNDI*" /> |
| <exclude name="org/apache/catalina/realm/Memory*" /> |
| <exclude name="org/apache/catalina/session/StoreBase.class" /> |
| <exclude name="org/apache/catalina/session/*Store.class" /> |
| <exclude name="org/apache/catalina/session/PersistentManager*" /> |
| <exclude name="org/apache/catalina/util/CGIProcessEnvironment.class" /> |
| <exclude name="org/apache/catalina/util/CookieTools.class" /> |
| <exclude name="org/apache/catalina/util/DateTool.class" /> |
| <exclude name="org/apache/catalina/util/DOMWriter.class" /> |
| <exclude name="org/apache/catalina/util/FastDateFormat.class" /> |
| <exclude name="org/apache/catalina/util/IOTools.class" /> |
| <exclude name="org/apache/catalina/util/MIME2Java.class" /> |
| <exclude name="org/apache/catalina/util/Process*" /> |
| <exclude name="org/apache/catalina/util/Queue.class" /> |
| <exclude name="org/apache/catalina/util/Strftime.class" /> |
| <exclude name="org/apache/catalina/util/XMLWriter.class" /> |
| <exclude name="org/apache/catalina/valves/ExtendedAccessLogValve.class" /> |
| <exclude name="org/apache/catalina/valves/FastCommonAccessLogValve.class" /> |
| <exclude name="org/apache/catalina/valves/FieldInfo.class" /> |
| <exclude name="org/apache/catalina/valves/JDBCAccessLogValve.class" /> |
| <exclude name="org/apache/catalina/valves/PersistentValve.class" /> |
| <exclude name="org/apache/catalina/valves/Remote*" /> |
| <exclude name="org/apache/catalina/valves/RequestDumperValve.class" /> |
| <exclude name="org/apache/catalina/valves/RequestFilterValve.class" /> |
| <exclude name="org/apache/catalina/valves/SemaphoreValve.class" /> |
| <exclude name="org/apache/catalina/mbeans/JMXAdaptorLifecycleListener.class" /> |
| |
| </fileset> |
| </jar> |
| |
| <jar jarfile="${catalina.deploy}/server/lib/catalina-optional.jar"> |
| <fileset dir="${classes.dir}"> |
| |
| <include name="org/apache/catalina/realm/DataSourceRealm.class" /> |
| <include name="org/apache/catalina/realm/JAAS*" /> |
| <include name="org/apache/catalina/realm/JDBC*" /> |
| <include name="org/apache/catalina/realm/JNDI*" /> |
| <include name="org/apache/catalina/realm/Memory*" /> |
| <include name="org/apache/catalina/session/StoreBase.class" /> |
| <include name="org/apache/catalina/session/*Store.class" /> |
| <include name="org/apache/catalina/session/PersistentManager*" /> |
| <include name="org/apache/catalina/util/CGIProcessEnvironment.class" /> |
| <include name="org/apache/catalina/util/CookieTools.class" /> |
| <include name="org/apache/catalina/util/DateTool.class" /> |
| <include name="org/apache/catalina/util/DOMWriter.class" /> |
| <include name="org/apache/catalina/util/FastDateFormat.class" /> |
| <include name="org/apache/catalina/util/IOTools.class" /> |
| <include name="org/apache/catalina/util/MIME2Java.class" /> |
| <include name="org/apache/catalina/util/Process*" /> |
| <include name="org/apache/catalina/util/Queue.class" /> |
| <include name="org/apache/catalina/util/Strftime.class" /> |
| <include name="org/apache/catalina/util/XMLWriter.class" /> |
| <include name="org/apache/catalina/valves/ExtendedAccessLogValve.class" /> |
| <include name="org/apache/catalina/valves/FastCommonAccessLogValve.class" /> |
| <include name="org/apache/catalina/valves/FieldInfo.class" /> |
| <include name="org/apache/catalina/valves/JDBCAccessLogValve.class" /> |
| <include name="org/apache/catalina/valves/PersistentValve.class" /> |
| <include name="org/apache/catalina/valves/Remote*" /> |
| <include name="org/apache/catalina/valves/RequestDumperValve.class" /> |
| <include name="org/apache/catalina/valves/RequestFilterValve.class" /> |
| <include name="org/apache/catalina/valves/SemaphoreValve.class" /> |
| <include name="org/apache/catalina/mbeans/JMXAdaptorLifecycleListener.class" /> |
| |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| |
| </fileset> |
| </jar> |
| |
| <!-- Catalina Ant Tasks JAR File --> |
| <jar jarfile="${catalina.deploy}/server/lib/catalina-ant.jar"> |
| <fileset dir="${classes.dir}"> |
| |
| <include name="org/apache/catalina/ant/*" /> |
| <include name="org/apache/catalina/util/Base64.class" /> |
| |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| |
| </fileset> |
| </jar> |
| |
| <!-- Catalina JMX Accessor Ant Tasks JAR File --> |
| <jar jarfile="${catalina.deploy}/server/lib/catalina-ant-jmx.jar"> |
| <fileset dir="${classes.dir}"> |
| |
| <include name="org/apache/catalina/ant/jmx/*" /> |
| |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| |
| </fileset> |
| </jar> |
| |
| <!-- Naming - Factory JAR File --> |
| <jar jarfile="${catalina.deploy}/common/lib/naming-factory.jar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/naming/**" /> |
| <exclude name="org/apache/naming/resources/**" /> |
| <exclude name="org/apache/naming/JndiPermission.class" /> |
| <exclude name="org/apache/naming/NameParserImpl.class" /> |
| <exclude name="org/apache/naming/NamingContextBindingsEnumeration.class" /> |
| <exclude name="org/apache/naming/NamingContextEnumeration.class" /> |
| <exclude name="org/apache/naming/NamingEntry.class" /> |
| <exclude name="org/apache/naming/StringManager.class" /> |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Naming - Resources JAR File --> |
| <jar jarfile="${catalina.deploy}/common/lib/naming-resources.jar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/naming/JndiPermission.class" /> |
| <include name="org/apache/naming/NameParserImpl.class" /> |
| <include name="org/apache/naming/NamingContextBindingsEnumeration.class" /> |
| <include name="org/apache/naming/NamingContextEnumeration.class" /> |
| <include name="org/apache/naming/NamingEntry.class" /> |
| <include name="org/apache/naming/StringManager.class" /> |
| <include name="org/apache/naming/resources/**" /> |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Servlets - CGI Servlet --> |
| <jar jarfile="${catalina.deploy}/server/lib/servlets-cgi.renametojar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/servlets/CGI*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Servlets - Default File-Serving Servlet --> |
| <jar jarfile="${catalina.deploy}/server/lib/servlets-default.jar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/servlets/Default*" /> |
| <include name="org/apache/catalina/servlets/Constants.class" /> |
| <include name="org/apache/catalina/servlets/LocalStrings.properties" /> |
| </fileset> |
| </jar> |
| |
| <!-- Servlets - Invoker Servlet --> |
| <jar jarfile="${catalina.deploy}/server/lib/servlets-invoker.jar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/servlets/Invoker*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Servlets - SSI Servlet --> |
| <jar jarfile="${catalina.deploy}/server/lib/servlets-ssi.renametojar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/ssi/**" /> |
| <!-- Javadoc and i18n exclusions --> |
| <exclude name="**/package.html" /> |
| <exclude name="**/LocalStrings_*" /> |
| </fileset> |
| </jar> |
| |
| <!-- Servlets - Webdav Servlet --> |
| <jar jarfile="${catalina.deploy}/server/lib/servlets-webdav.jar"> |
| <fileset dir="${classes.dir}"> |
| <include name="org/apache/catalina/servlets/Webdav*" /> |
| </fileset> |
| </jar> |
| |
| </target> |
| |
| <target name="deploy-catalina" depends="deploy-static,build-main,catalina-jars" |
| description="Build and deploy Catalina component"> |
| </target> |
| |
| |
| <!-- ====================== DEPLOY: Create Catalina JARs ================ --> |
| <target name="deploy" depends="deploy-catalina,build-tomcat-coyote,build-tomcat-jk,build-tomcat-http11" |
| description="Build and deploy Catalina"> |
| </target> |
| |
| |
| <!-- ================ DIST: Create Distribution ========================= --> |
| <target name="dist" depends="build-main" |
| description="Create binary distribution"> |
| |
| <!-- Executable Commands --> |
| <mkdir dir="${catalina.dist}/bin"/> |
| <copy todir="${catalina.dist}/bin"> |
| <fileset dir="src/bin" excludes="*-using-launcher.*,launcher.properties,catalina.xml" /> |
| </copy> |
| <fixcrlf srcdir="${catalina.dist}/bin" includes="*.sh" eol="lf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <fixcrlf srcdir="${catalina.dist}/bin" includes="*.bat" eol="crlf" |
| encoding="ISO-8859-1" fixlast="false" /> |
| <chmod perm="+x" dir="${catalina.build}/bin" includes="*.sh"/> |
| |
| <!-- Common Extensions --> |
| <mkdir dir="${catalina.dist}/common/classes"/> |
| <copy todir="${catalina.dist}/common/classes"> |
| <fileset dir="${catalina.build}/common/classes" /> |
| </copy> |
| <mkdir dir="${catalina.dist}/common/lib"/> |
| <copy todir="${catalina.dist}/common/lib"> |
| <fileset dir="${catalina.build}/common/lib" /> |
| </copy> |
| |
| <!-- Configuration Files --> |
| <mkdir dir="${catalina.dist}/conf"/> |
| <copy todir="${catalina.dist}/conf"> |
| <fileset dir="${catalina.build}/conf" /> |
| </copy> |
| |
| <!-- Server Components --> |
| <mkdir dir="${catalina.dist}/server/classes"/> |
| <!-- Do we want to copy the classes ? |
| <copy todir="${catalina.dist}/server/classes"> |
| <fileset dir="${classes.dir}" /> |
| </copy> |
| --> |
| <mkdir dir="${catalina.dist}/server/lib"/> |
| <copy todir="${catalina.dist}/server/lib"> |
| <fileset dir="${catalina.build}/server/lib" /> |
| </copy> |
| |
| <!-- Shared Extensions --> |
| <mkdir dir="${catalina.dist}/shared/classes"/> |
| <copy todir="${catalina.dist}/shared/classes"> |
| <fileset dir="${catalina.build}/shared/classes" /> |
| </copy> |
| <mkdir dir="${catalina.dist}/shared/lib"/> |
| <copy todir="${catalina.dist}/shared/lib"> |
| <fileset dir="${catalina.build}/shared/lib" /> |
| </copy> |
| |
| </target> |
| |
| |
| <!-- ======================== DIST: Clean Directory ===================== --> |
| <target name="dist-clean"> |
| <delete dir="${catalina.dist}"/> |
| </target> |
| |
| |
| <!-- ====================== Convenient Synonyms ========================= --> |
| <target name="clean" depends="build-clean, dist-clean" |
| description="Clean build and dist directories"/> |
| |
| |
| </project> |