[jbosstools-commits] JBoss Tools SVN: r43499 - in workspace/mistria/target-platform-magic: local and 1 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Fri Sep 7 05:25:47 EDT 2012


Author: mickael_istria
Date: 2012-09-07 05:25:46 -0400 (Fri, 07 Sep 2012)
New Revision: 43499

Added:
   workspace/mistria/target-platform-magic/local/build.xml
   workspace/mistria/target-platform-magic/local/contentXml2artifactVersions.xsl
   workspace/mistria/target-platform-magic/local/getArch.sh
   workspace/mistria/target-platform-magic/local/target2p2mirror.xml
   workspace/mistria/target-platform-magic/local/target2p2mirrorXml.xsl
   workspace/mistria/target-platform-magic/local/target2targetTemplate.xsl
   workspace/mistria/target-platform-magic/local/targetUpdateFromRepo.xml
Removed:
   workspace/mistria/target-platform-magic/build.xml
   workspace/mistria/target-platform-magic/contentXml2artifactVersions.xsl
   workspace/mistria/target-platform-magic/getArch.sh
   workspace/mistria/target-platform-magic/local/local.target
   workspace/mistria/target-platform-magic/target2p2mirror.xml
   workspace/mistria/target-platform-magic/target2p2mirrorXml.xsl
   workspace/mistria/target-platform-magic/target2targetTemplate.xsl
   workspace/mistria/target-platform-magic/targetUpdateFromRepo.xml
Modified:
   workspace/mistria/target-platform-magic/local/
   workspace/mistria/target-platform-magic/local/pom.xml
   workspace/mistria/target-platform-magic/multiple/pom.xml
Log:
Move p2 mirroring to local

Deleted: workspace/mistria/target-platform-magic/build.xml
===================================================================
--- workspace/mistria/target-platform-magic/build.xml	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/build.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,274 +0,0 @@
-<project default="build.local.target.platform.repo" name="jbosstools target platform p2.mirror generator - ant script for Hudson">
-	<property name="targetFile" value="multiple.target" />
-
-	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
-		 if useLatest = false, include versions and fetch specific versions requested. -->
-	<property name="useLatest" value="false" />
-
-	<property name="tmpdir" value="${java.io.tmpdir}/target-platform-build" />
-
-	<condition property="WORKINGDIR" value="/home/hudson/static_build_env/jbds/tools/sources" else="${basedir}">
-		<available file="/home/hudson/static_build_env/jbds" type="dir" />
-	</condition>
-	<mkdir dir="${WORKINGDIR}" />
-
-	<condition property="COMMON_TOOLS" value="/home/hudson/static_build_env/jbds/tools" else="${java.io.tmpdir}">
-		<available file="/home/hudson/static_build_env/jbds" type="dir" />
-	</condition>
-	<mkdir dir="${COMMON_TOOLS}" />
-
-	<property name="repoDir" value="${WORKINGDIR}/REPO" />
-
-	<!-- ********************************************************************************** -->
-
-	<target name="help">
-		<echo>This script, if run in its entirety, will:
-			
-	a) download features, plugins, binaries, and metadata from the site(s) specified
-		in a given target platform, and create a local p2 repo
-	b) generate a local.target file, which points at the generated local p2 repo
-
-After running this script, publish this pom and *.target files to your local ~/.m2 repo:
-	mvn clean install -f .../target-platform/pom.xml -P use.local.target
-			
-Then you can then refer to it in downstream builds using:
-		mvn install -P local.target
-
-------------------
-			
-Default target is:
-
-	* build.local.target.platform.repo
-
-Can also attempt to:
-
-	* install.local.target.platform.repo
-
-Thus, default operation is this (if run w/ these options or NO options):
-
-	$ ant -DtargetFile=multiple.target build.local.target.platform.repo
-
-To build an alternate target platform (eg., Juno) for JBT:
-
-	$ ant -DtargetFile=multiple/multiple.target -DrepoDir=${WORKINGDIR}/JBT_REPO/ -Declipse.version=4.2 -Declipse.type=platform -Declipse.URL=http://www.eclipse.org/downloads/download.php?r=1\&amp;file=/eclipse/downloads/drops4/R-4.2-201206081400/
-
-</echo>
-	</target>
-
-
-	<!-- do everything but tests -->
-	<target name="all" depends="install" />
-
-	<!-- to install from the target platform repo, first build the repo, then install using p2.director -->
-	<target name="install" depends="build.local.target.platform.repo, install.local.target.platform.repo" />
-
-	<target name="build.local.target.platform.repo" depends="init, get.arch, get.eclipse, gen.p2mirror.script, run.p2mirror.script, cleanup" />
-
-	<!-- ********************************************************************************** -->
-
-	<target name="init">
-		<available file="${COMMON_TOOLS}/ant-contrib.jar" type="file" property="ant-contrib.jar.exists" />
-		<antcall target="get.ant-contrib" />
-		<taskdef resource="net/sf/antcontrib/antlib.xml">
-			<classpath>
-				<pathelement location="${COMMON_TOOLS}/ant-contrib.jar" />
-			</classpath>
-		</taskdef>
-	</target>
-
-
-	<target name="get.ant-contrib" unless="ant-contrib.jar.exists">
-		<property name="ANTCONTRIB_MIRROR" value="http://sourceforge.net/projects/ant-contrib/files/ant-contrib/ant-contrib-1.0b2/" />
-		<get usetimestamp="true" dest="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" src="${ANTCONTRIB_MIRROR}/ant-contrib-1.0b2-bin.zip/download" />
-		<touch file="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" />
-		<mkdir dir="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" />
-		<unzip src="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" dest="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" overwrite="true" />
-		<copy file="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_/ant-contrib/lib/ant-contrib.jar" tofile="${COMMON_TOOLS}/ant-contrib.jar" failonerror="true" />
-		<delete dir="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" includeemptydirs="true" quiet="true" />
-	</target>
-
-	<target name="get.arch">
-		<condition property="ext" value="tar.gz" else="zip">
-			<os family="unix" />
-		</condition>
-		<condition property="os1" value="linux-gtk" else="win32">
-			<os family="unix" />
-		</condition>
-		<condition property="os" value="macosx-cocoa" else="${os1}">
-			<os family="mac" />
-		</condition>
-		<if>
-			<os family="unix" />
-			<then>
-				<!-- Ant thinks that ${os.arch} == i386 for x86_64, so use `uname` instead -->
-				<exec executable="bash" outputproperty="arch">
-					<arg line="getArch.sh" />
-				</exec>
-			</then>
-			<else>
-				<condition property="arch" value="x86_64" else="">
-					<os arch="amd64" />
-				</condition>
-			</else>
-		</if>
-	</target>
-
-	<!-- should work on osx-cocoa32, win32, lin32, lin64 -->
-	<target name="get.eclipse">
-		<!-- NOTE: must use same platform (50M) or SDK (103M - 168M) version as feature version on target platform, or will get install/update conflicts -->
-		<!-- don't forget to increment these files when moving up a version:
-		     build.xml, *.target*, publish.sh, target2p2mirror.xml -->
-		<!-- also jbds/trunk/releng/org.jboss.ide.eclipse.releng/requirements/jbds-target-platform/build.properties
-		     also all devstudio-5.0_*.updatesite jobs (4) need to be pointed at the new Target Platform URL
-		-->
-		<!-- http://download.eclipse.org/eclipse/downloads/drops/M20120201-1336/download.php?dropFile=eclipse-platform-M20120201-1336-linux-gtk-x86_64.tar.gz -->
-		<!-- http://mirror.csclub.uwaterloo.ca/eclipse/eclipse/downloads/drops4/R-4.2-201206081400/eclipse-platform-4.2-linux-gtk-x86_64.tar.gz -->
-		<!-- eclipse-platform-3.8M6-linux-gtk-x86_64.tar.gz -->
-		<!-- eclipse-platform-3.7.2-linux-gtk-x86_64.tar.gz -->
-		<!-- <property name="eclipse.version" value="4.2" />
-		<property name="eclipse.type" value="platform" />
-		<property name="eclipse.URL" value="http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops/R-4.2-201206081400/"/> -->
-		<property name="eclipse.version" value="M20120829-1000" />
-		<property name="eclipse.type" value="platform" />
-		<property name="eclipse.URL" value="http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops/M20120829-1000/"/>
-
-		<if>
-			<equals arg1="${arch}" arg2="x86" />
-			<then>
-				<property name="eclipse.file" value="eclipse-${eclipse.type}-${eclipse.version}-${os}.${ext}" />
-			</then>
-			<else>
-				<property name="eclipse.file" value="eclipse-${eclipse.type}-${eclipse.version}-${os}-${arch}.${ext}" />
-			</else>
-		</if>
-
-		<if>
-			<not>
-				<available file="${WORKINGDIR}/${eclipse.file}" type="file" />
-			</not>
-			<then>
-				<get src="${eclipse.URL}/${eclipse.file}" dest="${WORKINGDIR}/${eclipse.file}" />
-			</then>
-		</if>
-
-		<!-- purge previous eclipse install to avoid conflicts w/ Eclipse feature versions -->
-		<delete dir="${WORKINGDIR}/eclipse-${eclipse.version}" includeemptydirs="true" quiet="true" />
-
-		<untar compression="gzip" dest="${WORKINGDIR}/eclipse-${eclipse.version}" src="${WORKINGDIR}/${eclipse.file}" overwrite="true" />
-
-		<!-- add 70M delta pack, eg. http://download.eclipse.org/eclipse/downloads/drops/M20101006-0936/download.php?dropFile=eclipse-M20101006-0936-delta-pack.zip -->
-		<!-- ONLY need deltapack if using -Dtycho.targetPlatform, which is now depredated
-		<property name="deltapack.file" value="eclipse-${eclipse.version}-delta-pack.zip"/>
-		<if>
-			<not>
-				<available file="${WORKINGDIR}/${deltapack.file}" type="file" />
-			</not>
-			<then>
-				<get src="${eclipse.URL}/${deltapack.file}" dest="${WORKINGDIR}/${deltapack.file}" />
-			</then>
-		</if>
-		<unzip src="${WORKINGDIR}/${deltapack.file}" dest="${WORKINGDIR}" overwrite="true"/>
-		-->
-
-		<!-- make eclipse executable -->
-		<chmod perm="+x" file="${WORKINGDIR}/eclipse-${eclipse.version}/eclipse/eclipse" />
-
-	</target>
-
-	<target name="gen.p2mirror.script" description="use XSLT to generate a p2.mirror script from .target">
-		<ant antfile="target2p2mirror.xml" />
-	</target>
-
-	<!-- /abs/path/to/eclipse -vm /opt/jdk1.6.0/bin/java -nosplash -data /tmp/workspace -consolelog -application 
-			org.eclipse.ant.core.antRunner -f *.target.p2mirror.xml -Ddebug=true -DfollowStrict=true -DrepoDir=/tmp/REPO/ -->
-	<target name="run.p2mirror.script" description="build target update site using p2.mirror">
-		<java classname="org.eclipse.equinox.launcher.Main" fork="true" dir="${basedir}" failonerror="true">
-			<classpath>
-				<fileset dir="${WORKINGDIR}/eclipse-${eclipse.version}/eclipse/plugins" includes="org.eclipse.equinox.launcher_*.jar"/>
-			</classpath>
-			<arg line=" -nosplash -data ${tmpdir}/workspace -consolelog -application org.eclipse.ant.core.antRunner" />
-			<arg line=" -f ${targetFile}.p2mirror.xml -DfollowStrict=true -DrepoDir=${repoDir}" />
-			<arg line=" -Ddebug=true -vmargs -Dosgi.locking=none" />
-		</java>
-	</target>
-
-	<target name="update.target.file" description="optional step: use XSLT to update .target file from contents of local repo">
-<!--		<echo>
-This step - calling targetUpdateFromRepo.xml - is no longer enabled to prevent the .target 
-file from being stripped of duplicate IUs. Instead, generation is a one-way process: 
-
-1. Manually update .target file
-2. Generate .p2mirror.xml file, with useLatest=false
-3. ...
-4. Profit!</echo> -->
-		<ant antfile="targetUpdateFromRepo.xml" />
-	</target>
-
-	<target name="cleanup">
-		<delete dir="${tmpdir}" quiet="true" includeemptydirs="true" />
-	</target>
-
-
-	<target name="install.local.target.platform.repo" depends="init" description="use p2.director to install target platform into local eclipse">
-		<!-- collect features to install -->
-		<var name="install" value="" />
-		<for param="featureJar">
-			<path>
-				<fileset dir="${repoDir}/features" includes="*.jar" />
-			</path>
-			<sequential>
-				<var name="feature.jarfile" unset="true" />
-				<var name="feature.id" unset="true" />
-				<propertyregex property="feature.jarfile" defaultvalue="@{featureJar}" input="@{featureJar}" regexp=".+/features/([^/]+\.jar)" replace="\1" override="true" />
-				<propertyregex property="feature.id" defaultvalue="${feature.jarfile}" input="${feature.jarfile}" regexp="([^_]+)_(\d+\.\d+\.\d+\..+)\.jar" replace="\1" override="true" />
-				<propertyregex property="feature.id" defaultvalue="${feature.id}" input="${feature.id}" regexp="([^_]+)_(\d+\.\d+\.\d+)\.jar" replace="\1" override="true" />
-				<var name="install" value="${install},${feature.id}.feature.group" />
-				<var name="feature.jarfile" unset="true" />
-				<var name="feature.id" unset="true" />
-			</sequential>
-		</for>
-		<!-- trim prefix "," -->
-		<propertyregex property="install" input="${install}" defaultvalue="${install}" regexp=",(.+)" replace="\1" override="true" />
-
-		<!-- do install -->
-		<antcall target="run.director">
-			<param name="p2.director.installIU" value="${install}" />
-			<param name="p2.director.install.path" value="${WORKINGDIR}/eclipse" />
-			<param name="p2.director.input.repo" value="file://${repoDir}/" />
-		</antcall>
-	</target>
-
-	<target name="run.director">
-		<property name="p2.director.extraArgs" value="" />
-		<property name="p2.director.installIU" value="${install}" />
-		<property name="p2.director.install.path" value="${targetDir}" />
-		<property name="p2.director.input.repo" value="jar:file://${sourceZip}!/" />
-		<echo>
-Source Repo(s): ${p2.director.input.repo}
-Install Path: ${p2.director.install.path}
-Feature(s) or Plugin(s) to Install:
-${install}
- </echo>
-
-		<mkdir dir="${p2.director.install.path}" />
-		<chmod perm="+x" file="${p2.director.install.path}/eclipse" />
-		<exec executable="${p2.director.install.path}/eclipse" failonerror="true" dir="${p2.director.install.path}" timeout="900000" taskname="p2.dir">
-			<arg line=" -application org.eclipse.equinox.p2.director" />
-			<arg line=" -nosplash" />
-			<arg line=" --launcher.suppressErrors" />
-			<arg line=" -consoleLog" />
-			<arg line=" -flavor tooling" />
-			<arg line=" -roaming" />
-			<arg line=" -profile SDKProfile" />
-			<arg line=" -destination ${p2.director.install.path}" />
-			<arg line=" -bundlepool ${p2.director.install.path}" />
-			<arg line=" -installIU ${p2.director.installIU}" />
-			<arg line=" -metadataRepository ${p2.director.input.repo},file://${p2.director.install.path}/p2/org.eclipse.equinox.p2.engine/profileRegistry/SDKProfile.profile" />
-			<arg line=" -artifactRepository ${p2.director.input.repo},file://${p2.director.install.path}" />
-			<arg line=" -profileProperties org.eclipse.update.install.features=true" />
-			<arg line=" -vmargs" />
-			<arg line=" -Declipse.p2.data.area=${p2.director.install.path}/p2" />
-			<arg line=" -Declipse.p2.MD5Check=false" />
-		</exec>
-	</target>
-</project>

