merge
authorBrendan Donegan brendand@symbian.org
Thu, 17 Sep 2009 12:37:19 +0100
changeset 464 48fbe8fe5076
parent 463 2ad847d21423 (current diff)
parent 457 991d89a55c87 (diff)
child 465 8cf07278ef12
merge
common/tools/ats/bctest/browser/browser.xml
common/tools/zip_includefiles.pl
--- a/.hgtags	Wed Sep 16 10:55:26 2009 +0100
+++ b/.hgtags	Thu Sep 17 12:37:19 2009 +0100
@@ -1,3 +1,4 @@
 29394d95b3e1a63e73a3f3e31f9bab42cc1437f5 fbf_configs_0.0.a
 36d82a2f1f927cbe91926e19c69fe74d9170b7de PDK_2.0.c
 633b96a83005daab9464a00b8fcbcfa96a247c26 PDK_2.0.d
+cc2965329dd1c545c3cad90c83f2c8cf2bc7e2d6 PDK_2.0.e
--- a/common/build.postbuild.xml	Wed Sep 16 10:55:26 2009 +0100
+++ b/common/build.postbuild.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -228,19 +228,10 @@
     </target>
 
     <target name="sf-package-postbuild-rnd" depends="sf-preprocess-package-config">
-
-        <!-- zip any RnD _includefile.txt files generated during source packaging -->
-        <exec executable="perl" dir="${build.drive}/" failonerror="false" output="${build.log.dir}/zip_postbuild.log">
-            <arg value="${sf.common.config.dir}/tools/zip_includefiles.pl"/>
-        </exec>
-        <!-- cleanup my moving includefiles to logs and zips to zips\release -->
-        <move todir="${build.log.dir}">
-            <fileset dir="${build.drive}"><include name="*_includefile.txt"/></fileset>
-        </move>
-        <move todir="${build.drive}/output/zips/release">
-            <fileset dir="${build.drive}"><include name="bin*.zip"/></fileset>
-        </move>
-        <!-- TODO: merge with release_metadata.xml ? -->
+        <antcall target="sf-zip-content">
+            <param name="zip.config.file" value="${sf.common.config.dir}/generated/zip.cfg.xml.ftl"/>
+            <param name="zip.target.name" value="rnd-postbuild" />
+        </antcall>
     </target>
 
     <target name="sf-package-tools" depends="sf-preprocess-package-config">
@@ -249,7 +240,6 @@
             <arg value="a"/>
             <arg value="-tzip"/>
             <arg value="-x@${build.log.dir}/rnd_excludefile.txt"/>
-<!--            <arg value="-x@${build.log.dir}/*_includefile.txt"/> -->
             <arg value="${build.drive}/output/zips/release/tools_epoc.zip"/> 
             <arg value="epoc32/tools"/>
         </exec>
--- a/common/build.xml	Wed Sep 16 10:55:26 2009 +0100
+++ b/common/build.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -442,7 +442,8 @@
 
     <target name="sf-preprocess-package-config">
         <mkdir dir="${sf.common.config.dir}/generated"/>
-            <if><istrue value="${sf.spec.package.src.enable}"/>
+        <if>
+            <istrue value="${sf.spec.package.src.enable}"/>
             <then>
                 <echo message="INFO Packaging Source Repos"/>
                 <property name="sf-preprocess-package-config.arg" value=""/>
@@ -451,7 +452,7 @@
                 <echo message="INFO Packaging: Ignoring Source Repos"/>
                 <property name="sf-preprocess-package-config.arg" value="--nosource"/>
             </else>
-            </if>
+        </if>
 
         <exec executable="perl" dir="${build.drive}/" failonerror="false" output="${build.log.dir}/zipconfig.log">
             <arg value="${sf.common.config.dir}/tools/populateziptemplate.pl"/>
@@ -475,6 +476,14 @@
             <param name="zip.config.file" value="${sf.common.config.dir}/generated/zip.cfg.xml.ftl"/>
             <param name="zip.target.name" value="src" />
         </antcall>
