geirm       01/05/07 15:38:02

  Added:       jjar/examples/boot-build README.txt boot.sh build.properties
                        build.xml
  Log:
  initial commit
  
  Revision  Changes    Path
  1.1                  jakarta-commons-sandbox/jjar/examples/boot-build/README.txt
  
  Index: README.txt
  ===================================================================
  Simple example of how we can 'bootstrap' a project
  for a new user, to fetch jars that are needed to build.
  
  FIRST : build the jjar.jar and put it in this dir.
  the boot.sh script expects it
  
  In this example, we get ant and it's dependencies into 
  the lib directory, and build.
  
  
  
  
  
  1.1                  jakarta-commons-sandbox/jjar/examples/boot-build/boot.sh
  
  Index: boot.sh
  ===================================================================
  #!/bin/bash
  
  java -jar jjar.jar fetch -vi -p ant -j ant.jar -d lib
  java -jar jjar.jar fetch -vi -p junit -v 3.2 -j junit-3.2.jar -d lib
  
  ${JAVA_HOME}/bin/java -cp 
${JAVA_HOME}/lib/tools.jar:lib/ant.jar:lib/jaxp-1.0.jar:lib/jaxp-parser-1.0.jar:. 
org.apache.tools.ant.Main -buildfile build.xml test
  
  
  
  
  1.1                  
jakarta-commons-sandbox/jjar/examples/boot-build/build.properties
  
  Index: build.properties
  ===================================================================
  # junit.jar - JUnit 3.2+ Classpath
  junit.jar=lib/junit-3.2.jar
  
  
  
  1.1                  jakarta-commons-sandbox/jjar/examples/boot-build/build.xml
  
  Index: build.xml
  ===================================================================
  <!-- $Id: build.xml,v 1.1 2001/05/07 22:38:01 geirm Exp $ -->
  <project name="commons-collections" default="test" basedir=".">
  
     <!-- patternset describing files to be copied from the doc directory -->
     <patternset id="patternset-doc"/>
  
     <!-- patternset describing test classes -->
     <patternset id="patternset-test-classes">
        <include name="**/Test*.class"/>
     </patternset>
  
     <!-- patternset describing non test classes -->
     <patternset id="patternset-non-test-classes">
        <include name="**/*.class"/>
        <exclude name="**/Test*.class"/>
     </patternset>
  
     <!-- patternset describing non test source files (*.java, *html, etc.) -->
     <patternset id="patternset-javadocable-sources">
        <include name="**/*"/>
        <exclude name="**/Test*.java"/>
     </patternset>
  
     <!-- ######################################################### -->
  
     <target name="init">
        <tstamp/>
  
        <!-- read properties from the build.properties, if any -->
        <property name="component-propfile" value="${basedir}/build.properties"/>
        <property file="${component-propfile}"/>
  
        <!-- read properties from the commons build.properties, if any -->
        <property name="commons-propfile" value="${basedir}/../build.properties"/>
        <property file="${commons-propfile}"/>
  
        <!-- read properties from the ${user.home}/propfile, if any -->
        <property name="user-propfile" value="${user.home}/build.properties"/>
        <property file="${user-propfile}"/>
  
        <!-- command line classpath, if any -->
        <property name="cp" value=""/>
  
        <!-- now combine the classpaths -->
        <property name="classpath" value="${cp}:${junit.jar}"/>
  
        <property name="name" value="commons-collections"/>
        <property name="Name" value="Commons-Collections"/>
        <property name="Name-Long" value="Jakarta Commons Collections Package"/>
  
        <!-- The current version number of this component -->
        <property name="component.version"       value="0.02-dev"/>
          
        <property name="test.entry" value="org.apache.commons.collections.TestAll"/>
        <property name="test.failonerror" value="true" /> 
        <property name="test.runner" value="junit.textui.TestRunner" /> 
        
        <property name="workdir" 
value="${java.io.tmpdir}/buildtemp_${DSTAMP}${TSTAMP}"/>
        <property name="source" value="${basedir}"/>
        <property name="source.src" value="${basedir}/src"/>
        <property name="source.src.java" value="${source.src}/java"/>
        <property name="source.src.test" value="${source.src}/test"/>
        <property name="source.doc" value="${basedir}/doc"/>
        <property name="dest" value="${basedir}/dist"/>
        <property name="dest.classes" value="${dest}/classes"/>
        <property name="dest.doc" value="${dest}/docs"/>
        <property name="dest.doc.api" value="${dest.doc}/api"/>
        <property name="dest.jardir" value="${dest}"/>
        <property name="dest.jardir.jar" value="${dest.jardir}/${name}.jar"/>
  
        <available property="available-doc" file="${source.doc}"/> <!-- does this 
module have docs? -->
        <available property="available-src-java" file="${source.src.java}"/> <!-- does 
this module have java src? -->      
        <available property="available-src-test" file="${source.src.test}"/> <!-- does 