Deleted: workspace/mistria/target-platform-magic/contentXml2artifactVersions.xsl
===================================================================
--- workspace/mistria/target-platform-magic/contentXml2artifactVersions.xsl	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/contentXml2artifactVersions.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-<!-- 
-	This XSLT is used by targetUpdateFromRepo.xml to update the versions on IUs in a .target file
-	CAUTION: do not auto-format this file or line breaks will appear where they should not be!
--->
-<xsl:output method="text" indent="no" encoding="UTF-8" version="1.0" />
-<xsl:template match="repository">
-<xsl:apply-templates select="//unit" />
-</xsl:template>
-<xsl:template match="/"><xsl:for-each select="//unit">
-<xsl:sort select="@id" order="ascending" case-order="lower-first"/><xsl:sort select="@version" order="descending" case-order="lower-first" data-type="qname"/><xsl:value-of select="@id" />.version=<xsl:value-of select="@version" />
-<xsl:variable name="thisID" select="@id"/>
-<xsl:if test="count(//unit[@id = $thisID]) &gt; 1">
-# Warning: <xsl:value-of select="count(//unit[@id = $thisID])"/> versions found for <xsl:value-of select="@id" />:<xsl:for-each select="//unit[@id = $thisID]"><xsl:sort select="@id" order="ascending" case-order="lower-first"/><xsl:sort select="@version" order="descending" case-order="lower-first" data-type="qname"/>
-# <xsl:value-of select="@id" />.version=<xsl:value-of select="@version" /></xsl:for-each></xsl:if>
-#
-</xsl:for-each></xsl:template>
-</xsl:stylesheet>

Deleted: workspace/mistria/target-platform-magic/getArch.sh
===================================================================
--- workspace/mistria/target-platform-magic/getArch.sh	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/getArch.sh	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,24 +0,0 @@
-#!/bin/bash
-
-if uname -m > /dev/null 2>&1; then
-	arch=`uname -m`
-else
-	arch=`uname -p`
-fi
-# Massage arch for Eclipse-uname differences
-case $arch in
-	i[0-9]*86)
-		arch=x86 ;;
-	ia64)
-		arch=ia64 ;;
-	ppc)
-		arch=ppc ;;
-	ppc64)
-		arch=ppc ;;
-	x86_64)
-		arch=x86_64 ;;
-	*)
-	echo "ERROR: Unrecognized architecture:  $arch"
-	exit 1 ;;
-esac
-echo $arch
\ No newline at end of file


Property changes on: workspace/mistria/target-platform-magic/local
___________________________________________________________________
Added: svn:ignore
   + REPO

eclipse-M20120829-1000

target


Copied: workspace/mistria/target-platform-magic/local/build.xml (from rev 43496, workspace/mistria/target-platform-magic/build.xml)
===================================================================
--- workspace/mistria/target-platform-magic/local/build.xml	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/build.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,285 @@
+<project default="build.local.target.platform.repo" name="jbosstools target platform p2.mirror generator - ant script for Hudson">
+	<property name="targetFile" value="multiple.target" />
+
+	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
+		 if useLatest = false, include versions and fetch specific versions requested. -->
+	<property name="useLatest" value="false" />
+
+	<property name="tmpdir" value="${java.io.tmpdir}/target-platform-build" />
+
+	<condition property="WORKINGDIR" value="/home/hudson/static_build_env/jbds/tools/sources" else="${basedir}">
+		<available file="/home/hudson/static_build_env/jbds" type="dir" />
+	</condition>
+	<mkdir dir="${WORKINGDIR}" />
+
+	<condition property="COMMON_TOOLS" value="/home/hudson/static_build_env/jbds/tools" else="${java.io.tmpdir}">
+		<available file="/home/hudson/static_build_env/jbds" type="dir" />
+	</condition>
+	<mkdir dir="${COMMON_TOOLS}" />
+
+	<property name="repoDir" value="${WORKINGDIR}/REPO" />
+
+	<!-- ********************************************************************************** -->
+
+	<target name="help">
+		<echo>This script, if run in its entirety, will:
+			
+	a) download features, plugins, binaries, and metadata from the site(s) specified
+		in a given target platform, and create a local p2 repo
+	b) generate a local.target file, which points at the generated local p2 repo
+
+After running this script, publish this pom and *.target files to your local ~/.m2 repo:
+	mvn clean install -f .../target-platform/pom.xml -P use.local.target
+			
+Then you can then refer to it in downstream builds using:
+		mvn install -P local.target
+
+------------------
+			
+Default target is:
+
+	* build.local.target.platform.repo
+
+Can also attempt to:
+
+	* install.local.target.platform.repo
+
+Thus, default operation is this (if run w/ these options or NO options):
+
+	$ ant -DtargetFile=multiple.target build.local.target.platform.repo
+
+To build an alternate target platform (eg., Juno) for JBT:
+
+	$ ant -DtargetFile=multiple/multiple.target -DrepoDir=${WORKINGDIR}/JBT_REPO/ -Declipse.version=4.2 -Declipse.type=platform -Declipse.URL=http://www.eclipse.org/downloads/download.php?r=1\&amp;file=/eclipse/downloads/drops4/R-4.2-201206081400/
+
+</echo>
+	</target>
+
+
+	<!-- do everything but tests -->
+	<target name="all" depends="install" />
+
+	<!-- to install from the target platform repo, first build the repo, then install using p2.director -->
+	<target name="install" depends="build.local.target.platform.repo, install.local.target.platform.repo" />
+
+	<target name="build.local.target.platform.repo" depends="init, get.arch, get.eclipse, gen.p2mirror.script, run.p2mirror.script, cleanup" />
+
+	<!-- ********************************************************************************** -->
+
+	<target name="init">
+		<available file="${COMMON_TOOLS}/ant-contrib.jar" type="file" property="ant-contrib.jar.exists" />
+		<antcall target="get.ant-contrib" />
+		<taskdef resource="net/sf/antcontrib/antlib.xml">
+			<classpath>
+				<pathelement location="${COMMON_TOOLS}/ant-contrib.jar" />
+			</classpath>
+		</taskdef>
+	</target>
+
+
+	<target name="get.ant-contrib" unless="ant-contrib.jar.exists">
+		<property name="ANTCONTRIB_MIRROR" value="http://sourceforge.net/projects/ant-contrib/files/ant-contrib/ant-contrib-1.0b2/" />
+		<get usetimestamp="true" dest="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" src="${ANTCONTRIB_MIRROR}/ant-contrib-1.0b2-bin.zip/download" />
+		<touch file="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" />
+		<mkdir dir="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" />
+		<unzip src="${COMMON_TOOLS}/ant-contrib-1.0b2-bin.zip" dest="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" overwrite="true" />
+		<copy file="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_/ant-contrib/lib/ant-contrib.jar" tofile="${COMMON_TOOLS}/ant-contrib.jar" failonerror="true" />
+		<delete dir="${java.io.tmpdir}/ant-contrib-1.0b2-bin.zip_" includeemptydirs="true" quiet="true" />
+	</target>
+
+	<target name="get.arch">
+		<condition property="ext" value="tar.gz" else="zip">
+			<os family="unix" />
+		</condition>
+		<condition property="os1" value="linux-gtk" else="win32">
+			<os family="unix" />
+		</condition>
+		<condition property="os" value="macosx-cocoa" else="${os1}">
+			<os family="mac" />
+		</condition>
+		<if>
+			<os family="unix" />
+			<then>
+			   <available file="getArch.sh"  property="getArchInSamePath"/>
+				<if>
+					<isset property="getArchInSamePath"/>
+					<then>
+						<property name="getArch" value="getArch.sh"/>
+					</then>
+					<else>
+						<property name="getArch" value="../getArch.sh"/>
+					</else>
+				</if>
+				
+				<!-- Ant thinks that ${os.arch} == i386 for x86_64, so use `uname` instead -->
+				<exec executable="bash" outputproperty="arch">
+					<arg line="${getArch}" />
+				</exec>
+			</then>
+			<else>
+				<condition property="arch" value="x86_64" else="">
+					<os arch="amd64" />
+				</condition>
+			</else>
+		</if>
+	</target>
+
+	<!-- should work on osx-cocoa32, win32, lin32, lin64 -->
+	<target name="get.eclipse">
+		<!-- NOTE: must use same platform (50M) or SDK (103M - 168M) version as feature version on target platform, or will get install/update conflicts -->
+		<!-- don't forget to increment these files when moving up a version:
+		     build.xml, *.target*, publish.sh, target2p2mirror.xml -->
+		<!-- also jbds/trunk/releng/org.jboss.ide.eclipse.releng/requirements/jbds-target-platform/build.properties
+		     also all devstudio-5.0_*.updatesite jobs (4) need to be pointed at the new Target Platform URL
+		-->
+		<!-- http://download.eclipse.org/eclipse/downloads/drops/M20120201-1336/download.php?dropFile=eclipse-platform-M20120201-1336-linux-gtk-x86_64.tar.gz -->
+		<!-- http://mirror.csclub.uwaterloo.ca/eclipse/eclipse/downloads/drops4/R-4.2-201206081400/eclipse-platform-4.2-linux-gtk-x86_64.tar.gz -->
+		<!-- eclipse-platform-3.8M6-linux-gtk-x86_64.tar.gz -->
+		<!-- eclipse-platform-3.7.2-linux-gtk-x86_64.tar.gz -->
+		<!-- <property name="eclipse.version" value="4.2" />
+		<property name="eclipse.type" value="platform" />
+		<property name="eclipse.URL" value="http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops/R-4.2-201206081400/"/> -->
+		<property name="eclipse.version" value="M20120829-1000" />
+		<property name="eclipse.type" value="platform" />
+		<property name="eclipse.URL" value="http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops/M20120829-1000/"/>
+
+		<if>
+			<equals arg1="${arch}" arg2="x86" />
+			<then>
+				<property name="eclipse.file" value="eclipse-${eclipse.type}-${eclipse.version}-${os}.${ext}" />
+			</then>
+			<else>
+				<property name="eclipse.file" value="eclipse-${eclipse.type}-${eclipse.version}-${os}-${arch}.${ext}" />
+			</else>
+		</if>
+
+		<if>
+			<not>
+				<available file="${WORKINGDIR}/${eclipse.file}" type="file" />
+			</not>
+			<then>
+				<get src="${eclipse.URL}/${eclipse.file}" dest="${WORKINGDIR}/${eclipse.file}" ignoreerrors="false"/>
+			</then>
+		</if>
+
+		<!-- purge previous eclipse install to avoid conflicts w/ Eclipse feature versions -->
+		<delete dir="${WORKINGDIR}/eclipse-${eclipse.version}" includeemptydirs="true" quiet="true" />
+
+		<untar compression="gzip" dest="${WORKINGDIR}/eclipse-${eclipse.version}" src="${WORKINGDIR}/${eclipse.file}" overwrite="true" />
+
+		<!-- add 70M delta pack, eg. http://download.eclipse.org/eclipse/downloads/drops/M20101006-0936/download.php?dropFile=eclipse-M20101006-0936-delta-pack.zip -->
+		<!-- ONLY need deltapack if using -Dtycho.targetPlatform, which is now depredated
+		<property name="deltapack.file" value="eclipse-${eclipse.version}-delta-pack.zip"/>
+		<if>
+			<not>
+				<available file="${WORKINGDIR}/${deltapack.file}" type="file" />
+			</not>
+			<then>
+				<get src="${eclipse.URL}/${deltapack.file}" dest="${WORKINGDIR}/${deltapack.file}" />
+			</then>
+		</if>
+		<unzip src="${WORKINGDIR}/${deltapack.file}" dest="${WORKINGDIR}" overwrite="true"/>
+		-->
+
+		<!-- make eclipse executable -->
+		<chmod perm="+x" file="${WORKINGDIR}/eclipse-${eclipse.version}/eclipse/eclipse" />
+
+	</target>
+
+	<target name="gen.p2mirror.script" description="use XSLT to generate a p2.mirror script from .target">
+		<ant antfile="target2p2mirror.xml" />
+	</target>
+
+	<!-- /abs/path/to/eclipse -vm /opt/jdk1.6.0/bin/java -nosplash -data /tmp/workspace -consolelog -application 
+			org.eclipse.ant.core.antRunner -f *.target.p2mirror.xml -Ddebug=true -DfollowStrict=true -DrepoDir=/tmp/REPO/ -->
+	<target name="run.p2mirror.script" description="build target update site using p2.mirror">
+		<java classname="org.eclipse.equinox.launcher.Main" fork="true" dir="${basedir}" failonerror="true">
+			<classpath>
+				<fileset dir="${WORKINGDIR}/eclipse-${eclipse.version}/eclipse/plugins" includes="org.eclipse.equinox.launcher_*.jar"/>
+			</classpath>
+			<arg line=" -nosplash -data ${tmpdir}/workspace -consolelog -application org.eclipse.ant.core.antRunner" />
+			<arg line=" -f ${targetFile}.p2mirror.xml -DfollowStrict=true -DrepoDir=${repoDir}" />
+			<arg line=" -Ddebug=true -vmargs -Dosgi.locking=none" />
+		</java>
+	</target>
+
+	<target name="update.target.file" description="optional step: use XSLT to update .target file from contents of local repo">
+<!--		<echo>
+This step - calling targetUpdateFromRepo.xml - is no longer enabled to prevent the .target 
+file from being stripped of duplicate IUs. Instead, generation is a one-way process: 
+
+1. Manually update .target file
+2. Generate .p2mirror.xml file, with useLatest=false
+3. ...
+4. Profit!</echo> -->
+		<ant antfile="targetUpdateFromRepo.xml" />
+	</target>
+
+	<target name="cleanup">
+		<delete dir="${tmpdir}" quiet="true" includeemptydirs="true" />
+	</target>
+
+
+	<target name="install.local.target.platform.repo" depends="init" description="use p2.director to install target platform into local eclipse">
+		<!-- collect features to install -->
+		<var name="install" value="" />
+		<for param="featureJar">
+			<path>
+				<fileset dir="${repoDir}/features" includes="*.jar" />
+			</path>
+			<sequential>
+				<var name="feature.jarfile" unset="true" />
+				<var name="feature.id" unset="true" />
+				<propertyregex property="feature.jarfile" defaultvalue="@{featureJar}" input="@{featureJar}" regexp=".+/features/([^/]+\.jar)" replace="\1" override="true" />
+				<propertyregex property="feature.id" defaultvalue="${feature.jarfile}" input="${feature.jarfile}" regexp="([^_]+)_(\d+\.\d+\.\d+\..+)\.jar" replace="\1" override="true" />
+				<propertyregex property="feature.id" defaultvalue="${feature.id}" input="${feature.id}" regexp="([^_]+)_(\d+\.\d+\.\d+)\.jar" replace="\1" override="true" />
+				<var name="install" value="${install},${feature.id}.feature.group" />
+				<var name="feature.jarfile" unset="true" />
+				<var name="feature.id" unset="true" />
+			</sequential>
+		</for>
+		<!-- trim prefix "," -->
+		<propertyregex property="install" input="${install}" defaultvalue="${install}" regexp=",(.+)" replace="\1" override="true" />
+
+		<!-- do install -->
+		<antcall target="run.director">
+			<param name="p2.director.installIU" value="${install}" />
+			<param name="p2.director.install.path" value="${WORKINGDIR}/eclipse" />
+			<param name="p2.director.input.repo" value="file://${repoDir}/" />
+		</antcall>
+	</target>
+
+	<target name="run.director">
+		<property name="p2.director.extraArgs" value="" />
+		<property name="p2.director.installIU" value="${install}" />
+		<property name="p2.director.install.path" value="${targetDir}" />
+		<property name="p2.director.input.repo" value="jar:file://${sourceZip}!/" />
+		<echo>
+Source Repo(s): ${p2.director.input.repo}
+Install Path: ${p2.director.install.path}
+Feature(s) or Plugin(s) to Install:
+${install}
+ </echo>
+
+		<mkdir dir="${p2.director.install.path}" />
+		<chmod perm="+x" file="${p2.director.install.path}/eclipse" />
+		<exec executable="${p2.director.install.path}/eclipse" failonerror="true" dir="${p2.director.install.path}" timeout="900000" taskname="p2.dir">
+			<arg line=" -application org.eclipse.equinox.p2.director" />
+			<arg line=" -nosplash" />
+			<arg line=" --launcher.suppressErrors" />
+			<arg line=" -consoleLog" />
+			<arg line=" -flavor tooling" />
+			<arg line=" -roaming" />
+			<arg line=" -profile SDKProfile" />
+			<arg line=" -destination ${p2.director.install.path}" />
+			<arg line=" -bundlepool ${p2.director.install.path}" />
+			<arg line=" -installIU ${p2.director.installIU}" />
+			<arg line=" -metadataRepository ${p2.director.input.repo},file://${p2.director.install.path}/p2/org.eclipse.equinox.p2.engine/profileRegistry/SDKProfile.profile" />
+			<arg line=" -artifactRepository ${p2.director.input.repo},file://${p2.director.install.path}" />
+			<arg line=" -profileProperties org.eclipse.update.install.features=true" />
+			<arg line=" -vmargs" />
+			<arg line=" -Declipse.p2.data.area=${p2.director.install.path}/p2" />
+			<arg line=" -Declipse.p2.MD5Check=false" />
+		</exec>
+	</target>
+</project>

