werken      2002/07/04 08:54:25

  Modified:    .        build.xml project.xml
               src/java/org/apache/maven/app Maven.java
  Removed:     .        build-bootstrap.xml project-ng.xml
  Log:
      -------------------
      B I G   C H A N G E
      -------------------
  
      * To bootstrap, just type 'ant' now, as the bootstrap
        ant buildfile is simply 'build.xml' now.  build-bootstrap.xml
        has gone the way of the dodo bird (or carrier pigeon, if you
        prefer).
  
      * maven now knows -nothing- about project-ng.xml.  If you're
        using CVS HEAD, then maven will look for project.xml
        instead of project-ng.xml.  project.xml -must- be in the
        -ng format.
  
        This mostly applies to how test-cases and extra jar resources
        are specified with patterns.  See maven's own project.xml
        for an example.
  
  Revision  Changes    Path
  1.43      +548 -159  jakarta-turbine-maven/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-maven/build.xml,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- build.xml 19 Jun 2002 10:04:12 -0000      1.42
  +++ build.xml 4 Jul 2002 15:54:25 -0000       1.43
  @@ -1,9 +1,6 @@
   <?xml version="1.0"?>
   
  -<project name="maven" default="maven:jar" basedir=".">
  -
  -  <!-- Give user a chance to override without editing this file
  -       (and without typing -D each time they invoke a target) -->
  +<project name="Maven" default="bootstrap" basedir=".">
   
     <!-- Allow any user specific values to override the defaults -->
     <property file="${user.home}/build.properties" />
  @@ -12,215 +9,607 @@
     <!-- Set default values for the build -->
     <property file="project.properties" />
   
  +  <property
  +    name="maven.get.jars.baseUrl"
  +    value="http://jakarta.apache.org/turbine/jars";
  +  />
  +
  +  <property
  +    name="maven.bootstrap.dir"
  +    value="${basedir}/bootstrap"
  +  />
  +
  +  <property
  +    name="maven.bootstrap.classes"
  +    value="${maven.bootstrap.dir}/classes"
  +  />
  +
  +  <property
  +    name="maven.conf.dir"
  +    value="src/conf"
  +  />
  +
  +  <path id="pre-bootstrap-classpath">
  +    <pathelement location="${maven.bootstrap.classes}"/>
  +  </path>
  +
  +  <!-- ================================================================== -->
  +  <!-- P R O P E R T I E S  C H E C K                                     -->
  +  <!-- ================================================================== -->
  +  <!-- In order to bootstrap Maven you must have the following            -->
  +  <!-- properties defined in order for the bootstrap to work              -->
  +  <!-- correctly:                                                         -->
  +  <!--                                                                    -->
  +  <!-- ${lib.repo}  : Local JAR repository                                -->
  +  <!-- ${maven.home}: Maven installation directory                        -->
  +  <!-- ================================================================== -->
  +
  +  <target
  +    name="check-properties"
  +    depends="check-maven-home,check-lib-repo">
  +  </target>
  +
     <target
  -    name="jelly-jar">
  -    <antcall target="maven:jar"/>
  +    name="check-lib-repo"
  +    unless="lib.repo">
  +    <fail>
  +      +------------------------------------------------------------------
  +      | ERROR!
  +      |
  +      | You must set ${lib.repo} in your ${user.home}/build.properties
  +      |
  +      | Please refer to the bootstrap document:
  +      | http://jakarta.apache.org/turbine/maven/bootstrap.html
  +      +------------------------------------------------------------------
  +    </fail>
     </target>
   
     <target
  -    name="bob-pom">
  -    <echo>
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -        ${maven}
  -        ${maven.distributionDirectory}
  -        ${maven.distributionDirectory.length()}
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -        =======================================
  -    </echo>
  +    name="check-maven-home"
  +    unless="maven.home">
  +    <fail>
  +      +------------------------------------------------------------------
  +      | ERROR!
  +      |
  +      | You must set ${maven.home} in your ${user.home}/build.properties
  +      |
  +      | Please refer to the bootstrap document:
  +      | http://jakarta.apache.org/turbine/maven/bootstrap.html
  +      +------------------------------------------------------------------
  +    </fail>
  +  </target>
  +
  +  <!-- ================================================================== -->
  +  <!-- C L E A N  B O O T S T R A P                                       -->
  +  <!-- ================================================================== -->
  +  <!-- Remove the contents of ${maven.home} and ${lib.repo} to make       -->
  +  <!-- sure that the any bootstrap changes are working. This target       -->
  +  <!-- should be used in conjuction with a clean checkout to make         -->
  +  <!-- sure that everything is cool with the boostrap process.            -->
  +  <!-- ================================================================== -->
  +
  +  <target
  +    name="clean-bootstrap">
  +
  +    <delete dir="${maven.home}.backup"/>
  +    <delete dir="${lib.repo}.backup"/>
  +
  +    <mkdir dir="${maven.home}.backup"/>
  +    <mkdir dir="${lib.repo}.backup"/>
  +
  +    <copy todir="${maven.home}.backup">
  +      <fileset dir="${maven.home}"/>
  +    </copy>
  +
  +    <copy todir="${lib.repo}.backup">
  +      <fileset dir="${lib.repo}"/>
  +    </copy>
  +
  +    <delete dir="${maven.home}"/>
  +    <delete dir="${lib.repo}"/>
  +
  +    <mkdir dir="${maven.home}"/>
  +    <mkdir dir="${lib.repo}"/>
  +
  +    <antcall target="bootstrap"/>
  +
     </target>
   
   
     <!-- ================================================================== -->
  -  <!-- J A V A C C                                                        -->
  +  <!-- D E F A U L T  B O O T S T R A P                                   -->
     <!-- ================================================================== -->
   
  -  <target 
  -    name="javacc">
  -    
  -    <echo>
  -      JavaCC Home => ${javacc.home}
  -    </echo>
  -        
  -    <mkdir dir="${maven.outputDirectory}"/>
  -        
  -    <jjtree
  -      target="${maven.parserJJTreeGrammar}"
  -      javacchome="${maven.javacc.home}"
  -      nodepackage="${maven.nodePackage}"
  +  <target
  +    name="bootstrap"
  +    depends="install"
  +    description="--> Update local jars, generate maven's build system, generate 
