general build cleanup
diff --git a/releng.control/.project b/releng.control/.project
new file mode 100644
index 0000000..3ef861e
--- /dev/null
+++ b/releng.control/.project
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>releng.control</name>
+	<comment>This project is for very machine specific information 
+	and scripts and properties to manage cruise control.</comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/releng.control/ant.bat b/releng.control/ant.bat
new file mode 100644
index 0000000..f16221f
--- /dev/null
+++ b/releng.control/ant.bat
@@ -0,0 +1,5 @@
+@echo off
+setlocal
+set PROJECT_HOME=%~dp0
+call %ANT_HOME%\bin\ant.bat %*
+endlocal
diff --git a/releng.control/ant.sh b/releng.control/ant.sh
new file mode 100644
index 0000000..0eedaf8
--- /dev/null
+++ b/releng.control/ant.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+PROJECT_HOME=`dirname "$0"`
+
+echo "Project Home: ${PROJECT_HOME}"
+
+
+PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin
+PATH=$PATH:$HOME/bin:/home/shared/webtools/apps/apache-ant-1.6.5/bin
+PATH=$PATH:/home/shared/webtools/apps/j2sdk1.4.2_11/bin
+export PATH
+
+LD_LIBRARY_PATH=/opt/gnome/lib:/opt/gnome/lib64
+export LD_LIBRARY_PATH
+
+
+
+BUILD_HOME=/home/shared/webtools
+export BUILD_HOME
+
+CCDIR=/home/shared/webtools/apps/cruisecontrol-bin-2.5
+export CCDIR
+
+JAVA_HOME=/home/shared/webtools/apps/j2sdk1.4.2_11
+export JAVA_HOME
+
+ANT_HOME=/home/shared/webtools/apps/apache-ant-1.6.5
+export ANT_HOME
+
+
+# OS specific support.
+sunjvm=false;
+ibmjvm=false;
+javaversion="`uname -a`"
+
+case "$javaversion" in
+  *i686*) sunjvm=true;;
+  *ppc*)  ibmjvm=true;;
+esac
+
+ANT_OPTS="-Xms128m -Xmx768m"
+if $sunjvm ; then
+   ANT_OPTS="-Xms128m -Xmx768m -XX:MaxPermSize=128M -XX:+UseParallelGC"
+fi
+ANT_CMD=${ANT_HOME}/bin/ant
+DISPLAY=127.0.0.1:0.0
+export DISPLAY
+export ANT_OPTS
+exec "$ANT_CMD" "$@"
diff --git a/releng.control/cc.sh b/releng.control/cc.sh
new file mode 100644
index 0000000..380cf43
--- /dev/null
+++ b/releng.control/cc.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin
+PATH=$PATH:$HOME/bin:/home/shared/webtools/apps/apache-ant-1.6.5/bin
+PATH=$PATH:/home/shared/webtools/apps/j2sdk1.4.2_11/bin
+export PATH
+
+LD_LIBRARY_PATH=/opt/gnome/lib:/opt/gnome/lib64
+export LD_LIBRARY_PATH
+
+
+
+BUILD_HOME=/home/shared/webtools
+export BUILD_HOME
+
+CCDIR=/home/shared/webtools/apps/cruisecontrol-bin-2.5
+export CCDIR
+
+JAVA_HOME=/home/shared/webtools/apps/j2sdk1.4.2_11
+export JAVA_HOME
+
+ANT_HOME=/home/shared/webtools/apps/apache-ant-1.6.5
+export ANT_HOME
+
+port="7000"
+
+DISPLAY=127.0.0.1:0.0
+export DISPLAY
+
+rm -fr ./workspace
+
+sh $CCDIR/cruisecontrol.sh $BUILD_HOME/releng.control/config.xml -jmxport $port -webport 7777 -user wtp -password ballad -cchome $CCDIR 1>out.txt 2>err.txt &
+
diff --git a/releng.control/checkout.properties b/releng.control/checkout.properties
new file mode 100644
index 0000000..731fc09
--- /dev/null
+++ b/releng.control/checkout.properties
@@ -0,0 +1,22 @@
+# some constants controling some common check out tasks
+
+
+# its handy to set this value to false, when 
+# doing local builds to test new versions of wtpbuilder
+# so that your local edits are not over written each time
+# normally always 'true' for "production" builds
+checkout.wtpbuilder.clean=false
+
+
+# handy constant to avoid hard coding
+mapCvsRoot=:pserver:anonymous@dev.eclipse.org:/cvsroot/webtools
+
+
+
+# these are some not currently important constants to avoid hard coding, 
+# and allowing easier expansion in future
+releng=releng
+releng.wtpbuilder=releng.wtpbuilder
+wst=wst
+jst=jst
+
diff --git a/releng.control/checkout.xml b/releng.control/checkout.xml
new file mode 100644
index 0000000..26add78
--- /dev/null
+++ b/releng.control/checkout.xml
@@ -0,0 +1,78 @@
+<project default="all">
+
+	<!-- requires following to be passed in
+		buildType
+		build.home
+		codir
+		mapVersionTag
+	 -->
+
+	<property file="checkout.properties" />
+
+
+
+	<target name="all">
+		<antcall target="${buildType}" />
+	</target>
+
+	<target name="N">
+
+		<antcall target="initBuilders"/>
+		<cvs quiet="true" cvsRoot="${mapCvsRoot}" package="${wst}" dest="${codir}" />
+		<cvs quiet="true" cvsRoot="${mapCvsRoot}" package="${jst}" dest="${codir}" />
+		<antcall target="getwtpbuilder" />
+
+	</target>
+
+	<target name="S">
+		<antcall target="initBuilders"/>
+		<antcall target="getwtpbuilder" />
+	</target>
+
+	<target name="I">
+		<antcall target="initBuilders"/>
+		<antcall target="getwtpbuilder" />
+	</target>
+
+	<target name="M">
+		<antcall target="initBuilders"/>
+		<antcall target="getwtpbuilder" />
+	</target>
+
+	<target name="R">
+		<antcall target="initBuilders"/>
+		<antcall target="getwtpbuilder" />
+	</target>
+	
+	
+
+
+	<target name="getwtpbuilder" depends="check.clean" if="doClean">
+		<property file="${codir}/releng/maps/build.cfg" />
+		<delete dir="${codir}/releng.wtpbuilder" failonerror="false" />
+		<echo message="Version tag for ${releng.wtpbuilder} is: ${wtpBuilderVersion}" />
+		<cvs quiet="true" cvsRoot="${mapCvsRoot}" package="${releng.wtpbuilder}" dest="${codir}" tag="${wtpBuilderVersion}" />
+
+	</target>
+
+
+	<target name="check.clean">
+		<condition property="doClean">
+			<equals arg1="${checkout.wtpbuilder.clean}" arg2="true" />
+		</condition>
+	</target>
+
+	<target name="initBuilders">
+		<echo message="Version tag for ${releng}: ${mapVersionTag}" />
+		<cvs quiet="true" cvsRoot="${mapCvsRoot}" package="${releng}" dest="${codir}" tag="${mapVersionTag}" />
+
+<!--		<delete dir="${codir}/releng.control/workspace" failonerror="false" /> -->
+		<!-- issue, we should probably not always use 'head' ... perhaps eliminate altogether 
+		     and just check out when ever server is (re) started? -->
+<!--		<cvs quiet="true" cvsRoot="${mapCvsRoot}" package="${releng.control}" dest="${codir}" tag="HEAD" />
+-->
+	</target>
+
+
+</project>
+
diff --git a/releng.control/committer.properties b/releng.control/committer.properties
new file mode 100644
index 0000000..317c013
--- /dev/null
+++ b/releng.control/committer.properties
@@ -0,0 +1,21 @@
+#  This is just a default value, you should set the build.home when you trigger builds
+#  which will overwrite this value
+build.home=/home/shared/webtools/
+
+mapVersionTag=HEAD
+buildType=I
+build.distribution=wtp
+
+cvsUser=david_williams
+# ext typically requires CVS_RSH=ssh 
+cvsProtocol=ext
+
+build.trial=false
+build.drivers=downloads
+
+baseos=linux
+basews=gtk
+basearch=x86
+
+build.clean=false
+build.localpublish.dir=${build.home}/publish
diff --git a/releng.control/committer.xml b/releng.control/committer.xml
new file mode 100644
index 0000000..53c243b
--- /dev/null
+++ b/releng.control/committer.xml
@@ -0,0 +1,88 @@
+<project default="Build" basedir=".">
+
+    <property file="committer.properties" />
+
+    <target name="Build">
+
+        <!-- set main builder file name, based on distribution and build type -->
+        <property name="wtpBuilder"
+                  value="${build.home}/build-node/checkout/${build.distribution}-${buildType}/releng.wtpbuilder/build.xml" />
+
+
+
+        <!-- clean previous build -->
+        <antcall target="clean" />
+
+
+
+
+        <!-- check out fresh set of appropriate files  -->
+        <!-- this is to make sure maps and builders are correct, but also to 
+			 make sure the cruisecontrol triggered "diffs" are accurate next 
+			 time around -->
+        <ant antfile="checkout.xml"
+             target="all"
+             dir="."
+             inheritall="false">
+            <property name="codir"
+                      value="${build.home}/build-node/checkout/${build.distribution}-${buildType}" />
+            <property name="buildType"
+                      value="${buildType}" />
+            <property name="mapVersionTag"
+                      value="${mapVersionTag}" />
+        </ant>
+
+
+
+        <!-- build and create preliminary download site files -->
+        <ant antfile="${wtpBuilder}" target="build" />
+        <ant antfile="${wtpBuilder}" target="site" />
+        <!-- upload what we have so far -->
+        <ant antfile="${wtpBuilder}" target="upload">
+            <property name="wtpbuilder.upload.properties.file"
+                      value="${basedir}/upload.properties" />
+        </ant>
+
+
+        <!-- test and create test summary files -->
+        <ant antfile="${wtpBuilder}" target="test" />
+        <ant antfile="${wtpBuilder}" target="site" />
+        <!-- upload what we have so far -->
+        <ant antfile="${wtpBuilder}" target="upload">
+            <property name="wtpbuilder.upload.properties.file"
+                      value="${basedir}/upload.properties" />
+        </ant>
+
+
+        <!-- create what-is-fixed summary files -->
+        <ant antfile="${wtpBuilder}" target="whatisfixed">
+            <property name="wtpbuilder.whatisfixed.properties.file"
+                      value="${basedir}/whatisfixed.properties" />
+        </ant>
+        <!-- upload final set of results -->
+        <ant antfile="${wtpBuilder}" target="upload">
+            <property name="wtpbuilder.upload.properties.file"
+                      value="${basedir}/upload.properties" />
+        </ant>
+
+
+    </target>
+
+
+
+    <target name="clean" depends="check.clean" if="doClean">
+        <delete dir="${build.home}/build-${build.distribution}-${buildType}"
+                failonerror="false" />
+        <delete dir="${build.home}/test-${build.distribution}-${buildType}"
+                failonerror="false" />
+    </target>
+
+
+    <target name="check.clean">
+        <condition property="doClean">
+            <equals arg1="${build.clean}" arg2="true" />
+        </condition>
+    </target>
+
+
+</project>
diff --git a/releng.control/config.xml b/releng.control/config.xml
new file mode 100644
index 0000000..3d19469
--- /dev/null
+++ b/releng.control/config.xml
@@ -0,0 +1,355 @@
+<cruisecontrol>
+
+	<property file="cruise.properties" />
+
+	
+	<property name="logDir" value="/home/shared/webtools/cruise-project-logs/${project.name}"/>
+
+
+	<property
+		name="time.oneHour"
+		value="3600" />
+
+	<property
+		name="time.OnRequestOnly"
+		value="31536000" />
+
+	<plugin name="log" dir="${logDir}" />
+	<plugin name="currentbuildstatuslistener" file="${logDir}/buildstatus.html" />
+
+	<project
+		name="wtp-M"
+		buildafterfailed="true">
+		<dateformat format="yyyyMMdd-HHmm z" />
+		<listeners>
+         		<currentbuildstatuslistener/>
+		</listeners>
+		<log dir="${logDir}"/>
+		<!-- Defines where cruise looks for changes, to decide whether to run the build -->
+		<modificationset quietperiod="120">
+			<cvs
+				tag="R1_0_maintenance"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-M/releng" />
+		<cvs
+				tag="R1_0_maintenance"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-M/releng.wtpbuilder" />
+		</modificationset>
+
+		<schedule interval="${time.OnRequestOnly}">
+			<ant
+				antscript="${build.home}/releng.control/ant.sh"
+				buildfile="committer.xml"
+				target="Build"
+				useQuiet="false" useLogger="false"  savelogdir="${logDir}" 
+				usedebug="false"
+				antworkingdir="${build.home}/releng.control">
+
+				<!-- this "M" label should be changed to "R" once maintenance release
+					is warming up for its "R"elease.
+				-->
+				<property
+					name="buildType"
+					value="R" />
+				<!-- should comment out pre-spec'd coded buildId, once R-1.0.2 is declared -->
+
+				<property
+					name="buildId"
+					value="1.0.2" />
+
+
+
+				<property
+					name="mapVersionTag"
+					value="R1_0_maintenance" />
+				<property
+					name="build.component"
+					value="wtp" />
+				<property
+					name="build.home"
+					value="${build.home}" />
+
+			</ant>
+		</schedule>
+
+
+
+
+		<!-- Publishers are run *after* a build completes -->
+		<publishers>
+			<email
+				mailhost="localhost"
+				returnaddress="${build.buildmaster.email}"
+				skipusers="true"
+				subjectprefix="[wtp-R1.0-M-build]"
+				buildresultsurl="${build.result.url}/cruisecontrol/buildresults/wtp-M">
+
+				<always address="${build.toaddress}" />
+			</email>
+		</publishers>
+	</project>
+
+
+	<project
+		name="wtp-I"
+		buildafterfailed="true">
+		<dateformat format="yyyyMMdd-HHmm z" />
+		<listeners>
+         		<currentbuildstatuslistener/>
+		</listeners>
+		<log dir="${logDir}"/>
+
+		<!-- Defines where cruise looks for changes, to decide whether to run the build -->
+		<modificationset quietperiod="120">
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-I/releng" />
+
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-I/releng.wtpbuilder" />
+		</modificationset>
+
+		<schedule interval="${time.OnRequestOnly}">
+			<ant
+				antscript="${build.home}/releng.control/ant.sh"
+				buildfile="committer.xml"
+				target="Build"
+				useQuiet="false" useLogger="false"  savelogdir="${logDir}" 
+				usedebug="false"
+				antworkingdir="${build.home}/releng.control">
+				<property
+					name="buildType"
+					value="I" />
+				<property
+					name="mapVersionTag"
+					value="HEAD" />
+				<property
+					name="build.distribution"
+					value="wtp" />
+				<property
+					name="build.home"
+					value="${build.home}" />
+
+			</ant>
+		</schedule>
+
+		<!-- Publishers are run *after* a build completes -->
+		<publishers>
+			<email
+				mailhost="localhost"
+				returnaddress="${build.buildmaster.email}"
+				skipusers="true"
+				subjectprefix="[wtp-R1.5-I-build]"
+				buildresultsurl="${build.result.url}/cruisecontrol/buildresults/wtp-I">
+
+				<always address="${build.toaddress}" />
+			</email>
+		</publishers>
+	</project>
+
+
+	<project
+		name="wtp-N"
+		buildafterfailed="true">
+
+		<dateformat format="yyyyMMdd-HHmm z" />
+		<listeners>
+         		<currentbuildstatuslistener/>
+		</listeners>
+		<log dir="${logDir}"/>
+
+		<!-- Defines where cruise looks for changes, to decide whether to run the build -->
+		<modificationset quietperiod="120">
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-N/jst" />
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-N/wst" />
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-N/releng" />
+		
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-N/releng.wtpbuilder" />
+		</modificationset>
+
+		<schedule interval="${time.OnRequestOnly}">
+			<ant
+				antscript="${build.home}/releng.control/ant.sh"
+				buildfile="committer.xml"
+				target="Build"
+				useQuiet="false" useLogger="false"  savelogdir="${logDir}" 
+				usedebug="false"
+				antworkingdir="${build.home}/releng.control">
+				<property
+					name="buildType"
+					value="N" />
+				<property
+					name="mapVersionTag"
+					value="HEAD" />
+				<property
+					name="build.distribution"
+					value="wtp" />
+				<property
+					name="build.trial"
+					value="true" />
+				<property
+					name="build.home"
+					value="${build.home}" />
+
+			</ant>
+		</schedule>
+
+
+
+
+		<!-- Publishers are run *after* a build completes -->
+		<publishers>
+			<email
+				mailhost="localhost"
+				returnaddress="${build.buildmaster.email}"
+				skipusers="true"
+				subjectprefix="[wtp-R1.5-N-build]"
+				buildresultsurl="${build.result.url}/cruisecontrol/buildresults/wtp-N">
+				<!--
+					
+					<always address="${build.toaddress}" />
+				-->
+			</email>
+		</publishers>
+	</project>
+
+
+	<project
+		name="wtp-S"
+		buildafterfailed="true">
+
+		<dateformat format="yyyyMMdd-HHmm z" />
+		<listeners>
+         		<currentbuildstatuslistener/>
+		</listeners>
+		<log dir="${logDir}"/>
+
+		<!-- Defines where cruise looks for changes, to decide whether to run the build -->
+		<modificationset quietperiod="120">
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-S/releng" />
+
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-S/releng.wtpbuilder" />
+		</modificationset>
+
+		<schedule interval="${time.oneHour}">
+			<ant
+				antscript="${build.home}/releng.control/ant.sh"
+				buildfile="committer.xml"
+				target="Build"
+				useQuiet="false" useLogger="false"  savelogdir="${logDir}" 
+				usedebug="false"
+				antworkingdir="${build.home}/releng.control">
+				<property
+					name="buildType"
+					value="S" />
+				<property
+					name="buildId"
+					value="1.5RC3" />
+				<property
+					name="mapVersionTag"
+					value="HEAD" />
+				<property
+					name="build.distribution"
+					value="wtp" />
+				<property
+					name="build.home"
+					value="${build.home}" />
+
+			</ant>
+		</schedule>
+
+
+		<!-- Publishers are run *after* a build completes -->
+		<publishers>
+			<email
+				mailhost="localhost"
+				returnaddress="${build.buildmaster.email}"
+				skipusers="true"
+				subjectprefix="[wtp-R1.5-S-build]"
+				buildresultsurl="${build.result.url}/cruisecontrol/buildresults/wtp-S">
+
+				<always address="${build.toaddress}" />
+			</email>
+		</publishers>
+	</project>
+
+	<project
+		name="wtp-R"
+		buildafterfailed="true">
+
+		<dateformat format="yyyyMMdd-HHmm z" />
+		<listeners>
+         		<currentbuildstatuslistener/>
+		</listeners>
+		<log dir="${logDir}"/>
+
+		<!-- Defines where cruise looks for changes, to decide whether to run the build -->
+		<modificationset quietperiod="120">
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-R/releng" />
+			<cvs
+				tag="HEAD"
+				localworkingcopy="${build.home}/build-node/checkout/wtp-R/releng.wtpbuilder" />
+		</modificationset>
+
+		<schedule interval="${time.OnRequestOnly}">
+			<ant
+				antscript="${build.home}/releng.control/ant.sh"
+				buildfile="committer.xml"
+				target="Build"
+				useQuiet="false" useLogger="false"  savelogdir="${logDir}" 
+				usedebug="false"
+				antworkingdir="${build.home}/releng.control">
+				<property
+					name="buildType"
+					value="R" />
+				<property
+					name="buildId"
+					value="1.5" />
+				<property
+					name="mapVersionTag"
+					value="HEAD" />
+				<property
+					name="build.distribution"
+					value="wtp" />
+				<property
+					name="build.home"
+					value="${build.home}" />
+
+			</ant>
+		</schedule>
+
+
+		<!-- Publishers are run *after* a build completes -->
+		<publishers>
+			<email
+				mailhost="localhost"
+				returnaddress="${build.buildmaster.email}"
+				skipusers="true"
+				subjectprefix="[wtp-R1.5-R-build]"
+				buildresultsurl="${build.result.url}/cruisecontrol/buildresults/wtp-R">
+				<!-- too many spurious failures to make this general note helpful
+					<failure address="wtp-dev@eclipse.org" />
+				-->
+				<always address="${build.toaddress}" />
+			</email>
+		</publishers>
+	</project>
+
+
+
+</cruisecontrol>
+
diff --git a/releng.control/cruise-dw.properties b/releng.control/cruise-dw.properties
new file mode 100644
index 0000000..750d5e9
--- /dev/null
+++ b/releng.control/cruise-dw.properties
@@ -0,0 +1,11 @@
+# values for the ppc eclipse.org server
+# should be renamed cruise.properties when deployed
+
+build.home=/home/shared/webtools
+build.result.url=http://localhost:7777
+build.buildmaster.email=david_williams@mindspring.com
+#build.toaddress=wtp-releng@eclipse.org
+build.toaddress=david_williams@mindspring.com
+
+
+
diff --git a/releng.control/cruise-eclipse.properties b/releng.control/cruise-eclipse.properties
new file mode 100644
index 0000000..a0e2299
--- /dev/null
+++ b/releng.control/cruise-eclipse.properties
@@ -0,0 +1,6 @@
+# values for the ppc eclipse.org server
+# should be renamed cruise.properties when deployed
+
+build.home=/shared/webtools
+build.result.url=http://build.eclipse.org:7777
+build.buildmaster.email=wtpBuild@eclipse.org
\ No newline at end of file
diff --git a/releng.control/cruise-lomboz.properties b/releng.control/cruise-lomboz.properties
new file mode 100644
index 0000000..6f0d570
--- /dev/null
+++ b/releng.control/cruise-lomboz.properties
@@ -0,0 +1,6 @@
+# values for the x86 lomboz server
+# should be renamed cruise.properties when deployed
+
+build.home=/home/build-home
+build.result.url=http://buildserver.lomboz.org:8080
+build.buildmaster.email=buildmaster@lomboz.org
\ No newline at end of file
diff --git a/releng.control/cruise.properties b/releng.control/cruise.properties
new file mode 100644
index 0000000..a0e2299
--- /dev/null
+++ b/releng.control/cruise.properties
@@ -0,0 +1,6 @@
+# values for the ppc eclipse.org server
+# should be renamed cruise.properties when deployed
+
+build.home=/shared/webtools
+build.result.url=http://build.eclipse.org:7777
+build.buildmaster.email=wtpBuild@eclipse.org
\ No newline at end of file
diff --git a/releng.control/drivers.xml b/releng.control/drivers.xml
new file mode 100644
index 0000000..95a9d01
--- /dev/null
+++ b/releng.control/drivers.xml
@@ -0,0 +1,40 @@
+<project default="all">
+	<property file="trigger.properties" />
+	<property file="../maps/build.cfg" />
+
+	<target name="all">
+		<antcall target="getDrivers" />
+		<copy todir="${build.home}/${localDrivers}" overwrite="true">
+			<fileset dir="${build.home}/${build.drivers}" >
+			    <include name="**/GEF*.*"/>
+			    <include name="**/emf*.*"/>
+			    <include name="**/JEM*.*"/>
+			</fileset>
+		</copy>
+		
+		<echo message="RSYNC TO: ${ftpUser}@${ftpServer}:${remoteDrivers}" />
+		<exec executable="rsync">
+			<arg line="-e ssh -Cavz ${build.home}/${localDrivers} ${ftpUser}@${ftpServer}:${remoteDrivers}" />
+		</exec>
+
+	</target>
+
+	<target name="getDrivers">
+		<available file="${build.home}/${build.drivers}/${emfFile}" property="emf.exists" />
+		<available file="${build.home}/${build.drivers}/${gefFile}" property="gef.exists" />
+		<available file="${build.home}/${build.drivers}/${jemFile}" property="jem.exists" />
+		<antcall target="getEmf" />
+		<antcall target="getGef" />
+		<antcall target="getJem" />
+	</target>
+	<target name="getEmf" unless="emf.exists">
+		<get src="${emfURL.primary}" dest="${build.home}/${build.drivers}/${emfFile}" />
+	</target>
+	<target name="getGef" unless="gef.exists">
+		<get src="${gefURL.primary}" dest="${build.home}/${build.drivers}/${gefFile}" />
+	</target>
+	<target name="getJem" unless="jem.exists">
+		<get src="${jemURL.primary}" dest="${build.home}/${build.drivers}/${jemFile}" />
+	</target>
+	
+</project>
diff --git a/releng.control/getFromCVS-relengControl.sh b/releng.control/getFromCVS-relengControl.sh
new file mode 100644
index 0000000..14c7af5
--- /dev/null
+++ b/releng.control/getFromCVS-relengControl.sh
@@ -0,0 +1,11 @@
+
+# This bat file is to help get builds started "fresh". 
+# The -f means do not use ~/.cvsrc file -- this is just to ensure no "hidden options"
+
+# export is used, instead of checkout, just to avoid the CVS directories and since this code
+# for a local build, there should never be a need to check it back in to CVS.
+# 
+
+cvs -f -d :pserver:anonymous@dev.eclipse.org:/cvsroot/webtools  export  -r HEAD releng.control
+
+
diff --git a/releng.control/initdirs.sh b/releng.control/initdirs.sh
new file mode 100644
index 0000000..26e9425
--- /dev/null
+++ b/releng.control/initdirs.sh
@@ -0,0 +1,13 @@
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-M/releng
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-R/releng
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-S/releng
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-I/releng
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-N/releng
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-N/wst
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-N/jst
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-M/releng.wtpbuilder
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-R/releng.wtpbuilder
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-S/releng.wtpbuilder
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-I/releng.wtpbuilder
+mkdir -p /home/shared/webtools/build-node/checkout/wtp-N/releng.wtpbuilder
+
diff --git a/releng.control/justtest.xml b/releng.control/justtest.xml
new file mode 100644
index 0000000..9167c90
--- /dev/null
+++ b/releng.control/justtest.xml
@@ -0,0 +1,39 @@
+<project default="Build">
+
+	<property file="committer.properties" />
+
+	<target name="Build">
+		
+		<property name="wtpBuilder" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}/releng.wtpbuilder/build.xml"/>
+
+		
+		<ant antfile="checkout.xml" target="all" dir="." inheritall="false">
+			<property name="codir" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}" />
+			<property name="buildType" value="${buildType}" />
+			<property name="mapVersionTag" value="${mapVersionTag}" />
+		</ant>
+
+                <ant antfile="${wtpBuilder}" target="site" />
+                <ant antfile="${wtpBuilder}" target="upload" />
+                <ant antfile="${wtpBuilder}" target="test" />
+                <ant antfile="${wtpBuilder}" target="site" />
+                <ant antfile="${wtpBuilder}" target="upload" />
+        </target>
+
+        <target name="JustBuild">
+
+                <property name="wtpBuilder" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}/releng.wtpbuilder/build.xml"/>
+
+
+                <ant antfile="${wtpBuilder}" target="build" />
+        </target>
+
+
+
+	<target name="clean" if="build.clean">
+		<delete dir="${build.home}/build-${build.distribution}-${buildType}" failonerror="false" />
+		<delete dir="${build.home}/test-${build.distribution}-${buildType}" failonerror="false" />
+	</target>
+
+
+</project>
diff --git a/releng.control/testb.xml b/releng.control/testb.xml
new file mode 100644
index 0000000..6f10b61
--- /dev/null
+++ b/releng.control/testb.xml
@@ -0,0 +1,39 @@
+<project default="Build">
+
+	<property file="committer.properties" />
+
+	<target name="Build">
+		
+		<property name="wtpBuilder" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}/releng.wtpbuilder/build.xml"/>
+
+		
+		<ant antfile="checkout.xml" target="all" dir="." inheritall="false">
+			<property name="codir" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}" />
+			<property name="buildType" value="${buildType}" />
+			<property name="mapVersionTag" value="${mapVersionTag}" />
+		</ant>
+
+                <ant antfile="${wtpBuilder}" target="build" />
+                <ant antfile="${wtpBuilder}" target="upload" />
+                <ant antfile="${wtpBuilder}" target="test" />
+                <ant antfile="${wtpBuilder}" target="site" />
+                <ant antfile="${wtpBuilder}" target="upload" />
+        </target>
+
+        <target name="JustBuild">
+
+                <property name="wtpBuilder" value="${build.home}/build-node/checkout/${build.distribution}-${buildType}/releng.wtpbuilder/build.xml"/>
+
+
+                <ant antfile="${wtpBuilder}" target="build" />
+        </target>
+
+
+
+	<target name="clean" if="build.clean">
+		<delete dir="${build.home}/build-${build.distribution}-${buildType}" failonerror="false" />
+		<delete dir="${build.home}/test-${build.distribution}-${buildType}" failonerror="false" />
+	</target>
+
+
+</project>
diff --git a/releng.control/trigger.properties b/releng.control/trigger.properties
new file mode 100644
index 0000000..c95944f
--- /dev/null
+++ b/releng.control/trigger.properties
@@ -0,0 +1,21 @@
+#  This is just a default value, you should set the build.home when you trigger builds
+#  which will overwrite this value
+
+mapVersionTag=HEAD
+buildType=I
+build.component=wtp
+
+build.trial=false
+build.drivers=downloads
+
+baseos=linux
+basews=gtk
+basearch=x86
+
+
+ftpUser=david_williams
+ftpPassword=xxxxxxx
+ftpServer=download1.eclipse.org
+ftpRemoteDirectory=/home/data/users/david_williams/downloads/webtools/downloads/drops
+ftpDocsRemoteDirectory=/home/data/users/david_williams/downloads/webtools/docs/drops
+remoteDrivers=/home/data/users/david_williams/downloads/webtools/downloads
diff --git a/releng.control/trigger.xml b/releng.control/trigger.xml
new file mode 100644
index 0000000..bbbb61d
--- /dev/null
+++ b/releng.control/trigger.xml
@@ -0,0 +1,101 @@
+<project default="Build">
+
+	<property file="trigger.properties" />
+
+	<target name="Build">
+		<property name="buildTarget" value="all" />
+		<property name="removeBuildDir" value="true" />
+		<antcall target="startBuild">
+		</antcall>
+	</target>
+
+	<target name="Repeat">
+		<property name="buildTarget" value="all" />
+		<antcall target="startBuild">
+		</antcall>
+	</target>
+
+	<target name="Test">
+		<delete dir="${build.home}/test-${build.component}-${buildType}" failonerror="false" />
+		<property name="buildTarget" value="test" />
+		<antcall target="startBuild">
+		</antcall>
+	</target>
+
+	<target name="Publish">
+		<property name="buildTarget" value="justPublish" />
+		<antcall target="startBuild">
+		</antcall>
+	</target>
+
+	<target name="Push">
+		<property name="buildTarget" value="justPush" />
+		<antcall target="startBuild">
+		</antcall>
+	</target>
+
+	<target name="startBuild" depends="clean">
+		<antcall target="clean" />
+		<echo message="Component is: ${build.component}" />
+		<echo message="Build type is: ${buildType}" />
+		<echo message="Branch : ${mapVersionTag}" />
+		<echo message="Trial : ${build.trial}" />
+		<echo message="ftpRemoteDirectory : ${ftpRemoteDirectory}" />
+
+		<ant antfile="checkout.xml" target="all" dir="." inheritall="false">
+			<property name="codir" value="${build.home}/build-node/checkout/${build.component}-${buildType}" />
+			<property name="buildType" value="${buildType}" />
+			<property name="mapVersionTag" value="${mapVersionTag}" />
+		</ant>
+
+		<!-- TODO: this appears obsolete? And should be removed? -->
+		<ant antfile="cruise.xml" target="${buildTarget}" dir="${build.home}/build-node/checkout/${build.component}-${buildType}/releng.builder/scripts" inheritall="false">
+			<!-- PUBLISH TO eclipse.org  -->
+
+			<property name="baseos" value="${baseos}" />
+			<property name="basews" value="${basews}" />
+			<property name="basearch" value="${basearch}" />
+			<property name="build.home" value="${build.home}" />
+			<property name="build.trial" value="${build.trial}" />
+			<property name="build.component" value="${build.component}" />
+
+			<property name="mapVersionTag" value="${mapVersionTag}" />
+			<property name="buildType" value="${buildType}" />
+			<property name="ftpUser" value="${ftpUser}" />
+			<property name="ftpPassword" value="${ftpPassword}" />
+			<property name="ftpServer" value="${ftpServer}" />
+			<property name="ftpRemoteDirectory" value="${ftpRemoteDirectory}" />
+
+		</ant>
+	</target>
+
+
+
+	<target name="Driver">
+		<ant antfile="checkout.xml" target="all" dir="." inheritall="false">
+			<property name="build.home" value="${build.home}" />
+			<property name="codir" value="${build.home}/build-node/checkout/wtp-driver" />
+			<property name="buildType" value="I" />
+			<property name="mapVersionTag" value="${mapVersionTag}" />
+		</ant>
+		<ant antfile="drivers.xml" target="all" dir="${build.home}/build-node/checkout/wtp-driver/releng.builder/tools/cruise" inheritall="false">
+		</ant>
+	</target>
+
+	<target name="docs">
+		<property name="build.component" value="docs" />
+		<property name="buildTarget" value="buildDoc" />
+		<antcall target="Build">
+			<param name="ftpRemoteDirectory" value="${ftpDocsRemoteDirectory}"/>
+		</antcall>
+	</target>
+
+
+	<target name="clean" if="removeBuildDir">
+		<delete dir="${build.home}/build-${build.component}-${buildType}" failonerror="false" />
+		<delete dir="${build.home}/test-${build.component}-${buildType}" failonerror="false" />
+		<delete dir="${build.home}/build-node/checkout/${build.component}-${buildType}/build/test-results" failonerror="false" />
+		<delete dir="${build.home}/workspace" failonerror="false" />
+	</target>
+
+</project>
diff --git a/releng.control/upload.properties b/releng.control/upload.properties
new file mode 100644
index 0000000..eb05081
--- /dev/null
+++ b/releng.control/upload.properties
@@ -0,0 +1,15 @@
+# These are some properties needed to upload builds from the build machine to the download machine. 
+# The actual task that does that is in wtp.upload in releng.wtpBuidler. 
+# Its better to set here, "outside" of wtpBuilder, since it can be machine and user specific
+# 
+uploadUser=david_williams
+uploadPassword="This is not really used since ssh login is assumed (required)"
+uploadServer=download1.eclipse.org
+uploadRemoteDirectory=/home/data/users/david_williams/downloads/webtools/committers/drops
+
+# rsyncRootPrefix should be empty for Linux machines.
+# But, Windows using cygwin will needs something like /cygdrive/G/
+# for what ever drive or directory is parent of build.home
+rsyncRootPrefix=
+
+build.upload=false
diff --git a/releng.control/whatisfixed.properties b/releng.control/whatisfixed.properties
new file mode 100644
index 0000000..9025199
--- /dev/null
+++ b/releng.control/whatisfixed.properties
@@ -0,0 +1,31 @@
+# FROM DATE AND BUILD
+# This must be set as the reference point.
+#
+whatisfixed.since.date=2006-02-17 12:28:00 GMT
+whatisfixed.fromBuildId=R-1.0.1-200602171228
+
+
+# TO DATE AND BUILD
+# This is calculated at the time of the build. Is not set 
+#
+#whatisfixed.to.date=
+#whatisfixed.toBuildId=
+
+# This is not used due to wierd behavior by cvs rlog 
+#whatisfixed.to.branch
+
+# What is fixed list will only include bugs targeted to these
+#(seperate them by commas, blanks are significant in a name)
+# - means ignore target
+whatisfixed.targetMilestones=1.5 M4,1.5 M5,1.5 M6,1.0.1 M101,1.0.2 M102
+
+# The list will include bugs with these statuses
+# - means ignore target (valid status - RESOLVED CLOSED NEW..)
+whatisfixed.status=-
+
+# These are the components under the cvs root to
+# search for changes (seperate them by commas, blanks are significant in a name!)
+whatisfixed.modules=wst,jst
+
+
+build.whatIsFixed=false