Copied: workspace/mistria/target-platform-magic/local/contentXml2artifactVersions.xsl (from rev 43496, workspace/mistria/target-platform-magic/contentXml2artifactVersions.xsl)
===================================================================
--- workspace/mistria/target-platform-magic/local/contentXml2artifactVersions.xsl	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/contentXml2artifactVersions.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+<!-- 
+	This XSLT is used by targetUpdateFromRepo.xml to update the versions on IUs in a .target file
+	CAUTION: do not auto-format this file or line breaks will appear where they should not be!
+-->
+<xsl:output method="text" indent="no" encoding="UTF-8" version="1.0" />
+<xsl:template match="repository">
+<xsl:apply-templates select="//unit" />
+</xsl:template>
+<xsl:template match="/"><xsl:for-each select="//unit">
+<xsl:sort select="@id" order="ascending" case-order="lower-first"/><xsl:sort select="@version" order="descending" case-order="lower-first" data-type="qname"/><xsl:value-of select="@id" />.version=<xsl:value-of select="@version" />
+<xsl:variable name="thisID" select="@id"/>
+<xsl:if test="count(//unit[@id = $thisID]) &gt; 1">
+# Warning: <xsl:value-of select="count(//unit[@id = $thisID])"/> versions found for <xsl:value-of select="@id" />:<xsl:for-each select="//unit[@id = $thisID]"><xsl:sort select="@id" order="ascending" case-order="lower-first"/><xsl:sort select="@version" order="descending" case-order="lower-first" data-type="qname"/>
+# <xsl:value-of select="@id" />.version=<xsl:value-of select="@version" /></xsl:for-each></xsl:if>
+#
+</xsl:for-each></xsl:template>
+</xsl:stylesheet>


Property changes on: workspace/mistria/target-platform-magic/local/contentXml2artifactVersions.xsl
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Copied: workspace/mistria/target-platform-magic/local/getArch.sh (from rev 43496, workspace/mistria/target-platform-magic/getArch.sh)
===================================================================
--- workspace/mistria/target-platform-magic/local/getArch.sh	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/getArch.sh	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+if uname -m > /dev/null 2>&1; then
+	arch=`uname -m`
+else
+	arch=`uname -p`
+fi
+# Massage arch for Eclipse-uname differences
+case $arch in
+	i[0-9]*86)
+		arch=x86 ;;
+	ia64)
+		arch=ia64 ;;
+	ppc)
+		arch=ppc ;;
+	ppc64)
+		arch=ppc ;;
+	x86_64)
+		arch=x86_64 ;;
+	*)
+	echo "ERROR: Unrecognized architecture:  $arch"
+	exit 1 ;;
+esac
+echo $arch
\ No newline at end of file


Property changes on: workspace/mistria/target-platform-magic/local/getArch.sh
___________________________________________________________________
Added: svn:executable
   + *

