You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2010/08/23 12:05:38 UTC

svn commit: r988055 - in /cayenne/main/branches/STABLE-3.0: ./ assembly/ assembly/src/main/assembly/ assembly/src/main/resources/ assembly/src/main/resources/assemblies/ docs/doc/src/main/resources/ modeler/

Author: aadamchik
Date: Mon Aug 23 10:05:37 2010
New Revision: 988055

URL: http://svn.apache.org/viewvc?rev=988055&view=rev
Log:
CAY-1471 Create a source cayenne assembly

* moving assembly plugin version to the top level pom
* bumping assembly plugin version to 2.2-beta-5 to get the latest features
* enabling assembly building from the top level
* enabling building multiple assemblies in one shot
* adding enforcer plugin to notify users of pltaform incompatibilities
* removing profile auto-activation by platform and default "generic" profile activation

* working 'src' assembly profile
* working 'generic' assembly profile
* working 'mac' assembly profile
* working 'windows' assembly profile

Added:
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-generic.xml
      - copied, changed from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-mac.xml
      - copied, changed from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-src.xml
    cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-windows.xml
      - copied, changed from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml
Removed:
    cayenne/main/branches/STABLE-3.0/assembly/build-mac.sh
    cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml
Modified:
    cayenne/main/branches/STABLE-3.0/assembly/pom.xml
    cayenne/main/branches/STABLE-3.0/docs/doc/src/main/resources/RELEASE-NOTES.txt
    cayenne/main/branches/STABLE-3.0/modeler/pom.xml
    cayenne/main/branches/STABLE-3.0/pom.xml

Modified: cayenne/main/branches/STABLE-3.0/assembly/pom.xml
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/assembly/pom.xml?rev=988055&r1=988054&r2=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/assembly/pom.xml (original)
+++ cayenne/main/branches/STABLE-3.0/assembly/pom.xml Mon Aug 23 10:05:37 2010
@@ -67,6 +67,7 @@
 			<artifactId>cayenne-doc</artifactId>
 			<version>${version}</version>
 		</dependency>
+
 	</dependencies>
 
 	<build>
@@ -80,97 +81,22 @@
 						</goals>
 						<phase>process-resources</phase>
 						<configuration>
-							<outputDirectory>
-								${project.build.directory}/legal
-							</outputDirectory>
+							<outputDirectory>${project.build.directory}/legal</outputDirectory>
 							<resourceBundles>
-								<resourceBundle>
-									org.apache.cayenne.unpublished:cayenne-legal-unpublished:${version}
-								</resourceBundle>
+								<resourceBundle>org.apache.cayenne.unpublished:cayenne-legal-unpublished:${version}</resourceBundle>
 							</resourceBundles>
 						</configuration>
 					</execution>
 				</executions>
 			</plugin>
 			<plugin>
