Major rework to enable rebuilds of the platform from single sf-build call
- Change the way that sources and system model are selected: now property based
- Split sources.csv to have publicly available http repos only; internal repos are in sources_rnd.csv
- System model output in BOM renamed to system_model.xml rather than canonical_system_definition_{config}.xml to make reuse predictable
- Public property configuration public_override_props.ant.xml now used.
- Fix all exports to run based upon configuration specified (no export configuration makes SBS assume RVCT is being used, which is not available to all)
- sf.production.build MUST be defined and TRUE to enable production build properties, public config is DEFAULT behaviour
<?xml version="1.0"?>
<project name="SF-COMMON-PROPS" >
<property name="sf.drive.space.needed" value="0"/>
<property name="sf.spec.job.name" value="myproduct"/>
<property name="sf.spec.job.codeline" value="MCL"/>
<property name="sf.spec.job.number" value="001"/> <!-- this is always overriden from the commandline -->
<!-- <property name="sf.spec.job.root.drive" value="D:"/> Set this to force the physical drive for the build storage. Leave unset to allow any non-system physical drive to be found-->
<property name="sf.spec.job.root.path" value="fbf_job"/>
<property name="sf.spec.job.drive" value="M:"/>
<property name="sf.spec.job.freespace" value="10"/>
<property name="sf.spec.email.from" value="fbf@symbian.org"/> <!-- needs to be defined for S60 platform builds -->
<property name="sf.spec.systemdefinition.assemble" value="true"/>
<property name="sf.spec.pdt.root" value="${env.PDT_HOME}"/> <!-- e.g. C:\Symbian\Tools\PDT_1.0\ -->
<!-- comma separated sbs filter list -->
<property name="sf.spec.sbs.filter.list" value=""/>
<!-- options to pass directly to sbs e.g. pp=on for parallel parsing -->
<property name="sf.spec.sbs.options" value=""/>
<property name="sf.spec.sbs.config" value="armv5"/>
<!-- sbs -t param -->
<property name="sf.spec.sbs.retry.limit" value="5"/>
<!-- When not set -j option is to: 2 X NUMBER_OF_PROCESSORS
<property name="sf.spec.sbs.numberofjobs" value="2"/>
-->
<property name="sf.spec.build.target" value="all"/>
<property name="sf.spec.build.variant" value=""/>
<property name="sf.spec.build.productioncode.enable" value="true"/>
<property name="sf.spec.build.testcode.enable" value="false"/>
<property name="sf.spec.build.system" value="sbs"/> <!-- sbs|ebs|ec -->
<property name="sf.spec.build.clean.enable" value="false"/>
<property name="sf.spec.sysdef.configurations.list" value="s60_build,s60_bldmelast"/>
<property name="sf.spec.referenceroms.createimages.enable" value="false"/>
<property name="sf.spec.referenceroms.list" value=""/>
<property name="sf.spec.testroms.createimages.enable" value="false"/>
<property name="sf.spec.sourcesync.enable" value="true"/>
<property name="sf.spec.sourcesync.usecache" value="false"/>
<property name="sf.spec.sourcesync.sourcespecfile" value="sources.csv"/>
<property name="sf.spec.sourcesync.sourcespecfile.rnd" value="sources_rnd.csv"/>
<property name="sf.spec.sourcesync.cache.path" value="hgcache"/> <!-- Path relative to root of some drive for location of hg cache -->
<property name="sf.spec.sourcesync.local.development.area" value="//v800008/Builds01"/> <!-- Location of a "development area" which should be cached on build machines (in addition to developer.symbian.org content) -->
<property name="sf.spec.sources.revision" value=""/>
<!-- package builds, this is the actual file, for platform this is the dir -->
<property name="sf.spec.systemdefinition.location" value=""/>
<!-- model file name relative to location (above) -->
<property name="sf.spec.systemdefinition.filename" value=""/>
<property name="sf.spec.baseline.enable" value="true"/>
<property name="sf.spec.baseline.select" value="auto"/> <!-- auto|explicit|location -->
<property name="sf.spec.baseline.getenv_options" value="-i emu,tools"/>
<property name="sf.spec.toolsbaseline.enable" value="true"/>
<property name="sf.spec.toolsbaseline.select" value="auto"/>
<property name="sf.spec.toolsbaseline.getenv_options" value="-i tools"/>
<property name="sf.spec.publish.enable" value="true"/>
<property name="sf.spec.publish.unpackagedartefacts.enable" value="true"/>
<property name="sf.spec.publish.packagedartefacts.enable" value="true"/>
<property name="sf.spec.publish.network.freespace" value="10"/>
<property name="sf.spec.publish.networkdrive" value="\\v800020\Publish\SF_builds"/>
<property name="sf.spec.publish.rootdir" value="\\v800020\Publish\SF_builds"/>
<property name="sf.spec.publish.diamonds.server" value="v800002.ad-sfpd.intra"/>
<property name="sf.spec.publish.diamonds.port" value="80"/>
<property name="sf.spec.publish.diamonds.path" value="/diamonds/builds/"/>
<property name="sf.spec.publish.diamonds.tag" value=""/>
<property name="sf.spec.ats_worker.drive" value="C:\apps\ATS3\bin"/>
<property name="sf.spec.tagafterbuild.enable" value="false"/>
<!-- if sf-list-dir called, generate dir list(s) of epoc32 tree -->
<property name="sf.spec.dirlist.enable" value="false"/>
<!-- if sf-list-dir called, generate delta of two epoc32 trees. note: this takes a while! -->
<property name="sf.spec.dirdelta.enable" value="false"/>
<!-- prefilter raptor logs -->
<property name="sf.spec.logs.raptorfilter.enable" value="true"/>
<!-- zip all logs before publish -->
<property name="sf.spec.logs.zip.enable" value="true"/>
<!-- packaging options for bin/src-->
<property name="sf.spec.package.bin.enable" value="false"/>
<property name="sf.spec.package.src.enable" value="false"/>
<property name="sf.spec.package.zip.format" value="7z"/> <!-- can be 'zip' or '7z'-->
<!--<property name="sf.sdk.header.list.file" value=""/> --> <!-- Set this to package SDK headers separately from the rest of epoc32 -->
<!-- enable creation of MD5s -->
<property name="sf.spec.md5.enable" value="false"/>
<!-- ATS client properties -->
<property name="sf.spec.test.sendpkg.enable" value="false"/>
<property name="sf.spec.test.host.name" value="v800026"/>
<property name="sf.spec.test.host.username" value="admin"/>
<property name="sf.spec.test.host.password" value="admin"/>
<property name="sf.spec.test.host.droppath" value="D:\ats3_testdrop_arrivals\${env.COMPUTERNAME}"/>
<property name="sf.spec.test.epocroot" value="winscw_smoketest"/>
<property name="sf.spec.test.target" value="winscw"/> <!-- This specifies the target on which tests will be run -->
<property name="sf.spec.test.imagepath" value="D:\epoc32\rom\syborg_tshell_ARMV5_udeb.img"/> <!-- This specifies the path to the ROM image used for testing -->
<!-- ATS properties -->
<property name="sf.spec.test.package.location" value="\\${sf.spec.test.host.name}\ats3_testdrop_arrivals\${env.COMPUTERNAME}"/>
<property name="sf.spec.test.package.name" value="${env.COMPUTERNAME}-Smoketest-${sf.spec.job.name}_${sf.spec.job.codeline}.${sf.spec.job.number}.zip"/> <!-- build.id not available at this point, so construct it from component parts -->
<property name="sf.spec.test.package.droppath" value="TestDrops"/>
<!-- BC check properties -->
<property name="sf.spec.bccheck.enable" value="false"/> <!-- This disables it being called during a normal build, although the target can be called seperately -->
<property name="sf.spec.bccheck.enable.la" value="true"/>
<property name="sf.spec.bccheck.enable.ha" value="true"/>
<property name="sf.spec.bccheck.enable.dynamic" value="false"/>
<property name="sf.spec.bccheck.baseline.name" value="symbian1"/>
<property name="sf.spec.bccheck.baseline.skd.dir" value="\\v800008\builds01\installed\s60_5th_sdk_installed"/>
<property name="sf.spec.bccheck.baseline.s60.version" value="5.0"/>
<property name="sf.spec.bccheck.current.s60.version" value="5.1"/>
<property name="sf.spec.bccheck.reportid" value="report"/>
<property name="sf.spec.bccheck.package.name" value="${env.COMPUTERNAME}-bctest-${sf.spec.job.name}_${sf.spec.job.codeline}.${sf.spec.job.number}.zip"/>
<!-- Smoketest properties -->
<property name="sf.spec.smoketest.enable" value="true"/> <!-- This disables publishing Smoke Test Report -->
</project>