Deleted: workspace/mistria/target-platform-magic/local/local.target
===================================================================
--- workspace/mistria/target-platform-magic/local/local.target	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/local/local.target	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,318 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><?pde version="3.6"?>
-<target includeMode="feature" name="e42-wtp34">
-	<!-- Pro tip: to convert 
-			from org.eclipse.foo_4.6.0.v201005032111-777K4AkF7B77R7c7N77.jar
-		to <unit version="4.6.0.v201005032111-777K4AkF7B77R7c7N77" id="org.eclipse.foo.feature.group"/>
-		using vi, apply this transform:
-		:%s/.\+\/\(org.\+\)_\(\d\+.\+\)\.jar/\t\t\t<unit id="\1.feature.group" version="\2"\/>/g
-	-->
-	<!-- for trunk use _composite_/core/trunk; for 4.0_stable_branch, use _composite_/core/4.0.juno -->
-	<locations>
-		<location includeAllPlatforms="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-			<!-- don't forget to increment these files when moving up a version:
-				build.xml, *.target*, publish.sh, target2p2mirror.xml -->
-			<repository location="file:///home/mistria/workspaceJBossTools/jboss-tools-eclipse-repository/build/target-platform/REPO"/>
-
-			<!-- m2e, m2e-wtp + deps -->
-                       <unit id="org.eclipse.m2e.sdk.feature.feature.group" version="1.0.100.20110804-1717"/>
-			<unit id="org.eclipse.m2e.feature.feature.group" version="1.0.200.20111228-1245"/>
-			<unit id="org.maven.ide.eclipse.wtp.feature.feature.group" version="0.15.2.20120306-2040"/>
-                       <unit id="org.sonatype.m2e.mavenarchiver.feature.feature.group" version="0.15.0.201109290002"/>
-			<unit id="ch.qos.logback.classic" version="0.9.27.v20110224-1110"/>
-			<unit id="ch.qos.logback.core" version="0.9.27.v20110224-1110"/>
-			<unit id="ch.qos.logback.slf4j" version="0.9.27.v20110224-1110"/>
-			<unit id="org.slf4j.api" version="1.6.1.v20100831-0715"/>
-			<unit id="com.ning.async-http-client" version="1.6.3.201112281337"/>
-			<unit id="org.jboss.netty" version="3.2.4.Final-201112281337"/>
-			<unit id="org.eclipse.equinox.p2.discovery.compatibility" version="1.0.1.v20110502-1955"/>
-			<unit id="org.eclipse.equinox.p2.discovery" version="1.0.100.v20110502-1955"/>
-			<unit id="org.eclipse.equinox.p2.ui.discovery" version="1.0.0.v20110502-1955"/>
-
-			<!-- Orbit bundles -->
-                       <unit id="javax.wsdl" version="1.5.1.v201012040544"/>
-                       <unit id="org.jdom" version="1.0.0.v201005080400"/>
-                       <unit id="org.apache.commons.lang" version="2.1.0.v201005080500"/>
-			<unit id="org.apache.oro" version="2.0.8.v201005080400"/>
-			<unit id="org.apache.commons.io" version="2.0.1.v201105210651"/>
-			<unit id="org.apache.commons.codec" version="1.3.0.v201101211617"/>
-			<unit id="org.apache.commons.httpclient" version="3.1.0.v201012070820"/>
-			<unit id="org.hamcrest" version="1.1.0.v20090501071000"/>
-			<unit id="org.hamcrest.core" version="1.1.0.v20090501071000"/>
-			<unit id="org.hamcrest.text" version="1.1.0.v20090501071000"/>
-			<unit id="org.hamcrest.library" version="1.1.0.v20090501071000"/>
-			<unit id="org.hamcrest.integration" version="1.1.0.v20090501071000"/>
-
-			<!-- Orbit bundles needed for Eclipse Checkstyle (eclipse-cs) -->
-			<unit id="org.apache.lucene.highlighter" version="2.9.1.v20100421-0704"/>
-			<unit id="org.apache.lucene.memory" version="2.9.1.v20100421-0704"/>
-			<unit id="org.apache.lucene.misc" version="2.9.1.v20100421-0704"/>
-			<unit id="org.apache.lucene.queries" version="2.9.1.v20100421-0704"/>
-			<unit id="org.apache.lucene.snowball" version="2.9.1.v20100421-0704"/>
-			<unit id="org.apache.lucene.spellchecker" version="2.9.1.v20100421-0704"/>
-
-			<!-- EMF, XSD -->
-			<unit id="org.eclipse.emf.workspace.feature.group" version="1.5.1.v20110823-1800-37708s734D3C7D3CCC1"/>
-			<unit id="org.eclipse.emf.validation.feature.group" version="1.5.0.v20110502-1600-479-9oB56N5BBR6LCA6"/>
-			<unit id="org.eclipse.emf.transaction.feature.group" version="1.5.0.v20110502-1600-377-8s734C3E7D15D6B"/>
-			<unit id="org.eclipse.emf.feature.group" version="2.7.2.v20120130-0943"/>
-			<unit id="org.eclipse.emf.ecore.feature.group" version="2.7.1.v20120127-1122"/>
-			<unit id="org.eclipse.emf.codegen.feature.group" version="2.7.0.v20120130-0943"/>
-			<unit id="org.eclipse.emf.common.feature.group" version="2.7.0.v20120127-1122"/>
-			<unit id="org.eclipse.emf.databinding.feature.group" version="1.2.0.v20120130-0943"/>
-			<unit id="org.eclipse.emf.codegen.ecore.feature.group" version="2.7.0.v20120130-0943"/>
-			<unit id="org.eclipse.emf.ecore.edit.feature.group" version="2.7.1.v20120130-0943"/>
-			<unit id="org.eclipse.emf.ecore.editor.feature.group" version="2.7.0.v20120130-0943"/>
-			<unit id="org.eclipse.emf.ecore.feature.group" version="2.7.1.v20120127-1122"/>
-			<unit id="org.eclipse.emf.edit.feature.group" version="2.7.2.v20120130-0943"/>
-			<unit id="org.eclipse.xsd.edit.feature.group" version="2.7.0.v20120130-0943"/>
-			<unit id="org.eclipse.xsd.feature.group" version="2.7.1.v20120130-0943"/>
-
-			<!-- GEF, Draw2D, Graphiti, Zest -->
-			<unit id="org.eclipse.graphiti.feature.feature.group" version="0.8.2.v20120215-0845"/>
-			<unit id="org.eclipse.draw2d.feature.group" version="3.7.2.v20110927-2020-4617w3122212803131"/>
-			<unit id="org.eclipse.gef.feature.group" version="3.7.2.v20110927-2020-777D381B4Bz0755B465D34242"/>
-			<unit id="org.eclipse.zest.feature.group" version="1.3.0.v20110425-2050-67A18yF6F18CBD5A7N54242"/>
-
-			<!-- UML2 -->
-			<unit id="org.eclipse.uml2.feature.group" version="3.2.1.v201109082252"/>
-
-			<!-- Platform: CVS, JDT, RCP, PDE, Equinox, Help -->
-			<unit id="com.ibm.icu.base" version="4.4.2.v20110831"/>
-			<unit id="org.eclipse.platform.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>
-			<unit id="org.eclipse.platform.ide" version="3.7.2.M20120208-0800"/>
-			<unit id="org.eclipse.platform.sdk" version="3.7.2.M20120208-0800"/>
-			<unit id="org.eclipse.sdk.feature.group" version="3.7.2.r37x_v20111213-7Q7xALDPb32vCjY6UACVPdFTz-icPtJkUadz0lMmk4z-8"/>
-			<unit id="org.eclipse.sdk.ide" version="3.7.2.M20120208-0800"/>
-			<unit id="org.eclipse.cvs.feature.group" version="1.3.100.v20110520-0800-7B78FHl9VF7BD7KBM4GP9C"/>
-			<unit id="org.eclipse.jdt.feature.group" version="3.7.2.v20120120-1414-7z8gFcuFMP7BW5XTz0jLTnz0l9B1"/>
-			<unit id="org.eclipse.equinox.server.core.feature.group" version="1.1.1.R37x_v20110907-7K7TFB_ETaXFZ3oNa8CeJQ02722"/>
-			<unit id="org.eclipse.equinox.executable.feature.group" version="3.5.1.v20111216-1653-7P7NFUIFIbaUcU77s0KQWHw5HZTZ"/>
-			<unit id="org.eclipse.equinox.compendium.sdk.feature.group" version="3.7.1.R37x_v20110909-7X7XGA5FOIm78Pif1n7BLB9"/>
-			<unit id="org.eclipse.equinox.core.sdk.feature.group" version="3.7.1.v20110928-1809-7uF9LFpHFUqIcLhnJMmHQGXy3BJB"/>
-			<unit id="org.eclipse.equinox.p2.discovery.feature.feature.group" version="1.0.100.v20120524-0542-4-Bh9oB58A5N9L28PCQ"/>
-			<unit id="org.eclipse.equinox.p2.user.ui.feature.group" version="2.1.2.R37x_v20110815-1155-6-Bk8pYWZz0qUTX5I15GZWwbXkrl"/>
-			<unit id="org.eclipse.equinox.p2.sdk.feature.group" version="3.7.1.R37x_v20110907-9N7sHDdGIUw3H-591a16Tcf5FePP"/>
-			<unit id="org.eclipse.equinox.serverside.sdk.feature.group" version="3.7.1.R37x_v20110907-7u7PFvHFN5LiN7iUIYPvl4cz-WiW"/>
-			<unit id="org.eclipse.equinox.sdk.feature.group" version="3.7.1.R37x_v20110907-7M7W8i8eNV4WsRkue-4Vq4J6pCyW"/>
-			<unit id="org.eclipse.equinox.weaving.sdk.feature.group" version="1.0.100.v20110502-79-F8PEVVFNNFsFV"/>
-			<unit id="org.eclipse.equinox.server.jetty.feature.group" version="1.0.100.v20110502-7I77CPBgJ9ECBQ9V8IAD"/>
-			<unit id="org.eclipse.equinox.server.p2.feature.group" version="1.1.1.R37x_v20110907-7z7UFW0FT-4HNfuTsrcmKrl02129"/>
-			<unit id="org.eclipse.equinox.server.servletbridge.feature.group" version="1.0.100.v20110502-42DF9oB5865K5D"/>
-			<unit id="org.eclipse.rcp.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>
-			<unit id="org.eclipse.pde.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>
-			<unit id="org.eclipse.help.feature.group" version="1.3.0.v20110530-0844-7i7uFFmFFl8nvqbDpEqTvx"/>
-			<unit id="org.eclipse.update.core" version="3.2.500.v20110330"/>
-
-			<!-- DTP -->
-			<unit id="org.eclipse.datatools.modelbase.feature.feature.group" version="1.10.0.v201201161512-7707DCcNBHJDWIYG_Ni"/>
-			<unit id="org.eclipse.datatools.connectivity.feature.feature.group" version="1.10.0.v201201161512-7C7h90Et1axo7RlVkOfDNlAf45E"/>
-			<unit id="org.eclipse.datatools.connectivity.oda.feature.feature.group" version="1.10.0.v201201161512-7H7C7QCcNBHLCcJaFWRa"/>
-			<unit id="org.eclipse.datatools.connectivity.oda.designer.feature.feature.group" version="1.10.0.v201201161512-4127w312312232267"/>
-			<unit id="org.eclipse.datatools.connectivity.oda.designer.core.feature.feature.group" version="1.10.0.v201201161512-7B7C7LCcNBGTBfLREXcc"/>
-			<unit id="org.eclipse.datatools.enablement.feature.feature.group" version="1.10.0.v201201161512-7J9Q0BWxeMcYB5KWfz-eG7qiq-sX"/>
-			<unit id="org.eclipse.datatools.enablement.apache.derby.feature.feature.group" version="1.10.0.v201201161512-77798fBmKDQ2MoTTLwdv9ILX"/>
-			<unit id="org.eclipse.datatools.enablement.hsqldb.feature.feature.group" version="1.10.0.v201201161512-67E0AqGBM7KfNTHwKO9ILX"/>
-			<unit id="org.eclipse.datatools.enablement.ibm.feature.feature.group" version="1.10.0.v201201161512-7F47WFC7sRdqScnobkd4"/>
-			<unit id="org.eclipse.datatools.enablement.jdbc.feature.feature.group" version="1.10.0.v201201161512-4-29oB5885QBB8HKW"/>
-			<unit id="org.eclipse.datatools.enablement.jdt.feature.feature.group" version="1.10.0.v201201161512-2-07w312218332612"/>
-			<unit id="org.eclipse.datatools.enablement.msft.feature.feature.group" version="1.10.0.v201201161512-544AkF7AL7MDMAQ8O"/>
-			<unit id="org.eclipse.datatools.enablement.mysql.feature.feature.group" version="1.10.0.v201201161512-5477AkF7AK7_AMENEA"/>
-			<unit id="org.eclipse.datatools.enablement.oda.feature.feature.group" version="1.10.0.v201201161512-7A7T7CDZRDKHF_HnGjOX"/>
-			<unit id="org.eclipse.datatools.enablement.oda.designer.feature.feature.group" version="1.10.0.v201201161512-3368s7356485C59AB"/>
-			<unit id="org.eclipse.datatools.enablement.oracle.feature.feature.group" version="1.10.0.v201201161512-548fAkF7AL7RBJANAI"/>
-			<unit id="org.eclipse.datatools.enablement.postgresql.feature.feature.group" version="1.10.0.v201201161512-553AkF7AK8PCRBQBP"/>
-			<unit id="org.eclipse.datatools.enablement.sap.feature.feature.group" version="1.10.0.v201201161512-540AkF7AJ7YEJBU7S"/>
-			<unit id="org.eclipse.datatools.enablement.sybase.feature.feature.group" version="1.10.0.v201201161512-7E46F9NiNc1QBgyT6T6"/>
-			<unit id="org.eclipse.datatools.enablement.ingres.feature.feature.group" version="1.10.0.v201201161512-540AkF78Z7UCRAQDB"/>
-			<unit id="org.eclipse.datatools.enablement.sqlite.feature.feature.group" version="1.10.0.v201201161512-542AkF7AJ7SAKAPBF"/>
-			<unit id="org.eclipse.datatools.sqldevtools.feature.feature.group" version="1.10.0.v201201161512-7N8B7CFDsn4hwBXz-0AGu5i6V36H"/>
-			<unit id="org.eclipse.datatools.sqldevtools.results.feature.feature.group" version="1.10.0.v201201161512-57B78AkF7BD7QFE9VEG"/>
-			<unit id="org.eclipse.datatools.sqldevtools.ddlgen.feature.feature.group" version="1.10.0.v201201161512-7A-78F7RZHQSIqWjN1Zr"/>
-			<unit id="org.eclipse.datatools.sqldevtools.ddl.feature.feature.group" version="1.10.0.v201201161512-279-78B089G8S_IRTJrXkO2_s"/>
-			<unit id="org.eclipse.datatools.sqldevtools.data.feature.feature.group" version="1.10.0.v201201161512-644BgJ9ECCLFTAfMO"/>
-			<unit id="org.eclipse.datatools.sqldevtools.parsers.feature.feature.group" version="1.10.0.v201201161512-623BgJ9EE9ZJRDZLA"/>
-			<unit id="org.eclipse.datatools.sqldevtools.sqlbuilder.feature.feature.group" version="1.10.0.v201201161512-79-78EVVFNOGnTeK-SY"/>
-			<unit id="org.eclipse.datatools.sqldevtools.schemaobjecteditor.feature.feature.group" version="1.10.0.v201201161512-4208375LG5BJ93413"/>
-			<unit id="org.eclipse.datatools.intro.feature.group" version="1.10.0.v201201161512-26-7w312116392911"/>
-			<unit id="org.eclipse.datatools.doc.user.feature.group" version="1.10.0.v201201161512-47C08w95FFAK89FHEC7"/>
-			<unit id="org.eclipse.datatools.common.doc.user.feature.group" version="1.10.0.v201201161512-26-311A16321A3557"/>
-			<unit id="org.eclipse.datatools.connectivity.doc.user.feature.group" version="1.10.0.v201201161512-37D-7733L3D753L7BBF"/>
-			<unit id="org.eclipse.datatools.sqltools.doc.user.feature.group" version="1.10.0.v201201161512-37D-7733L3D753L7BBF"/>
-
-			<!-- RSE, TM -->
-			<unit id="org.eclipse.rse.feature.group" version="3.3.2.R33x_v201110030150-7L7CFGH8wqio8s-qYtkPgn8qWd4T"/>
-			<unit id="org.eclipse.rse.ssh.feature.group" version="3.0.301.R33x_v201109141647-7A3F9xAGGB5k0C7KEATN92641"/>
-			<unit id="org.eclipse.rse.terminals.feature.group" version="1.1.1.R33x_v201109141647-771Bh9uD7HbBF3u7DNO3293A3752"/>
-			<unit id="org.eclipse.rse.telnet.feature.group" version="2.2.200.v201106011538-775F8NAkF7BB7B9NEIPP"/>
-			<unit id="org.eclipse.rse.ftp.feature.group" version="3.0.301.R33x_v201109141647-782F8O9KC92gz097E9EKF23225"/>
-			<unit id="org.eclipse.rse.local.feature.group" version="2.1.300.v201103142315-7B4FKsBgJ9EE9ICQIFYT"/>
-			<unit id="org.eclipse.rse.useractions.feature.group" version="1.1.300.v201103142315-31F8N8s7355353B75DD"/>
-			<unit id="org.eclipse.tm.terminal.feature.group" version="3.1.1.R33x_v201106281309-4007S44yaw312218292641"/>
-			<unit id="org.eclipse.tm.terminal.view.feature.group" version="2.2.0.v201103142315-31-7w312214253426"/>
-			<unit id="org.eclipse.tm.terminal.telnet.feature.group" version="2.1.0.v201103142315-30-7w312213121A22"/>
-			<unit id="org.eclipse.tm.terminal.serial.feature.group" version="2.1.0.v201103142315-30-7w312212153266"/>
-			<unit id="org.eclipse.tm.terminal.feature.group" version="3.1.1.R33x_v201106281309-4007S44yaw312218292641"/>
-			<unit id="org.eclipse.tm.terminal.ssh.feature.group" version="2.1.0.v201103142315-30-7w312212153266"/>
-
-			<!-- WTP -->
-			<unit id="org.eclipse.jst.jee" version="1.0.402.v201202021530"/>
-			<unit id="org.eclipse.wst.common.frameworks" version="1.2.102.v201201190400"/>
-			<unit id="org.eclipse.wst.common.project.facet.ui" version="1.4.201.v201201101553"/>
-			<unit id="org.eclipse.jst.jee.web" version="1.0.301.v201007070907"/>
-			<unit id="org.eclipse.jst.common.fproj.enablement.jdt.feature.group" version="3.3.0.v201102200555-377DF8s73543E5I5768"/>
-			<unit id="org.eclipse.jst.ws.axis2tools.feature.feature.group" version="1.1.200.v201103022333-78-FF0DZRDKDDePSKwHj"/>
-			<unit id="org.eclipse.jst.ws.cxf.feature.feature.group" version="1.0.100.v201105171845-7H77DRFAKlZgjHCaHg65uE6I6I"/>
-			<unit id="org.eclipse.jpt.common.feature.feature.group" version="1.0.2.v201111103010-6-3AkF7BC9EBID797"/>
-			<unit id="org.eclipse.jpt.common.eclipselink.feature.feature.group" version="1.0.1.v201108080010-3-08s73553F3G3343"/>
-			<unit id="org.eclipse.jpt.jpa.feature.feature.group" version="3.0.2.v201110193010-7S7B7HFC7sRdlV6fmbQaRBF5"/>
-			<unit id="org.eclipse.persistence.jpa.feature.group" version="2.3.2.v20111125-r10461"/>
-			<unit id="org.eclipse.wst.common.fproj.feature.group" version="3.3.2.v201201121600-377DH8s735735535DD9"/>
-			<unit id="org.eclipse.jst.enterprise_ui.feature.feature.group" version="3.3.2.v201111030500-7b7II1YFSK2WIuPRDEnExPV-RvTn"/>
-			<unit id="org.eclipse.wst.web_ui.feature.feature.group" version="3.3.2.v201111030500-7O7IFj6EMjB7yO1Xs_G1kMtQeOye6HTXFWve95_R"/>
-			<unit id="org.eclipse.wst.xml_ui.feature.feature.group" version="3.3.2.v201112072049-7H7EFZ7DxumTmce4khcSkIiqoD8eDMKlT8Oz011P"/>
-			<unit id="org.eclipse.wst.xsl.feature.feature.group" version="1.3.1.v201109012200-7T7YFRTFIqUoIrvbEtBlSIJXGZNg"/>
-			<unit id="org.eclipse.wst.jsdt.feature.feature.group" version="1.3.2.v201201112313-7G78FZvFC7sRekSz-g-nAlz"/>
-			<unit id="org.eclipse.jsf.feature.feature.group" version="3.3.1.v201109030441-7E7IDUF9JgLWUM6WBSgXp"/>
-			<unit id="org.eclipse.jst.ws.jaxws.dom.feature.feature.group" version="1.0.101.v201201031445-5-BiAkF7BD7E8NBSHa"/>
-			<unit id="org.eclipse.jst.ws.jaxws.feature.feature.group" version="1.1.0.v201105171845-7E78BsF8NcJSWKvN1Rjcv"/>
-			<unit id="org.eclipse.jst.enterprise_core.feature.feature.group" version="3.3.2.v201111030500-52FPfAkF7BA8L8K7S98"/>
-			<unit id="org.eclipse.jst.server_adapters.ext.feature.feature.group" version="3.3.100.v20110810_1722-777HFL5CcNBDmBfJVFHJD6"/>
-			<unit id="org.eclipse.jst.server_adapters.feature.feature.group" version="3.2.100.v20110303-208Z7w31211419"/>
-			<unit id="org.eclipse.jst.server_core.feature.feature.group" version="3.3.0.v201102200555-31FD58s7354495L"/>
-			<unit id="org.eclipse.jst.server_ui.feature.feature.group" version="3.3.0.v201102200555-7A6FHr9xFcAVCFLZBBJLIR43A"/>
-			<unit id="org.eclipse.jst.web_ui.feature.feature.group" version="3.3.2.v201112072049-7F7AFO7C25ToiIbpoiuW12GT78Mciy6W7iwuxaco"/>
-			<unit id="org.eclipse.jsf.feature.source.feature.group" version="3.3.1.v201109030441-7E7IDUF9JgLWUM6WBSgXp"/>
-			<unit id="org.eclipse.wst.xml.xpath2.processor.feature.feature.group" version="2.0.0.v201103310043-7A7J-CcNBGOCUIWFYMf"/>
-			<unit id="org.eclipse.jst.webpageeditor.feature.feature.group" version="2.3.6.v201201181342-46AB9oB5885D6R5D86"/>
-			<unit id="org.eclipse.wst.ws_wsdl15.feature.feature.group" version="1.5.301.v201102200555-2407w312123151655"/>
-			<unit id="org.eclipse.wst.common_core.feature.feature.group" version="3.3.2.v201111030500-7B7DFO9F7RZHOhIjR6Mz-NJ"/>
-			<unit id="org.eclipse.wst.common_ui.feature.feature.group" version="3.3.2.v201111030500-7C79FVsEdhO_sfog9oNekiJkS7Nz00OK"/>
-			<unit id="org.eclipse.wst.server_adapters.feature.feature.group" version="3.2.100.v20110303-51EoAkF77g8HBSc"/>
-			<unit id="org.eclipse.wst.server_core.feature.feature.group" version="3.3.100.v20110810_1722-33Et8s73563B6Ha3113"/>
-			<unit id="org.eclipse.wst.server_ui.feature.feature.group" version="3.3.100.v20110810_1722-7B7AFGHAtMcLXxbGc-IjRefCA84"/>
-			<unit id="org.eclipse.wst.web_core.feature.feature.group" version="3.3.2.v201111030500-7E7EFMcAJvn8cwW45JTLsz-TCw6tofoJ"/>
-			<unit id="org.eclipse.wst.ws_ui.feature.feature.group" version="3.3.2.v201112142348-7I7AFg1EtEoVFjz-98J1iuhhBz-uuWclgZtNHnEN"/>
-			<unit id="org.eclipse.wst.xml_core.feature.feature.group" version="3.3.2.v201112072049-7C7OFeMF7RZHQOIsNANyRc"/>
-
-			<!-- JBIDE-9549, JBDS-1904 add egit/jgit and mylyn support to TP, including dependent plugins -->
-			<unit id="org.eclipse.jsch.ui" version="1.1.300.R37x_v20111201-1600"/>
-			<unit id="org.eclipse.jsch.core" version="1.1.300.I20110514-0800"/>
-			<unit id="com.jcraft.jsch" version="0.1.44.v201101211721"/>
-			<unit id="org.eclipse.jgit.feature.group" version="1.3.0.201202151440-r"/>
-			<unit id="org.eclipse.egit.feature.group" version="1.3.0.201202151440-r"/>
-			<unit id="org.eclipse.egit.mylyn.feature.group" version="1.3.0.201202151440-r"/>
-			<unit id="org.eclipse.mylyn.github.feature.feature.group" version="1.3.0.201202151440-r"/>
-
-			<!-- needed for JBoss Central -->
-			<unit id="com.sun.syndication" version="0.9.0.v200803061811"/>
-			<unit id="org.eclipse.mylyn.commons.core" version="3.6.0.v20110608-1400"/>
-			<unit id="org.eclipse.mylyn.discovery.ui" version="3.6.2.v20111116-0100"/>
-			<unit id="org.eclipse.mylyn.discovery.core" version="3.6.1.v20110817-0100"/>
-			<unit id="org.eclipse.mylyn.commons.ui" version="3.6.1.v20110720-0100"/>
-			<unit id="org.eclipse.mylyn.commons.net" version="3.6.0.v20110608-1400"/>
-			<unit id="org.eclipse.mylyn.commons.screenshots" version="3.6.0.v20110608-1400"/>
-
-			<!-- JBDS-1904, JBIDE-9351, JBIDE-10094 add mylyn and jira to JBT/JBDS TP -->
-			<unit id="org.eclipse.mylyn_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.ide_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.commons.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.commons.compatibility.feature.group" version="3.8.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.commons.identity.feature.group" version="1.0.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.commons.notifications.feature.group" version="1.0.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.commons.repositories.feature.group" version="1.0.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.commons.repositories.http.feature.group" version="1.0.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.context_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.bugzilla_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.discovery.feature.group" version="3.8.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.java_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.monitor.feature.group" version="3.8.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.pde_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.team_feature.feature.group" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.wikitext_feature.feature.group" version="1.5.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.cvs.feature.group" version="0.8.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.git.feature.group" version="0.8.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.versions.feature.group" version="0.8.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.commons.sdk.feature.group" version="3.8.0.v20120612-0600"/>
-			<unit id="org.eclipse.mylyn.tasks.ui" version="3.6.5.v20120215-0100"/>
-			<unit id="org.eclipse.mylyn.tasks.core" version="3.6.1.v20120201-0100"/>
-			<unit id="org.eclipse.mylyn.tasks.bugs" version="3.6.1.v20110825-0100"/>
-			<unit id="com.atlassian.connector.commons" version="4.0.0.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.bamboo.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.bamboo.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.branding.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.commons.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.commons.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.crucible.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.crucible.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.cvs.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.cvs.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.directclickthrough.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.fisheye.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.fisheye.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.help" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.jira.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.jira.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.monitor.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.monitor.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.subclipse.core" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.subclipse.ui" version="3.0.2.v20111010"/>
-			<unit id="com.atlassian.connector.eclipse.ui" version="3.0.2.v20111010"/>
-			<unit id="com.thoughtworks.xstream" version="1.3.0.v20100826-1640"/>
-			<unit id="org.eclipse.ui" version="3.103.0.v20120521-2329"/>
-			<unit id="org.eclipse.core.runtime" version="3.7.0.v20110110"/>
-			<unit id="org.eclipse.core.resources" version="3.7.101.v20120125-1505"/>
-			<unit id="org.eclipse.ui.ide" version="3.7.0.v20110928-1505"/>
-			<unit id="org.eclipse.ui.workbench.texteditor" version="3.7.0.v20110928-1504"/>
-			<unit id="org.eclipse.jface.text" version="3.7.2.v20111213-1208"/>
-			<unit id="org.eclipse.osgi" version="3.7.2.v20120110-1415"/>
-			<unit id="org.eclipse.core.filesystem" version="1.3.100.v20110423-0524"/>
-			<unit id="org.eclipse.ui.forms" version="3.5.101.v20111011-1919"/>
-			<unit id="org.eclipse.ui.editors" version="3.7.0.v20110928-1504"/>
-			<unit id="org.eclipse.team.core" version="3.6.0.I20110525-0800"/>
-			<unit id="org.eclipse.team.ui" version="3.6.101.R37x_v20111109-0800"/>
-			<unit id="org.eclipse.jface" version="3.7.0.v20110928-1505"/>
-			<unit id="org.eclipse.compare" version="3.5.202.R37x_v20111109-0800"/>
-			<unit id="org.apache.axis" version="1.4.0.v201005080400"/>
-			<unit id="org.apache.commons.logging" version="1.0.4.v201101211617"/>
-			<unit id="org.apache.commons.io" version="2.0.1.v201105210651"/>
-			<unit id="org.apache.commons.httpclient" version="3.1.0.v201012070820"/>
-			<unit id="org.apache.commons.codec" version="1.3.0.v201101211617"/>
-			<unit id="org.jdom_jaxen" version="1.0.0.20081203-1100"/>
-			<unit id="org.mortbay.jetty.server" version="6.1.23.v201012071420"/>
-			<unit id="org.mortbay.jetty.util" version="6.1.23.v201012071420"/>
-			<unit id="org.apache.jasper" version="5.5.17.v201101211617"/>
-			<unit id="org.joda.time" version="1.6.0.v20081202-0100"/>
-			<unit id="javax.servlet" version="2.5.0.v201103041518"/>
-			<unit id="javax.servlet.jsp" version="2.0.0.v201101211617"/>
-			<unit id="javax.xml.rpc" version="1.1.0.v201005080400"/>
-			<unit id="javax.el" version="2.2.0.v201105051105"/>
-
-			<!-- SWTBot -->
-			<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-			<unit id="org.eclipse.swtbot.eclipse.gef.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-			<unit id="org.eclipse.swtbot.ide.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-			<unit id="org.eclipse.swtbot.eclipse.test.junit4.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-			<unit id="org.eclipse.swtbot.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>
-
-			<!-- BIRT -->
-			<unit id="org.eclipse.birt.osgi.runtime.sdk.feature.group" version="3.7.2.v20120213-777D386vH9DhL7e9QKLh0vkCyimU"/>
-			<unit id="org.eclipse.birt.feature.group" version="3.7.2.v20120213-BDF9E9bGTzuHh03p2c0AWvmC3Ltk"/>
-			<unit id="org.eclipse.birt.integration.wtp.feature.group" version="3.7.2.v20120214-1408-4617w3123132502519"/>
-			<unit id="org.eclipse.birt.chart.feature.group" version="3.7.2.v20120213-7r9e7PFQCnvKZ5oAdlXE5"/>
-			<unit id="org.eclipse.birt.chart.integration.wtp.feature.group" version="3.7.2.v20120214-1408-4617w3123132502519"/>
-
-			<!-- GWT/GPE dependencies (include only those which are EPL or other OSS licensed!) -->
-			<unit id="com.google.gdt.eclipse.suite.e37.feature.feature.group" version="2.5.1.v201201120043-rel-r37"/>
-			<unit id="com.google.gwt.eclipse.sdkbundle.e37.feature.feature.group" version="2.4.0.v201201120043-rel-r37"/>
-			
-			<!-- Theming -->
-			<unit id="net.jeeeyul.eclipse.themes.feature.feature.group" version="1.5.0.201209040005"/>
-		</location>
-	</locations>
-	<includeBundles>
-		<feature id="org.mozilla.xulrunner.feature"/>
-		<feature id="org.mozilla.xpcom.feature"/>
-	</includeBundles>
-	<targetJRE path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
-</target>