-				<groupId>org.codehaus.mojo</groupId>
-				<artifactId>dependency-maven-plugin</artifactId>
-				<executions>
-					<execution>
-						<id>unpack-sources</id>
-						<phase>process-resources</phase>
-						<goals>
-							<goal>unpack</goal>
-						</goals>
-						<configuration>
-							<outputDirectory>target/sources</outputDirectory>
-							<artifactItems>
-								<artifactItem>
-									<groupId>org.apache.cayenne</groupId>
-									<artifactId>cayenne-server</artifactId>
-									<version>${version}</version>
-									<classifier>sources</classifier>
-								</artifactItem>
-							</artifactItems>
-						</configuration>
-					</execution>
-					<execution>
-						<id>unpack-docs</id>
-						<phase>process-resources</phase>
-						<goals>
-							<goal>unpack</goal>
-						</goals>
-						<configuration>
-							<outputDirectory>target/docs</outputDirectory>
-							<artifactItems>
-								<artifactItem>
-									<groupId>org.apache.cayenne.docs</groupId>
-									<artifactId>cayenne-doc</artifactId>
-									<version>${version}</version>
-								</artifactItem>
-							</artifactItems>
-						</configuration>
-					</execution>
-					<execution>
-						<id>unpack-modeler</id>
-						<phase>process-resources</phase>
-						<goals>
-							<goal>unpack</goal>
-						</goals>
-						<configuration>
-							<outputDirectory>target/modeler</outputDirectory>
-							<artifactItems>
-								<artifactItem>
-									<groupId>org.apache.cayenne</groupId>
-									<artifactId>cayenne-modeler-java</artifactId>
-									<version>${version}</version>
-								</artifactItem>
-							</artifactItems>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-assembly-plugin</artifactId>
-				<version>2.1</version>
-				<executions>
-					<execution>
-						<id>assembly</id>
-						<phase>package</phase>
-						<goals>
-							<goal>attached</goal>
-						</goals>
-						<configuration>
-							<descriptors>
-								<descriptor>${pom.basedir}/src/main/assembly/main.xml</descriptor>
-							</descriptors>
-							<finalName>cayenne-${version}</finalName>
-							<outputDirectory>${project.build.directory}</outputDirectory>
-							<appendAssemblyId>false</appendAssemblyId>
-						</configuration>
-					</execution>
-				</executions>
+				<configuration>
+					<outputDirectory>${project.build.directory}</outputDirectory>
+					<appendAssemblyId>false</appendAssemblyId>
+					<tarLongFileMode>gnu</tarLongFileMode>
+				</configuration>
 			</plugin>
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
@@ -184,25 +110,158 @@
 
 	<profiles>
 		<profile>
+			<!-- SOURCE assembly - the base assembly of a release build -->
+			<id>src</id>
+			<build>
+				<plugins>
+					<plugin>
+						<artifactId>maven-assembly-plugin</artifactId>
+						<executions>
+							<execution>
+								<id>assembly-src</id>
+								<phase>package</phase>
+								<goals>
+									<goal>single</goal>
+								</goals>
+								<configuration>
+									<descriptors>
+										<descriptor>src/main/resources/assemblies/assembly-src.xml</descriptor>
+									</descriptors>
+									<finalName>cayenne-${version}-src</finalName>
+								</configuration>
+							</execution>
+						</executions>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+		<profile>
+			<!-- GENERIC cross-platform assembly. Can be created on any platform -->
+			<id>generic</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.apache.cayenne</groupId>
+					<artifactId>cayenne-modeler-java</artifactId>
+					<version>${version}</version>
+				</dependency>
+			</dependencies>
+			<build>
+				<plugins>
+					<plugin>
+						<artifactId>maven-assembly-plugin</artifactId>
+						<executions>
+							<execution>
+								<id>assembly-generic</id>
+								<phase>package</phase>
+								<goals>
+									<goal>single</goal>
+								</goals>
+								<configuration>
+									<descriptors>
+										<descriptor>src/main/resources/assemblies/assembly-generic.xml</descriptor>
+									</descriptors>
+									<finalName>cayenne-${version}</finalName>
+								</configuration>
+							</execution>
+						</executions>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+		
+		<profile>
+			<!-- MAC assembly (can only be run on Mac)-->
 			<id>mac</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.apache.cayenne</groupId>
+					<artifactId>cayenne-modeler-mac</artifactId>
+					<version>${version}</version>
+				</dependency>
+			</dependencies>
 			<build>
 				<plugins>
