hgomez      2002/09/19 01:12:59

  Modified:    .        build.xml
  Log:
  Majors modifications in build.xml :
  
  - make it works from Eclipse IDE
  - fix problems when building from non 'apache' layout (tc/jtc in same dir)
  - add support for xerces2 parser or external parsers (usefull for 
    packagers like jpackage.org)
  
  Revision  Changes    Path
  1.188     +145 -46   jakarta-tomcat/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/build.xml,v
  retrieving revision 1.187
  retrieving revision 1.188
  diff -u -r1.187 -r1.188
  --- build.xml 11 Sep 2002 17:23:07 -0000      1.187
  +++ build.xml 19 Sep 2002 08:12:59 -0000      1.188
  @@ -28,8 +28,9 @@
       -->
     <property name="work.dir" value="." />
   
  -  <property name="tomcat.build" value="${work.dir}/build/tomcat"/>
  -  <property name="tomcat.dist" value="${work.dir}/dist/tomcat"/>
  +  <!-- append basedir since jtc will need a full path for tomcat33.home -->
  +  <property name="tomcat.build" value="${basedir}/${work.dir}/build/tomcat"/>
  +  <property name="tomcat.dist" value="${basedir}/${work.dir}/dist/tomcat"/>
   
     <!-- Location where various binaries are installed.
          It can be "c:\Program Files" or /usr/share/java or
  @@ -58,6 +59,9 @@
     <property name="ant.home" location="${install.dir}/jakarta-ant"/>
     <property name="ant.bin" location="${ant.home}/bin"/>
     <property name="ant.lib" location="${ant.home}/lib"/>
  +  <property name="ant.jar" location="${ant.home}/lib/ant.jar"/>
  +  <property name="optional.jar" location="${ant.home}/lib/optional.jar"/>
  +  <property name="ant-optional.jar" location="${ant.home}/lib/ant-optional.jar"/>
   
     <property name="jaxp.home" location="bin" />
   
  @@ -96,6 +100,13 @@
     <property name="jtc.http11.lib" location="${jtc.http11.home}/build/lib"/>
   
     <property name="jmx.jar" location="${jakarta-tomcat-connectors}/lib/mx4j.jar"/>
  +  <property name="jmxtools.jar" 