maven, and setup the distributions.">
  +
  +    <copy todir="${maven.home}/lib" file="${lib.repo}/maven.jar"/>
  +
  +    <!-- make sure we run the correct maven script per os -->
  +    <condition property="maven.script" value="maven.bat">
  +      <and>
  +        <os family="windows" />
  +        <equals arg1="${maven.script}" arg2="$${maven.script}" />
  +      </and>
  +    </condition>
  +    <condition property="maven.script" value="maven">
  +      <equals arg1="${maven.script}" arg2="$${maven.script}" />
  +    </condition>
  +    <exec executable="${maven.home}/bin/${maven.script}"
  +          failonerror="true">
  +      <arg line="clean"/>
  +      <arg line="jar"/>
  +    </exec>
  +
  +  </target>
  +
  +  <target
  +    name="clean"
  +    depends="check-properties">
  +
  +    <!-- Remove any cruft left in build.dest -->
  +    <delete dir="target"/>
  +
  +    <!-- Remove the maven.jar from lib.repo -->
  +    <delete file="${lib.repo}/maven.jar"/>
  +  </target>
  +
  +  <!-- ================================================================== -->
  +  <!-- G E N E R A T E  B U I L D  S Y S T E M                            -->
  +  <!-- ================================================================== -->
  +  <!-- Generate the Maven build system. The Maven build system is         -->
  +  <!-- created by processing a set of velocity templates to produce      -->
  +  <!-- the final set of Ant build files used by all Maven projects.       -->
  +  <!-- ================================================================== -->
  +
  +  <target
  +    name="generate-build"
  +    depends="update-jars,phase2-compile">
  +
  +    <delete dir="${maven.bootstrap.dir}/maven"/>
  +    <mkdir dir="${maven.bootstrap.dir}/maven"/>
  +
  +    <copy todir="${maven.bootstrap.dir}/maven">
  +      <fileset dir="src/templates/build">
  +        <include name="plugins/**"/>
  +        <exclude name="**/Control.vm"/>
  +      </fileset>
  +    </copy>
  +
  +    <copy todir="${maven.bootstrap.dir}/maven/plugins">
  +      <fileset dir="src/plugins"/>
  +    </copy>
  +
  +  </target>
  +
  +  <!-- ================================================================== -->
  +  <!-- G E T  B O O T S T R A P  J A R S                                  -->
  +  <!-- ================================================================== -->
  +  <!-- Get JARs the hard way when bootstrapping maven the easy way isn't  -->
  +  <!-- available until maven is built.                                    -->
  +  <!-- ================================================================== -->
  +
  +  <target name="get-jars-no-proxy" unless="maven.proxy.host">
  +    <taskdef
  +      name="get-list"
  +      classname="org.apache.maven.ant.GetList">
  +      <classpath refid="pre-bootstrap-classpath"/>
  +    </taskdef>
  +
  +    <get-list
  +      listFile="jars.list"
  +      dest="${lib.repo}"
  +      baseUrl="${maven.get.jars.baseUrl}/"
       />
  -                              
  -    <javacc
  -      target="${maven.parserGrammar}"
  -      javacchome="${maven.javacc.home}"
  -      debugparser="false"
  -      debugtokenmanager="false"
  +  </target>
  +
  +  <target name="get-jars-proxy" if="maven.proxy.host">
  +    <taskdef
  +      name="get-list"
  +      classname="org.apache.maven.ant.GetList">
  +      <classpath refid="pre-bootstrap-classpath"/>
  +    </taskdef>
  +
  +    <get-list
  +      listFile="jars.list"
  +      dest="${lib.repo}"
  +      baseUrl="${maven.get.jars.baseUrl}/"
  +      proxyHost="${maven.proxy.host}"
  +      proxyPort="${maven.proxy.port}"
       />
  -                                              
     </target>
   
  -  <!-- maven:start -->
  -  
  +  <target
  +    name="update-jars"
  +    depends="phase1-compile,make-lib-repo-dir,get-jars-proxy,get-jars-no-proxy">
  +
  +  </target>
  +
     <!-- ================================================================== -->
  -  <!-- D E L E G A T O R S                                                -->
  +  <!-- P H A S E  1  C O M P I L E                                        -->
  +  <!-- ================================================================== -->
  +  <!-- We need to compile a few basic tasks that allow us to work from    -->
  +  <!-- the jars.list file. This allows us to maintain Maven's             -->
  +  <!-- requirements in a single location.                                 -->
  +  <!--                                                                    -->
  +  <!-- 1. GetList: Allows us to download a list of JARs into a specified  -->
  +  <!--    directory. Used to pull down the JARs to build Maven before     -->
  +  <!--    we have use of the POM.                                         -->
  +  <!--                                                                    -->
  +  <!-- 2. CreateClasspath: Allows us to create a class from a list of     -->
  +  <!--    JARs. Used in the phase2-compile which compiles the classes     -->
  +  <!--    required to generate the build system.                          -->
  +  <!--                                                                    -->
  +  <!-- 3. CreatePatternSet: Allows us to create a patternset that can     -->
  +  <!--    be used within a fileset definition. Used in the dist to        -->
  +  <!--    copy the JARs specified in our jars.list into the Maven         -->
  +  <!--    distribution.                                                   -->
     <!-- ================================================================== -->
   
  -    <target name="maven:gump-descriptor">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="gump-descriptor"/>
  -    </target>
  +  <target
  +    name="phase1-compile">
   
  -    <target name="maven:maven-update">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="maven-update"/>
  -    </target>
  +    <delete dir="${maven.bootstrap.dir}"/>
  +    <mkdir dir="${maven.bootstrap.classes}"/>
   
  -    <target name="maven:update-jars">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="update-jars"/>
  -    </target>
  +    <javac
  +      destdir="${maven.bootstrap.classes}"
  +      debug="on"
  +      deprecation="off"
  +      optimize="off">
  +      <src>
  +        <path location="src/java"/>
  +      </src>
  +      <include name="org/apache/maven/ant/*"/>
  +      <exclude name="org/apache/maven/ant/FileSetFromPath.java"/>
  +    </javac>
   
  -    <target name="maven:jar">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="jar"/>
  -    </target>
  +  </target>
   
  -    <target name="maven:docs-quick">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="docs-quick"/>
  -    </target>
  +  <!-- ================================================================== -->
  +  <!-- P H A S E  2  C O M P I L E                                        -->
  +  <!-- ================================================================== -->
  +  <!-- Compile the classes that are needed to generate the Maven          -->
  +  <!-- build system.                                                      -->
  +  <!-- ================================================================== -->
   
  -    <target name="maven:run-singletest">
  -      <ant antfile="${maven.home}/plugins/test/build.xml" target="run-singletest"/>
  -    </target>
  +  <target
  +    name="phase2-compile"
  +    depends="check-properties,phase1-compile">
   
  -    <target name="maven:compile">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="compile"/>
  -    </target>
  +    <taskdef
  +      name="create-classpath"
  +      classname="org.apache.maven.ant.CreateClasspath">
  +      <classpath>
  +        <pathelement location="${maven.bootstrap.classes}"/>
  +      </classpath>
  +    </taskdef>
  +
  +    <create-classpath
  +      listFile="jars.list"
  +      reference="bootstrap-classpath"
  +      baseDir="${lib.repo}"
  +    />
   
  -    <target name="maven:fo">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="fo"/>
  -    </target>
  +    <javac
  +      destdir="${maven.bootstrap.classes}"
  +      debug="on"
  +      deprecation="off"
  +      optimize="off">
  +      <classpath refid="bootstrap-classpath"/>
  +      <src>
  +        <path location="src/java"/>
  +      </src>
  +      <!--
  +      <include name="org/apache/maven/*"/>
  +      <include name="org/apache/maven/ant/*"/>
  +      <include name="org/apache/maven/project/*"/>
  +      <include name="org/apache/maven/app/*"/>
  +      <exclude name="org/apache/maven/ProjectResolver*"/>
  +      -->
  +    </javac>
  +
  +    <!--
  +      Copy Maven configuration files that need to be in the maven jar
  +    -->
  +    <copy file="${maven.conf.dir}/log4j.properties"
  +      todir="${maven.bootstrap.classes}"/>
  +
  +    <copy file="${maven.conf.dir}/bootstrap-taskdefs.properties"
  +      tofile="${maven.bootstrap.classes}/maven-taskdefs.properties"/>
  +
  +    <!--
  +      After we have compiled the classes required to generate
  +      the build system we need to make a temporary bootstrap
  +      maven.jar file and place it in lib.repo so that the generated
  +      build system will work. Maven expects the presence of
  +      ${lib.repo}/maven.jar and we want to use Maven as it
  +      is used for any normal project. Later in the build
  +      process we will replace this bootstrap version of
  +      maven.jar with the completely populated maven.jar.
  +    -->
  +
  +    <jar jarfile="${lib.repo}/maven.jar">
  +      <fileset dir="${maven.bootstrap.classes}">
  +        <include name="**/*.class"/>
  +        <include name="**/*.properties"/>
  +        <exclude name="**/package.html"/>
  +      </fileset>
  +    </jar>
   
  -    <target name="maven:cvs-change-log">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="cvs-change-log"/>
  -    </target>
  +  </target>
   
  -    <target name="maven:war">
  -      <ant antfile="${maven.home}/plugins/j2ee/build.xml" target="war"/>
  -    </target>
  +  <!-- ================================================================== -->
  +  <!-- I N S T A L L                                                      -->
  +  <!-- ================================================================== -->
   
  -    <target name="maven:generate-reactor">
  -      <ant antfile="${maven.home}/plugins/reactor/build.xml" 