+					<!-- Make sure we are running on Mac -->
+					<plugin>
+						<artifactId>maven-enforcer-plugin</artifactId>
+						<executions>
+							<execution>
+								<id>enforce</id>
+								<goals>
+									<goal>enforce</goal>
+								</goals>
+								<configuration>
+									<rules>
+					                	<requireOS>
+											<family>mac</family>
+										</requireOS>
+									</rules>
+									<fail>true</fail>
+								</configuration>
+							</execution>
+						</executions>
+					</plugin>
+					<plugin>
+						<artifactId>maven-assembly-plugin</artifactId>
+						<executions>
+							<execution>
+								<id>assembly-mac</id>
+								<phase>package</phase>
+								<goals>
+									<goal>single</goal>
+								</goals>
+								<configuration>
+									<descriptors>
+										<descriptor>src/main/resources/assemblies/assembly-mac.xml</descriptor>
+									</descriptors>
+									<finalName>cayenne-${version}-macosx</finalName>
+								</configuration>
+							</execution>
+						</executions>
+					</plugin>
+				
 					<plugin>
 						<groupId>org.codehaus.mojo</groupId>
-						<artifactId>dependency-maven-plugin</artifactId>
+						<artifactId>exec-maven-plugin</artifactId>
 						<executions>
+							<!-- chmod executable ... while japplication plugin produces the correct permissions,
+							     jar/unjar operation resets 'x' flag, so the app becomes non-executable. Must
+							     fix that manually
+							-->
 							<execution>
-								<id>unpack-modeler</id>
+								<id>chmod-modeler</id>
+								<phase>package</phase>
+								<goals>
+									<goal>exec</goal>
+								</goals>
 								<configuration>
-									<!-- Unpack to non-standard dir - we'll package it via a shell script -->
-									<outputDirectory>target/modeler-mac</outputDirectory>
-									<artifactItems>
-										<artifactItem>
-											<groupId>org.apache.cayenne</groupId>
-											<artifactId>cayenne-modeler-mac</artifactId>
-											<version>${version}</version>
-										</artifactItem>
-									</artifactItems>
+									<executable>/bin/chmod</executable>
+									<arguments>
+										<argument>755</argument>
+										<argument>target/cayenne-${version}-macosx/CayenneModeler.app/Contents/MacOS/JavaApplicationStub</argument>
+									</arguments>
+								</configuration>
+							</execution>
+							
+							<!-- Package into .dmg -->
+							<execution>
+								<id>dmg-distro</id>
+								<phase>package</phase>
+								<goals>
+									<goal>exec</goal>
+								</goals>
+								<configuration>
+									<executable>/usr/bin/hdiutil</executable>
+									<arguments>
+										<argument>create</argument>
+										<argument>-srcfolder</argument>
+										<argument>target/cayenne-${version}-macosx</argument>
+										<argument>-format</argument>
+										<argument>UDZO</argument>
+										<argument>-volname</argument>
+										<argument>cayenne-${version}</argument>
+										<argument>target/cayenne-${version}-macosx</argument>
+									</arguments>
 								</configuration>
 							</execution>
 						</executions>
@@ -210,25 +269,35 @@
 				</plugins>
 			</build>
 		</profile>
+		
 		<profile>
+			<!-- WINDOWS assembly (can only be run on Windows)-->
 			<id>windows</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.apache.cayenne</groupId>
+					<artifactId>cayenne-modeler-win</artifactId>
+					<version>${version}</version>
+				</dependency>
+			</dependencies>
 			<build>
 				<plugins>
+					<!-- Make sure we are running on windows -->
 					<plugin>
-						<groupId>org.codehaus.mojo</groupId>
-						<artifactId>dependency-maven-plugin</artifactId>
+						<artifactId>maven-enforcer-plugin</artifactId>
 						<executions>
 							<execution>
-								<id>unpack-modeler</id>
+								<id>enforce</id>
+								<goals>
+									<goal>enforce</goal>
+								</goals>
 								<configuration>
-									<outputDirectory>target/modeler</outputDirectory>
-									<artifactItems>
-										<artifactItem>
-											<groupId>org.apache.cayenne</groupId>
-											<artifactId>cayenne-modeler-win</artifactId>
-											<version>${version}</version>
-										</artifactItem>
-									</artifactItems>
+									<rules>
+					                	<requireOS>
+											<family>windows</family>
+										</requireOS>
+									</rules>
+									<fail>true</fail>
 								</configuration>
 							</execution>
 						</executions>
