# HG changeset patch # User Shabe Razvi # Date 1278427090 -3600 # Node ID 3291c6ed4a3bc9943c240a487025e62ca4629b9b # Parent c4be77d8d002d3fbbb1e090c48b83bbbb47e2bf6 Update PDK_Helium to reflect supported build process as of PDK_3.0.0 diff -r c4be77d8d002 -r 3291c6ed4a3b PDK_Helium/config.xml --- a/PDK_Helium/config.xml Mon May 17 11:32:41 2010 +0100 +++ b/PDK_Helium/config.xml Tue Jul 06 15:38:10 2010 +0100 @@ -2,15 +2,18 @@ <h3>Description</h3> -<li>This project will rebuild the Symbian^3 Platform from source using a Bill Of Materials that can either be downloaded from the <a href="http://developer.symbian.org/main/tools_and_kits/">kits page</a> or from within the job itself. -<li>It encapsulates the steps as defined in the <a href="http://developer.symbian.org/wiki/index.php/How_to_perform_a_platform_build_of_PDK_3.0.b_using_helium"/>manual build process </a>for Helium and is a simple way to start building using the Foundation Build Framework. +<li>This project will rebuild the Symbian^3 Platform from source using a Bill Of Materials that can either be downloaded from the <a href="http://developer.symbian.org/main/tools_and_kits/">kits page</a> or from within the job itself using the <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework"/> Foundation Build Framework (FBF)</a> +<li>It encapsulates the steps as defined in the <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework/How_to_build_the_Platform"/>manual build process </a>for Helium and is a simple way to start building using the <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework"/> Foundation Build Framework (FBF)</a> <br><br> The Foundation Build Framework (FBF) is an Apache ANT-like configuration that can be used with the Helium tool, delivered in the <a href="https://developer.symbian.org/main/tools_and_kits/downloads/view.php?id=4"/>PDT</a>. <h3>Prerequisites</h3> -<li>Installation of mandatory <a href="http://developer.symbian.org/wiki/index.php/How_to_perform_a_platform_build_of_PDK_3.0.b_using_helium#Installing_Build_Tools"/>build tools</a> +<li>Installation of mandatory <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework/How_to_build_the_Platform#Step_1:_Setup_your_Environment"/>build tools</a> <h3>Additional Information</h3> +<li>Foundation Build Framework <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework/Frequently_Asked_Questions"/>FAQ</a> +<li>Foundation Build Framework <a href="http://developer.symbian.org/wiki/index.php/Foundation_Build_Framework/Troubleshooting"/>Troubleshooting guide</a> +<br><br> Source for the FBF can be downloaded from the following Mercurial Repositories - <br> <li>FBF Configuration - <a href="http://developer.symbian.org/oss/MCL/sftools/fbf/configs/default"/>http://developer.symbian.org/oss/MCL/sftools/fbf/configs/default/</a> @@ -19,6 +22,9 @@ false + + false + @@ -45,13 +51,22 @@ KIT_VERSION Version of the BOM to download. e.g. -<li>2.0.2 -<li>3.0.h +<li>3.0.0 <br> <b>Mandatory</b> if downloading the BOM from the web. + HG_USERNAME + Enter your symbian developer web username <i>(required for any downloading of packages from BOM)</i> + + + + HG_PASSWORD + Enter your symbian developer web password <i>(required for downloading of prebuilt binaries, tools and BOM)</i> + + + RELEASE_ZIP_LOCATION Location of <a href="http://developer.symbian.org/main/tools_and_kits/">release zipfiles</a> e.g. <li>build_BOM.zip @@ -63,23 +78,14 @@ - SRC_LOCATION - How to get source for building the Platform - -<li>BOM - download source direct from <a href="https://developer.symbian.org/oss">web</a> as described in downloaded Bill Of Materials -<li>ZIPFILES - unpack source zips such as src_oss_os.zip from specified (RELEASE_ZIP_LOCATION) location on disk. If selecting DOWNLOAD_KIT option, then it will unpack the source zips that have just been downloaded. + SUB_PROJECT + - BOM - ZIPFILES + symbian3/single - - REBUILD_TOOLS - Tick this if you want to rebuild "TOOLS" -<li> Requires comercial VC++ 6.0 installed - false - LOCALISATION Select whether to build more than one set of localised resources @@ -92,28 +98,12 @@ - - HG_USERNAME - Enter your symbian developer web username <i>(required for any downloading of packages from BOM)</i> - - - - HG_PASSWORD - Enter your symbian developer web password <i>(required for any downloading of packages from BOM)</i> -<br> -Note: Please be aware that your password will be displayed in <b>cleartext</b> in the top of the console log - - - - PLATFORM - - - - symbian3 - symbian2 - - - + + USE_PREBUILT_TOOLS + Select this if you want to use the prebuilt tools. Only unselect this if you want to rebuild tools - +<li> Note: Rebuild requires comercial VC++ 6.0 to be installed + true + TARGET Comma separated list of target(s) to build. Building armv5 targets requires RVCT arm compiler installed. @@ -126,14 +116,17 @@ FBF_REV The tagged version of the FBF (Helium) to use to build the Platform. -<li>default - is the latest revision from the web -<li>PDK_3.0.h - for 3.0.h revision etc. +<li>default - for the latest development revision from the web (may be unstable) +<li>PDK_3.0.0 - for 3.0.0 revision +<li>S3_LATESTGOOD - for the latest Symbian^3 stable revision <br><br> -<i>Unless you want a specific revision, its recommended to use the 'default' revision of the FBF</i> - default +<i>Unless you want a specific revision, its recommended to use the 'S3_LATESTGOOD' revision of the FBF, as this will be a stable version</i> + S3_LATESTGOOD + + true @@ -145,7 +138,6 @@ @ECHO OFF IF "%DOWNLOAD_KIT%"=="false" EXIT 0 -IF "%SRC_LOCATION%"=="BOM" SET DO_SRC_DOWNLOAD=--nosrc IF NOT EXIST C:\Symbian\utilities\.hg GOTO CLONE hg pull --update -R C:\Symbian\utilities GOTO DOWNLOADKIT @@ -154,8 +146,11 @@ :DOWNLOADKIT mkdir %RELEASE_ZIP_LOCATION% cd /d %RELEASE_ZIP_LOCATION% +C:\Symbian\utilities\downloadkit\downloadkit.py --nounzip --nowinscw --noarmv5 --progress --nosrc %KIT_VERSION% --username=%HG_USERNAME% --password=%HG_PASSWORD% > %TMP%\downloadkit.out.%BUILD_NUMBER% @ECHO ON -C:\Symbian\utilities\downloadkit\downloadkit.py --nounzip --nowinscw --noarmv5 --progress %DO_SRC_DOWNLOAD% %KIT_VERSION% --username=%HG_USERNAME% --password=%HG_PASSWORD% +type %TMP%\downloadkit.out.%BUILD_NUMBER% +@ECHO OFF +del %TMP%\downloadkit.out.%BUILD_NUMBER% exit 0 @@ -171,71 +166,8 @@ %BUILD_DRIVE% cd\ -set HG_PASSWORD= -set PROJECT=single -set TOOLS_BASELINE_ENABLE=true -set TOOLS_CONFIG=tools_rel.whatlog,tools2_rel.whatlog -IF %REBUILD_TOOLS% == true set TOOLS_BASELINE_ENABLE=false -IF %REBUILD_TOOLS% == false set TOOLS_CONFIG=tools2_rel.whatlog cd %BUILD_DRIVE%\maintools_%JOB_NAME%.%BUILD_NUMBER%\sf-config -hlm sf-prep -Dbuild.drive=%SUBST_DRIVE% -Dsf.spec.job.number=%JOB_NAME%.%BUILD_NUMBER% -Dsf.spec.job.codeline="%SRC_LOCATION%" -Dsf.project.location=%BUILD_DRIVE%\maintools_%JOB_NAME%.%BUILD_NUMBER%\build\config\%PLATFORM%\%PROJECT% -Dsf.spec.splitbuild=false -Dsf.spec.sbs.config="%TARGET%" -Dsf.spec.baseline.enable=%TOOLS_BASELINE_ENABLE% -Dsf.spec.sbs.tools.config="%TOOLS_CONFIG%" -Dsf.spec.job.rootdir=%BUILD_DRIVE% -Dsf.suppress.buildenv.check=true -Dsf.suppress.drive.space.check=true -Dsf.spec.logs.raptorfilter.enable=false -Dsf.spec.publish.enable=false -Dsf.spec.package.bin.enable=false -Dsf.spec.test.sendpkg.enable=false -Dskip.sbs.layer.generation=true -Dsf.spec.bldmefirst.s60.variant=%LOCALISATION% - - - %SUBST_DRIVE% -cd\ -mkdir tmp -copy %RELEASE_ZIP_LOCATION%\build_BOM.zip %SUBST_DRIVE%\tmp - -REM for releases prior to 3.0.i replace binaries_prebuilt.zip with binaries_epoc_additional.zip -copy %RELEASE_ZIP_LOCATION%\binaries_prebuilt.zip %SUBST_DRIVE%\tmp - -rem copy %RELEASE_ZIP_LOCATION%\binaries_bldmefirst.zip %SUBST_DRIVE%\tmp -copy %RELEASE_ZIP_LOCATION%\*_rndonly*.zip %SUBST_DRIVE%\tmp -copy %RELEASE_ZIP_LOCATION%\bin_redist*.zip %SUBST_DRIVE%\tmp -IF %SRC_LOCATION% == BOM goto TOOLSZIP -copy %RELEASE_ZIP_LOCATION%\src_*.zip %SUBST_DRIVE%\tmp -:TOOLSZIP -IF %REBUILD_TOOLS% == true goto UNZIP -copy %RELEASE_ZIP_LOCATION%\binaries_epoc32_stlport.zip %SUBST_DRIVE%\tmp -copy %RELEASE_ZIP_LOCATION%\tools_*.zip %SUBST_DRIVE%\tmp -:UNZIP -%SUBST_DRIVE% -cd %SUBST_DRIVE%\tmp -7z x *.zip -o.. -y -cd.. -7z x *.zip -y -del *.zip -exit 0 - - - %SUBST_DRIVE% -cd \ -hg clone http://developer.symbian.org/oss/MCL/sftools/fbf/utilities/ -IF NOT %SRC_LOCATION% == BOM exit -cd \ -@ECHO OFF -IF NOT "%HG_USERNAME%" == "" GOTO USERNAME_OK -echo "You must enter a UserName and Password when using the BOM option" -exit 1 -:USERNAME_OK -IF NOT "%HG_PASSWORD%" == "" GOTO HG_OK -echo "You must enter a UserName and Password when using the BOM option" -exit 1 -:HG_OK -cd\ -perl \utilities\clone_packages\clone_all_packages.pl -packagelist \build_info\logs\BOM\build-info.xml -username %HG_USERNAME% -password %HG_PASSWORD% -retries=7 - - - %BUILD_DRIVE% -cd\ -set HG_PASSWORD= -set PROJECT=single -set TOOLS_BASELINE_ENABLE=true -set TOOLS_CONFIG=tools_rel.whatlog,tools2_rel.whatlog -IF %REBUILD_TOOLS% == true set TOOLS_BASELINE_ENABLE=false -IF %REBUILD_TOOLS% == false set TOOLS_CONFIG=tools2_rel.whatlog -cd %BUILD_DRIVE%\maintools_%JOB_NAME%.%BUILD_NUMBER%\sf-config -hlm sf-build-noprep -Dbuild.drive=%SUBST_DRIVE% -Dsf.spec.job.number=%JOB_NAME%.%BUILD_NUMBER% -Dsf.spec.job.codeline="%SRC_LOCATION%" -Dsf.project.location=%BUILD_DRIVE%\maintools_%JOB_NAME%.%BUILD_NUMBER%\build\config\%PLATFORM%\%PROJECT% -Dsf.spec.splitbuild=false -Dsf.spec.sbs.config="%TARGET%" -Dsf.spec.baseline.enable=%TOOLS_BASELINE_ENABLE% -Dsf.spec.sbs.tools.config="%TOOLS_CONFIG%" -Dsf.spec.job.rootdir=%BUILD_DRIVE% -Dsf.suppress.buildenv.check=true -Dsf.suppress.drive.space.check=true -Dsf.spec.logs.raptorfilter.enable=false -Dsf.spec.publish.enable=false -Dsf.spec.package.bin.enable=false -Dsf.spec.test.sendpkg.enable=false -Dskip.sbs.layer.generation=true -Dsf.spec.bldmefirst.s60.variant=%LOCALISATION% +hlm sf-build -Dsf.spec.job.drive=%SUBST_DRIVE% -Dsf.spec.job.number=%JOB_NAME%.%BUILD_NUMBER% -Dsf.subproject.path=%SUB_PROJECT% -Dsf.spec.toolsbaseline.enable=%USE_PREBUILT_TOOLS% -Dsf.spec.sbs.config="%TARGET%" -Dsf.spec.sbs.tools.config="tools.whatlog,tools2.whatlog" -Dsf.spec.job.rootdir=%BUILD_DRIVE% -Dsf.suppress.buildenv.check=true -Dsf.suppress.drive.space.check=true -Dsf.spec.bldmefirst.s60.variant=%LOCALISATION% -Dsf.spec.baseline.location="%RELEASE_ZIP_LOCATION%"