target="generate-reactor"/>
  -    </target>
  +  <target
  +    name="install"
  +    depends="check-properties,clean,generate-build,make-maven-home-dir">
   
  -    <target name="maven:cross-ref">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="cross-ref"/>
  -    </target>
  +    <copy todir="${maven.home}">
  +      <fileset dir="${maven.bootstrap.dir}/maven"/>
  +    </copy>
  +
  +    <copy todir="${maven.home}" file="src/dtd/project.xsd" />
  +
  +    <copy todir="${maven.home}/stylesheets">
  +      <fileset dir="src/dvsl/xdocs"/>
  +    </copy>
  +
  +    <copy todir="${maven.home}/update">
  +      <fileset dir="src/update"/>
  +    </copy>
  +
  +    <copy todir="${maven.home}/stylesheets">
  +      <fileset dir="src/xslt"/>
  +    </copy>
  +
  +    <copy todir="${maven.home}/templates/xdocs">
  +      <fileset dir="src/templates/xdocs"/>
  +    </copy>
  +
  +    <copy todir="${maven.home}/images">
  +      <fileset dir="src/images"/>
  +    </copy>
  +
  +    <!--
  +      Make the examples directory in the Maven install that will
  +     allow a user to easily create a sample Maven project.
  +    -->
  +
  +    <copy
  +      toDir="${maven.home}/examples"
  +      file="src/examples/build-project.xml"
  +    />
   
  -    <target name="maven:deploy-site">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="deploy-site"/>
  -    </target>
  +    <copy
  +      toDir="${maven.home}/examples"
  +      file="project.xml"
  +    />
   
  -    <target name="maven:ear">
  -      <ant antfile="${maven.home}/plugins/j2ee/build.xml" target="ear"/>
  -    </target>
  +    <copy
  +      toDir="${maven.home}/examples"
  +      file="project.properties"
  +    />
   
  -    <target name="maven:install-jar">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="install-jar"/>
  -    </target>
  +    <!--
  +      Make the bin/ directory where we are going to install
  +      our new maven executable scripts.
  +    -->
  +
  +    <copy todir="${maven.home}/bin">
  +      <fileset dir="src/bin"/>
  +    </copy>
  +
  +    <chmod file="${maven.home}/bin/maven" perm="+x"/>
  +
  +    <taskdef
  +      name="create-patternset"
  +      classname="org.apache.maven.ant.CreatePatternSet">
  +      <classpath>
  +        <pathelement location="bootstrap/classes"/>
  +      </classpath>
  +    </taskdef>
  +
  +    <create-patternset
  +      listFile="jars.list"
  +      reference="install-patternset"
  +    />
   
  -    <target name="maven:task-list">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="task-list"/>
  -    </target>
  +    <copy todir="${maven.home}/lib">
  +      <fileset dir="${lib.repo}">
  +        <patternset refid="install-patternset"/>
  +      </fileset>
  +    </copy>
  +
  +    <copy
  +      file="jars.list"
  +      tofile="${maven.home}/plugins/core/jars.list"
  +      overwrite="yes"
  +    />
   
  -    <target name="maven:docs">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="docs"/>
  -    </target>
  +    <!--
  +      Install any additional plugin files if any
  +    -->
  +    <copy toDir="${maven.home}/plugins" verbose="true">
  +      <fileset dir="src/templates/build/plugins" includes="**/**" 