@@ -237,8 +306,15 @@
 						<artifactId>maven-assembly-plugin</artifactId>
 						<executions>
 							<execution>
-								<id>assembly</id>
+								<id>assembly-win</id>
+								<phase>package</phase>
+								<goals>
+									<goal>single</goal>
+								</goals>
 								<configuration>
+									<descriptors>
+										<descriptor>src/main/resources/assemblies/assembly-windows.xml</descriptor>
+									</descriptors>
 									<finalName>cayenne-${version}-win</finalName>
 								</configuration>
 							</execution>

Copied: cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-generic.xml (from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml)
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-generic.xml?p2=cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-generic.xml&p1=cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml&r1=987752&r2=988055&rev=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml (original)
+++ cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-generic.xml Mon Aug 23 10:05:37 2010
@@ -15,15 +15,37 @@
 	limitations under the License.
 -->
 <assembly>
-	<id>main</id>
+	<id>generic</id>
 
 	<formats>
 		<format>tar.gz</format>
-		<format>zip</format>
-  </formats>
+	</formats>
 
 	<includeBaseDirectory>true</includeBaseDirectory>
 
+	<fileSets>
+		<fileSet>
+			<directory>target/legal/META-INF/cayenne</directory>
+			<outputDirectory>/</outputDirectory>
+		</fileSet>
+		<fileSet>
+			<directory>../tutorials/</directory>
+			<outputDirectory>tutorials</outputDirectory>
+			<includes>
+				<include>tutorial/**</include>
+				<include>tutorial-rop-server/**</include>
+				<include>tutorial-rop-client/**</include>
+			</includes>
+			<excludes>
+				<exclude>**/target/**</exclude>
+				<exclude>**/derby.log</exclude>
+				<exclude>**/.gitignore</exclude>
+				<exclude>**/.classpath</exclude>
+				<exclude>**/.project</exclude>
+			</excludes>
+		</fileSet>
+	</fileSets>
+	
 	<dependencySets>
 		<dependencySet>
 			<outputDirectory>lib</outputDirectory>
@@ -38,57 +60,36 @@
 			<outputDirectory>lib/third-party</outputDirectory>
 			<!-- Include only a minimal set of dependencies to run cayenne-server and ant tasks -->
 			<includes>
-				<include>com.caucho:hessian</include>
 				<include>commons-collections:commons-collections</include>
 				<include>commons-logging:commons-logging</include>
 				<include>org.objectstyle.ashwood:ashwood</include>
-				<include>velocity:velocity</include>
+				<include>org.apache.velocity:velocity</include>
 				<include>foundrylogic.vpp:vpp</include>
 			</includes>
 		</dependencySet>
-	</dependencySets>
-
-	<fileSets>
-		<fileSet>
-			<directory>target/legal/META-INF/cayenne</directory>
+		<dependencySet>
 			<outputDirectory>/</outputDirectory>
-		</fileSet>
-		<fileSet>
-			<directory>target/modeler</directory>
+			<includes>
+				<include>org.apache.cayenne.docs:cayenne-doc</include>
+			</includes>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+		<dependencySet>
 			<outputDirectory>bin</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/docs</directory>
-			<outputDirectory>/</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/sources</directory>
-			<outputDirectory>src</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>../tutorials/</directory>
-			<outputDirectory>tutorials</outputDirectory>
 			<includes>
-				<include>tutorial/**</include>
-				<include>tutorial-rop-server/**</include>
-				<include>tutorial-rop-client/**</include>
+				<include>org.apache.cayenne:cayenne-modeler-java</include>
 			</includes>
-			<excludes>
-				<exclude>**/target/**</exclude>
-				<exclude>**/derby.log</exclude>
-				<exclude>**/.gitignore</exclude>
-				<exclude>**/.classpath</exclude>
-				<exclude>**/.project</exclude>
-			</excludes>
-		</fileSet>
-	</fileSets>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+	</dependencySets>
 </assembly>