+        <antcall target="sf-zip-content">
+            <param name="zip.config.file" value="${sf.common.config.dir}/generated/zip.cfg.xml.ftl"/>
+            <param name="zip.target.name" value="rnd" />
+        </antcall>
+        <antcall target="sf-zip-content">
+            <param name="zip.config.file" value="${sf.common.config.dir}/generated/zip.cfg.xml.ftl"/>
+            <param name="zip.target.name" value="rnd-internal" />
+        </antcall>
         <!-- Then zip up src zips by layer -->
         <antcall target="sf-zip-content">
             <param name="zip.config.file" value="${sf.common.config.dir}/generated/zip.cfg.xml.ftl"/>
--- a/common/templates/zip.cfg.xml.ftl.template	Wed Sep 16 10:55:26 2009 +0100
+++ b/common/templates/zip.cfg.xml.ftl.template	Thu Sep 17 12:37:19 2009 +0100
@@ -19,7 +19,7 @@
 		<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 -->
+		<!-- Specify this config to package all src inputs to the build -->
 		<config name="src" abstract="true">
 			<!-- Options that apply to all src configs -->
 			<set name="exclude" value="**/.hg/**"/>
@@ -34,17 +34,16 @@
 			<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 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="grace.metadata" value="false" />
 			<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 -->
 			<config name="sfl-adaptation">
 				<set name="name" value="src_sfl_adaptation"/>
@@ -96,6 +95,15 @@
 				<set name="include" value="src_oss_tools_*.zip"/>
 			</config>
 		</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 -->
@@ -106,5 +114,10 @@
 				<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>
 	</config>
 </build>
--- a/common/tools/ats/bctest/browser/browser.xml	Wed Sep 16 10:55:26 2009 +0100
+++ b/common/tools/ats/bctest/browser/browser.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -53,6 +53,6 @@
         </session>
     </plan>
     <files>
-        <file>bcwebsrv/winscw_udeb/favouritesbctest.dll</file>
+        <file>bcbrowser/winscw_udeb/favouritesbctest.dll</file>
     </files>
 </test>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/landmarks_api/landmarks.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,108 @@