excludes="*/Control.vm"/>
  +    </copy>
   
  -    <target name="maven:site">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="site"/>
       </target>
   
  -    <target name="maven:deploy-dist">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="deploy-dist"/>
  -    </target>
  +  <!-- ================================================================== -->
  +  <!-- D I S T R I B U T I O N S                                          -->
  +  <!-- ================================================================== -->
  +  <!-- This target is used to produce the JAR file for the                -->
  +  <!-- InstallAnywhere installer and the JAR file that can be used to     -->
  +  <!-- manually install Maven.                                            -->
  +  <!-- ================================================================== -->
   
  -    <target name="maven:javadocs">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="javadocs"/>
  -    </target>
  +  <target
  +    name="dist"
  +    depends="bootstrap">
   
  -    <target name="maven:announce">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="announce"/>
  -    </target>
  +    <mkdir dir="${maven.home}/install"/>
   
  -    <target name="maven:check-source">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="check-source"/>
  -    </target>
  +    <copy tofile="${maven.home}/install/maven.jar" file="target/maven.jar"/>
  +    <copy todir="${maven.home}/install" file="src/install/build.xml"/>
   
  -    <target name="maven:dist">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="dist"/>
  -    </target>
  +    <taskdef
  +      name="create-patternset"
  +      classname="org.apache.maven.ant.CreatePatternSet">
  +      <classpath>
  +        <pathelement location="target/classes"/>
  +      </classpath>
  +    </taskdef>
  +
  +    <create-patternset
  +      listFile="jars.list"
  +      reference="install-patternset"
  +    />
   
  -    <target name="maven:dist-build">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="dist-build"/>
  -    </target>
  +    <copy todir="${maven.home}/install">
  +      <fileset dir="${lib.repo}">
  +        <patternset refid="install-patternset"/>
  +      </fileset>
  +    </copy>
  +
  +    <!-- This JAR is used by InstallAnywhere. The installation
  +         process creates the ${maven.home} directory so this JAR
  +         is the contents of the ${maven.home} directory so there
  +         is no enclosing top-level directory.
  +    -->
  +
  +    <jar
  +      jarfile="target/maven-install.jar"
  +      basedir="${maven.home}"
  +    />
   
  -    <target name="maven:metrics">
  -      <ant antfile="${maven.home}/plugins/metrics/build.xml" target="metrics"/>
  -    </target>
  +    <!-- This JAR can be used directly by developers wishing to
  +         install Maven manually. An enclosing top-level directory
  +         is created in this JAR which is more convenient for
  +         manual installs.
  +    -->
  +
  +    <jar
  +      jarfile="target/maven-install-with-dir.jar">
  +      <fileset dir="${maven.home}/..">
  +        <include name="maven/**"/>
  +      </fileset>
  +    </jar>
   
  -    <target name="maven:clean">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="clean"/>
  -    </target>
  +    <delete dir="${basedir}/bootstrap"/>
   
  -    <target name="maven:env">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="env"/>
  -    </target>
  +  </target>
   
  -    <target name="maven:test">
  -      <ant antfile="${maven.home}/plugins/test/build.xml" target="test"/>
  -    </target>
  +  <!-- ================================================================== -->
  +  <!-- P A C K A G E  T O  P R O J E C T  M A P                           -->
  +  <!-- ================================================================== -->
  +  <!-- Create the map used to resolve package references into             -->
  +  <!-- project references. Used in the process of analysing sources to    -->
  +  <!-- determine overall project dependencies.                            -->
  +  <!--                                                                    -->
  +  <!-- In order to run this target you must have the jakarta-alexandria   -->
  +  <!-- module checked out in parallel with the jakarta-turbine-maven      -->
  +  <!-- module. The Gump descriptors are transformed first and the         -->
  +  <!-- resultant Maven descriptors are processed.                         -->
  +  <!-- ================================================================== -->
   
  -    <target name="maven:pdf">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="pdf"/>
  -    </target>
  +  <target
  +    name="project-map">
   
  -    <target name="maven:iutest">
  -      <ant antfile="${maven.home}/plugins/iutest/build.xml" target="iutest"/>
  -    </target>
  +    <taskdef
  +      name="create-classpath"
  +      classname="org.apache.maven.ant.CreateClasspath">
  +      <classpath>
  +        <pathelement location="target/maven.jar"/>
  +      </classpath>
  +    </taskdef>
  +
  +    <create-classpath
  +      listFile="jars.list"
  +      reference="bootstrap-classpath"
  +      baseDir="${lib.repo}"
  +    />
   
  -    <target name="maven:activity-log">
  -      <ant antfile="${maven.home}/plugins/docs/build.xml" target="activity-log"/>
  -    </target>
  +    <taskdef
  +      name="package-project-map"
  +      classname="org.apache.maven.PackageProjectMap">
  +      <classpath refid="bootstrap-classpath"/>
  +      <classpath>
  +        <pathelement location="target/maven.jar"/>
  +      </classpath>
  +    </taskdef>
  +
  +    <ant dir="src/descriptors"/>
  +
  +    <package-project-map
  +      descriptorDir="src/descriptors/project"
  +      map="${maven.home}/package-project.map"
  +    />
   
  -    <target name="maven:verify-project">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="verify-project"/>
  -    </target>
  +  </target>
   
  -    <target name="maven:validate-pom">
  -      <ant antfile="${maven.home}/plugins/core/build.xml" target="validate-pom"/>
  -    </target>
  +  <!-- ================================================================== -->
  +  <!-- U T I L I T Y  T A R G E T S                                       -->
  +  <!-- ================================================================== -->
   
  -    <target name="maven:validate-war">
  -      <ant antfile="${maven.home}/plugins/j2ee/build.xml" target="validate-war"/>
  -    </target>
  +  <!--
  +       Create the maven.home directory if it doesn't exists, otherwise remove
  +       the directory contents.
  +  -->
  +  <target
  +    name="make-maven-home-dir"
  +    depends="clean-maven-home-dir"
  +    unless="maven.maven.home.dir.exists">
  +    <mkdir dir="${maven.home}" />
  +  </target>
   
  -    <target name="maven:clover-test">
  -      <ant antfile="${maven.home}/plugins/clover/build.xml" target="clover-test"/>
  -    </target>
  +  <!--
  +       Check for the existence of the maven.home directory.
  +  -->
  +  <target
  +    name="check-maven-home-dir">
  +    <available
  +      property="maven.maven.home.dir.exists"
  +      file="${maven.home}"
  +      type="dir"
  +    />
  +  </target>
   
  -    <target name="maven:clover-report-html">
  -      <ant antfile="${maven.home}/plugins/clover/build.xml" 