Copied: cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-mac.xml (from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml)
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-mac.xml?p2=cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-mac.xml&p1=cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml&r1=987752&r2=988055&rev=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml (original)
+++ cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-mac.xml Mon Aug 23 10:05:37 2010
@@ -15,15 +15,37 @@
 	limitations under the License.
 -->
 <assembly>
-	<id>main</id>
+	<id>mac</id>
 
 	<formats>
-		<format>tar.gz</format>
-		<format>zip</format>
-  </formats>
+		<format>dir</format>
+	</formats>
 
 	<includeBaseDirectory>true</includeBaseDirectory>
 
+	<fileSets>
+		<fileSet>
+			<directory>target/legal/META-INF/cayenne</directory>
+			<outputDirectory>/</outputDirectory>
+		</fileSet>
+		<fileSet>
+			<directory>../tutorials/</directory>
+			<outputDirectory>tutorials</outputDirectory>
+			<includes>
+				<include>tutorial/**</include>
+				<include>tutorial-rop-server/**</include>
+				<include>tutorial-rop-client/**</include>
+			</includes>
+			<excludes>
+				<exclude>**/target/**</exclude>
+				<exclude>**/derby.log</exclude>
+				<exclude>**/.gitignore</exclude>
+				<exclude>**/.classpath</exclude>
+				<exclude>**/.project</exclude>
+			</excludes>
+		</fileSet>
+	</fileSets>
+	
 	<dependencySets>
 		<dependencySet>
 			<outputDirectory>lib</outputDirectory>
@@ -38,57 +60,36 @@
 			<outputDirectory>lib/third-party</outputDirectory>
 			<!-- Include only a minimal set of dependencies to run cayenne-server and ant tasks -->
 			<includes>
-				<include>com.caucho:hessian</include>
 				<include>commons-collections:commons-collections</include>
 				<include>commons-logging:commons-logging</include>
 				<include>org.objectstyle.ashwood:ashwood</include>
-				<include>velocity:velocity</include>
+				<include>org.apache.velocity:velocity</include>
 				<include>foundrylogic.vpp:vpp</include>
 			</includes>
 		</dependencySet>
-	</dependencySets>
-
-	<fileSets>
-		<fileSet>
-			<directory>target/legal/META-INF/cayenne</directory>
-			<outputDirectory>/</outputDirectory>
-		</fileSet>
-		<fileSet>
-			<directory>target/modeler</directory>
-			<outputDirectory>bin</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/docs</directory>
+		<dependencySet>
 			<outputDirectory>/</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/sources</directory>
-			<outputDirectory>src</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>../tutorials/</directory>
-			<outputDirectory>tutorials</outputDirectory>
 			<includes>
-				<include>tutorial/**</include>
-				<include>tutorial-rop-server/**</include>
-				<include>tutorial-rop-client/**</include>
+				<include>org.apache.cayenne.docs:cayenne-doc</include>
 			</includes>
-			<excludes>
-				<exclude>**/target/**</exclude>
-				<exclude>**/derby.log</exclude>
-				<exclude>**/.gitignore</exclude>
-				<exclude>**/.classpath</exclude>
-				<exclude>**/.project</exclude>
-			</excludes>
-		</fileSet>
-	</fileSets>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+		<dependencySet>
+			<outputDirectory>../../</outputDirectory>
+			<includes>
+				<include>org.apache.cayenne:cayenne-modeler-mac</include>
+			</includes>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+	</dependencySets>
 </assembly>