+<?xml version="1.0"?>
+<test>
+	<id>1</id>
+	<owner>admin</owner>
+	<priority>10</priority>
+	<buildid></buildid>
+	<name>Landmarks API BCTests</name>
+	<target>
+        <device rank="master" alias="emulator_udeb">
+            <property name="HARNESS" value="ATSINTERFACE" />
+            <property name="NAME" value="emulator_udeb" />
+        </device>
+	</target>
+	<plan id="" name="Landmarks API BCTests WINSCW UDEB" harness="ATSINTERFACE" enabled="true" passrate="100">
+		<target>
+			<device rank="master" alias="emulator_udeb"/>
+		</target>
+		<session id="" name="Landmarks API BCTests" harness="ATSINTERFACE" enabled="true" passrate="100">
+			<set id="" name="Landmarks" harness="ATSINTERFACE" enabled="true" passrate="100">
+				<case id="" name="Landmarks" harness="ATSINTERFACE" enabled="true" passrate="100">
+                    <step id="" name="SPD_Logs XML (makedir)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+                        <command>makedir</command>
+                        <params>
+                            <param dir="c:\spd_logs\xml" /> 
+                        </params>
+                    </step>
+                    <step id="" name="testlandmarksapi.dll (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="binary"/>
+							<param src="testlandmarksapi.dll"/>
+							<param dst="c:\sys\bin\testlandmarksapi.dll"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+                    <step id="" name="testframework_Landmarks.ini (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework/testframework_Landmarks.ini"/>
+							<param dst="C:\TestFramework\TestFramework.ini"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+					<step id="" name="testlandmarksapi.cfg (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework\testlandmarksapi.cfg"/>
+							<param dst="C:\testframework\testlandmarksapi.cfg"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+					<step id="" name="smiltemplate.mif (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="smiltemplate.mif"/>
+							<param dst="C:\testing\data\smiltemplate.mif"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+					<step id="" name="testEposLmImport.lmx (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testEposLmImport.lmx"/>
+							<param dst="C:\testing\data\testEposLmImport.lmx"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+					<step id="" name="testEposLmImportCollection.lmx (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testEposLmImportCollection.lmx"/>
+							<param dst="C:\testing\data\testEposLmImportCollection.lmx"/>
+							<param component-path="landmarks" />
+						</params>
+					</step>
+					<step id="" name="landmarks (execute)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>execute</command>
+						<params>
+							<param file="atsinterface.exe"/>
+							<param parameters="-testmodule testscripter -config C:\testframework\testlandmarksapi.cfg"/>
+                            <param result-file="c:\spd_logs\xml\testscripter.xml"/>
+                            <param timeout="3600"/>
+						</params>
+					</step>
+					<step id="" name="Landmarks_log (fetch-log)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>fetch-log</command>
+						<params>
+							<param path="c:\logs\testframework\TestReport.txt" /> 
+						</params>
+					</step>
+				</case>
+			</set>
+		</session>
+	</plan>
+	<files>
+		<file>landmarks/winscw_udeb/testlandmarksapi.dll</file>
+		<file>landmarks/general/testframework/TestFramework_Landmarks.ini</file>
+		<file>landmarks/general/testframework/testlandmarksapi.cfg</file>
+        <file>landmarks/general/smiltemplate.mif</file>
+        <file>landmarks/general/testEposLmImport.lmx</file>
+        <file>landmarks/general/testEposLmImportCollection.lmx</file>
+    </files>
+</test>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/landmarks_api/landmarks_api.pl	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,34 @@
+#!/usr/bin/perl
+# Copyright (c) 2009 Symbian Foundation Ltd
+# This component and the accompanying materials are made available
+# under the terms of the License "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Symbian Foundation Ltd - initial contribution.
+#
+# Description:
+# Script to build ATS test drop for landmarks_api tests
+
+
+use strict;
+use File::Copy;
+use File::Path;
+
+unlink "landmarks_api.zip";
+##rmtree "temp";
+mkpath "temp/landmarks/general/testframework";
+mkpath "temp/landmarks/winscw_udeb";
+
+my $epoc=$ENV{'EPOCROOT'} . "epoc32/";
+copy("landmarks.xml",	"temp/test.xml");
+
+copy($epoc . "release/winscw/udeb/testlandmarksapi.dll",				"temp/landmarks/winscw_udeb/testlandmarksapi.dll");
+copy($epoc . "winscw/c/testframework/TestFramework_Landmarks.ini",		"temp/landmarks/general/testframework/TestFramework_Landmarks.ini");
+copy($epoc . "winscw/c/testframework/testlandmarksapi.cfg",				"temp/landmarks/general/testframework/testlandmarksapi.cfg");
+copy($epoc . "winscw/c/testing/data/smiltemplate.mif",					"temp/landmarks/general/smiltemplate.mif");
+copy($epoc . "winscw/c/testing/data/testEposLmImport.lmx",				"temp/landmarks/general/testEposLmImport.lmx");
+copy($epoc . "winscw/c/testing/data/testEposLmImportCollection.lmx",	"temp/landmarks/general/testEposLmImportCollection.lmx");
+
+system("7z a -tzip landmarks_api.zip ./temp/*");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/lmdbmanagement/lmdbmanagement.pl	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,34 @@
+#!/usr/bin/perl
+# Copyright (c) 2009 Symbian Foundation Ltd
+# This component and the accompanying materials are made available
+# under the terms of the License "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Symbian Foundation Ltd - initial contribution.
+#
+# Contributors:
+# Maciej Seroka <maciejs@symbian.org>
+#
+# Description:
+# Script to build ATS test drop Landmarks Database Management BC tests
+
+
+use strict;
+use File::Copy;
+use File::Path;
+
+unlink "lmdbmanagementtest.zip";
+##rmtree "temp";
+mkpath "temp/lmdbmanagementtest/general/testframework";
+mkpath "temp/lmdbmanagementtest/winscw_udeb";
+
+my $epoc=$ENV{'EPOCROOT'} . "epoc32/";
+copy("lmdbmanagement.xml",	"temp/test.xml");
+
+copy($epoc . "release/winscw/udeb/testdbmanagementapi.dll",			"temp/lmdbmanagementtest/winscw_udeb/testdbmanagementapi.dll");
+copy($epoc . "winscw/c/testframework/testframework_lmdbmanagement.ini",	"temp/lmdbmanagementtest/general/testframework/testframework_lmdbmanagement.ini");
+copy($epoc . "winscw/c/testframework/testdbmanagementapi.cfg",				"temp/lmdbmanagementtest/general/testframework/testdbmanagementapi.cfg");
+
+system("7z a -tzip lmdbmanagementtest.zip ./temp/*");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/lmdbmanagement/lmdbmanagement.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,80 @@
+<?xml version="1.0"?>
+<test>
+	<id>1</id>
+	<owner>admin</owner>
+	<priority>10</priority>
+	<buildid></buildid>
+	<name>Landmarks Database Management BC Tests</name>
+	<target>
+        <device rank="master" alias="emulator_udeb">
+            <property name="HARNESS" value="ATSINTERFACE" />
+            <property name="NAME" value="emulator_udeb" />
+        </device>
+	</target>
+	<plan id="" name="Landmarks Database Management BC WINSCW UDEB" harness="ATSINTERFACE" enabled="true" passrate="100">
+		<target>
+			<device rank="master" alias="emulator_udeb"/>
+		</target>
+		<session id="" name="Landmarks Database Management Compatibility Tests" harness="ATSINTERFACE" enabled="true" passrate="100">
+			<set id="" name="Landmarks Database Management" harness="ATSINTERFACE" enabled="true" passrate="100">
+				<case id="" name="Landmarks Database Management" harness="ATSINTERFACE" enabled="true" passrate="100">
+                    <step id="" name="SPD_Logs XML (makedir)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+                        <command>makedir</command>
+                        <params>
+                            <param dir="c:\spd_logs\xml" /> 
+                        </params>
+                    </step>
+                    <step id="" name="testdbmanagementapi.dll (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="binary"/>
+							<param src="testdbmanagementapi.dll"/>
+							<param dst="c:\sys\bin\testdbmanagementapi.dll"/>
+							<param component-path="lmdbmanagementtest" />
+						</params>
+					</step>
+					<step id="" name="TestFramework_lmdbmanagement.ini (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework/TestFramework_lmdbmanagement.ini"/>
+							<param dst="c:\testframework\testframework.ini"/>
+							<param component-path="lmdbmanagementtest" />
+						</params>
+					</step>
+					<step id="" name="testdbmanagementapi.cfg (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework/testdbmanagementapi.cfg"/>
+							<param dst="c:\testframework\testdbmanagementapi.cfg"/>
+							<param component-path="lmdbmanagementtest" />
+						</params>
+					</step>
+
+
+					<step id="" name="testdbmanagementapi (execute)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>execute</command>
+						<params>
+							<param file="atsinterface.exe"/>
+							<param parameters="-testmodule testscripter -config c:\testframework\testdbmanagementapi.cfg"/>
+							<param result-file="c:\spd_logs\xml\testscripter.xml"/>
+                            <param timeout="3600"/>
+						</params>
+					</step>
+					<step id="" name="testdbmanagementapi (fetch-log)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>fetch-log</command>
+						<params>
+							<param path="c:\logs\testframework\TestReport.txt" /> 
+						</params>
+					</step>
+				</case>
+			</set>
+		</session>
+	</plan>
+	<files>
+		<file>lmdbmanagementtest/winscw_udeb/testdbmanagementapi.dll</file>
+		<file>lmdbmanagementtest/general/testframework/testframework_lmdbmanagement.ini</file>
+		<file>lmdbmanagementtest/general/testframework/testdbmanagementapi.cfg</file>
+	</files>
+</test>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/lmsearch/lmsearch.pl	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,34 @@
+#!/usr/bin/perl
+# Copyright (c) 2009 Symbian Foundation Ltd
+# This component and the accompanying materials are made available
+# under the terms of the License "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Symbian Foundation Ltd - initial contribution.
+#
+# Contributors:
+# Maciej Seroka <maciejs@symbian.org>
+#
+# Description:
+# Script to build ATS test drop Landmarks Search BC tests
+
+
+use strict;
+use File::Copy;
+use File::Path;
+
+unlink "lmsearchtest.zip";
+##rmtree "temp";
+mkpath "temp/lmsearchtest/general/testframework";
+mkpath "temp/lmsearchtest/winscw_udeb";
+
+my $epoc=$ENV{'EPOCROOT'} . "epoc32/";
+copy("lmsearch.xml",	"temp/test.xml");
+
+copy($epoc . "release/winscw/udeb/testlmksearchapi.dll",			"temp/lmsearchtest/winscw_udeb/testlmksearchapi.dll");
+copy($epoc . "winscw/c/testframework/TestFramework_lmsearch.ini",	"temp/lmsearchtest/general/testframework/TestFramework_lmsearch.ini");
+copy($epoc . "winscw/c/testframework/testlmksearchapi.cfg",			"temp/lmsearchtest/general/testframework/testlmksearchapi.cfg");
+
+system("7z a -tzip lmsearchtest.zip ./temp/*");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/ats/bctest/locationsrv/lmsearch/lmsearch.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,78 @@
+<?xml version="1.0"?>
+<test>
+	<id>1</id>
+	<owner>admin</owner>
+	<priority>10</priority>
+	<buildid></buildid>
+	<name>Landmarks Search BC Tests</name>
+	<target>
+        <device rank="master" alias="emulator_udeb">
+            <property name="HARNESS" value="ATSINTERFACE" />
+            <property name="NAME" value="emulator_udeb" />
+        </device>
+	</target>
+	<plan id="" name="Landmarks Search BC WINSCW UDEB" harness="ATSINTERFACE" enabled="true" passrate="100">
+		<target>
+			<device rank="master" alias="emulator_udeb"/>
+		</target>
+		<session id="" name="Landmarks Search Compatibility Tests" harness="ATSINTERFACE" enabled="true" passrate="100">
+			<set id="" name="Landmarks Search" harness="ATSINTERFACE" enabled="true" passrate="100">
+				<case id="" name="Landmarks Search" harness="ATSINTERFACE" enabled="true" passrate="100">
+                    <step id="" name="SPD_Logs XML (makedir)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+                        <command>makedir</command>
+                        <params>
+                            <param dir="c:\spd_logs\xml" /> 
+                        </params>
+                    </step>
+                    <step id="" name="testlmksearchapi.dll (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="binary"/>
+							<param src="testlmksearchapi.dll"/>
+							<param dst="c:\sys\bin\testlmksearchapi.dll"/>
+							<param component-path="lmsearchtest" />
+						</params>
+					</step>
+					<step id="" name="TestFramework_lmsearch.ini (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework/TestFramework_lmsearch.ini"/>
+							<param dst="c:\testframework\testframework.ini"/>
+							<param component-path="lmsearchtest" />
+						</params>
+					</step>
+					<step id="" name="testlmksearchapi.cfg (install)" harness="ATSINTERFACE" enabled="true" passrate="100" significant="false">
+						<command>install</command>
+						<params>
+							<param type="data"/>
+							<param src="testframework/testlmksearchapi.cfg"/>
+							<param dst="c:\testframework\testlmksearchapi.cfg"/>
+							<param component-path="lmsearchtest" />
+						</params>
+					</step>
+					<step id="" name="testlmksearchapi (execute)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>execute</command>
+						<params>
+							<param file="atsinterface.exe"/>
+							<param parameters="-testmodule testscripter -config c:\testframework\testlmksearchapi.cfg"/>
+							<param result-file="c:\spd_logs\xml\testscripter.xml"/>
+                            <param timeout="3600"/>
+						</params>
+					</step>
+					<step id="" name="testlmksearchapi (fetch-log)" harness="ATSINTERFACE" enabled="true" passrate="100">
+						<command>fetch-log</command>
+						<params>
+							<param path="c:\logs\testframework\TestReport.txt" /> 
+						</params>
+					</step>
+				</case>
+			</set>
+		</session>
+	</plan>
+	<files>
+		<file>lmsearchtest/winscw_udeb/testlmksearchapi.dll</file>
+		<file>lmsearchtest/general/testframework/TestFramework_lmsearch.ini</file>
+		<file>lmsearchtest/general/testframework/testlmksearchapi.cfg</file>
+	</files>
+</test>
--- a/common/tools/populateziptemplate.pl	Wed Sep 16 10:55:26 2009 +0100
+++ b/common/tools/populateziptemplate.pl	Thu Sep 17 12:37:19 2009 +0100
@@ -100,11 +100,18 @@
 	elsif ($package->{source} =~ m{/rnd/([^/]+)/([^/]+)})
 	{
 		# RnD repository
-		my $name = "binaries_$2";
-		if ($1 eq "rndonly") { $name="bin_$1_$2";}
+		my $licenseType = $1;
+		my $name="bin_$1_$2";
+		my $postbuildName = "binaries_$2";
+		my $config = "rnd";
+		if ($licenseType eq "internal")
+		{
+			$name = "binaries_$2_prebuild";
+			$config = "rnd-internal";
+		}
 		
 		# Create a zip object
-		push @{$zipConfig->{config}->{config}->{src}->{config}->{rnd}->{config}},
+		push @{$zipConfig->{config}->{config}->{$config}->{config}},
 		{
 			set =>
 			[
@@ -125,19 +132,33 @@
 		# Enumerate all the files on the local disk that are in this repository
 		(my $dosCompatibleDst = $package->{dst}) =~ s{/}{\\}g;
 		my @files = `dir /b/s/a-d $dosCompatibleDst 2> nul:`;
-		#print "@files\n";
 		next unless @files;
-		# Add the files to this zip object
+		# Add the files to the global list of items to be excluded in the binary zips
 		@files = grep {
+			chomp;
 			s{\\}{/}g;
 			s!^[A-Z]:/$package->{dst}/!!i;
 			m{^epoc32/}i;
 		} @files;
 		push @allRndFiles, @files;
-		
-		open FILE, ">", $name ."_includefile.txt" or die "Cannot write includefile!";
-		print FILE @files;
-		close FILE;
+
+		if ($licenseType eq "internal")
+		{
+			# Add a zip object to zip this package from the epoc tree in the postbuild phase
+			push @{$zipConfig->{config}->{config}->{"rnd-postbuild"}->{config}},
+			{
+				name => $postbuildName,
+				set =>
+				[
+					{
+						name => "name",
+						value=> $postbuildName,
+					},
+					# Turn the array of files into an array of inclusion hashes
+					(map { {name => "include", value => $_ } } @files),
+				]
+			};
+		}
 	}
 	else
 	{
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/sysModelFilter.pl	Thu Sep 17 12:37:19 2009 +0100
@@ -0,0 +1,162 @@
+#!perl -w
+
+use strict;
+
+use XML::Parser;
+
+my $sysModel = shift or die "First arg must be system model xml file";
+my @filters = @ARGV or die "Subsequent arg(s) must be filter(s) to apply";
+
+# Sort out the positive and negative filters specified
+my @negativeFilters;
+my @positiveFilters;
+foreach my $filter (@filters)
+{
+	if ($filter =~ m{^!(.*)})
+	{
+		push @negativeFilters, $1;
+	}
+	else
+	{
+		push @positiveFilters, $filter;
+	}
+}
+
+# Read input tree
+my $parser = new XML::Parser(Style => "Objects") or die;
+my $sysTree = eval { $parser->parsefile($sysModel) } or die "Failed to parse $sysModel : $@";
+
+# Apply filter
+filterTree($sysTree->[0], \@negativeFilters, \@positiveFilters);
+
+# Output total tree
+print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
+printTree($sysTree->[0]);
+print "\n";
+
+exit;
+
+sub filterTree
+{
+	my $tree = shift;
+	my $negativeFilters = shift;
+	my $positiveFilters = shift;
+
+	if (exists $tree->{filter})
+	{
+		# Work out how this item in the tree is tagged for filtering
+		my $itemTags = [split ",", $tree->{filter}];
+		my @negativeTags;
+		my @positiveTags;
+		foreach my $tag (@$itemTags)
+		{
+			if ($tag =~ m{^!(.*)})
+			{
+				push @negativeTags, $1;
+			}
+			else
+			{
+				push @positiveTags, $tag;
+			}
+		}
+
+		# Test whether this item should be removed
+		if (intersect(\@positiveTags, $negativeFilters) ||
+		    intersect(\@negativeTags, $positiveFilters) )
+		{
+			# It should!
+			# Return false, and the removal will be executed by the
+			# calling instance
+			# (No need to examine children)
+			return 0;
+		}
+
+		# Tidy up the filter attribute
+		# Remove tags from this item that have been "used up"
+		# Remove the filter attribute entirely if they have all been
+		# used up
+		my %filterLookup = map { $_ => 1 } (@$negativeFilters, @$positiveFilters);
+		@$itemTags = grep { !exists $filterLookup{$_} } @$itemTags;
+		if (scalar @$itemTags)
+		{
+			$tree->{filter} = join ",", @$itemTags;
+		}
+		else
+		{
+			delete $tree->{filter};
+		}
+	}
+
+	# Now iterate through the children of this item and remove any that
+	# should be filtered out
+	@{$tree->{Kids}} = grep {
+		filterTree($_, $negativeFilters, $positiveFilters)
+	} @{$tree->{Kids}};
+
+	# Return true so that the calling instance will preserve this item in
+	# the output tree
+	return 1;
+}
+
+# Test whether two sets (arrays) intersect
+sub intersect
+{
+	my $set1 = shift;
+	my $set2 = shift;
+
+	my %set1 = map { $_ => 1 } @$set1;
+	foreach (@$set2)
+	{
+		return 1 if exists $set1{$_};
+	}
+	return 0;
+}
+
+sub printTree
+{
+	my $tree = shift or die;
+	die unless ref $tree;
+
+	my $tagName = ref $tree;
+	$tagName =~ s{^main::}{};
+	if ($tagName eq "Characters")
+	{
+		print $tree->{Text};
+		return;
+	}
+	
+	print "<$tagName";
+
+	foreach my $attr (
+		sort {
+			my $order = "unofficial name long-name tech_domain level span schema levels filter introduced deprecated purpose class plugin origin-model bldFile mrp version priority";
+			my $ixA = 1 + index $order, $a or die $a;
+			my $ixB = 1 + index $order, $b or die $b;
+			$ixA - $ixB;
+		}
+		grep {
+			! ref $tree->{$_}
+		}
+		keys %$tree)
+	{
+		print " $attr=\"$tree->{$attr}\"";
+	}
+
+	my $children = $tree->{Kids};
+	if (scalar @$children)
+	{
+		print ">";
+		foreach my $child (@$children)
+		{
+			printTree($child);
+		}
+		print "</$tagName";
+	}
+	else
+	{
+		print "/"
+	}
+
+	print ">";
+}
+
--- a/common/tools/zip_includefiles.pl	Wed Sep 16 10:55:26 2009 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-#!perl -w
-
-use strict;
-
-my @includefiles = glob "*_includefile.txt";
-foreach (@includefiles)
-{
-    my $includefilename=$_;
-	if (m/(.*)(_includefile.txt)/) {
-		my $zipfilename = $1.".zip";
-		system("7za a -tzip -i@".$includefilename . " " .$zipfilename);
-	}
-}
\ No newline at end of file
--- a/sf-platform/build.xml	Wed Sep 16 10:55:26 2009 +0100
+++ b/sf-platform/build.xml	Thu Sep 17 12:37:19 2009 +0100
@@ -27,7 +27,9 @@
   <target name="sf-platform-bootstrap-gt" >
     <echo>[SF-platform-bootstrap-gt]</echo>
     <!-- do initial stuff to get raptor working -->
-    <copy file="${build.drive}/${sf.spec.bldmefirst.gt.hrh}" tofile="${build.drive}/epoc32/include/variant/Symbian_OS.hrh" failonerror="true" verbose="true" />
+    <copy todir="${build.drive}/epoc32/include/variant/" failonerror="true" verbose="true">
+        <fileset dir="${build.drive}/${sf.spec.bldmefirst.gt.hrh}" includes="*.hrh"/>
+    </copy>
     <copy file="${build.drive}/${sf.spec.bldmefirst.gt.variant}" tofile="${build.drive}/epoc32/tools/variant/variant.cfg" failonerror="true" verbose="true" preservelastmodified="true" />
   </target>