Changed preference for selecting package definition files, so that it takes the one from our tree in preference to the one in the package itself. This means that we can just delete items from our tree when we're happy to switch to using the one in the package (as this will vary from package to package).
Added sorting of the attributes when outputting the system definition, to match the de facto standard in the system definition we started with.
<?xml version="1.0"?>
<build>
<config abstract="true">
<!-- Options that apply accross the board -->
<set name="archive.tool" value="7za" />
<set name="root.dir" value="${build.drive}/" />
<set name="temp.build.dir" value="${temp.build.dir}" />
<set name="casesensitive" value="false" />
<set name="archives.dir" value="${build.output.dir}/zips" />
<set name="policy.internal.name" value="removed" />
<!--set name="policy.csv" value="${policy.csv}" /-->
<set name="policy.zip2zip" value="false" />
<set name="policy.default.value" value="" />
<!-- Metadata creation -->
<set name="grace.template" value="${temp.build.dir}/release_metadata_template.xml" />
<set name="grace.metadata" value="true" />
<set name="grace.service" value="${grace.service.name}" />
<set name="grace.product" value="${grace.product.name}" />
<set name="grace.release" value="${grace.release.name}" />
<!-- Specify this config to package all inputs to the build -->
<config name="src" abstract="true">
<!-- Options that apply to all src configs -->
<set name="exclude" value="**/.hg/**"/>
<set name="exclude" value="**/.hgtags"/>
<set name="exclude" value="**/.hgignore"/>
<set name="exclude" value="**/.hg_archival.txt"/>
<!-- These configs will be populated with tags for the source -->
<config name="sfl" abstract="true">
<set name="grace.filters" value="src" />
</config>
<config name="oss" abstract="true">
<set name="grace.filters" value="src" />
</config>
<config name="rnd" abstract="true">
<set name="grace.filters" value="rnd" />
</config>
</config>
<config name="src-by-layer" abstract="true">
<set name="grace.metadata" value="false" />
<set name="root.dir" value="${build.output.dir}/zips"/>
<!-- Zips of zips for SFL code -->
<config>
<set name="name" value="src_sfl_adaptation"/>
<set name="include" value="src_sfl_adaptation_*.zip"/>
</config>
<config>
<set name="name" value="src_sfl_app"/>
<set name="include" value="src_sfl_app_*.zip"/>
</config>
<config>
<set name="name" value="src_sfl_mw"/>
<set name="include" value="src_sfl_mw_*.zip"/>
</config>
<config>
<set name="name" value="src_sfl_os"/>
<set name="include" value="src_sfl_os_*.zip"/>
</config>
<config>
<set name="name" value="src_sfl_ostools"/>
<set name="include" value="src_sfl_ostools_*.zip"/>
</config>
<config>
<set name="name" value="src_sfl_tools"/>
<set name="include" value="src_sfl_tools_*.zip"/>
</config>
<!-- Zips of zips for OSS code -->
<config>
<set name="name" value="src_oss_adaptation"/>
<set name="include" value="src_oss_adaptation_*.zip"/>
</config>
<config>
<set name="name" value="src_oss_app"/>
<set name="include" value="src_oss_app_*.zip"/>
</config>
<config>
<set name="name" value="src_oss_mw"/>
<set name="include" value="src_oss_mw_*.zip"/>
</config>
<config>
<set name="name" value="src_oss_os"/>
<set name="include" value="src_oss_os_*.zip"/>
</config>
<config>
<set name="name" value="src_oss_ostools"/>
<set name="include" value="src_oss_ostools_*.zip"/>
</config>
<config>
<set name="name" value="src_oss_tools"/>
<set name="include" value="src_oss_tools_*.zip"/>
</config>
</config>
<!-- Specify this config to package all outputs from the build -->
<config name="bin" abstract="true">
<!-- This config will be populated with exclusions for the rnd bins -->
<config>
<set name="name" value="binaries_epoc"/>
<set name="grace.filters" value="emu" />
<set name="include" value="epoc32/**"/>
<set name="exclude" value="epoc32/build/**"/>
</config>
</config>
</config>
</build>