common/templates/zip.cfg.xml.ftl.template
author Simon Howkins <simonh@symbian.org>
Tue, 19 Oct 2010 11:11:40 +0100
changeset 1309 2ea5b5b66973
parent 1277 06a4d69b725f
permissions -rw-r--r--
Adjusted release tagging, so that it clones from the package source, not dst, and hence it's much less likely that the tagging operation will create multiple heads on the TAGS branch.

<?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="${build.family}" />
		<set name="grace.product" value="${build.family}" />
		<set name="grace.release" value="${build.version}" />
		
		<!-- Options that apply to all configs - don't put in any hg internals! -->
		<set name="exclude" value="**/.hg/**"/>
		<set name="exclude" value="**/.hgtags"/>
		<set name="exclude" value="**/.hgignore"/>
		<set name="exclude" value="**/.hg_archival.txt"/>
		
		<!-- Specify this config to package all src inputs to the build -->
		<config name="src" abstract="true">
			<!-- 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="misc" abstract="true">
				<set name="grace.filters" value="misc" />
			</config>
		</config>
		<!-- Specify this config to double-package all src inputs to the build -->
		<config name="src-by-layer" abstract="true">
			<set name="root.dir" value="${build.output.dir}/zips"/>
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="grace.filters" value="src" />
			<set name="grace.extract" value="double" />
			<!-- Zips of zips for SFL code and for OSS code will be inserted here -->
		</config>
		<!-- Specify this config to package all rnd inputs to the build that should be released -->
		<config name="rnd" abstract="true">
			<set name="grace.filters" value="rnd" />
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
		</config>
		<!-- Specify this config to package all rnd inputs to the build that should be released -->
		<config name="rnd-internal" abstract="true">
			<set name="grace.filters" value="emu" />
		</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>
		<!-- Specify this config to re-package the internal rnd bins after the build has updates some of the files -->
		<config name="rnd-postbuild" abstract="true">
			<set name="grace.filters" value="emu"/>
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
		</config>
		<!-- "Null" tools entry, which matches no files, but does populate the release_metadata.xml -->
		<config name="tools">
			<set name="name" value="tools_epoc.${sf.spec.package.zip.format}"/>
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="grace.filters" value="tools"/>
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
		</config>
		<!-- "Null" binaries entries, which match no files, but do populate the release_metadata.xml -->
		<config name="bin-just-metadata" abstract="true">
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="grace.filters" value="emu"/>
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
			<config name="core">
				<set name="name" value="binaries_epoc.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5_udeb">
				<set name="name" value="binaries_armv5_udeb.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5_urel">
				<set name="name" value="binaries_armv5_urel.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5_lib">
				<set name="name" value="binaries_armv5_lib.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5smp_udeb">
				<set name="name" value="binaries_armv5smp_udeb.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5smp_urel">
				<set name="name" value="binaries_armv5smp_urel.${sf.spec.package.zip.format}"/>
			</config>
			<config name="armv5smp_lib">
				<set name="name" value="binaries_armv5smp_lib.${sf.spec.package.zip.format}"/>
			</config>
			<config name="winscw_udeb">
				<set name="name" value="binaries_winscw_udeb.${sf.spec.package.zip.format}"/>
			</config>
			<config name="winscw_urel">
				<set name="name" value="binaries_winscw_urel.${sf.spec.package.zip.format}"/>
			</config>
			<config name="winscw_lib">
				<set name="name" value="binaries_winscw_lib.${sf.spec.package.zip.format}"/>
			</config>
			<config name="rom_images">
				<set name="name" value="binaries_rom_images.${sf.spec.package.zip.format}"/>
			</config>
		</config>
		<!-- "Null" SDK entry, which matches no files, but does populate the release_metadata.xml -->
		<config name="bin-sdk-just-metadata" abstract="true">
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="grace.filters" value="emu"/>
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
			<config name="sdk">
				<set name="name" value="binaries_epoc_sdk.${sf.spec.package.zip.format}"/>
			</config>
		</config>

		<!-- For packaging tools builds such as "prebuilt", identified by sf.spec.job.name -->
		<config name="bin-${sf.spec.job.name}-metadata" abstract="true">
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="grace.filters" value="prebuilt"/>
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
			<config name="${sf.spec.job.name}">
				<set name="name" value="binaries_${sf.spec.job.name}.${sf.spec.package.zip.format}"/>
			</config>
		</config>

		
		<!-- "Null" info entries, which match no files, but do populate the release_metadata.xml -->
		<config name="info-just-metadata" abstract="true">
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
			<config name="logs">
				<set name="name" value="build_logs"/>
				<set name="grace.filters" value="logs"/>
			</config>
			<config name="BOM">
				<set name="name" value="build_BOM"/>
				<set name="grace.filters" value="info"/>
			</config>
		</config>
		<!-- "Null" md5 entry, which matches no files, but does populate the release_metadata.xml -->
		<config name="md5-just-metadata">
			<set name="archives.dir" value="${build.output.dir}/zips/release" />
			<set name="name" value="build_md5"/>
			<set name="grace.filters" value="info"/>
			<set name="include" value="*"/>
			<set name="exclude" value="**"/>
		</config>
	</config>
</build>