Modified: workspace/mistria/target-platform-magic/local/pom.xml
===================================================================
--- workspace/mistria/target-platform-magic/local/pom.xml	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/local/pom.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -13,6 +13,7 @@
 	<packaging>pom</packaging>
 
 	<properties>
+		<repoDir>${basedir}/REPO</repoDir>
 		<eclipse.type>platform</eclipse.type>
 
 		<!--
@@ -20,7 +21,7 @@
 		<eclipse.URL>http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops4/R-4.2-201206081400/</eclipse.URL>
 		-->
 		<eclipse.version>M20120829-1000</eclipse.version>
-		<eclipse.URL>http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops4/M20120829-1000/</eclipse.URL>
+		<eclipse.URL>http://www.eclipse.org/downloads/download.php?r=1&amp;file=/eclipse/downloads/drops/M20120829-1000/</eclipse.URL>
 		
 		<!-- Temporary before release of Tycho 0.16 -->
 		<!-- JBIDE-12003 -->
@@ -31,20 +32,42 @@
 	<build>
 		<plugins>
 			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-dependency-plugin</artifactId>
+				<version>2.5.1</version>
+				<executions>
+					<execution>
+						<id>get-multiple-target</id>
+						<phase>generate-resources</phase>
+						<goals>
+							<goal>get</goal>
+						</goals>
+						<configuration>
+							<groupId>${project.groupId}</groupId>
+							<artifactId>multiple</artifactId>
+							<version>${project.version}</version>
+							<packaging>target</packaging>
+							<classifier>multiple</classifier>
+							<destination>${project.build.directory}/multiple.target</destination>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+			<plugin>
 				<groupId>org.codehaus.mojo</groupId>
 				<artifactId>xml-maven-plugin</artifactId>
 				<version>1.0</version>
 				<executions>
 					<execution>
 						<id>generate-unified.target</id>
