You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by nb...@apache.org on 2006/11/22 00:28:21 UTC

svn commit: r477960 - in /jakarta/velocity/tools/trunk: build.properties build.xml download.xml lib/

Author: nbubna
Date: Tue Nov 21 15:28:20 2006
New Revision: 477960

URL: http://svn.apache.org/viewvc?view=rev&rev=477960
Log:
for VELTOOLS-71
- remove dependency jars from version control
- automatically download dependencies with ant build
- set all environment properties via build.properties rather than in build.xml
- add proper manifests to jars
- automatically create checksums for jars and distribution files
- misc cleanup and improvement

Added:
    jakarta/velocity/tools/trunk/download.xml   (with props)
Removed:
    jakarta/velocity/tools/trunk/lib/
Modified:
    jakarta/velocity/tools/trunk/build.properties
    jakarta/velocity/tools/trunk/build.xml

Modified: jakarta/velocity/tools/trunk/build.properties
URL: http://svn.apache.org/viewvc/jakarta/velocity/tools/trunk/build.properties?view=diff&rev=477960&r1=477959&r2=477960
==============================================================================
--- jakarta/velocity/tools/trunk/build.properties (original)
+++ jakarta/velocity/tools/trunk/build.properties Tue Nov 21 15:28:20 2006
@@ -20,30 +20,110 @@
 # $Id$
 #
 
+# compile switches
 compile.debug= true
 compile.optimize= false
 compile.deprecation= true
 
-tools.path=${basedir}
-tools.lib.path=${tools.path}/lib
+# project identification
+project.name=VelocityTools
+project.version=1.3-dev
+project.libname=velocity-tools
+project.id=${project.libname}-${project.version}
 
-commons-beanutils.jar=${tools.lib.path}/commons-beanutils-1.7.0.jar
-commons-collections.jar=${tools.lib.path}/commons-collections-3.1.jar
-commons-digester.jar=${tools.lib.path}/commons-digester-1.7.jar
-commons-logging.jar=${tools.lib.path}/commons-logging-1.0.4.jar
-commons-validator.jar=${tools.lib.path}/commons-validator-1.1.4.jar
-dom4j.jar=${tools.lib.path}/dom4j.jar
-servlet.jar=${tools.lib.path}/servlet.jar
-struts.jar=${tools.lib.path}/struts-1.2.7.jar
-sslext.jar=${tools.lib.path}/sslext-1.2.jar
-velocity.jar=${tools.lib.path}/velocity-1.4.jar
-oro.jar=${tools.lib.path}/jakarta-oro-2.0.8.jar
-velocity.jar=${tools.lib.path}/velocity-1.4.jar
-velocity-dvsl.jar=${tools.lib.path}/velocity-dvsl-0.43.jar
-commons-lang.jar=${tools.lib.path}/commons-lang-2.1.jar
+struts.name=VelocityTools
+struts.libname=${project.libname}
+struts.description=a set of utilities for use with the Velocity template engine and Struts web framework
+struts.id=${struts.libname}-${project.version}
 
-# JDK 1.3 users can specify this to avoid
-# warnings when building the project javadoc
+view.name=VelocityView
+view.libname=${project.libname}-view
+view.description=a set of utilities for use with the Velocity template engine
+view.id=${view.libname}-${project.version}
+
+generic.name=Velocity GenericTools
+generic.libname=${project.libname}-generic
+generic.description=a set of non-J2EE utilities for use with the Velocity template engine
+generic.id=${generic.libname}-${project.version}
+
+# source directories
+source.home=${basedir}/src
+examples.home=${basedir}/examples
+conf.home=${source.home}/conf
+classes.src=${source.home}/java
+macros.src=${source.home}/velocity
+docs.src=${basedir}/xdocs
+
+# build directories
+build.dir=${basedir}/build
+classes.dir=${build.dir}/classes
+lib.dir=${basedir}/lib
+dist.dir=${basedir}/dist
+docs.dir=${basedir}/docs
+release.dir=${dist.dir}/release/${project.id}
+
+# javadoc properties
+javadoc.dir=${docs.dir}/javadoc
+javadoc.title=${project.name} ${project.version} Documentation
+javadoc.year=2003-2006
+javadocs.ref.jsdk= http://java.sun.com/j2se/1.4.2/docs/api/
+
+
+# #######################################################################
+#
+# Downloading jars from ibiblio repository
 #