Added: cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-src.xml
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-src.xml?rev=988055&view=auto
==============================================================================
--- cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-src.xml (added)
+++ cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-src.xml Mon Aug 23 10:05:37 2010
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+	Copyright 2006, 2009 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.
+	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.
+-->
+<assembly>
+	<id>src</id>
+
+	<formats>
+		<format>tar.gz</format>
+	</formats>
+
+	<includeBaseDirectory>true</includeBaseDirectory>
+
+	<fileSets>
+		<fileSet>
+			<directory>../</directory>
+			<outputDirectory>/</outputDirectory>
+			<excludes>
+				<exclude>**/target/**</exclude>
+				<exclude>**/derby.log</exclude>
+			</excludes>
+		</fileSet>
+		<fileSet>
+			<directory>target/legal/META-INF/cayenne</directory>
+			<outputDirectory>/</outputDirectory>
+		</fileSet>
+	</fileSets>
+</assembly>

Copied: cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-windows.xml (from r987752, cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml)
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-windows.xml?p2=cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-windows.xml&p1=cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml&r1=987752&r2=988055&rev=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/assembly/src/main/assembly/main.xml (original)
+++ cayenne/main/branches/STABLE-3.0/assembly/src/main/resources/assemblies/assembly-windows.xml Mon Aug 23 10:05:37 2010
@@ -15,15 +15,37 @@
 	limitations under the License.
 -->
 <assembly>
-	<id>main</id>
+	<id>generic</id>
 
 	<formats>
-		<format>tar.gz</format>
 		<format>zip</format>
-  </formats>
+	</formats>
 
 	<includeBaseDirectory>true</includeBaseDirectory>
 
+	<fileSets>
+		<fileSet>
+			<directory>target/legal/META-INF/cayenne</directory>
+			<outputDirectory>/</outputDirectory>
+		</fileSet>
+		<fileSet>
+			<directory>../tutorials/</directory>
+			<outputDirectory>tutorials</outputDirectory>
+			<includes>
+				<include>tutorial/**</include>
+				<include>tutorial-rop-server/**</include>
+				<include>tutorial-rop-client/**</include>
+			</includes>
+			<excludes>
+				<exclude>**/target/**</exclude>
+				<exclude>**/derby.log</exclude>
+				<exclude>**/.gitignore</exclude>
+				<exclude>**/.classpath</exclude>
+				<exclude>**/.project</exclude>
+			</excludes>
+		</fileSet>
+	</fileSets>
+	
 	<dependencySets>
 		<dependencySet>
 			<outputDirectory>lib</outputDirectory>
@@ -38,57 +60,36 @@
 			<outputDirectory>lib/third-party</outputDirectory>
 			<!-- Include only a minimal set of dependencies to run cayenne-server and ant tasks -->
 			<includes>
-				<include>com.caucho:hessian</include>
 				<include>commons-collections:commons-collections</include>
 				<include>commons-logging:commons-logging</include>
 				<include>org.objectstyle.ashwood:ashwood</include>
-				<include>velocity:velocity</include>
+				<include>org.apache.velocity:velocity</include>
 				<include>foundrylogic.vpp:vpp</include>
 			</includes>
 		</dependencySet>
-	</dependencySets>
-
-	<fileSets>
-		<fileSet>
-			<directory>target/legal/META-INF/cayenne</directory>
+		<dependencySet>
 			<outputDirectory>/</outputDirectory>
-		</fileSet>
-		<fileSet>
-			<directory>target/modeler</directory>
+			<includes>
+				<include>org.apache.cayenne.docs:cayenne-doc</include>
+			</includes>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+		<dependencySet>
 			<outputDirectory>bin</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/docs</directory>
