# HG changeset patch # User Brendan Donegan brendand@symbian.org # Date 1253187439 -3600 # Node ID 48fbe8fe50763fac227e3bbec2848f80915a8ecc # Parent 2ad847d2142365a585106136690078de9dc8d6a6# Parent 991d89a55c87164a3e41176d8a02bfa8896380c9 merge diff -r 2ad847d21423 -r 48fbe8fe5076 .hgtags --- 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 diff -r 2ad847d21423 -r 48fbe8fe5076 common/build.postbuild.xml --- 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 @@ - - - - - - - - - - - - - + + + + @@ -249,7 +240,6 @@ - diff -r 2ad847d21423 -r 48fbe8fe5076 common/build.xml --- 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 @@ - + + @@ -451,7 +452,7 @@ - + @@ -475,6 +476,14 @@ + + + + + + + + diff -r 2ad847d21423 -r 48fbe8fe5076 common/templates/zip.cfg.xml.ftl.template --- 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 @@ - + @@ -34,17 +34,16 @@ - - - + - + + @@ -96,6 +95,15 @@ + + + + + + + + + @@ -106,5 +114,10 @@ + + + + + diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/browser/browser.xml --- 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 @@ - bcwebsrv/winscw_udeb/favouritesbctest.dll + bcbrowser/winscw_udeb/favouritesbctest.dll \ No newline at end of file diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/landmarks_api/landmarks.xml --- /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 @@ + + + 1 + admin + 10 + + Landmarks API BCTests + + + + + + + + + + + + + + + makedir + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + execute + + + + + + + + + fetch-log + + + + + + + + + + landmarks/winscw_udeb/testlandmarksapi.dll + landmarks/general/testframework/TestFramework_Landmarks.ini + landmarks/general/testframework/testlandmarksapi.cfg + landmarks/general/smiltemplate.mif + landmarks/general/testEposLmImport.lmx + landmarks/general/testEposLmImportCollection.lmx + + diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/landmarks_api/landmarks_api.pl --- /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/*"); diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/lmdbmanagement/lmdbmanagement.pl --- /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 +# +# 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/*"); diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/lmdbmanagement/lmdbmanagement.xml --- /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 @@ + + + 1 + admin + 10 + + Landmarks Database Management BC Tests + + + + + + + + + + + + + + + makedir + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + + + execute + + + + + + + + + fetch-log + + + + + + + + + + lmdbmanagementtest/winscw_udeb/testdbmanagementapi.dll + lmdbmanagementtest/general/testframework/testframework_lmdbmanagement.ini + lmdbmanagementtest/general/testframework/testdbmanagementapi.cfg + + diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/lmsearch/lmsearch.pl --- /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 +# +# 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/*"); diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/ats/bctest/locationsrv/lmsearch/lmsearch.xml --- /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 @@ + + + 1 + admin + 10 + + Landmarks Search BC Tests + + + + + + + + + + + + + + + makedir + + + + + + install + + + + + + + + + install + + + + + + + + + install + + + + + + + + + execute + + + + + + + + + fetch-log + + + + + + + + + + lmsearchtest/winscw_udeb/testlmksearchapi.dll + lmsearchtest/general/testframework/TestFramework_lmsearch.ini + lmsearchtest/general/testframework/testlmksearchapi.cfg + + diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/populateziptemplate.pl --- 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 { diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/sysModelFilter.pl --- /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 "\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 ""; +} + diff -r 2ad847d21423 -r 48fbe8fe5076 common/tools/zip_includefiles.pl --- 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 diff -r 2ad847d21423 -r 48fbe8fe5076 sf-platform/build.xml --- 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 @@ [SF-platform-bootstrap-gt] - + + +