-# xerces.jar=${lib.repo}/xerces.jar
-# xml-apis.jar=${lib.repo}/xmlParserAPIs.jar
+# #######################################################################
+
+# Settings for the proxy to use for download. Change this if you must
+# use a proxy from your host. If the proxy.host property is unset, no
+# proxy is used.
+#
+proxy.host=
+proxy.port= 80
+
+# We download directly from the ibiblio maven repository
+#
+repo.url= http://www.ibiblio.org/maven
+
+# Jars to be downloaded for compilation
+#
+jar.commons-beanutils.version= 1.7.0
+jar.commons-collections.version= 3.2
+jar.commons-digester.version= 1.7
+jar.commons-lang.version= 2.2
+jar.commons-logging.version= 1.1
+jar.commons-validator.version= 1.3.0
+jar.oro.version= 2.0.8
+jar.servletapi.version= 2.3
+jar.sslext.version = 1.2-0
+jar.struts.version = 1.2.9
+jar.velocity.version= 1.4
+
+# Jars to be downloaded for building documentation
+#
+jar.dom4j.version= 1.1
+jar.velocity-dvsl.version= 0.43
+
+########################################################################
+# Gump wants to override these names, so make
+# it configurable...
+#
+jar.oro.name= oro
+jar.commons-collections.name= commons-collections
+jar.commons-lang.name = commons-lang
+#
+########################################################################
+
+# Full paths to the jars for building the examples
+commons-beanutils.jar=${lib.dir}/commons-beanutils-${jar.commons-beanutils.version}.jar
+commons-collections.jar=${lib.dir}/${jar.commons-collections.name}-${jar.commons-collections.version}.jar
+commons-digester.jar=${lib.dir}/commons-digester-${jar.commons-digester.version}.jar
+commons-lang.jar=${lib.dir}/${jar.commons-lang.name}-${jar.commons-lang.version}.jar
+commons-logging.jar=${lib.dir}/commons-logging-${jar.commons-logging.version}.jar
+commons-validator.jar=${lib.dir}/commons-validator-${jar.commons-validator.version}.jar
+servlet.jar=${lib.dir}/servletapi-${jar.servletapi.version}.jar
+struts.jar=${lib.dir}/struts-${jar.struts.version}.jar
+sslext.jar=${lib.dir}/sslext-${jar.sslext.version}.jar
+oro.jar=${lib.dir}/${jar.oro.name}-${jar.oro.version}.jar
+velocity.jar=${lib.dir}/velocity-${jar.velocity.version}.jar

Modified: jakarta/velocity/tools/trunk/build.xml
URL: http://svn.apache.org/viewvc/jakarta/velocity/tools/trunk/build.xml?view=diff&rev=477960&r1=477959&r2=477960
==============================================================================
--- jakarta/velocity/tools/trunk/build.xml (original)
+++ jakarta/velocity/tools/trunk/build.xml Tue Nov 21 15:28:20 2006
@@ -21,66 +21,16 @@
 
 <project name="velocity-tools" default="all" basedir=".">
 
-
 <!-- ========== Properties ===================================== -->
 