-			<outputDirectory>/</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>target/sources</directory>
-			<outputDirectory>src</outputDirectory>
-			<excludes>
-				<exclude>META-INF/**</exclude>
-			</excludes>
-		</fileSet>
-		<fileSet>
-			<directory>../tutorials/</directory>
-			<outputDirectory>tutorials</outputDirectory>
 			<includes>
-				<include>tutorial/**</include>
-				<include>tutorial-rop-server/**</include>
-				<include>tutorial-rop-client/**</include>
+				<include>org.apache.cayenne:cayenne-modeler-win</include>
 			</includes>
-			<excludes>
-				<exclude>**/target/**</exclude>
-				<exclude>**/derby.log</exclude>
-				<exclude>**/.gitignore</exclude>
-				<exclude>**/.classpath</exclude>
-				<exclude>**/.project</exclude>
-			</excludes>
-		</fileSet>
-	</fileSets>
+			<unpack>true</unpack>
+			<unpackOptions>
+				<excludes>
+					<exclude>META-INF/**</exclude>
+				</excludes>
+			</unpackOptions>
+		</dependencySet>
+	</dependencySets>
 </assembly>

Modified: cayenne/main/branches/STABLE-3.0/docs/doc/src/main/resources/RELEASE-NOTES.txt
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/docs/doc/src/main/resources/RELEASE-NOTES.txt?rev=988055&r1=988054&r2=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/docs/doc/src/main/resources/RELEASE-NOTES.txt (original)
+++ cayenne/main/branches/STABLE-3.0/docs/doc/src/main/resources/RELEASE-NOTES.txt Mon Aug 23 10:05:37 2010
@@ -25,6 +25,7 @@ CAY-1455 "NULL" JDBC type is shown for D
 CAY-1458 Document Vertical Inheritance
 CAY-1467 Shut down EventManager in WebApplicationContextFilter.destroy()
 CAY-1468 Commit performance degradation
+CAY-1471 Create a source cayenne assembly
 
 ----------------------------------
 Release: 3.0 (final) 

Modified: cayenne/main/branches/STABLE-3.0/modeler/pom.xml
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/modeler/pom.xml?rev=988055&r1=988054&r2=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/modeler/pom.xml (original)
+++ cayenne/main/branches/STABLE-3.0/modeler/pom.xml Mon Aug 23 10:05:37 2010
@@ -48,20 +48,12 @@
 	<profiles>
 		<profile>
 			<id>generic</id>
-			<activation>
-				<activeByDefault>true</activeByDefault>
-			</activation>
 			<modules>
 				<module>cayenne-modeler-java</module>
 			</modules>
 		</profile>
 		<profile>
 			<id>mac</id>
-			<activation>
-				<os>
-					<family>mac</family>
-				</os>
-			</activation>
 			<modules>
 				<module>cayenne-modeler-mac-ext</module>
 				<module>cayenne-modeler-mac</module>
@@ -69,11 +61,6 @@
 		</profile>
 		<profile>
 			<id>windows</id>
-			<activation>
-				<os>
-					<family>windows</family>
-				</os>
-			</activation>
 			<modules>
 				<module>cayenne-modeler-win</module>
 			</modules>

Modified: cayenne/main/branches/STABLE-3.0/pom.xml
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-3.0/pom.xml?rev=988055&r1=988054&r2=988055&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-3.0/pom.xml (original)
+++ cayenne/main/branches/STABLE-3.0/pom.xml Mon Aug 23 10:05:37 2010
@@ -585,6 +585,19 @@
 					<encoding>UTF-8</encoding>
 				</configuration>
 			</plugin>
+			<plugin>
+				<artifactId>maven-assembly-plugin</artifactId>
+				<version>2.2-beta-5</version>
+			</plugin>
+			<plugin>
+				<artifactId>maven-enforcer-plugin</artifactId>
+				<version>1.0-beta-1</version>
+			</plugin>
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>exec-maven-plugin</artifactId>
+				<version>1.2</version>
+			</plugin>
 		</plugins>
 	</build>
 
@@ -624,6 +637,15 @@
 
 
 	<profiles>
+		
+		<!-- Profile that generates assemblies after the build -->
+		<profile>
+			<id>assembly</id>
+			<modules>
+				<module>assembly</module>
+			</modules>
+		</profile>
+		
 		<!-- Optional profile used to sign artifacts -->
 		<profile>
 			<id>gpg</id>