location="${jakarta-tomcat-connectors}/lib/mx4j-tools.jar"/>
  +  
  +  <!-- xalan is required by MX4J HTTP adaptor -->
  +  <property name="xalan.home" location="${install.dir}/xalan"/>
  +  <property name="xalan.lib" location="${xalan.home}/bin"/>
  +  <property name="xalan.jar" location="${xalan.lib}/xalan.jar"/>
  +  <property name="xml-apis.jar" location="${xalan.lib}/xml-apis.jar"/>
   
     <!-- Binaries checked in ( servlet.jar is not likely to change,
         the 2.2 spec is final -->
  @@ -120,12 +131,28 @@
                  file="${jaxp.home}/jaxp.jar" />
       <available property="jmx-present"
                  file="${jmx.jar}" />
  +    <available property="jmxtools-present"
  +               file="${jmxtools.jar}" />
  +    <available property="xalan-present"
  +               file="${xalan.jar}" />
       <available property="jaxp10-present"
                  file="${jaxp.home}/parser.jar" />
       <available property="jaxp11-present"
                  file="${jaxp.home}/crimson.jar" />
       <available property="xerces-present"
                  file="${jaxp.home}/xerces.jar" />
  +    <condition property="xerces2-present">
  +      <and>
  +        <available file="${xerces2.home}/xercesImpl.jar" />
  +        <available file="${xerces2.home}/xmlParserAPIs.jar" />
  +      </and>
  +    </condition>
  +    <condition property="xml-parser-present">
  +      <and> 
  +        <available file="${xml-parser-impl.jar}" />
  +        <available file="${xml-parser-apis.jar}" />
  +      </and>
  +    </condition>
       <available property="jtc-present"
                  file="${jakarta-tomcat-connectors}" />
       <condition property="commons-dbcp.complete">
  @@ -135,6 +162,54 @@
           <available file="${commons-collections.jar}" />
         </and>
       </condition>
  +
  +  <!-- Some IDE like Eclipse didn't export ant and xml api  -->
  +  <!-- jars so javac will faild at compile time             -->
  +  <!-- To fix that, create some path ref which will be used -->
  +  
  +  <path id="ant.class.path">
  +    <pathelement location="${ant.jar}/"/>
  +    <pathelement location="${optional.jar}"/>
  +    <pathelement location="${ant-optional.jar}"/>
  +  </path>
  +
  +  <path id="xml-apis.class.path">
  +    <pathelement location="${jaxp.home}/jaxp.jar"/>
  +    <pathelement location="${xerces2.home}/xmlParserAPIs.jar"/>
  +    <pathelement location="${xml-parser-apis.jar}"/>
  +  </path>
  +
  +  <path id="tomcat_util.class.path">
  +    <pathelement location="${tomcat-util.jar}"/>
  +     <pathelement location="${commons-logging.jar}" />
  +  </path>
  +
  +  <path id="crypto.class.path">
  +    <pathelement location="${jcert.jar}"/>
  +    <pathelement location="${jnet.jar}"/>
  +    <pathelement location="${jsse.jar}"/>
  +    <pathelement location="${puretls.jar}"/>
  +  </path>
  +
  +  <path id="jdk.class.path">
  +    <fileset dir="${java.home}/..">
  +      <include name="lib/tools.jar"/>
  +    </fileset>
  +    <fileset dir="${java.home}">
  +      <include name="lib/classes.zip"/>
  +    </fileset>
  +  </path>
  +
  +  <path id="javadoc.classpath">
  +    <pathelement location="${servlet22.jar}"/>
  +    <pathelement location="${jmx.jar}"/>
  +    <path refid="ant.class.path"/>
  +    <path refid="crypto.class.path"/>
  +    <path refid="jdk.class.path"/>
  +    <path refid="tomcat_util.class.path"/>
  +    <path refid="xml-apis.class.path"/>
  +  </path>
  +
     </target>
   
     <target name="uptodate">
  @@ -143,6 +218,10 @@
       </uptodate>
     </target>
   
  +  <target name="msg.ant15" if="ant15-present" >
  +    <echo message="Detected Ant 1.5" />
  +  </target>
  +
     <target name="msg.jdk12" if="jdk12.present" >
       <echo message="Detected JDK1.2" />
     </target>
  @@ -155,6 +234,10 @@
       <echo message="Detected JMX"/>
     </target>
   
  +  <target name="msg.jmxtools" if="jmxtools-present" >
  +    <echo message="Detected JMX TOOLS"/>
  +  </target>
  +
     <target name="msg.puretls" if="puretls.present">
       <echo message="Detected PureTLS"/>
     </target>
  @@ -172,7 +255,7 @@
     </target>
   
     <target name="init"
  -          
depends="detect,uptodate,msg.jdk12,msg.jsse,msg.jmx,msg.puretls,msg.commons-dbcp,msg.jtc,msg.jtc.util"
 >
  +          
depends="detect,uptodate,msg.ant15,msg.jdk12,msg.jsse,msg.jmx,msg.jmxtools,msg.puretls,msg.commons-dbcp,msg.jtc,msg.jtc.util"
 >
     </target>
   
     <target name="prepare.jaxp101"  depends="detect" if="jaxp10-present" >
  @@ -205,7 +288,23 @@
             file="${jaxp.home}/jaxp.jar"/>
     </target>
     
  -  <target name="prepare.jaxp" 
depends="prepare.jaxp101,prepare.jaxp11,prepare.xerces" />
  +  <target name="prepare.xerces2" depends="detect" if="xerces2-present" >
  +    <echo message="Installing XERCES-2"/>
  +    <copy tofile="${tomcat.build}/lib/container/"
  +          file="${xerces2.home}/xercesImpl.jar"/>
  +    <copy tofile="${tomcat.build}/lib/container/"
  +          file="${xerces2.home}/xmlParserAPIs.jar"/>
  +  </target>
  +
  +  <target name="prepare.xml-parser" depends="detect" if="xml-parser-present" >
  +    <echo message="Installing XML-PARSER ${xml-parser-impl.jar} and 
${xml-parser-apis.jar}"/>
  +    <copy tofile="${tomcat.build}/lib/container/"
  +          file="${xml-parser-impl.jar}"/>
  +    <copy tofile="${tomcat.build}/lib/container/"
  +          file="${xml-parser-apis.jar}"/>
  +  </target>
  +
  +  <target name="prepare.jaxp" 
depends="prepare.jaxp101,prepare.jaxp11,prepare.xerces,prepare.xerces2,prepare.xml-parser"
 />
   
     <!-- ==================== Copy static files ==================== -->
   
  @@ -291,13 +390,13 @@
   
     <target name="deps" description="Build repositoried that depends on. To be called 
before main" >
           <ant dir="${jakarta-tomcat-connectors}/coyote">
  -            <property name="tomcat33.home" value="${basedir}/build/tomcat"/>
  +            <property name="tomcat33.home" value="${tomcat.build}"/>
           </ant>
           
           <ant dir="${jakarta-tomcat-connectors}/http11" inheritAll="false" />
               
           <ant dir="${jakarta-tomcat-connectors}/jk" target="build-jk">
  -            <property name="tomcat33.home" value="${basedir}/build/tomcat"/>
  +            <property name="tomcat33.home" value="${tomcat.build}"/>
           </ant>
     </target>
   
  @@ -313,9 +412,11 @@
              deprecation="off"
              srcdir="src/share">
         <classpath>
  -        <pathelement location="${tomcat-util.jar}"/>
  -     <pathelement location="${commons-logging.jar}" />
  +        <path refid="ant.class.path"/>
  +        <path refid="xml-apis.class.path"/>
  +        <path refid="tomcat_util.class.path"/>
         </classpath>
  +      
         <include name="org/apache/tomcat/util/**"/>
   
         <exclude name="**/util/compat/Jdk12Support.java"
  @@ -428,7 +529,7 @@
              deprecation="off"
              srcdir="src/share">
         <classpath>
  -        <pathelement location="${tomcat-util.jar}"/>
  +        <path refid="tomcat_util.class.path"/>
           <pathelement location="${tomcat.build}/lib/container/tomcat_util.jar"/>
         </classpath>
         <include name="org/apache/tomcat/core/**"/>
  @@ -455,6 +556,7 @@
              deprecation="off"
              srcdir="src/share">
         <classpath>
  +        <path refid="xml-apis.class.path"/>
           <pathelement location="${tomcat-util.jar}"/>
           <pathelement location="${tomcat.build}/lib/container/tomcat_util.jar"/>
           <pathelement location="${tomcat.build}/lib/common/tomcat_core.jar"/>
  @@ -478,8 +580,9 @@
              deprecation="off"
              srcdir="src/facade22">
         <classpath>
  -        <pathelement location="${servlet22.jar}"/>
  -        <pathelement location="${tomcat-util.jar}"/>
  +        <path refid="tomcat_util.class.path"/>
  +        <path refid="xml-apis.class.path"/>
  +         <pathelement location="${servlet22.jar}"/>
           <pathelement location="${tomcat.build}/lib/container/tomcat_util.jar"/>
           <pathelement location="${tomcat.build}/lib/common/tomcat_core.jar"/>
         </classpath>
  @@ -507,15 +610,30 @@
       <copy file="${commons-collections.jar}" todir="${tomcat.build}/lib/container"/>
     </target>
   
  +  <target name="jmx.prepare" depends="prepare" if="jmx-present" >
  +    <echo message="copying JMX for JMX support"/>
  +    <copy tofile="${tomcat.build}/lib/container"
  +          file="${jmx.jar}"/>
  +  </target>
  +  
  +  <target name="jmxtools.prepare" depends="prepare" if="jmxtools-present" >
  +    <echo message="copying JMX tools jar for JMX HTTP Adapter support"/>
  +    <copy tofile="${tomcat.build}/lib/container"
  +          file="${jmxtools.jar}"/>
  +    <copy tofile="${tomcat.build}/lib/container"
  +          file="${xalan.jar}"/>
  +  </target>
  +
     <!-- ====================  "Standard" interceptors  ========== -->
  -  <target name="tomcat_modules" depends="prepare,commons-prepare">
  +  <target name="tomcat_modules" 
depends="prepare,commons-prepare,jmx.prepare,jmxtools.prepare">
       <javac destdir="${tomcat.build}/classes"
              srcdir="src/share"
              debug="${debug}"
              optimize="${optimize}"
              deprecation="off">
         <classpath>
  -        <pathelement location="${tomcat-util.jar}"/>
  +        <path refid="tomcat_util.class.path"/>
  +        <path refid="xml-apis.class.path"/>
           <pathelement location="${jmx.jar}"/>
           <pathelement location="${tomcat.build}/lib/container/tomcat_util.jar"/>
           <pathelement location="${tomcat.build}/lib/common/tomcat_core.jar"/>
  @@ -530,7 +648,6 @@
         <exclude
             name="org/apache/tomcat/modules/config/MxInterceptor.java"
             unless="jmx-present"/>
  -
         <exclude
             name="org/apache/tomcat/modules/aaa/PooledJDBCRealm.java"
             unless="commons-dbcp.complete"/>
  @@ -554,7 +671,7 @@
       <!-- This can't be compiled while j-t-c is built - tomcat is built
            after, so files depending on 3.3 are ignored -->
       <ant dir="${jakarta-tomcat-connectors}/coyote" target="compile.tomcat33" >
  -        <property name="tomcat33.home" value="${basedir}/build/tomcat"/>
  +        <property name="tomcat33.home" value="${tomcat.build}"/>
       </ant>
   
       <copy tofile="${tomcat.build}/lib/common/tomcat33-resource.jar"
  @@ -583,8 +700,9 @@
              optimize="${optimize}"
              deprecation="off">
         <classpath>
  +        <path refid="xml-apis.class.path"/>
  +        <path refid="tomcat_util.class.path"/>
           <pathelement location="${servlet22.jar}"/>
  -        <pathelement location="${tomcat-util.jar}"/>
         </classpath>
         <include name="org/apache/jasper/**"/>
         <exclude name="org/apache/jasper/servlet/JasperLoader12.java"
  @@ -638,9 +756,7 @@
              destdir="${tomcat.build}/classes" >
          <include name="org/apache/tomcat/ant/*.java" />
          <classpath>
  -          <pathelement path="${ant.lib}/ant.jar" />
  -          <pathelement path="${ant.lib}/optional.jar" />
  -          <pathelement path="${ant.lib}/ant-optional.jar" />
  +        <path refid="ant.class.path"/>
          </classpath>
       </javac>
       <mkdir dir="${tomcat.build}/ant" />
  @@ -700,15 +816,21 @@
         <fileset dir="src/admin"/>
       </copy>
       <copy tofile="${tomcat.build}/webapps/admin/WEB-INF/lib/ant.jar"
  -          file="${ant.lib}/ant.jar"/>
  +          file="${ant.jar}"/>
       <jar jarfile="${tomcat.build}/webapps/admin/WEB-INF/lib/tomcat_util_test.jar"
            basedir="${tomcat.build}/classes">
         <include name="org/apache/tomcat/util/**"/>
       </jar>
       <javac srcdir="src/admin/WEB-INF/classes"
              optimize="${optimize}"
  -           destdir="${tomcat.build}/webapps/admin/WEB-INF/classes"
  -           classpath="${tomcat.build}/classes;${servlet22.jar};${tomcat-util.jar}"/>
  +           destdir="${tomcat.build}/webapps/admin/WEB-INF/classes">
  +           <classpath>
  +             <path refid="ant.class.path"/>           
  +             <pathelement location="${tomcat.build}/classes"/>
  +             <pathelement location="${servlet22.jar}"/>
  +             <pathelement location="${tomcat-util.jar}"/>
  +           </classpath>
  +    </javac>
   
     </target>
   
  @@ -784,10 +906,7 @@
              deprecation="off"
              srcdir="${jtc.util.home}/java">
         <classpath>
  -        <pathelement location="${jsse.jar}"/>
  -        <pathelement location="${jnet.jar}"/>
  -        <pathelement location="${jcert.jar}"/>
  -        <pathelement location="${puretls.jar}" />
  +        <path refid="crypto.class.path"/>
           <pathelement location="${servlet22.jar}"/>
         </classpath>
         <include name="org/apache/**"/>
  @@ -865,26 +984,6 @@
       <chmod perm="+x" file="${tomcat.dist}/bin/startup"/>
       <chmod perm="+x" file="${tomcat.dist}/bin/shutdown"/>
     </target>
  -
  -  <path id="javadoc.classpath">
  -    <pathelement location="${servlet22.jar}"/>
  -    <pathelement location="${tomcat-util.jar}"/>
  -    <fileset dir="${jaxp.home}">
  -      <include name="jaxp.jar"/>
  -      <include name="parser.jar"/>
  -      <include name="crimson.jar"/>
  -      <include name="xerces.jar"/>
  -    </fileset>
  -    <fileset dir="${java.home}/..">
  -      <include name="lib/tools.jar"/>
  -    </fileset>
  -    <fileset dir="${java.home}">
  -      <include name="lib/classes.zip"/>
  -    </fileset>
  -    <fileset dir="${ant.home}">
  -      <include name="lib/ant.jar"/>
  -    </fileset>
  -  </path>
   
     <target name="javadoc" depends="main,webapps,tomcat-jars">
       <!-- Add Tomcat internal javadoc -->
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to