--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/FBF_PrepareEnvironment/config.xml Tue Feb 02 20:27:18 2010 +0000
@@ -0,0 +1,126 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<project>
+ <actions/>
+ <description><img align="center" src="http://developer.symbian.org/img/skin1209/header_bg.gif" />
+<h3>Description</h3>
+<p>
+This project prepares a build environment that can be used by the <b>FBF_BuildPackage</b> job for building packages (using the <a href="http://developer.symbian.org/wiki/index.php/Build_machinery#Helium_.2F_Foundation_Build_Framework"/>Foundation Build Framework (Helium)</a>). It has been tested against the Symbian^2 and Symbian^3 PDK.
+</p> 
+
+<h3>Prerequisites</h3>
+<ol>
+<li>Install the <a href="http://developer.symbian.org/wiki/index.php/Product_Development_Toolkit_Quick_Start"/>PDT</a> (build tools) and <a href="http://downloads.sourceforge.net/sevenzip/7z465.exe"/>7-zip</a></li>
+<li>Download of <a href="
+http://developer.symbian.org/wiki/index.php/How_to_Build_a_Package#Getting_the_Baseline"/>required (and recommended) zips</a> from the 
+<a href="http://developer.symbian.org/main/tools_and_kits/downloads/view.php?id=1/">Symbian^2</a>, <a href="http://developer.symbian.org/main/tools_and_kits/downloads/view.php?id=5/">Symbian^3</a> (or <a href="http://developer.symbian.org/main/tools_and_kits/">other</a>) kits page. </li>
+<li>If the package you are building is dependent on other source zips, then the corresponding source zip should also be downloaded. For example, if you want to build <i>os\emulatorbsp</i> then you'll also need to have the <i>os\kernel</i> source too, so you'd copy <i>src_oss_os.zip</i> into RELEASE_ZIP_LOCATION</li>
+</ol>
+
+
+<h3>Operation</h3>
+<p>The project:</p>
+<ol>
+<li> Creates a unique folder in the specified physical BUILD_DRIVE, then subst it to the SUBST_DRIVE.</li>
+<li>Unpack zips provided in RELEASE_ZIP_LOCATION (including the binaries, tools, bill of materials (BOM), additional binaries (stuff that cant be re-built) and any available source into the root of SUBST_DRIVE drive. </li>
+<li>Copies the Foundation Build Framework (FBF) 'maintools' folder into the subst'd drive for later re-use.</li>
+</ol>
+</description>
+ <keepDependencies>false</keepDependencies>
+ <properties>
+ <hudson.model.ParametersDefinitionProperty>
+ <parameterDefinitions>
+ <hudson.model.StringParameterDefinition>
+ <name>BUILD_DRIVE</name>
+ <description>Physical Build Drive</description>
+ <defaultValue>C:</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>SUBST_DRIVE</name>
+ <description>SUBST drive to be used for the build area</description>
+ <defaultValue>M:</defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.StringParameterDefinition>
+ <name>RELEASE_ZIP_LOCATION</name>
+ <description>Location where you've stored the <a href="
+http://developer.symbian.org/wiki/index.php/How_to_Build_a_Package#Getting_the_Baseline"/>release zipfiles</a> (bin*.zip, build_BOM.zip, tools_epoc.zip)
+
+e.g. C:\downloads</description>
+ <defaultValue></defaultValue>
+ </hudson.model.StringParameterDefinition>
+ <hudson.model.ChoiceParameterDefinition>
+ <name>FBF_REV</name>
+ <description>The tagged version of the FBF (Helium) to use to build the Platform.
+<li>tip - is the latest revision from the web
+<br><br>
+<i>Its recommended to use the tip revision, however allows a specific revision if needed</i>
+</description>
+ <choices class="java.util.Arrays$ArrayList">
+ <a class="string-array">
+ <string>tip</string>
+ <string>PDK_2.0.2</string>
+ <string>PDK_2.0.1</string>
+ <string>PDK_2.0.0</string>
+ <string>PDK_3.0.e</string>
+ <string>PDK_3.0.d</string>
+ <string>PDK_3.0.c</string>
+ <string>PDK_3.0.b</string>
+ <string>PDK_3.0.a</string>
+ </a>
+ </choices>
+ </hudson.model.ChoiceParameterDefinition>
+ </parameterDefinitions>
+ </hudson.model.ParametersDefinitionProperty>
+ </properties>
+ <scm class="hudson.scm.NullSCM"/>
+ <canRoam>true</canRoam>
+ <disabled>false</disabled>
+ <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
+ <triggers class="vector"/>
+ <concurrentBuild>true</concurrentBuild>
+ <builders>
+ <hudson.tasks.BatchFile>
+ <command>%BUILD_DRIVE%
+cd\
+mkdir %TMP%\sf-bootstrap.%BUILD_NUMBER%
+cd /d %TMP%\sf-bootstrap.%BUILD_NUMBER%
+hg clone http://developer.symbian.org/oss/FCL/interim/fbf/bootstrap
+cd bootstrap
+hlm -f bootstrap.xml -Dsf.project.repo=https://developer.symbian.org/oss/FCL/interim/fbf/projects/packages/ -Dsf.config.repo=http://developer.symbian.org/oss/FCL/interim/fbf/configs/default -Dsf.target.dir=%TMP%\maintools_%BUILD_NUMBER% -Dsf.config.rev=%FBF_REV% -Dsf.project.rev=%FBF_REV%</command>
+ </hudson.tasks.BatchFile>
+ <hudson.tasks.BatchFile>
+ <command>%BUILD_DRIVE%
+cd\
+cd /d %TMP%\maintools_%BUILD_NUMBER%\sf-config
+hlm sf-prep -Dbuild.drive=%SUBST_DRIVE% -Dsf.spec.job.number=%BUILD_NUMBER% -Dsf.spec.baseline.location=%RELEASE_ZIP_LOCATION% -Dsf.spec.job.rootdir=%BUILD_DRIVE% -Dsf.suppress.buildenv.check=true -Dsf.suppress.drive.space.check=true -Dsf.project.type=package -Dsf.subproject.path=build -Dsf.spec.publish.enable=false</command>
+ </hudson.tasks.BatchFile>
+ <hudson.tasks.BatchFile>
+ <command>%SUBST_DRIVE%
+cd\
+mkdir tmp
+copy %RELEASE_ZIP_LOCATION%\build_BOM.zip %SUBST_DRIVE%\tmp
+copy %RELEASE_ZIP_LOCATION%\*bin*.zip %SUBST_DRIVE%\tmp
+copy %RELEASE_ZIP_LOCATION%\src_*.zip %SUBST_DRIVE%\tmp
+copy %RELEASE_ZIP_LOCATION%\tools_*.zip %SUBST_DRIVE%\tmp
+%SUBST_DRIVE%
+cd %SUBST_DRIVE%\tmp
+@ECHO ** Zip files available to unpack -
+dir
+@ECHO OFF
+7z x *.zip -o.. -y
+cd..
+7z x *.zip -y
+del *.zip
+exit 0</command>
+ </hudson.tasks.BatchFile>
+ <hudson.tasks.BatchFile>
+ <command>@ECHO Copying FBF tools to build drive, %SUBST_DRIVE%
+@ECHO OFF
+cd /d %TMP%
+xcopy /s /q maintools_%BUILD_NUMBER% %SUBST_DRIVE%\maintools\
+@ECHO ** Drive %SUBST_DRIVE% has been prepared. To reuse this area later, just re-subst it.</command>
+ </hudson.tasks.BatchFile>
+ </builders>
+ <publishers/>
+ <buildWrappers/>
+ <customWorkspace>D:\</customWorkspace>
+</project>
\ No newline at end of file