target="clover-report-html"/>
  -    </target>
  +  <!--
  +      If the maven.home directory exists remove it's contents.
  +  -->
  +  <target
  +    name="clean-maven-home-dir"
  +    depends="check-maven-home-dir"
  +    if="maven.maven.home.dir.exists">
  +    <delete includeEmptyDirs="yes" quiet="yes">
  +      <fileset dir="${maven.home}"/>
  +    </delete>
  +  </target>
   
  -    <target name="maven:clover-report-swing">
  -      <ant antfile="${maven.home}/plugins/clover/build.xml" 
target="clover-report-swing"/>
  -    </target>
  +  <!--
  +       Create the lib.repo directory if it doesn't exist.
  +  -->
  +  <target
  +    name="make-lib-repo-dir"
  +    depends="check-lib-repo-dir"
  +    unless="maven.lib.repo.dir.exists">
  +    <mkdir dir="${lib.repo}"/>
  +  </target>
   
  -  <!-- maven:end -->
  +  <!--
  +       Check for the existence of the lib.repo directory.
  +  -->
  +  <target
  +    name="check-lib-repo-dir">
  +    <available
  +    property="maven.lib.repo.dir.exists"
  +    file="${lib.repo}"
  +    type="dir"/>
  +  </target>
   
   </project>
  
  
  
  1.134     +28 -24    jakarta-turbine-maven/project.xml
  
  Index: project.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-maven/project.xml,v
  retrieving revision 1.133
  retrieving revision 1.134
  diff -u -r1.133 -r1.134
  --- project.xml       28 Jun 2002 05:16:44 -0000      1.133
  +++ project.xml       4 Jul 2002 15:54:25 -0000       1.134
  @@ -164,16 +164,6 @@
       </developer>
   
       <developer>
  -      <name>Peter Lynch</name>
  -      <id>plynch</id>
  -      <email>[EMAIL PROTECTED]</email>
  -      <organization></organization>
  -      <roles>
  -        <role>Java Developer</role>
  -      </roles>
  -    </developer>
  -
  -    <developer>
         <name>Glenn McAllister</name>
         <id>glennm</id>
         <email>[EMAIL PROTECTED]</email>
  @@ -273,6 +263,10 @@
       </contributor>
   
       <contributor>
  +      <name>Peter Lynch</name>
  +    </contributor>
  +
  +    <contributor>
         <name>Martin van dem Bemt</name>
         <email>[EMAIL PROTECTED]</email>
       </contributor>
  @@ -319,11 +313,6 @@
       </dependency>
   
       <dependency>
  -      <id>commons-grant</id>
  -      <version>1.0-b1</version>
  -    </dependency>
  -
  -    <dependency>
         <id>commons-graph</id>
         <version>0.8</version>
       </dependency>
  @@ -389,6 +378,12 @@
       </dependency>
   
       <dependency>
  +      <id>commons-grant</id>
  +      <version>1.0-b1</version>
  +      <url>http://jakarta.apache.org/commons/sandbox/grant/</url>
  +    </dependency>
  +
  +    <dependency>
         <id>commons-io</id>
         <version>0.2-dev.20020614.122300</version>
         <url>http://jakarta.apache.org/commons/</url>
  @@ -420,12 +415,12 @@
   <!-- this is a dependency, but as the classes ship with ant, bootstrap will
        fail with linkage errors if it's included and the junit tests are not
        forked
  +-->
       <dependency>
         <id>xmlParserAPIs</id>
         <version>2.0.0</version>
         <url>http://xml.apache.org/xerces2-j/</url>
       </dependency>
  --->
       <!-- Documentation dependencies -->
   
       <dependency>
  @@ -520,9 +515,16 @@
       <aspectSourceDirectory></aspectSourceDirectory>
   
       <!-- Unit test classes -->
  -    <unitTestPatterns>
  -      <unitTestPattern>include = **/*Test.java</unitTestPattern>
  -    </unitTestPatterns>
  +    <unitTest>
  +      <includes>
  +        <include>**/*Test.java</include>
  +      </includes>
  +<!--
  +      <excludes>
  +        <exclude>**/*BuildTest.java</exclude>
  +      </excludes>
  +-->
  +    </unitTest>
   
       <!-- Integration unit test classes -->
       <integrationUnitTestPatterns>
  @@ -531,11 +533,13 @@
       <!-- J A R  R E S O U R C E S -->
       <!-- Resources that are packaged up inside the JAR file -->
   
  -    <jarResources>
  -        <jarResource>include = *.dtd</jarResource>
  -        <jarResource>include = log4j.properties</jarResource>
  -        <jarResource>include = maven-taskdefs.properties</jarResource>
  -    </jarResources>
  +    <resources>
  +      <includes>
  +        <include>*.dtd</include>
  +        <include>log4j.properties</include>
  +        <include>maven-taskdefs.properties</include>
  +      </includes>
  +    </resources>
   
       <jars>
       </jars>
  
  
  
  1.42      +1 -1      jakarta-turbine-maven/src/java/org/apache/maven/app/Maven.java
  
  Index: Maven.java
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-maven/src/java/org/apache/maven/app/Maven.java,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- Maven.java        4 Jul 2002 13:31:52 -0000       1.41
  +++ Maven.java        4 Jul 2002 15:54:25 -0000       1.42
  @@ -129,7 +129,7 @@
       public static final String PROJECT_BUILD_FILE_NAME = "maven.xml";
   
       /** Filename of project descriptor. */
  -    public static final String PROJECT_DESCRIPTOR_FILE_NAME = "project-ng.xml";
  +    public static final String PROJECT_DESCRIPTOR_FILE_NAME = "project.xml";
   
       /** Plug-in main script name. */
       public static final String PLUGIN_SCRIPT_NAME = "plugin.jelly";
  
  
  

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

Reply via email to