this module have test src? -->      
  
     </target>
  
     <!-- ######################################################### -->
  
     <target name="copy-javadoc-source" depends="init" if="available-src-java">
        <mkdir dir="${javadoc-source-dir}"/>
        <copy todir="${javadoc-source-dir}" filtering="no">
           <fileset dir="${source.src.java}">
              <patternset refid="patternset-javadocable-sources"/>
           </fileset>
        </copy>
     </target>
  
     <target name="copy-doc" depends="init" if="available-doc">
        <mkdir dir="${doc-source-dir}/${name}"/>
        <copy todir="${doc-source-dir}/${name}" filtering="no">
           <fileset dir="${source.doc}">
              <patternset refid="patternset-doc"/>
           </fileset>
        </copy>
     </target>
  
     <!-- ######################################################### -->
  
     <target name="clean" depends="init" description="removes generated files">
        <delete dir="${dest}"/>
     </target>
  
     <target name="clean-doc" depends="init,clean-javadoc">
        <delete dir="${dest.doc}"/>
     </target>
  
     <target name="clean-javadoc" depends="init">
        <delete dir="${dest.doc.api}"/>
     </target>
  
     <target name="clean-build" depends="init">
        <delete dir="${dest.classes}"/>
     </target>
  
     <target name="clean-dist" depends="init">
        <delete file="${dest.jardir.jar}"/>
     </target>
  
     <!-- ######################################################### -->
  
     <target name="doc" depends="init,doc-top,doc-copy,doc-javadoc" 
description="generates javadocs and other documentation">
     </target>
  
     <target name="doc-top" depends="init">
        <mkdir  dir="${dest}"/>
        <copy todir="${dest}" file="../LICENSE"/>
     </target>
  
     <target name="doc-copy" depends="init" if="available-doc">
        <mkdir dir="${dest.doc}"/>
        <copy todir="${dest.doc}">
        <fileset dir="${source.doc}">
           <patternset refid="patternset-doc"/>
        </fileset>
        </copy>
     </target>
  
     <target name="doc-javadoc" depends="init" if="available-src-java">
        <!-- copy all the non-test sources out to the work directory and javadoc that 
-->
        <mkdir dir="${workdir}"/>
        <copy todir="${workdir}">
          <fileset dir="${source.src.java}">
            <patternset refid="patternset-javadocable-sources"/>
          </fileset>
        </copy>
        <mkdir dir="${dest.doc.api}"/>
        <javadoc packagenames="org.*"
                 sourcepath="${workdir}"
                 classpath="${classpath}"
                 destdir="${dest.doc.api}"
                 windowtitle="${Name-Long}"
                 doctitle="${Name-Long}"
                 bottom="&lt;small&gt;Copyright &amp;copy; 2001 Apache Software 
Foundation. Documenation generated ${TODAY}&lt;/small&gt;."
                 public="true"
                 version="true"
                 author="true"
                 splitindex="false"
                 nodeprecated="true"
                 nodeprecatedlist="true"
                 notree="true"
                 noindex="false"
                 nohelp="true"
                 nonavbar="false"
                 serialwarn="false">
        </javadoc>
        <delete dir="${workdir}"/>
     </target>
  
     <!-- ######################################################### -->
  
     <target name="build" depends="init,build-java" description="compiles source 
files"/>
  
     <target name="build-java" depends="init" if="available-src-java">
        <mkdir dir="${dest.classes}"/>
        <javac destdir="${dest.classes}"
               srcdir="${source.src.java}"
               classpath="${classpath}"
               debug="false"
               deprecation="true"
               optimize="true"/>
     </target>
  
     <target name="build-test" depends="init,build-java" if="available-src-test">
        <mkdir dir="${dest.classes}"/>
        <javac destdir="${dest.classes}"
               srcdir="${source.src.test}"
               classpath="${classpath}"
               debug="false"
               deprecation="true"
               optimize="true"/>
     </target>
  
     <!-- ######################################################### -->
  
     <target name="test" depends="build-test" if="test.entry" description="runs 
(junit) unit tests">
        <!--
        <junit printsummary="yes" fork="on" haltonfailure="yes">
                <formatter type="plain" usefile="false"/>
                <test name="${test.entry}"/>
                <classpath>
                        <pathelement location="${dest.classes}" />
                        <pathelement path="${classpath}" />
                        <pathelement path="${java.class.path}" />
                </classpath>
        </junit>
        -->
        
        <java classname="${test.runner}" fork="yes" failonerror="${test.failonerror}">
          <arg value="${test.entry}"/> 
          <classpath>
            <pathelement location="${dest.classes}" /> 
            <pathelement path="${classpath}" /> 
            <pathelement path="${java.class.path}" /> 
          </classpath>
        </java>
     </target>
  
     <!-- ######################################################### -->
  
     <target name="dist" depends="dist-jar,doc" description="builds binary 
distribution"/>
  
     <target name="dist-jar" depends="build">
        <mkdir dir="${dest.jardir}"/>
        <mkdir dir="${workdir}"/>
        <copy todir="${workdir}">
           <fileset dir="${dest.classes}">
              <patternset refid="patternset-non-test-classes"/>
           </fileset>
        </copy>
        <jar jarfile="${dest.jardir.jar}" manifest="${source.src}/conf/MANIFEST.MF">
           <fileset dir="${workdir}"/>
        </jar>
        <delete dir="${workdir}"/>
     </target>
  
     <!-- ######################################################### -->
  
  </project>
  
  
  

Reply via email to