You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/03/09 22:27:01 UTC
svn commit: r635362 - in /tapestry/tapestry5/trunk: LICENSE-2.0.txt
LICENSE.txt build.xml support/maven-ant-tasks-2.0.8.jar
tapestry-hibernate/LICENSE.hibernate.txt tapestry-hibernate/LICENSE.txt
Author: hlship
Date: Sun Mar 9 14:26:59 2008
New Revision: 635362
URL: http://svn.apache.org/viewvc?rev=635362&view=rev
Log:
TAPESTRY-2164: The Tapestry binary distribution should include appropriate third party dependencies
Added:
tapestry/tapestry5/trunk/LICENSE.txt
- copied unchanged from r635142, tapestry/tapestry5/trunk/LICENSE-2.0.txt
tapestry/tapestry5/trunk/support/maven-ant-tasks-2.0.8.jar (with props)
Removed:
tapestry/tapestry5/trunk/LICENSE-2.0.txt
tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.hibernate.txt
Modified:
tapestry/tapestry5/trunk/build.xml
tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.txt
Modified: tapestry/tapestry5/trunk/build.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/build.xml?rev=635362&r1=635361&r2=635362&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/build.xml (original)
+++ tapestry/tapestry5/trunk/build.xml Sun Mar 9 14:26:59 2008
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!--
- Copyright 2007 The Apache Software Foundation
+ Copyright 2007, 2008 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -15,13 +15,17 @@
limitations under the License.
-->
-<project default="generate">
+<project default="generate" xmlns:mvn="urn:maven-artifact-ant">
<!-- Requires Ant 1.7.0 to execute! -->
<property name="target.dir" value="target"/>
<!-- Binary and source distributions, in .zip and .tar.gz formats, go here. -->
<property name="dists.dir" value="${target.dir}/dist"/>
+ <!-- Directory that contains the image for the binary distro. -->
+ <property name="binimage.dir" value="${target.dir}/bin-image"/>
+
+ <property name="group" value="org.apache.tapestry"/>
<!-- Read the Maven POM ... -->
@@ -36,61 +40,87 @@
<property name="bin.zip" value="${dists.dir}/tapestry-bin-${version}.zip"/>
<property name="src.zip" value="${dists.dir}/tapestry-src-${version}.zip"/>
- <!-- This has to be kept synchronized with the modules, as they change. We include just the "runtime" modules,
- no the ones used only within a Maven build; if the user is using Maven, they know how to (let Maven) get
- the code. -->
-
- <target name="assemble" description="Build distribution files.">
- <mkdir dir="${dists.dir}"/>
+ <macrodef name="copyto">
+ <attribute name="dir"/>
+ <attribute name="filesetid"/>
- <echo>*** Building distribution for project version ${version} ***</echo>
+ <sequential>
+ <mkdir dir="@{dir}"/>
+ <copy todir="@{dir}" flatten="true">
+ <fileset refid="@{filesetid}"/>
+ </copy>
+ </sequential>
+ </macrodef>
- <echo>Building binary distribution</echo>
+ <macrodef name="copy-licenses">
+ <attribute name="module"/>
- <zip destfile="${bin.zip}">
- <fileset dir="." includes="LICENSE*,*.txt"/>
+ <sequential>
+ <copy todir="${binimage.dir}" flatten="true">
+ <fileset dir="@{module}" includes="${licenses}"/>
+ <globmapper from="*" to="@{module}-*"/>
+ </copy>
+ </sequential>
- <!-- Folds the licences and the JARs into the subfolder. Repetitive but such is life. -->
- <zipfileset prefix="tapestry-annotations" dir="tapestry-annotations" includes="${licenses}"/>
- <zipfileset prefix="tapestry-annotations" dir="tapestry-annotations/target" includes="*.jar"/>
+ </macrodef>
- <zipfileset prefix="tapestry-core" dir="tapestry-core" includes="${licenses}"/>
- <zipfileset prefix="tapestry-core" dir="tapestry-core/target" includes="*.jar"/>
- <zipfileset prefix="tapestry-hibernate" dir="tapestry-hibernate" includes="${licenses}"/>
- <zipfileset prefix="tapestry-hibernate" dir="tapestry-hibernate/target" includes="*.jar"/>
+ <target name="-maven-setup" unless="maven-ant-tasks.classpath">
+ <path id="maven-ant-tasks.classpath" path="support/maven-ant-tasks-2.0.8.jar"/>
- <zipfileset prefix="tapestry-ioc" dir="tapestry-ioc" includes="${licenses}"/>
- <zipfileset prefix="tapestry-ioc" dir="tapestry-ioc/target" includes="*.jar"/>
+ <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="urn:maven-artifact-ant"
+ classpathref="maven-ant-tasks.classpath"/>
- <zipfileset prefix="tapestry-spring" dir="tapestry-spring" includes="${licenses}"/>
- <zipfileset prefix="tapestry-spring" dir="tapestry-spring/target" includes="*.jar"/>
+ <echo>Maven Ant Tasks loaded.</echo>
+ </target>
- <zipfileset prefix="tapestry-test" dir="tapestry-test" includes="${licenses}"/>
- <zipfileset prefix="tapestry-test" dir="tapestry-test/target" includes="*.jar"/>
- <zipfileset prefix="tapestry-upload" dir="tapestry-upload" includes="${licenses}"/>
- <zipfileset prefix="tapestry-upload" dir="tapestry-upload/target" includes="*.jar"/>
+ <target name="assemble-bin" depends="-maven-setup">
+ <echo>Building binary distribution</echo>
- <zipfileset prefix="tapestry-tutorial1" dir="tapestry-tutorial1" includes="${licenses}"/>
- <zipfileset prefix="tapestry-tutorial1" dir="tapestry-tutorial1/target" includes="*.war"/>
+ <mvn:dependencies filesetid="bin.dependency.fileset" sourcesfilesetid="bin.dependency.sources.fileset">
+ <dependency groupid="${group}" artifactid="tapestry-upload" version="${pom.version}"/>
+ <dependency groupid="${group}" artifactid="tapestry-hibernate" version="${pom.version}"/>
+ <dependency groupid="${group}" artifactid="tapestry-spring" version="${pom.version}"/>
+
+ <!-- All else will be dragged in. -->
+ </mvn:dependencies>
+
+ <copyto dir="${binimage.dir}/lib" filesetid="bin.dependency.fileset"/>
+ <copyto dir="${binimage.dir}/lib-src" filesetid="bin.dependency.sources.fileset"/>
+
+ <!-- We don't package tapestry-test because of its huge number of large dependencies. -->
+
+ <copy-licenses module="tapestry-ioc"/>
+ <copy-licenses module="tapestry-core"/>
+ <copy-licenses module="tapestry-hibernate"/>
+ <copy-licenses module="tapestry-spring"/>
+ <copy-licenses module="tapestry-upload"/>
- </zip>
+ <mkdir dir="${dists.dir}"/>
- <!-- Build the other formats from the .zip -->
+ <parallel>
+ <zip destfile="${bin.zip}">
+ <fileset dir="${binimage.dir}"/>
+ </zip>
+ <tar destfile="${dists.dir}/tapestry-bin-${version}.tar.gz" compression="gzip">
+ <fileset dir="${binimage.dir}"/>
+ </tar>
+
+ <tar destfile="${dists.dir}/tapestry-bin-${version}.tar.bz2" compression="bzip2">
+ <fileset dir="${binimage.dir}"/>
+ </tar>
- <tar destfile="${dists.dir}/tapestry-bin-${version}.tar.gz" compression="gzip">
- <zipfileset src="${bin.zip}"/>
- </tar>
+ </parallel>
- <tar destfile="${dists.dir}/tapestry-bin-${version}.tar.bz2" compression="bzip2">
- <zipfileset src="${bin.zip}"/>
- </tar>
+ </target>
- <echo>Building source distribution</echo>
+ <target name="-announce">
+ <echo>*** Building distribution for project version ${version} ***</echo>
+ </target>
- <!-- Now on to the source files. -->
+ <target name="assemble-src">
<zip destfile="${src.zip}">
<fileset dir="." includes="${licenses}"/>
@@ -123,6 +153,18 @@
<checksum fileext=".md5">
<fileset dir="${dists.dir}" includes="*.bz2,*.gz,*.zip"/>
</checksum>
+ </target>
+
+ <!-- This has to be kept synchronized with the modules, as they change. We include just the "runtime" modules,
+ no the ones used only within a Maven build; if the user is using Maven, they know how to (let Maven) get
+ the code. -->
+
+ <target name="assemble" description="Build distribution files." depends="-announce,assemble-bin,assemble-src">
+
+ <echo>Building source distribution</echo>
+
+ <!-- Now on to the source files. -->
+
<echo>*** Please sign the distributions using GPG before uploading the files. ***
@@ -139,6 +181,7 @@
<target name="clean" description="Remove distribution directory.">
<delete dir="${dists.dir}" quiet="true"/>
+ <delete dir="${binimage.dir}" quiet="true"/>
</target>
<target name="generate" description="Generate and deploy the build.">
Added: tapestry/tapestry5/trunk/support/maven-ant-tasks-2.0.8.jar
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/support/maven-ant-tasks-2.0.8.jar?rev=635362&view=auto
==============================================================================
Binary file - no diff available.
Propchange: tapestry/tapestry5/trunk/support/maven-ant-tasks-2.0.8.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.txt
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.txt?rev=635362&r1=635361&r2=635362&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.txt (original)
+++ tapestry/tapestry5/trunk/tapestry-hibernate/LICENSE.txt Sun Mar 9 14:26:59 2008
@@ -201,6 +201,8 @@
See the License for the specific language governing permissions and
limitations under the License.
+
+-------------------------------------------------------------------------------
HIBERNATE