-						<phase>validate</phase> <!-- Should be generate-resources -->
+						<phase>generate-resources</phase> <!-- Should be generate-resources -->
 						<goals>
 							<goal>transform</goal>
 						</goals>
 						<configuration>
 							<transformationSets>
 								<transformationSet>
-									<dir>${project.basedir}</dir>
+									<dir>${project.build.directory}</dir>
 									<includes>
 										<include>multiple.target</include>
 									</includes>
@@ -59,7 +82,7 @@
 									<parameters>
 										<parameter>
 											<name>destinationUrl</name>
-											<value>${basedir}</value>
+											<value>file:/${repoDir}</value>
 										</parameter>
 									</parameters>
 								</transformationSet>
@@ -69,6 +92,25 @@
 				</executions>
 			</plugin>
 			<plugin>
+				<groupId>org.eclipse.tycho.extras</groupId>
+				<artifactId>target-platform-validation-plugin</artifactId>
+				<version>${tychoExtrasVersion}</version>
+				<executions>
+					<execution>
+						<phase>verify</phase>
+						<goals>
+ 							<goal>validate-target-platform</goal> 
+						</goals>
+						<configuration>
+							<targetFiles>
+								<param>${project.build.directory}/local/multiple.target</param>
+							</targetFiles>
+							<failOnError>true</failOnError>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+			<plugin>
 				<groupId>org.codehaus.mojo</groupId>
 				<artifactId>build-helper-maven-plugin</artifactId>
 				<version>1.3</version>
@@ -82,7 +124,7 @@
 						<configuration>
 							<artifacts>
 								<artifact>
-									<file>${project.build.directory}/local.target</file>
+									<file>${project.build.directory}/local/multiple.target</file>
 									<type>target</type>
 									<classifier>local</classifier>
 								</artifact>
@@ -105,16 +147,17 @@
 						<version>1.6</version>
 						<executions>
 							<execution>
-								<phase>validate</phase>
+								<phase>package</phase>
 								<configuration>
 									<tasks>
 										<!-- build the local.target file -->
-										<ant antfile="../build.xml">
-											<property name="targetFile" value="${project.build.directory}/local/multiple.target" />
+										<ant antfile="build.xml">
+											<!-- target File is the reference target file (multiple) -->
+											<property name="targetFile" value="${project.build.directory}/multiple.target" />
 											<property name="eclipse.version" value="${eclipse.version}" />
 											<property name="eclipse.type" value="${eclipse.type}" />
 											<property name="eclipse.URL" value="${eclipse.URL}"/>
-											<property name="repoDir" value="${basedir}/REPO"/>
+											<property name="repoDir" value="${repoDir}"/>
 											<!-- <property name="repoDir" value="/path/to/where/to/provision/repo"/> -->
 										</ant>
 									</tasks>

Copied: workspace/mistria/target-platform-magic/local/target2p2mirror.xml (from rev 43496, workspace/mistria/target-platform-magic/target2p2mirror.xml)
===================================================================
--- workspace/mistria/target-platform-magic/local/target2p2mirror.xml	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/target2p2mirror.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,33 @@
+<project default="custom.build" name="jbosstools target platform p2.mirror generator">
+	<!-- don't forget to increment these files when moving up a version:
+	     build.xml, *.target*, publish.sh, target2p2mirror.xml; also jbds/trunk/releng/org.jboss.ide.eclipse.releng/requirements/jbds-target-platform/build.properties;
+	     also all devstudio-5.0_*.updatesite jobs (4) need to be pointed at the new Target Platform URL -->
+
+	<property name="targetFile" value="e421RC2-wtp341M.target" />
+
+	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
+		 if useLatest = false, include versions and fetch specific versions requested. -->
+	<property name="useLatest" value="false" />
+
+	<target name="custom.build" depends="gen.p2mirror.script" />
+
+	<target name="gen.p2mirror.script" description="use XSLT to generate a p2.mirror script from .target">
+		<echo level="verbose">Generate ${targetFile}.p2mirror.xml from ${targetFile} using useLatest=${useLatest}" />
+</echo>
+		<delete file="${targetFile}.p2mirror.xml" quiet="true" />
+		<xslt style="target2p2mirrorXml.xsl" in="${targetFile}" out="${targetFile}.p2mirror.xml" processor="trax">
+			<param name="useLatest" expression="${useLatest}" />
+		</xslt>
+		<echo>-----------
+
+	Next, be sure to run the resulting p2.mirror script. 
+	You may need to run it a few times for it to complete 
+	successfully (due to network timeouts and invalid mirrors).
+			
+	For instructions on running the script, do this:
+			
+		ant -f ${targetFile}.p2mirror.xml help
+		</echo>
+	</target>
+
+</project>

Copied: workspace/mistria/target-platform-magic/local/target2p2mirrorXml.xsl (from rev 43496, workspace/mistria/target-platform-magic/target2p2mirrorXml.xsl)
===================================================================
--- workspace/mistria/target-platform-magic/local/target2p2mirrorXml.xsl	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/target2p2mirrorXml.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema"
+	version="2.0">
+<!-- 
+	This XSLT is used by target2p2mirror.xml to generate a p2.mirror ant script from a .target file
+-->	
+	<xsl:output method="xml" indent="yes" encoding="UTF-8"
+		version="1.0" />
+
+	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
+		 if useLatest = false, include versions and fetch specific versions requested. -->
+	<xsl:param name="useLatest" select="'false'" as="xs:string"/>
+
+	<xsl:param name="verbose" select="'${verbose}'" as="xs:string"/>
+	<xsl:param name="followStrict" select="'${followStrict}'" as="xs:string"/>
+	<xsl:param name="destination" select="'file://${repoDir}'" as="xs:string"/>
+	
+	<xsl:template match="target">
+		<project name="Download target platform" default="download.target.platform">
+			<target name="help">
+				<echo>
+					Generated with useLatest = <xsl:value-of select="$useLatest"/>
+					
+					---
+					
+					Use followStrict="true" to prevent downloading all
+					requirements not included in the target platform
+					or followStrict="false" to fetch everything
+
+					To run this script:
+
+					/abs/path/to/eclipse -vm /opt/jdk1.6.0/bin/java \
+					-nosplash -data /tmp/workspace -consolelog -application \
+					org.eclipse.ant.core.antRunner -f *.target.p2mirror.xml \
+					-Ddebug=true -DfollowStrict=true -DrepoDir=`pwd`/REPO/
+</echo>
+			</target>
+			<target name="init" unless="repoDir">
+				<fail>Must set -DrepoDir=/abs/path/to/download/artifacts/</fail>
+			</target>
+			<target name="download.target.platform" depends="init"
+				description="Download from target platform definition" if="repoDir">
+				<property name="verbose" value="false" />
+				<property name="followStrict" value="false" />
+				<echo level="info">Download features/plugins into ${repoDir}</echo>
+				<p2.mirror destination="{$destination}" verbose="{$verbose}">
+					<!-- should we add latestVersionOnly="true" to <slicingOptions> ? -->
+					<slicingOptions includeFeatures="true" followStrict="{$followStrict}"/>
+					<source>
+						<xsl:apply-templates select="//repository" />
+					</source>
+					<xsl:apply-templates select="//unit" />
+					<xsl:apply-templates select="//feature" />
+					<xsl:apply-templates select="//plugin" />
+				</p2.mirror>
+			</target>
+		</project>
+	</xsl:template>
+
+	<xsl:template match="//repository">
+		<xsl:variable name="locationUrl" select="./@location" />
+		<repository location="{$locationUrl}" />
+	</xsl:template>
+
+	<xsl:template match="//unit">
+		<xsl:choose>
+			<xsl:when test="$useLatest='true'">
+				<iu id="{@id}" version="" />
+			</xsl:when>
+			<xsl:otherwise>
+				<iu id="{@id}" version="{@version}" />
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+
+	<xsl:template match="//plugin">
+		<iu id="{@id}" version="" />
+	</xsl:template>
+
+	<xsl:template match="//feature">
+		<iu id="{@id}.feature.group" version="" />
+	</xsl:template>
+
+	<!-- ignore anything else -->
+	<xsl:template match="environment|targetJRE|launcherArgs|includeBundles" />
+
+</xsl:stylesheet>

Copied: workspace/mistria/target-platform-magic/local/target2targetTemplate.xsl (from rev 43496, workspace/mistria/target-platform-magic/target2targetTemplate.xsl)
===================================================================
--- workspace/mistria/target-platform-magic/local/target2targetTemplate.xsl	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/target2targetTemplate.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+<!-- 
+	This XSLT is used by targetUpdateFromRepo.xml to update the versions on IUs in a .target file
+	CAUTION: do not auto-format this file or line breaks will appear where they should not be!
+-->
+
+<xsl:param name="replacement.URL"/>
+<xsl:param name="replace.versions"/>
+
+<!-- Copy unit nodes and optionally (if we ran contentXml2artifactVersions.xsl transform and have artifactVersions.properties file) templatize their version attributes -->
+<xsl:template match="unit">
+<xsl:choose>
+<xsl:when test="$replace.versions">
+
+<xsl:variable name="prevID"><xsl:value-of select="preceding-sibling::* [1]/@id" /></xsl:variable> <!-- <prevID><xsl:value-of select="$prevID"/></prevID> -->
+<xsl:variable name="thisID"><xsl:value-of select="@id" /></xsl:variable> <!-- <thisID><xsl:value-of select="$thisID"/></thisID> -->
+<xsl:variable name="nextID"><xsl:value-of select="following-sibling::* [1]/@id" /></xsl:variable> <!-- <nextID><xsl:value-of select="$nextID"/></nextID> -->
+
+<!-- if there is more than one node matching <unit id="some.id"/> then DO NOT REPLACE the version -->
+<xsl:choose>
+	<xsl:when test="contains ($thisID, $nextID) or contains ($thisID, $prevID)">
+		<!-- <xsl:comment> Note multiple versions of this IU; cannot update automatically. </xsl:comment> -->
+		<unit id="{@id}" version="{@version}"><xsl:apply-templates/></unit>
+	</xsl:when>
+	<xsl:otherwise>
+		<unit id="{@id}" version="${{{@id}.version}}"><xsl:apply-templates/></unit>
+	</xsl:otherwise>
+</xsl:choose>
+<xsl:apply-templates/>
+</xsl:when>
+<xsl:otherwise>
+<unit id="{@id}" version="{@version}"><xsl:apply-templates/></unit>
+</xsl:otherwise>
+</xsl:choose>
+</xsl:template>
+
+<!-- Copy repository nodes and optionally replace their location attributes (if replacement.URL is set) -->
+<xsl:template match="repository">
+<xsl:choose>
+<xsl:when test="$replacement.URL">
+<repository location="{$replacement.URL}">
+<xsl:apply-templates/>
+</repository>
+</xsl:when>
+<xsl:otherwise>
+<repository location="{@location}">
+<xsl:apply-templates/>
+</repository>
+</xsl:otherwise>
+</xsl:choose>
+</xsl:template>
+
+<!-- Copy everything else unchanged -->
+<xsl:template match="@*|node()">
+<xsl:copy>
+<xsl:apply-templates select="@*|node()"/>
+</xsl:copy>
+</xsl:template>
+
+</xsl:stylesheet>
+

