You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by re...@apache.org on 2001/06/13 06:44:03 UTC

cvs commit: jakarta-slide build.xml

remm        01/06/12 21:44:03

  Modified:    .        build.xml
  Log:
  - Update the build system to generate a distribution of Slide packaged with
    Tomcat 4, as was done a while ago (but it wasn't very useful way back then).
    To build, you need a Tomcat distribution based on today's CVS (I had to fix a few
    problems in Catalina to have this work). This is an optional dependency.
    The packaging is quite complex, so there may be some issues I didn't notice
    on some configurations.
  
  Revision  Changes    Path
  1.89      +105 -16   jakarta-slide/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/build.xml,v
  retrieving revision 1.88
  retrieving revision 1.89
  diff -u -r1.88 -r1.89
  --- build.xml	2001/05/30 03:19:45	1.88
  +++ build.xml	2001/06/13 04:44:02	1.89
  @@ -46,8 +46,11 @@
     <property name="jmx.home"              value="../jmx"/>
     <property name="jmx.jar"               value="${jmx.home}/lib/jmxri.jar"/>
     <property name="junit.jar"             value="./lib/junit.jar"/>
  +  <property name="jndi.jar"              value="./lib/jndi.jar"/>
     <property name="jta.jar"               value="./lib/jta.jar"/>
     <property name="log4j.jar"             value="./lib/log4j.jar"/>
  +  <property name="struts.home"           value="."/>
  +  <property name="struts.jar"            value="${struts.home}/lib/struts.jar"/>
     <property name="commons-httpclient.jar"             
      value="../jakarta-commons/httpclient/dist/commons-httpclient.jar"/>
     <property name="tomcat.build"          value="../jakarta-tomcat-4.0/build" />
  @@ -107,6 +110,16 @@
       <pathelement location="${jmx.jar}"/>
     </path>
   
  +  <path id="manager.classpath">
  +    <pathelement location="${xmlapi.jar}"/>
  +    <pathelement location="${jaxp.jar}"/>
  +    <pathelement location="${servlet.jar}"/>
  +    <pathelement location="${jdom.jar}"/>
  +    <pathelement location="${jta.jar}"/>
  +    <pathelement location="${slide.build}/classes"/>
  +    <pathelement location="${struts.jar}"/>
  +  </path>
  +
     <path id="stores.classpath">
       <pathelement location="${jta.jar}"/>
       <pathelement location="${slide.build}/classes"/>
  @@ -116,6 +129,8 @@
       <pathelement location="${jta.jar}"/>
       <pathelement location="${slide.build}/classes"/>
       <pathelement location="${log4j.jar}"/>
  +    <pathelement location="${jndi.jar}"/>
  +    <pathelement location="${servlet.jar}"/>
       <pathelement location="${catalina.build}/classes"/>
     </path>
   
  @@ -247,6 +262,12 @@
        classname="org.apache.tools.ant.taskdefs.optional.TraXLiaison" />
       <available property="jdom.present" classname="org.jdom.Element"
        classpath="${jdom.jar}" />
  +    <available property="struts.present" 
  +     classname="org.apache.struts.action.Action"
  +     classpath="${struts.jar}" />
  +    <available property="jndi.present" 
  +     classname="javax.naming.Context"
  +     classpath="${jndi.jar}" />
   
       <echo message="--- Build environment for ${final.name} ---" />
   
  @@ -271,6 +292,7 @@
       <echo message="catalina.present (optional) = ${catalina.present}" />
       <echo message="xsl.present (optional) = ${xsl.present}" />
       <echo message="log4j.present (optional) = ${log4j.present}" />
  +    <echo message="jndi.present (optional) = ${jndi.present}" />
   
       <echo message="--- Property values" />
   
  @@ -399,14 +421,14 @@
         <classpath refid="webdavservlet.classpath"/>
       </javac>
   
  -    <echo message="Building Slide Manager Servlet" />
  +    <echo message="Building Slide Manager" />
       <javac srcdir="src/manager" destdir="${slide.build}/classes"
        debug="${compile.debug}" 
        deprecation="${compile.deprecation}"
        optimize="${compile.optimize}"
        includes="**/manager/**"
        excludes="**/CVS/**,**/package.html">
  -      <classpath refid="webdavservlet.classpath"/>
  +      <classpath refid="manager.classpath"/>
       </javac>
         
     </target>
  @@ -644,6 +666,7 @@
       <echo message="Creating distribution directories" />
       <mkdir dir="${slide.dist}" />
       <mkdir dir="${slide.dist}/client" />
  +    <mkdir dir="${slide.dist}/server" />
       <mkdir dir="${slide.dist}/webapp" />
       <mkdir dir="${slide.dist}/lib" />
       <mkdir dir="${slide.dist}/examples" />
  @@ -696,12 +719,6 @@
        manifest="${slide.build}/classes/MANIFEST.MF"
        includes="LICENSE,README,CHANGELOG,org/apache/slide/webdav/**"  />
   
  -    <echo message="Building Slide Manager Servlet JAR" />
  -    <jar jarfile="${slide.dist}/lib/manager.jar"
  -     basedir="${slide.build}/classes"
  -     manifest="${slide.build}/classes/MANIFEST.MF"
  -     includes="LICENSE,README,CHANGELOG,org/apache/slide/manager/**"  />
  -
       <echo message="Copying documentation" />
       <copy todir="${slide.dist}/doc">
         <fileset dir="${slide.build}/doc" />
  @@ -785,12 +802,26 @@
         <classpath refid="wrappers.classpath"/>
         <exclude name="**/SlideRealm*.*" unless="catalina.present" />
         <exclude name="**/log4j/**" unless="log4j.present" />
  +      <exclude name="**/jndi/**" unless="jndi.present" />
       </javac>
   
     </target>
   
   
     <!-- =================================================================== -->
  +  <!-- Build JNDI related components                                       -->
  +  <!-- This target requires the JNDI libraries                             -->
  +  <!-- =================================================================== -->
  +  <target name="jndi-wrapper" depends="wrappers" if="jndi.present">
  +
  +    <jar jarfile="${slide.dist}/wrappers/slidejndi.jar"
  +     basedir="${slide.build}/classes"
  +     manifest="${slide.build}/classes/MANIFEST.MF"
  +     includes="LICENSE,README,CHANGELOG,**/wrappers/jndi/**" />
  +
  +  </target>
  +
  +  <!-- =================================================================== -->
     <!-- Build Catalina related components                                   -->
     <!-- This target requires Tomcat 4.0                                     -->
     <!-- =================================================================== -->
  @@ -811,7 +842,7 @@
       <jar jarfile="${slide.dist}/wrappers/catalinautil.jar"
        basedir="${slide.build}/classes"
        manifest="${slide.build}/classes/MANIFEST.MF"
  -     includes="LICENSE,README,CHANGELOG,**/SlideRealm*.*" />
  +     includes="LICENSE,README,CHANGELOG,**/wrappers/catalina/**" />
   
     </target>
   
  @@ -843,19 +874,76 @@
   
   
     <!-- =================================================================== -->
  -  <!-- Build an Avalon wrapper                                             -->
  -  <!-- This target requires Avalon                                         -->
  +  <!-- Build a JMX wrapper                                                 -->
  +  <!-- This target requires a JMX implementation                           -->
     <!-- =================================================================== -->
  -  <target name="avalon-wrapper" depends="wrappers" if="avalon.present">
  +  <target name="jmx-wrapper"  depends="wrappers" if="jmx.present">
   
     </target>
   
   
     <!-- =================================================================== -->
  -  <!-- Build a JMX wrapper                                                 -->
  -  <!-- This target requires a JMX implementation                           -->
  +  <!-- Build Catalina-based dedicated CMS                                  -->
  +  <!-- This target requires Tomcat 4.0                                     -->
     <!-- =================================================================== -->
  -  <target name="jmx-wrapper"  depends="wrappers" if="jmx.present">
  +  <target name="catalina-dist" depends="catalina-wrapper, jndi-wrapper" 
  +   if="catalina.present">
  +
  +    <copy todir="${slide.dist}/server">
  +      <fileset dir="${catalina.dist}">
  +        <exclude name="**/webapps/**" />
  +        <exclude name="**/src/**" />
  +      </fileset>
  +    </copy>
  +
  +    <copy todir="${slide.dist}/server/common/lib">
  +      <fileset dir="${slide.dist}/lib">
  +      </fileset>
  +    </copy>
  +
  +    <copy file="${slide.dist}/wrappers/catalinautil.jar" 
  +     tofile="${slide.dist}/server/server/lib/catalinautil.jar" />
  +    <copy file="${slide.dist}/wrappers/slidejndi.jar" 
  +     tofile="${slide.dist}/server/server/lib/slidejndi.jar" />
  +
  +    <copy file="src/wrappers/catalina/server.xml" 
  +     tofile="${slide.dist}/server/conf/server.xml"
  +     overwrite="yes" />
  +
  +    <copy file="src/conf/webapp/Domain.xml"
  +     tofile="${slide.dist}/server/Domain.xml" />
  +
  +    <mkdir dir="${slide.dist}/server/webapps/ROOT" />
  +    <mkdir dir="${slide.dist}/server/blank" />
  +
  +    <!-- Sepcial handling for JAXP to avoid sealing violations with Jasper -->
  +    <copy file="${catalina.dist}/jasper/crimson.jar"
  +     tofile="${slide.dist}/server/common/lib/crimson.jar" 
  +     overwrite="true" />
  +    <copy file="${catalina.dist}/jasper/jaxp.jar"
  +     tofile="${slide.dist}/server/common/lib/jaxp.jar"
  +     overwrite="true" />
  +    <delete file="${slide.dist}/server/jasper/crimson.jar" />
  +    <delete file="${slide.dist}/server/jasper/jaxp.jar" />
  +    <delete file="${slide.dist}/server/lib/crimson.jar" />
  +    <delete file="${slide.dist}/server/lib/jaxp.jar" />
  +
  +    <!-- Catalina HTML manager -->
  +    <war warfile="${slide.dist}/server/webapps/manager.war"
  +     webxml="src/wrappers/catalina/manager.xml">
  +    </war>
  +
  +    <!-- WebDAV view of the server -->
  +    <mkdir dir="${slide.dist}/server/webdav" />
  +    <war warfile="${slide.dist}/server/webdav/webdav.war"
  +     webxml="${slide.dist}/conf/web.xml">
  +    </war>
  +
  +    <!-- Slide manager -->
  +    <mkdir dir="${slide.dist}/server/manager" />
  +    <!--war warfile="${slide.dist}/server/manager/manager.war"
  +     webxml="${slide.dist}/conf/web.xml">
  +    </war-->
   
     </target>
   
  @@ -864,7 +952,8 @@
     <!-- Full distribution                                                   -->
     <!-- =================================================================== -->
     <target name="full-dist" depends="dist, webdav-client-dist, webapp-dist,
  -   catalina-wrapper, log4j-wrapper, avalon-wrapper, jmx-wrapper" />
  +   catalina-wrapper, catalina-dist, log4j-wrapper, jndi-wrapper, 
  +   jmx-wrapper" />
   
   
     <!-- =================================================================== -->