|
1 <?xml version='1.0' encoding='UTF-8'?> |
|
2 <project> |
|
3 <actions/> |
|
4 <description><img align="center" src="http://developer.symbian.org/img/skin1209/header_bg.gif" />
 |
|
5 <h3>Description</h3>
 |
|
6 <p>
 |
|
7 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.
 |
|
8 </p> 
 |
|
9 
 |
|
10 <h3>Prerequisites</h3>
 |
|
11 <ol>
 |
|
12 <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>
 |
|
13 <li>Download of <a href="
 |
|
14 http://developer.symbian.org/wiki/index.php/How_to_Build_a_Package#Getting_the_Baseline"/>required (and recommended) zips</a> from the 
 |
|
15 <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>
 |
|
16 <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>
 |
|
17 </ol>
 |
|
18 
 |
|
19 
 |
|
20 <h3>Operation</h3>
 |
|
21 <p>The project:</p>
 |
|
22 <ol>
 |
|
23 <li> Creates a unique folder in the specified physical BUILD_DRIVE, then subst it to the SUBST_DRIVE.</li>
 |
|
24 <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>
 |
|
25 <li>Copies the Foundation Build Framework (FBF) 'maintools' folder into the subst'd drive for later re-use.</li>
 |
|
26 </ol>
 |
|
27 </description> |
|
28 <keepDependencies>false</keepDependencies> |
|
29 <properties> |
|
30 <hudson.model.ParametersDefinitionProperty> |
|
31 <parameterDefinitions> |
|
32 <hudson.model.StringParameterDefinition> |
|
33 <name>BUILD_DRIVE</name> |
|
34 <description>Physical Build Drive</description> |
|
35 <defaultValue>C:</defaultValue> |
|
36 </hudson.model.StringParameterDefinition> |
|
37 <hudson.model.StringParameterDefinition> |
|
38 <name>SUBST_DRIVE</name> |
|
39 <description>SUBST drive to be used for the build area</description> |
|
40 <defaultValue>M:</defaultValue> |
|
41 </hudson.model.StringParameterDefinition> |
|
42 <hudson.model.StringParameterDefinition> |
|
43 <name>RELEASE_ZIP_LOCATION</name> |
|
44 <description>Location where you've stored the <a href=" |
|
45 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) |
|
46 |
|
47 e.g. C:\downloads</description> |
|
48 <defaultValue></defaultValue> |
|
49 </hudson.model.StringParameterDefinition> |
|
50 <hudson.model.ChoiceParameterDefinition> |
|
51 <name>FBF_REV</name> |
|
52 <description>The tagged version of the FBF (Helium) to use to build the Platform. |
|
53 <li>tip - is the latest revision from the web |
|
54 <br><br> |
|
55 <i>Its recommended to use the tip revision, however allows a specific revision if needed</i> |
|
56 </description> |
|
57 <choices class="java.util.Arrays$ArrayList"> |
|
58 <a class="string-array"> |
|
59 <string>tip</string> |
|
60 <string>PDK_2.0.2</string> |
|
61 <string>PDK_2.0.1</string> |
|
62 <string>PDK_2.0.0</string> |
|
63 <string>PDK_3.0.e</string> |
|
64 <string>PDK_3.0.d</string> |
|
65 <string>PDK_3.0.c</string> |
|
66 <string>PDK_3.0.b</string> |
|
67 <string>PDK_3.0.a</string> |
|
68 </a> |
|
69 </choices> |
|
70 </hudson.model.ChoiceParameterDefinition> |
|
71 </parameterDefinitions> |
|
72 </hudson.model.ParametersDefinitionProperty> |
|
73 </properties> |
|
74 <scm class="hudson.scm.NullSCM"/> |
|
75 <canRoam>true</canRoam> |
|
76 <disabled>false</disabled> |
|
77 <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> |
|
78 <triggers class="vector"/> |
|
79 <concurrentBuild>true</concurrentBuild> |
|
80 <builders> |
|
81 <hudson.tasks.BatchFile> |
|
82 <command>%BUILD_DRIVE% |
|
83 cd\ |
|
84 mkdir %TMP%\sf-bootstrap.%BUILD_NUMBER% |
|
85 cd /d %TMP%\sf-bootstrap.%BUILD_NUMBER% |
|
86 hg clone http://developer.symbian.org/oss/FCL/interim/fbf/bootstrap |
|
87 cd bootstrap |
|
88 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> |
|
89 </hudson.tasks.BatchFile> |
|
90 <hudson.tasks.BatchFile> |
|
91 <command>%BUILD_DRIVE% |
|
92 cd\ |
|
93 cd /d %TMP%\maintools_%BUILD_NUMBER%\sf-config |
|
94 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> |
|
95 </hudson.tasks.BatchFile> |
|
96 <hudson.tasks.BatchFile> |
|
97 <command>%SUBST_DRIVE% |
|
98 cd\ |
|
99 mkdir tmp |
|
100 copy %RELEASE_ZIP_LOCATION%\build_BOM.zip %SUBST_DRIVE%\tmp |
|
101 copy %RELEASE_ZIP_LOCATION%\*bin*.zip %SUBST_DRIVE%\tmp |
|
102 copy %RELEASE_ZIP_LOCATION%\src_*.zip %SUBST_DRIVE%\tmp |
|
103 copy %RELEASE_ZIP_LOCATION%\tools_*.zip %SUBST_DRIVE%\tmp |
|
104 %SUBST_DRIVE% |
|
105 cd %SUBST_DRIVE%\tmp |
|
106 @ECHO ** Zip files available to unpack - |
|
107 dir |
|
108 @ECHO OFF |
|
109 7z x *.zip -o.. -y |
|
110 cd.. |
|
111 7z x *.zip -y |
|
112 del *.zip |
|
113 exit 0</command> |
|
114 </hudson.tasks.BatchFile> |
|
115 <hudson.tasks.BatchFile> |
|
116 <command>@ECHO Copying FBF tools to build drive, %SUBST_DRIVE% |
|
117 @ECHO OFF |
|
118 cd /d %TMP% |
|
119 xcopy /s /q maintools_%BUILD_NUMBER% %SUBST_DRIVE%\maintools\ |
|
120 @ECHO ** Drive %SUBST_DRIVE% has been prepared. To reuse this area later, just re-subst it.</command> |
|
121 </hudson.tasks.BatchFile> |
|
122 </builders> |
|
123 <publishers/> |
|
124 <buildWrappers/> |
|
125 <customWorkspace>D:\</customWorkspace> |
|
126 </project> |