Copied: workspace/mistria/target-platform-magic/local/targetUpdateFromRepo.xml (from rev 43496, workspace/mistria/target-platform-magic/targetUpdateFromRepo.xml)
===================================================================
--- workspace/mistria/target-platform-magic/local/targetUpdateFromRepo.xml	                        (rev 0)
+++ workspace/mistria/target-platform-magic/local/targetUpdateFromRepo.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -0,0 +1,165 @@
+<project default="custom.build" name="jbosstools target platform updater">
+
+	<property name="outputDir" value="${basedir}" />
+	<!-- Instead of overwriting, can also create a new .target file in a different outputDir
+		<property name="outputDir" value="${tmpDir}" /> 
+	-->
+
+	<!-- must set these commandline if not using defaults -->
+	<property name="targetFile" value="multiple.target" />
+	<property name="repoDir" value="${outputDir}/REPO/" />
+
+	<!-- create a second .target file which replaces all URLs with a single unified (published) one
+		(eg., for jbosstools target platform site), set these properties too -->
+	<property name="unified.targetFile" value="unified.target" />
+	<property name="unified.URL" value="http://download.jboss.org/jbosstools/updates/target-platform_4.0.juno.SR0a/latest/" />
+	<property name="local.targetFile" value="local.target" />
+	<property name="local.URL" value="file://${repoDir}" />
+
+	<property name="tmpDir" value="${java.io.tmpdir}/targetUpdateFromRepo" />
+
+	<target name="help">
+		<echo>Must set these properties (or use defaults shown):
+			
+	ant -f targetUpdateFromRepo.xml -DrepoDir=${repoDir} \
+		-DtargetFile=${targetFile} \
+		-Dunified.targetFile=${unified.targetFile} \
+		-Dunified.URL=${unified.URL} \
+		-Dlocal.targetFile=${local.targetFile} \
+		-Dlocal.URL=${local.URL}
+
+To simply generate a local.target file from the multiple.target file, use:
+
+	ant -f targetUpdateFromRepo.xml local.target</echo>
+	</target>
+
+	<target name="custom.build" depends="check.content.xml, get.content.xml, copy.content.xml, contentXml2artifactVersions.xsl, multiple.target, unified.target, local.target, cleanup" />
+
+	<target name="check.content.xml" description="if content.jar, unpack to get content.xml">
+		<condition property="content.xml.exists" value="true">
+			<available file="${repoDir}/content.xml" />
+		</condition>
+	</target>
+	<target name="get.content.xml" unless="content.xml.exists">
+		<echo level="verbose">Unzip ${tmpDir}/content.xml</echo>
+		<unzip src="${repoDir}/content.jar" dest="${tmpDir}" />
+	</target>
+	<target name="copy.content.xml" if="content.xml.exists">
+		<echo level="verbose">Copy ${tmpDir}/content.xml</echo>
+		<copy file="${repoDir}/content.xml" todir="${tmpDir}" />
+	</target>
+
+	<target name="contentXml2artifactVersions.xsl">
+		<echo level="verbose">Generate ${tmpDir}/artifactVersions.properties</echo>
+		<xslt style="contentXml2artifactVersions.xsl" in="${tmpDir}/content.xml" out="${tmpDir}/artifactVersions.properties" processor="trax" />
+	</target>
+
+	<target name="target2targetTemplate" description="run target2targetTemplate.xsl to templatize .target file">
+		<property name="outputFile" value="${tmpDir}/${targetFile}.template" />
+		<property name="replacement.URL" value="" />
+		<echo level="verbose">Generate ${outputFile}</echo>
+		<xslt style="target2targetTemplate.xsl" in="${targetFile}" out="${outputFile}" processor="trax">
+			<param name="replacement.URL" expression="${replacement.URL}" />
+			<!-- if replace.versions is set, will update from versions in repo; if not set, will only update URLs, not IU versions -->
+			<param name="replace.versions" expression="1" />
+		</xslt>
+	</target>
+
+	<target name="multiple.target" description="update the multiple.target file based on new content in the local repo">
+		<antcall target="target2targetTemplate" />
+		<antcall target="updateTargetFile" />
+	</target>
+
+	<target name="unified.target" description="update the unified.target file based on new content in the local repo and replace URLs w/ single unified one">
+		<antcall target="target2targetTemplate">
+			<param name="outputFile" value="${tmpDir}/${unified.targetFile}.template" />
+			<param name="replacement.URL" value="${unified.URL}" />
+		</antcall>
+		<antcall target="updateTargetFile">
+			<param name="targetFile" value="${unified.targetFile}" />
+		</antcall>
+	</target>
+
+	<target name="local.target" description="create a local.target file (based on new content in the local repo if available) and replace URLs w/ single local one">
+		<antcall target="target2targetTemplate">
+			<param name="outputFile" value="${tmpDir}/${local.targetFile}.template" />
+			<param name="replacement.URL" value="${local.URL}" />
+		</antcall>
+		<antcall target="updateTargetFile">
+			<param name="targetFile" value="${local.targetFile}" />
+		</antcall>
+	</target>
+
+	<target name="updateTargetFile" description="load generated properties and resolve them in the template to create a new .target file">
+		<property file="${tmpDir}/artifactVersions.properties" />
+		<copy todir="${outputDir}" overwrite="true">
+			<fileset file="${tmpDir}/${targetFile}.template" />
+			<mapper type="merge" to="${targetFile}" />
+			<filterchain>
+				<expandproperties />
+			</filterchain>
+		</copy>
+	</target>
+
+	<target name="cleanup" description="purge temporary dir">
+		<delete dir="${tmpDir}" includeemptydirs="true" quiet="true" />
+	</target>
+
+	<!-- test examples:
+	     	cd ~/32x/build/target-platform
+		ant -f targetUpdateFromRepo.xml test.updateTargetFile -Dtest.pattern=swtbot
+		ant -f targetUpdateFromRepo.xml test.updateTargetFile -Dtest.pattern=js -DtargetFile=jbds.target -DrepoDir=`pwd`/JBDS_REPO/
+	-->
+	<target name="test.updateTargetFile" depends="check.content.xml, get.content.xml, copy.content.xml, contentXml2artifactVersions.xsl">
+		<!-- properties to set commandline: -->
+		<property name="test.pattern" value="swtbot"/>
+		<property name="test.targetFile" value="${targetFile}"/>
+
+		<property name="tmpfile" value="${tmpDir}/test.updateTargetFile.tmp"/>
+		<property name="tmpfile2" value="${tmpDir}/test.updateTargetFile.tmpsed"/>
+		<echo level="info">Load /${test.pattern}/ properties from ${tmpDir}/artifactVersions.properties</echo>
+		<loadfile srcfile="${tmpDir}/artifactVersions.properties" property="artifactVersionsPropertiesContents">
+			<filterchain>
+				<linecontains>
+					<contains value="${test.pattern}" />
+					<!-- <contains value="feature.group" /> -->
+				</linecontains>
+				<striplinecomments><comment value="#"/></striplinecomments>
+			</filterchain>
+		</loadfile>
+		<echo file="${tmpfile}">${artifactVersionsPropertiesContents}</echo>
+
+		<antcall target="target2targetTemplate">
+			<param name="outputFile" value="${tmpDir}/${test.targetFile}.template" />
+			<param name="replacement.URL" value="${unified.URL}" />
+		</antcall>
+		<!-- <echo level="info">Generated ${tmpDir}/${unified.targetFile}.template: </echo>
+	<exec executable="egrep">
+			<arg line="&quot;${test.pattern}&quot; ${tmpDir}/${test.targetFile}.template" />
+		</exec> -->
+
+		<antcall target="updateTargetFile">
+			<param name="targetFile" value="${test.targetFile}" />
+		</antcall>
+		<echo level="info">--
+If loaded version values (in artifactVersions.properties) do not match  
+output below (values from repo), an error has occurred or replace.versions is undefined.
+It is also possible that the complete list of features in the repo is greater than those 
+in the target. If so, clean the repo and regenerate to remove extraneous content.
+--</echo>
+		<!-- $ sed -n -e '/swtbot.*feature.group/ p' unified.target | sed -e 's/\t\t\t<unit id="\|"\/>//g' -->
+		<exec executable="sed" output="${tmpfile2}">
+			<arg line=" -n -e '/${test.pattern}.*feature.group/ p' ${test.targetFile}" />
+		</exec>
+		<exec executable="sed" output="${tmpfile}.2">
+			<arg line=" -e 's/\t\t\t&lt;unit id=&quot;\|&quot;\/&gt;//g' ${tmpfile2} -e 's/&quot; version=&quot;/.version=/g'" />
+		</exec>
+		<exec executable="sort" output="${tmpfile}.sorted"><arg line="${tmpfile}"/></exec>
+		<exec executable="sort" output="${tmpfile}.2.sorted"><arg line="${tmpfile}.2"/></exec>
+		<exec executable="diff" outputproperty="diffout">
+			<arg line="${tmpfile}.sorted ${tmpfile}.2.sorted"/>
+		</exec>
+		<echo>${diffout}</echo>
+		<antcall target="cleanup"/>
+	</target>
+</project>

Modified: workspace/mistria/target-platform-magic/multiple/pom.xml
===================================================================
--- workspace/mistria/target-platform-magic/multiple/pom.xml	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/multiple/pom.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -20,7 +20,7 @@
 				<version>${tychoExtrasVersion}</version>
 				<executions>
 					<execution>
-						<phase>validate</phase>
+						<phase>verify</phase>
 						<goals>
  							<goal>validate-target-platform</goal> 
 						</goals>

Deleted: workspace/mistria/target-platform-magic/target2p2mirror.xml
===================================================================
--- workspace/mistria/target-platform-magic/target2p2mirror.xml	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/target2p2mirror.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,33 +0,0 @@
-<project default="custom.build" name="jbosstools target platform p2.mirror generator">
-	<!-- don't forget to increment these files when moving up a version:
-	     build.xml, *.target*, publish.sh, target2p2mirror.xml; also jbds/trunk/releng/org.jboss.ide.eclipse.releng/requirements/jbds-target-platform/build.properties;
-	     also all devstudio-5.0_*.updatesite jobs (4) need to be pointed at the new Target Platform URL -->
-
-	<property name="targetFile" value="e421RC2-wtp341M.target" />
-
-	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
-		 if useLatest = false, include versions and fetch specific versions requested. -->
-	<property name="useLatest" value="false" />
-
-	<target name="custom.build" depends="gen.p2mirror.script" />
-
-	<target name="gen.p2mirror.script" description="use XSLT to generate a p2.mirror script from .target">
-		<echo level="verbose">Generate ${targetFile}.p2mirror.xml from ${targetFile} using useLatest=${useLatest}" />
-</echo>
-		<delete file="${targetFile}.p2mirror.xml" quiet="true" />
-		<xslt style="target2p2mirrorXml.xsl" in="${targetFile}" out="${targetFile}.p2mirror.xml" processor="trax">
-			<param name="useLatest" expression="${useLatest}" />
-		</xslt>
-		<echo>-----------
-
-	Next, be sure to run the resulting p2.mirror script. 
-	You may need to run it a few times for it to complete 
-	successfully (due to network timeouts and invalid mirrors).
-			
-	For instructions on running the script, do this:
-			
-		ant -f ${targetFile}.p2mirror.xml help
-		</echo>
-	</target>
-
-</project>

Deleted: workspace/mistria/target-platform-magic/target2p2mirrorXml.xsl
===================================================================
--- workspace/mistria/target-platform-magic/target2p2mirrorXml.xsl	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/target2p2mirrorXml.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema"
-	version="2.0">
-<!-- 
-	This XSLT is used by target2p2mirror.xml to generate a p2.mirror ant script from a .target file
--->	
-	<xsl:output method="xml" indent="yes" encoding="UTF-8"
-		version="1.0" />
-
-	<!-- if useLatest = true, omit versions from p2.mirror script to fetch latest version available; 
-		 if useLatest = false, include versions and fetch specific versions requested. -->
-	<xsl:param name="useLatest" select="'false'" as="xs:string"/>
-
-	<xsl:param name="verbose" select="'${verbose}'" as="xs:string"/>
-	<xsl:param name="followStrict" select="'${followStrict}'" as="xs:string"/>
-	<xsl:param name="destination" select="'file://${repoDir}'" as="xs:string"/>
-	
-	<xsl:template match="target">
-		<project name="Download target platform" default="download.target.platform">
-			<target name="help">
-				<echo>
-					Generated with useLatest = <xsl:value-of select="$useLatest"/>
-					
-					---
-					
-					Use followStrict="true" to prevent downloading all
-					requirements not included in the target platform
-					or followStrict="false" to fetch everything
-
-					To run this script:
-
-					/abs/path/to/eclipse -vm /opt/jdk1.6.0/bin/java \
-					-nosplash -data /tmp/workspace -consolelog -application \
-					org.eclipse.ant.core.antRunner -f *.target.p2mirror.xml \
-					-Ddebug=true -DfollowStrict=true -DrepoDir=`pwd`/REPO/
-</echo>
-			</target>
-			<target name="init" unless="repoDir">
-				<fail>Must set -DrepoDir=/abs/path/to/download/artifacts/</fail>
-			</target>
-			<target name="download.target.platform" depends="init"
-				description="Download from target platform definition" if="repoDir">
-				<property name="verbose" value="false" />
-				<property name="followStrict" value="false" />
-				<echo level="info">Download features/plugins into ${repoDir}</echo>
-				<p2.mirror destination="{$destination}" verbose="{$verbose}">
-					<!-- should we add latestVersionOnly="true" to <slicingOptions> ? -->
-					<slicingOptions includeFeatures="true" followStrict="{$followStrict}"/>
-					<source>
-						<xsl:apply-templates select="//repository" />
-					</source>
-					<xsl:apply-templates select="//unit" />
-					<xsl:apply-templates select="//feature" />
-					<xsl:apply-templates select="//plugin" />
-				</p2.mirror>
-			</target>
-		</project>
-	</xsl:template>
-
-	<xsl:template match="//repository">
-		<xsl:variable name="locationUrl" select="./@location" />
-		<repository location="{$locationUrl}" />
-	</xsl:template>
-
-	<xsl:template match="//unit">
-		<xsl:choose>
-			<xsl:when test="$useLatest='true'">
-				<iu id="{@id}" version="" />
-			</xsl:when>
-			<xsl:otherwise>
-				<iu id="{@id}" version="{@version}" />
-			</xsl:otherwise>
-		</xsl:choose>
-	</xsl:template>
-
-	<xsl:template match="//plugin">
-		<iu id="{@id}" version="" />
-	</xsl:template>
-
-	<xsl:template match="//feature">
-		<iu id="{@id}.feature.group" version="" />
-	</xsl:template>
-
-	<!-- ignore anything else -->
-	<xsl:template match="environment|targetJRE|launcherArgs|includeBundles" />
-
-</xsl:stylesheet>