-  <property file="build.properties"/>                <!-- Component local   -->
-  <property file="${user.home}/build.properties"/>   <!-- User local        -->
-
-  <property name="project.name"     value="Velocity Tools" />
-  <property name="project.version"  value="1.3-dev"/>
-  <property name="project.id"       value="velocity-tools-${project.version}"/>
-
-  <property name="struts.name"      value="velocity-tools-${project.version}"/>
-  <property name="view.name"        value="velocity-tools-view-${project.version}"/>
-  <property name="generic.name"     value="velocity-tools-generic-${project.version}"/>
-
-  <property name="source.home"      value="${basedir}/src"/>
-  <property name="lib.home"         value="${basedir}/lib"/>
-  <property name="examples.home"    value="${basedir}/examples"/>
-  <property name="conf.home"        value="${source.home}/conf"/>
-
-  <property name="classes.src"      value="${source.home}/java"/>
-  <property name="macros.src"       value="${source.home}/velocity"/>
-  <property name="docs.src"         value="${basedir}/xdocs"/>
-
-  <property name="build.dir"        value="${basedir}/build"/>
-  <property name="classes.dir"      value="${build.dir}/classes"/>
-  <property name="dist.dir"         value="${basedir}/dist"/>
-  <property name="docs.dir"         value="${basedir}/docs"/>
-  <property name="release.dir"      value="${dist.dir}/release/${project.id}"/>
-
-  <property name="javadoc.dir"      value="${docs.dir}/javadoc"/>
-  <property name="javadoc.title"    value="${project.name} ${project.version} Documentation"/>
-
-
-
-<!-- ========== Paths ========================================= -->
+  <!-- Give user a chance to override without editing this file
+       (and without typing -D each time it compiles it -->
+  <property file="${user.home}/.ant.properties" />
+  <property file="${user.home}/build.properties" />
+  <property file=".ant.properties" />
 
-  <!-- Construct classpath of all jars in lib repository -->
-  <path id="lib.classpath">
-    <fileset dir="${lib.home}">
-      <include name="**/*.jar"/>
-    </fileset>
-  </path>
-
-  <!-- Construct explicit classpath of libs needed to compile this project -->
-  <path id="compile.classpath">
-    <pathelement location="${commons-beanutils.jar}"/>
-    <pathelement location="${commons-collections.jar}"/>
-    <pathelement location="${commons-digester.jar}"/>
-    <pathelement location="${commons-lang.jar}"/>
-    <pathelement location="${commons-logging.jar}"/>
-    <pathelement location="${commons-validator.jar}"/>
-    <pathelement location="${struts.jar}"/>
-    <pathelement location="${oro.jar}"/>
-    <pathelement location="${sslext.jar}"/>
-    <pathelement location="${servlet.jar}"/>
-    <pathelement location="${velocity.jar}"/>
-
-    <!-- for JDK 1.3 users -->
-    <pathelement location="${xerces.jar}"/>
-  </path>
+  <!-- This file contains all the defaults for building VelocityTools -->
+  <property file="build.properties"/>                <!-- Component local   -->
 
 
 
@@ -88,10 +38,31 @@
 
 
   <!-- Main Target -->
-  <target name="all" depends="clean,jar.struts,examples,javadoc,docs"
+  <target name="all" depends="clean,jar.struts,examples,javadoc,docs,env"
           description="Clean and build velocity-tools library, examples, and documentation."/>
 
 
+  <!-- Environment Target -->
+  <target name="env" description="Prints build parameters">
+    <echo>
+  Global settings:
+    java.home =         ${java.home}
+    user.home =         ${user.home}
+    java.class.path =   ${java.class.path}
+
+  Project settings:
+    Version:            ${project.id}
+    Debug:              ${compile.debug}
+    Optimize:           ${compile.optimize}
+    Deprecation:        ${compile.deprecation}
+
+  Build settings:
+    Source Files:       ${source.home}
+    Build Files:        ${build.dir}
+    Distribution Files: ${dist.dir}
+    </echo>
+  </target>
+
 
   <!-- Clean Target -->
   <target name="clean" description="Deletes the build and dist directories">
@@ -131,16 +102,71 @@
     <delete dir="${docs.dir}"/>
   </target>
 
+  <!-- To do a truly, completely clean build -->
+  <target name="clean.lib" description="Deletes the folder of downloaded dependencies">
+    <delete dir="${lib.dir}"/>
+  </target>
+
+
+  <!-- Prepare Environment -->
+  <target name="prepare" depends="prepare.build,prepare.docs">
+    <!-- make necessary directories -->
+    <mkdir dir="${build.dir}"/>
+    <mkdir dir="${lib.dir}" />
+    <mkdir dir="${classes.dir}"/>
+    <mkdir dir="${dist.dir}"/>
+
+    <!-- download dependency jars -->
+    <ant antfile="${velocity.build.dir}/download.xml" target="build-download" />
 
+    <!-- construct classpath of all jars in lib repository -->
+    <path id="build.classpath">
+    <fileset dir="${lib.dir}">
+        <include name="**/*.jar"/>
+    </fileset>
+    </path>
+  </target>
 
-  <!-- Prepare directories -->
-  <target name="prepare">
+  <!-- Prepare Build Environment -->
+  <target name="prepare.build">
     <echo message="-------- ${project.name} ${project.version} --------"/>
+    
+    <!-- make necessary directories -->
     <mkdir dir="${build.dir}"/>
+    <mkdir dir="${lib.dir}" />
     <mkdir dir="${classes.dir}"/>
     <mkdir dir="${dist.dir}"/>
+
+    <!-- download dependency jars -->
+    <ant antfile="${basedir}/download.xml" target="build-download" />
+
+    <!-- construct classpath of all jars in lib repository -->
+    <path id="build.classpath">
+    <fileset dir="${lib.dir}">
+        <include name="**/*.jar"/>
+    </fileset>
+    </path>
   </target>
 
+  <!-- Prepare Documentation Environment -->
+  <target name="prepare.docs">
+    <!-- make necessary directories -->
+    <mkdir dir="${lib.dir}" />
+
+    <!-- download dependency jars -->
+    <ant antfile="${basedir}/download.xml" target="docs-download" />
+
+    <!-- construct classpath of all jars needed to build docs -->
+    <path id="docs.classpath">
+    <fileset dir="${lib.dir}">
+        <include name="**/*.jar"/>
+        <!--include name="dom4j*.jar"/>
+        <include name="commons-collections*.jar"/>
+        <include name="oro*.jar"/>
+        <include name="velocity*.jar"/-->
+    </fileset>
+    </path>
+  </target>
 
 
   <!-- Compile VelocityTools (all of it) -->
@@ -148,14 +174,14 @@
           description="Compiles the Velocity-Tools project (struts, view and generic)"/>
 
   <!-- Compile VelocityStruts (struts, view, generic) -->
-  <target name="compile.struts" depends="prepare"
+  <target name="compile.struts" depends="prepare.build"
           description="Compiles the Velocity-Tools project (struts, view, and generic)">
     <javac srcdir="${classes.src}"
            debug="${compile.debug}"
            optimize="${compile.optimize}"
            deprecation="${compile.deprecation}"
            destdir="${classes.dir}">
-      <classpath refid="compile.classpath" />
+      <classpath refid="build.classpath" />
       <include name="org/**"/>
     </javac>
 
@@ -167,14 +193,14 @@
   </target>
 
   <!-- Compile Just VelocityView (view, generic) -->
-  <target name="compile.view" depends="prepare"
+  <target name="compile.view" depends="prepare.build"
           description="Compiles VelocityView and the generic tools">
     <javac srcdir="${classes.src}"
            debug="${compile.debug}"
            optimize="${compile.optimize}"
            deprecation="${compile.deprecation}"
            destdir="${classes.dir}">
-      <classpath refid="compile.classpath" />
+      <classpath refid="build.classpath" />
       <include name="org/**"/>
       <exclude name="**/struts/**"/>
     </javac>
@@ -187,14 +213,14 @@
   </target>
 
   <!-- Compile Just Generic Tools (generic) -->
-  <target name="compile.generic" depends="prepare"
+  <target name="compile.generic" depends="prepare.build"
           description="Compiles just the generic tools in this project">
     <javac srcdir="${classes.src}"
            debug="${compile.debug}"
            optimize="${compile.optimize}"
            deprecation="${compile.deprecation}"
            destdir="${classes.dir}">
-      <classpath refid="compile.classpath" />
+      <classpath refid="build.classpath" />
       <include name="org/**"/>
       <exclude name="**/struts/**"/>
       <exclude name="**/view/**"/>
@@ -210,27 +236,84 @@
   <!-- Jar VelocityStruts (struts, view, generic) -->
   <target name="jar.struts" depends="compile.struts"
           description="Creates a velocity-tools jar in the dist directory.">
-    <jar destfile="${dist.dir}/${struts.name}.jar"
-         basedir="${classes.dir}"/>
+    <jar jarfile="${dist.dir}/${struts.id}.jar">
+      <fileset dir="${classes.dir}"/>
+      <metainf dir="${basedir}">
+        <include name="LICENSE"/>
+        <include name="NOTICE"/>
+      </metainf>
+      <manifest>
+        <attribute name="Created-By" value="Apache Ant"/>
+        <attribute name="Package" value="org.apache.velocity.tools"/>
+        <attribute name="Build-Jdk" value="${java.version}"/>
+        <attribute name="Extension-Name" value="${struts.libname}"/>
+        <attribute name="Specification-Title" value="${struts.name} is ${struts.description}" />
+        <attribute name="Specification-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Title" value="org.apache.velocity"/>
+        <attribute name="Implementation-Vendor-Id" value="org.apache"/>
+        <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Version" value="${project.version}"/>
+      </manifest>
+    </jar>
+    <checksum file="${dist.dir}/${struts.id}.jar" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${struts.id}.jar" algorithm="sha1" fileext=".sha1"/>
   </target>
 
   <!-- Jar Just VelocityView (view, generic) -->
   <target name="jar.view" depends="compile.view"
           description="Creates a velocity-tools-view jar in the dist directory">
-    <jar destfile="${dist.dir}/${view.name}.jar"
-         basedir="${classes.dir}">
-      <exclude name="**/struts/**"/>
+    <jar jarfile="${dist.dir}/${view.id}.jar">
+      <fileset dir="${classes.dir}">
+          <exclude name="**/struts/**"/>
+      </fileset>
+      <metainf dir="${basedir}">
+        <include name="LICENSE"/>
+        <include name="NOTICE"/>
+      </metainf>
+      <manifest>
+        <attribute name="Created-By" value="Apache Ant"/>
+        <attribute name="Package" value="org.apache.velocity.tools"/>
+        <attribute name="Build-Jdk" value="${java.version}"/>
+        <attribute name="Extension-Name" value="${view.libname}"/>
+        <attribute name="Specification-Title" value="${view.name} is ${view.description}" />
+        <attribute name="Specification-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Title" value="org.apache.velocity"/>
+        <attribute name="Implementation-Vendor-Id" value="org.apache"/>
+        <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Version" value="${project.version}"/>
+      </manifest>
     </jar>
+    <checksum file="${dist.dir}/${view.id}.jar" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${view.id}.jar" algorithm="sha1" fileext=".sha1"/>
   </target>
 
   <!-- Jar Just Generic Tools (generic) -->
   <target name="jar.generic" depends="compile.generic"
           description="Creates a velocity-tools-generic jar in the dist directory">
-    <jar destfile="${dist.dir}/${generic.name}.jar"
-         basedir="${classes.dir}">
-      <exclude name="**/struts/**"/>
-      <exclude name="**/view/**"/>
+    <jar jarfile="${dist.dir}/${generic.id}.jar">
+      <fileset dir="${classes.dir}">
+          <exclude name="**/struts/**"/>
+          <exclude name="**/view/**"/>
+      </fileset>
+      <metainf dir="${basedir}">
+        <include name="LICENSE"/>
+        <include name="NOTICE"/>
+      </metainf>
+      <manifest>
+        <attribute name="Created-By" value="Apache Ant"/>
+        <attribute name="Package" value="org.apache.velocity.tools.generic"/>
+        <attribute name="Build-Jdk" value="${java.version}"/>
+        <attribute name="Extension-Name" value="${generic.libname}"/>
+        <attribute name="Specification-Title" value="${generic.name} is ${generic.description}" />
+        <attribute name="Specification-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Title" value="org.apache.velocity.tools"/>
+        <attribute name="Implementation-Vendor-Id" value="org.apache"/>
+        <attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
+        <attribute name="Implementation-Version" value="${project.version}"/>
+      </manifest>
     </jar>
+    <checksum file="${dist.dir}/${generic.id}.jar" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${generic.id}.jar" algorithm="sha1" fileext=".sha1"/>
   </target>
 
 
@@ -245,9 +328,9 @@
              version="true"
              doctitle="&lt;h1&gt;${javadoc.title}&lt;/h1&gt;"
              windowtitle="${javadoc.title}"
-             bottom="Copyright (c) 2003-2006 Apache Software Foundation" >
+             bottom="Copyright (c) ${javadoc.year} Apache Software Foundation" >
 
-      <classpath refid="compile.classpath"/>
+      <classpath refid="build.classpath"/>
       <sourcepath>
         <pathelement path="${classes.src}" />
       </sourcepath>
@@ -257,15 +340,10 @@
 
 
   <!-- Build Velocity-Tools documentation -->
-  <target name="docs" description="Generate documentation into ${docs.dir}">
+  <target name="docs" depends="prepare.docs"
+          description="Generate documentation into ${docs.dir}">
     <taskdef name="dvsl" classname="org.apache.tools.dvsl.DVSLTask">
-      <classpath>
-        <pathelement location="${dom4j.jar}"/>
-        <pathelement location="${commons-collections.jar}"/>
-        <pathelement location="${oro.jar}"/>
-        <pathelement location="${velocity.jar}"/>
-        <pathelement location="${velocity-dvsl.jar}"/>
-      </classpath>
+      <classpath refid="docs.classpath"/>
     </taskdef>
 
     <dvsl basedir="${docs.src}"
@@ -317,7 +395,7 @@
     </delete>
 
     <!-- Assemble and build the simple example -->
-    <copy todir="${simple.lib}" file="${dist.dir}/${view.name}.jar"/>
+    <copy todir="${simple.lib}" file="${dist.dir}/${view.id}.jar"/>
     <copy todir="${simple.lib}" file="${commons-collections.jar}"/>
     <copy todir="${simple.lib}" file="${commons-digester.jar}"/>
     <copy todir="${simple.lib}" file="${commons-beanutils.jar}"/>
@@ -346,10 +424,11 @@
     <delete>
       <fileset dir="${velstruts.lib}" includes="velocity-tools*.jar"/>
     </delete>
-    <copy todir="${velstruts.lib}" file="${dist.dir}/${struts.name}.jar"/>
+    <copy todir="${velstruts.lib}" file="${dist.dir}/${struts.id}.jar"/>
     <copy todir="${velstruts.lib}" file="${commons-beanutils.jar}"/>
     <copy todir="${velstruts.lib}" file="${commons-collections.jar}"/>
     <copy todir="${velstruts.lib}" file="${commons-digester.jar}"/>
+    <copy todir="${velstruts.lib}" file="${commons-lang.jar}"/>
     <copy todir="${velstruts.lib}" file="${commons-logging.jar}"/>
     <copy todir="${velstruts.lib}" file="${commons-validator.jar}"/>
     <copy todir="${velstruts.lib}" file="${servlet.jar}"/>
@@ -357,7 +436,6 @@
     <copy todir="${velstruts.lib}" file="${struts.jar}"/>
     <copy todir="${velstruts.lib}" file="${oro.jar}"/>
     <copy todir="${velstruts.lib}" file="${velocity.jar}"/>
-    <copy todir="${velstruts.lib}" file="${commons-lang.jar}"/>
 
     <!-- Build VelocityStruts examples -->
     <ant dir="${examples.home}/struts" target="all" inheritAll="false"/>
@@ -378,13 +456,13 @@
     </delete>
 
     <!-- Assemble and build the layout example -->
-    <copy todir="${layout.lib}" file="${dist.dir}/${view.name}.jar"/>
+    <copy todir="${layout.lib}" file="${dist.dir}/${view.id}.jar"/>
     <copy todir="${layout.lib}" file="${commons-beanutils.jar}"/>
     <copy todir="${layout.lib}" file="${commons-collections.jar}"/>
     <copy todir="${layout.lib}" file="${commons-digester.jar}"/>
+    <copy todir="${layout.lib}" file="${commons-lang.jar}"/>
     <copy todir="${layout.lib}" file="${oro.jar}"/>
     <copy todir="${layout.lib}" file="${velocity.jar}"/>
-    <copy todir="${layout.lib}" file="${commons-lang.jar}"/>
 
     <ant dir="${examples.home}/layout" target="war" inheritAll="false"/>
   </target>
@@ -392,7 +470,7 @@
 
   <!-- Convenient target for rolling releases -->
   <target name="release"
-          depends="release.source,release.binaries"
+          depends="release.source,release.binaries,env"
           description="Creates binary and source distribution files"/>
 
   <!-- Create source distribution files -->
@@ -405,7 +483,6 @@
       <fileset dir="${basedir}">
         <include name="*"/>
         <include name="examples/**"/>
-        <include name="lib/**"/>
         <include name="src/**"/>
         <include name="xdocs/**"/>
       </fileset>
@@ -414,18 +491,23 @@
       <tarfileset dir="${basedir}">
         <include name="*"/>
         <include name="examples/**"/>
-        <include name="lib/**"/>
         <include name="src/**"/>
         <include name="xdocs/**"/>
       </tarfileset>
     </tar>
     <gzip zipfile="${dist.dir}/${project.id}-src.tar.gz"
           src="${dist.dir}/${project.id}-src.tar"/>
+
+    <!-- Create checksums for the binary distribution files -->
+    <checksum file="${dist.dir}/${project.id}-src.zip" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${project.id}-src.zip" algorithm="sha1" fileext=".sha1"/>
+    <checksum file="${dist.dir}/${project.id}-src.tar.gz" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${project.id}-src.tar.gz" algorithm="sha1" fileext=".sha1"/>
   </target>
 
   <!-- Create binary distribution files -->
   <target name="release.binaries"
-          depends="jar.struts,jar.view,jar.generic,examples,javadoc,docs"
+          depends="clean.lib,jar.struts,jar.view,jar.generic,examples,javadoc,docs"
           description="Builds everything and creates the binary distribution files">
 
     <!-- Gather misc docs/files -->
@@ -478,6 +560,12 @@
          basedir="${dist.dir}/release"/>
     <gzip zipfile="${dist.dir}/${project.id}.tar.gz"
           src="${dist.dir}/${project.id}.tar"/>
+
+    <!-- Create checksums for the binary distribution files -->
+    <checksum file="${dist.dir}/${project.id}.zip" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${project.id}.zip" algorithm="sha1" fileext=".sha1"/>
+    <checksum file="${dist.dir}/${project.id}.tar.gz" algorithm="md5" fileext=".md5"/>
+    <checksum file="${dist.dir}/${project.id}.tar.gz" algorithm="sha1" fileext=".sha1"/>
   </target>
 
 </project>

Added: jakarta/velocity/tools/trunk/download.xml
URL: http://svn.apache.org/viewvc/jakarta/velocity/tools/trunk/download.xml?view=auto&rev=477960
==============================================================================
--- jakarta/velocity/tools/trunk/download.xml (added)
+++ jakarta/velocity/tools/trunk/download.xml Tue Nov 21 15:28:20 2006
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!--
+ 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.    
+-->
+
+<!--
+  This file contains all the jar download targets to build Velocity.
+  Its tasks are referenced from the build.xml file and should not be
+  called directly.
+
+  This is here so that the main build file is not cluttered any further.
+-->
+
+<project name="Velocity" basedir="..">
+  <target name="build-download" unless="velocity.skip.download"
+          description="Download all dependencies needed to build VelocityTools from the central repository">
+    <antcall target="commons-beanutils-download" />
+    <antcall target="commons-collections-download" />
+    <antcall target="commons-digester-download" />
+    <antcall target="commons-lang-download" />
+    <antcall target="commons-logging-download" />
+    <antcall target="commons-validator-download" />
+    <antcall target="oro-download" />
+    <antcall target="servletapi-download" />
+    <antcall target="sslext-download" />
+    <antcall target="struts-download" />
+    <antcall target="velocity-download" />
+  </target>
+
+  <target name="docs-download" unless="velocity.skip.download"
+          description="Download all dependencies needed to render VelocityTools documentation from the central repository">
+    <antcall target="dom4j-download" />
+    <antcall target="velocity-dvsl-download" />
+  </target>
+
+  <target name="http-download" unless="skip.jar.loading">
+    <setproxy proxyhost="${proxy.host}" proxyport="${proxy.port}"/>
+    <get src="${repo.url}/${download.jarname}/jars/${download.jarname}-${download.jarversion}.jar"
+         dest="${lib.dir}/${download.jarname}-${download.jarversion}.jar"
+         usetimestamp="true"
+         verbose="false"
+         ignoreerrors="false" />
+  </target>
+
+  <target name="http-test-download" unless="skip.jar.loading">
+    <setproxy proxyhost="${proxy.host}" proxyport="${proxy.port}"/>
+    <get src="${repo.url}/${download.jarname}/jars/${download.jarname}-${download.jarversion}.jar"
+         dest="${lib.test.dir}/${download.jarname}-${download.jarversion}.jar"
+         usetimestamp="true"
+         verbose="false"
+         ignoreerrors="false" />
+  </target>
+
+  <target name="commons-beanutils-download">
+    <property name="download.jarname" value="commons-beanutils" />
+    <property name="download.jarversion" value="${jar.commons-beanutils.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="commons-collections-download">
+    <property name="download.jarname" value="${jar.commons-collections.name}" />
+    <property name="download.jarversion" value="${jar.commons-collections.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="commons-digester-download">
+    <property name="download.jarname" value="commons-digester" />
+    <property name="download.jarversion" value="${jar.commons-digester.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="commons-lang-download">
+    <property name="download.jarname" value="${jar.commons-lang.name}" />
+    <property name="download.jarversion" value="${jar.commons-lang.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="commons-logging-download">
+    <property name="download.jarname" value="commons-logging" />
+    <property name="download.jarversion" value="${jar.commons-logging.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="commons-validator-download">
+    <property name="download.jarname" value="commons-validator" />
+    <property name="download.jarversion" value="${jar.commons-validator.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="dom4j-download">
+    <property name="download.jarname" value="dom4j" />
+    <property name="download.jarversion" value="${jar.dom4j.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="oro-download">
+    <property name="download.jarname" value="${jar.oro.name}" />
+    <property name="download.jarversion" value="${jar.oro.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="servletapi-download">
+    <property name="download.jarname" value="servletapi" />
+    <property name="download.jarversion" value="${jar.servletapi.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="sslext-download">
+    <property name="download.jarname" value="sslext" />
+    <property name="download.jarversion" value="${jar.sslext.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="struts-download">
+    <property name="download.jarname" value="struts" />
+    <property name="download.jarversion" value="${jar.struts.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="velocity-download">
+    <property name="download.jarname" value="velocity" />
+    <property name="download.jarversion" value="${jar.velocity.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+  <target name="velocity-dvsl-download">
+    <property name="download.jarname" value="velocity-dvsl" />
+    <property name="download.jarversion" value="${jar.velocity-dvsl.version}" />
+    <antcall target="http-download"/>
+  </target>
+
+</project>
+

Propchange: jakarta/velocity/tools/trunk/download.xml
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@velocity.apache.org
For additional commands, e-mail: dev-help@velocity.apache.org