Deleted: workspace/mistria/target-platform-magic/target2targetTemplate.xsl
===================================================================
--- workspace/mistria/target-platform-magic/target2targetTemplate.xsl	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/target2targetTemplate.xsl	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-<!-- 
-	This XSLT is used by targetUpdateFromRepo.xml to update the versions on IUs in a .target file
-	CAUTION: do not auto-format this file or line breaks will appear where they should not be!
--->
-
-<xsl:param name="replacement.URL"/>
-<xsl:param name="replace.versions"/>
-
-<!-- Copy unit nodes and optionally (if we ran contentXml2artifactVersions.xsl transform and have artifactVersions.properties file) templatize their version attributes -->
-<xsl:template match="unit">
-<xsl:choose>
-<xsl:when test="$replace.versions">
-
-<xsl:variable name="prevID"><xsl:value-of select="preceding-sibling::* [1]/@id" /></xsl:variable> <!-- <prevID><xsl:value-of select="$prevID"/></prevID> -->
-<xsl:variable name="thisID"><xsl:value-of select="@id" /></xsl:variable> <!-- <thisID><xsl:value-of select="$thisID"/></thisID> -->
-<xsl:variable name="nextID"><xsl:value-of select="following-sibling::* [1]/@id" /></xsl:variable> <!-- <nextID><xsl:value-of select="$nextID"/></nextID> -->
-
-<!-- if there is more than one node matching <unit id="some.id"/> then DO NOT REPLACE the version -->
-<xsl:choose>
-	<xsl:when test="contains ($thisID, $nextID) or contains ($thisID, $prevID)">
-		<!-- <xsl:comment> Note multiple versions of this IU; cannot update automatically. </xsl:comment> -->
-		<unit id="{@id}" version="{@version}"><xsl:apply-templates/></unit>
-	</xsl:when>
-	<xsl:otherwise>
-		<unit id="{@id}" version="${{{@id}.version}}"><xsl:apply-templates/></unit>
-	</xsl:otherwise>
-</xsl:choose>
-<xsl:apply-templates/>
-</xsl:when>
-<xsl:otherwise>
-<unit id="{@id}" version="{@version}"><xsl:apply-templates/></unit>
-</xsl:otherwise>
-</xsl:choose>
-</xsl:template>
-
-<!-- Copy repository nodes and optionally replace their location attributes (if replacement.URL is set) -->
-<xsl:template match="repository">
-<xsl:choose>
-<xsl:when test="$replacement.URL">
-<repository location="{$replacement.URL}">
-<xsl:apply-templates/>
-</repository>
-</xsl:when>
-<xsl:otherwise>
-<repository location="{@location}">
-<xsl:apply-templates/>
-</repository>
-</xsl:otherwise>
-</xsl:choose>
-</xsl:template>
-
-<!-- Copy everything else unchanged -->
-<xsl:template match="@*|node()">
-<xsl:copy>
-<xsl:apply-templates select="@*|node()"/>
-</xsl:copy>
-</xsl:template>
-
-</xsl:stylesheet>
-

Deleted: workspace/mistria/target-platform-magic/targetUpdateFromRepo.xml
===================================================================
--- workspace/mistria/target-platform-magic/targetUpdateFromRepo.xml	2012-09-07 08:19:14 UTC (rev 43498)
+++ workspace/mistria/target-platform-magic/targetUpdateFromRepo.xml	2012-09-07 09:25:46 UTC (rev 43499)
@@ -1,165 +0,0 @@
-<project default="custom.build" name="jbosstools target platform updater">
-
-	<property name="outputDir" value="${basedir}" />
-	<!-- Instead of overwriting, can also create a new .target file in a different outputDir
-		<property name="outputDir" value="${tmpDir}" /> 
-	-->
-
-	<!-- must set these commandline if not using defaults -->
-	<property name="targetFile" value="multiple.target" />
-	<property name="repoDir" value="${outputDir}/REPO/" />
-
-	<!-- create a second .target file which replaces all URLs with a single unified (published) one
-		(eg., for jbosstools target platform site), set these properties too -->
-	<property name="unified.targetFile" value="unified.target" />
-	<property name="unified.URL" value="http://download.jboss.org/jbosstools/updates/target-platform_4.0.juno.SR0a/latest/" />
-	<property name="local.targetFile" value="local.target" />
-	<property name="local.URL" value="file://${repoDir}" />
-
-	<property name="tmpDir" value="${java.io.tmpdir}/targetUpdateFromRepo" />
-
-	<target name="help">
-		<echo>Must set these properties (or use defaults shown):
-			
-	ant -f targetUpdateFromRepo.xml -DrepoDir=${repoDir} \
-		-DtargetFile=${targetFile} \
-		-Dunified.targetFile=${unified.targetFile} \
-		-Dunified.URL=${unified.URL} \
-		-Dlocal.targetFile=${local.targetFile} \
-		-Dlocal.URL=${local.URL}
-
-To simply generate a local.target file from the multiple.target file, use:
-
-	ant -f targetUpdateFromRepo.xml local.target</echo>
-	</target>
-
-	<target name="custom.build" depends="check.content.xml, get.content.xml, copy.content.xml, contentXml2artifactVersions.xsl, multiple.target, unified.target, local.target, cleanup" />
-
-	<target name="check.content.xml" description="if content.jar, unpack to get content.xml">
-		<condition property="content.xml.exists" value="true">
-			<available file="${repoDir}/content.xml" />
-		</condition>
-	</target>
-	<target name="get.content.xml" unless="content.xml.exists">
-		<echo level="verbose">Unzip ${tmpDir}/content.xml</echo>
-		<unzip src="${repoDir}/content.jar" dest="${tmpDir}" />
-	</target>
-	<target name="copy.content.xml" if="content.xml.exists">
-		<echo level="verbose">Copy ${tmpDir}/content.xml</echo>
-		<copy file="${repoDir}/content.xml" todir="${tmpDir}" />
-	</target>
-
-	<target name="contentXml2artifactVersions.xsl">
-		<echo level="verbose">Generate ${tmpDir}/artifactVersions.properties</echo>
-		<xslt style="contentXml2artifactVersions.xsl" in="${tmpDir}/content.xml" out="${tmpDir}/artifactVersions.properties" processor="trax" />
-	</target>
-
-	<target name="target2targetTemplate" description="run target2targetTemplate.xsl to templatize .target file">
-		<property name="outputFile" value="${tmpDir}/${targetFile}.template" />
-		<property name="replacement.URL" value="" />
-		<echo level="verbose">Generate ${outputFile}</echo>
-		<xslt style="target2targetTemplate.xsl" in="${targetFile}" out="${outputFile}" processor="trax">
-			<param name="replacement.URL" expression="${replacement.URL}" />
-			<!-- if replace.versions is set, will update from versions in repo; if not set, will only update URLs, not IU versions -->
-			<param name="replace.versions" expression="1" />
-		</xslt>
-	</target>
-
-	<target name="multiple.target" description="update the multiple.target file based on new content in the local repo">
-		<antcall target="target2targetTemplate" />
-		<antcall target="updateTargetFile" />
-	</target>
-
-	<target name="unified.target" description="update the unified.target file based on new content in the local repo and replace URLs w/ single unified one">
-		<antcall target="target2targetTemplate">
-			<param name="outputFile" value="${tmpDir}/${unified.targetFile}.template" />
-			<param name="replacement.URL" value="${unified.URL}" />
-		</antcall>
-		<antcall target="updateTargetFile">
-			<param name="targetFile" value="${unified.targetFile}" />
-		</antcall>
-	</target>
-
-	<target name="local.target" description="create a local.target file (based on new content in the local repo if available) and replace URLs w/ single local one">
-		<antcall target="target2targetTemplate">
-			<param name="outputFile" value="${tmpDir}/${local.targetFile}.template" />
-			<param name="replacement.URL" value="${local.URL}" />
-		</antcall>
-		<antcall target="updateTargetFile">
-			<param name="targetFile" value="${local.targetFile}" />
-		</antcall>
-	</target>
-
-	<target name="updateTargetFile" description="load generated properties and resolve them in the template to create a new .target file">
-		<property file="${tmpDir}/artifactVersions.properties" />
-		<copy todir="${outputDir}" overwrite="true">
-			<fileset file="${tmpDir}/${targetFile}.template" />
-			<mapper type="merge" to="${targetFile}" />
-			<filterchain>
-				<expandproperties />
-			</filterchain>
-		</copy>
-	</target>
-
-	<target name="cleanup" description="purge temporary dir">
-		<delete dir="${tmpDir}" includeemptydirs="true" quiet="true" />
-	</target>
-
-	<!-- test examples:
-	     	cd ~/32x/build/target-platform
-		ant -f targetUpdateFromRepo.xml test.updateTargetFile -Dtest.pattern=swtbot
-		ant -f targetUpdateFromRepo.xml test.updateTargetFile -Dtest.pattern=js -DtargetFile=jbds.target -DrepoDir=`pwd`/JBDS_REPO/
-	-->
-	<target name="test.updateTargetFile" depends="check.content.xml, get.content.xml, copy.content.xml, contentXml2artifactVersions.xsl">
-		<!-- properties to set commandline: -->
-		<property name="test.pattern" value="swtbot"/>
-		<property name="test.targetFile" value="${targetFile}"/>
-
-		<property name="tmpfile" value="${tmpDir}/test.updateTargetFile.tmp"/>
-		<property name="tmpfile2" value="${tmpDir}/test.updateTargetFile.tmpsed"/>
-		<echo level="info">Load /${test.pattern}/ properties from ${tmpDir}/artifactVersions.properties</echo>
-		<loadfile srcfile="${tmpDir}/artifactVersions.properties" property="artifactVersionsPropertiesContents">
-			<filterchain>
-				<linecontains>
-					<contains value="${test.pattern}" />
-					<!-- <contains value="feature.group" /> -->
-				</linecontains>
-				<striplinecomments><comment value="#"/></striplinecomments>
-			</filterchain>
-		</loadfile>
-		<echo file="${tmpfile}">${artifactVersionsPropertiesContents}</echo>
-
-		<antcall target="target2targetTemplate">
-			<param name="outputFile" value="${tmpDir}/${test.targetFile}.template" />
-			<param name="replacement.URL" value="${unified.URL}" />
-		</antcall>
-		<!-- <echo level="info">Generated ${tmpDir}/${unified.targetFile}.template: </echo>
-	<exec executable="egrep">
-			<arg line="&quot;${test.pattern}&quot; ${tmpDir}/${test.targetFile}.template" />
-		</exec> -->
-
-		<antcall target="updateTargetFile">
-			<param name="targetFile" value="${test.targetFile}" />
-		</antcall>
-		<echo level="info">--
-If loaded version values (in artifactVersions.properties) do not match  
-output below (values from repo), an error has occurred or replace.versions is undefined.
-It is also possible that the complete list of features in the repo is greater than those 
-in the target. If so, clean the repo and regenerate to remove extraneous content.
---</echo>
-		<!-- $ sed -n -e '/swtbot.*feature.group/ p' unified.target | sed -e 's/\t\t\t<unit id="\|"\/>//g' -->
-		<exec executable="sed" output="${tmpfile2}">
-			<arg line=" -n -e '/${test.pattern}.*feature.group/ p' ${test.targetFile}" />
-		</exec>
-		<exec executable="sed" output="${tmpfile}.2">
-			<arg line=" -e 's/\t\t\t&lt;unit id=&quot;\|&quot;\/&gt;//g' ${tmpfile2} -e 's/&quot; version=&quot;/.version=/g'" />
-		</exec>
-		<exec executable="sort" output="${tmpfile}.sorted"><arg line="${tmpfile}"/></exec>
-		<exec executable="sort" output="${tmpfile}.2.sorted"><arg line="${tmpfile}.2"/></exec>
-		<exec executable="diff" outputproperty="diffout">
-			<arg line="${tmpfile}.sorted ${tmpfile}.2.sorted"/>
-		</exec>
-		<echo>${diffout}</echo>
-		<antcall target="cleanup"/>
-	</target>
-</project>



More information about the jbosstools-commits mailing list