installationservices/swinstallationfw/test/tusif/group/createrefbinfiles.pl
branchRCL_3
changeset 66 8b7f4e561641
parent 65 7333d7932ef7
child 70 e8965914fac7
equal deleted inserted replaced
65:7333d7932ef7 66:8b7f4e561641
     1 #
       
     2 # Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 # All rights reserved.
       
     4 # This component and the accompanying materials are made available
       
     5 # under the terms of the License "Eclipse Public License v1.0"
       
     6 # which accompanies this distribution, and is available
       
     7 # at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 #
       
     9 # Initial Contributors:
       
    10 # Nokia Corporation - initial contribution.
       
    11 #
       
    12 # Contributors:
       
    13 #
       
    14 # Description: 
       
    15 # This script creates reference binary packages that may consists of embedded packages
       
    16 #
       
    17 
       
    18 use File::Copy;
       
    19 
       
    20 sub MakeBinPkg ($);
       
    21 
       
    22 my $PLATFORM=@ARGV[0];
       
    23 my $CONFIGURATION=@ARGV[1];
       
    24 
       
    25 my $SecuritySourceDir = $ENV{SECURITYSOURCEDIR};
       
    26 my $RefSamplePath = "$SecuritySourceDir\\installationservices\\refswinstallationplugin\\sample";
       
    27 my $RefDataPath = "$SecuritySourceDir\\installationservices\\refswinstallationplugin\\test\\scripts\\data";
       
    28 my $IntegTestDataPath = "$SecuritySourceDir\\installationservices\\swinstallationfw\\test\\tusif\\scripts\\data";
       
    29 my $SifTestDataPath = "$SecuritySourceDir\\installationservices\\swinstallationfw\\test\\scripts\\data";
       
    30 my $BUILDDIR = "\\epoc32\\release\\$PLATFORM\\$CONFIGURATION";
       
    31 
       
    32 my $DATADIR = "$BUILDDIR\\z\\tusif\\tsifintegration\\data";
       
    33 my $ARMV5DATADIR = "\\epoc32\\data\\z\\tusif\\tsifintegration\\data";
       
    34 
       
    35 my $REFDATADIR = "$BUILDDIR\\z\\tusif\\tsifrefinstaller\\data";
       
    36 my $REFARMV5DATADIR = "\\epoc32\\data\\z\\tusif\\tsifrefinstaller\\data";
       
    37 
       
    38 my $BASE = 'base.sifrefpkg';
       
    39 my $BASE3 = 'base3.sifrefpkg';
       
    40 my $UPGRADE = 'upgrade.sifrefpkg';
       
    41 my $INVALID = 'invalid.sifrefpkg';
       
    42 my $INVALID2 = 'invalid2.sifrefpkg';
       
    43 my $INVALID3 = 'invalid3.sifrefpkg';
       
    44 my $INVALID4 = 'invalid4.sifrefpkg';
       
    45 my $INVALID5 = 'invalid5.sifrefpkg';
       
    46 my $INVALID6 = 'invalid6.sifrefpkg';
       
    47 my $INVALID7 = 'invalid7.sifrefpkg';
       
    48 my $INVALID8 = 'invalid8.sifrefpkg';
       
    49 my $INVALID9 = 'invalid9.sifrefpkg';
       
    50 my $INVALID10 = 'invalid10.sifrefpkg';
       
    51 my $INVALID11 = 'invalid11.sifrefpkg';
       
    52 my $INVALID12 = 'invalid12.sifrefpkg';
       
    53 my $BASE2 = 'base2.sifrefpkg';
       
    54 my $SISCHILD = 'sifintegrationtestbase.sis';
       
    55 my $FILEINUSETEST = 'fileinusetest.sifrefpkg';
       
    56 my $BINBASE = 'base.sifrefbinpkg';
       
    57 my $BINBASE3 = 'base3.sifrefbinpkg';
       
    58 my $BINUPGRADE = 'upgrade.sifrefbinpkg';
       
    59 my $BININVALID = 'invalid.sifrefbinpkg';
       
    60 my $BININVALID2 = 'invalid2.sifrefbinpkg';
       
    61 my $BININVALID3 = 'invalid3.sifrefbinpkg';
       
    62 my $BININVALID4 = 'invalid4.sifrefbinpkg';
       
    63 my $BININVALID5 = 'invalid5.sifrefbinpkg';
       
    64 my $BININVALID6 = 'invalid6.sifrefbinpkg';
       
    65 my $BININVALID7 = 'invalid7.sifrefbinpkg';
       
    66 my $BININVALID8 = 'invalid8.sifrefbinpkg';
       
    67 my $BININVALID9 = 'invalid9.sifrefbinpkg';
       
    68 my $BININVALID10 = 'invalid10.sifrefbinpkg';
       
    69 my $BININVALID11 = 'invalid11.sifrefbinpkg';
       
    70 my $BININVALID12 = 'invalid12.sifrefbinpkg';
       
    71 my $BINFILEINUSETEST = 'fileinusetest.sifrefbinpkg';
       
    72 my $BINCHILD = 'child.sifrefbinpkg';
       
    73 my $GRANDCHILD = 'test.nonnativepackage.txt';
       
    74 my $BINPARENT = 'compound.sifrefbinpkg';
       
    75 my $BINHOMOGENEOUSPARENT = 'homogeneouscompound.sifrefbinpkg';
       
    76 
       
    77 print "Generating simple packages...\n";
       
    78 
       
    79 # Create a simple base package
       
    80 MakeBinPkg("--pkg $RefSamplePath\\$BASE --binpkg $RefSamplePath\\$BINBASE");
       
    81 MakeBinPkg("--pkg $RefSamplePath\\$UPGRADE --binpkg $RefSamplePath\\$BINUPGRADE");
       
    82 MakeBinPkg("--pkg $RefSamplePath\\$INVALID --binpkg $RefSamplePath\\$BININVALID");
       
    83 MakeBinPkg("--pkg $RefDataPath\\$BASE3 --binpkg $RefDataPath\\$BINBASE3");
       
    84 MakeBinPkg("--pkg $RefDataPath\\$INVALID2 --binpkg $RefDataPath\\$BININVALID2");
       
    85 MakeBinPkg("--pkg $RefDataPath\\$INVALID3 --binpkg $RefDataPath\\$BININVALID3");
       
    86 MakeBinPkg("--pkg $RefDataPath\\$INVALID4 --binpkg $RefDataPath\\$BININVALID4");
       
    87 MakeBinPkg("--pkg $RefDataPath\\$INVALID5 --binpkg $RefDataPath\\$BININVALID5");
       
    88 MakeBinPkg("--pkg $RefDataPath\\$INVALID6 --binpkg $RefDataPath\\$BININVALID6");
       
    89 MakeBinPkg("--pkg $RefDataPath\\$INVALID7 --binpkg $RefDataPath\\$BININVALID7");
       
    90 MakeBinPkg("--pkg $RefDataPath\\$INVALID8 --binpkg $RefDataPath\\$BININVALID8");
       
    91 MakeBinPkg("--pkg $RefDataPath\\$INVALID9 --binpkg $RefDataPath\\$BININVALID9");
       
    92 MakeBinPkg("--pkg $RefDataPath\\$INVALID10 --binpkg $RefDataPath\\$BININVALID10");
       
    93 MakeBinPkg("--pkg $RefDataPath\\$INVALID11 --binpkg $RefDataPath\\$BININVALID11");
       
    94 MakeBinPkg("--pkg $RefDataPath\\$INVALID12 --binpkg $RefDataPath\\$BININVALID12");
       
    95 MakeBinPkg("--pkg $RefDataPath\\$FILEINUSETEST --binpkg $RefDataPath\\$BINFILEINUSETEST");
       
    96 print "Generating embedded packages...\n";
       
    97 
       
    98 # Create a compound package that consists of 3 embedded packages of the same type
       
    99 MakeBinPkg("perl $RefSamplePath\\makebinpkg.pl --pkg $RefDataPath\\$BASE2 --emb $RefSamplePath\\$BINBASE --emb $RefDataPath\\$BINBASE3 --binpkg $RefDataPath\\$BINHOMOGENEOUSPARENT");
       
   100 # Create a compound package that consists of 3 embedded packages of mixed types
       
   101 MakeBinPkg("perl $RefSamplePath\\makebinpkg.pl --pkg $RefSamplePath\\$BASE --emb $SifTestDataPath\\$GRANDCHILD --binpkg $IntegTestDataPath\\$BINCHILD");
       
   102 MakeBinPkg("perl $RefSamplePath\\makebinpkg.pl --pkg $RefDataPath\\$BASE2 --emb $IntegTestDataPath\\$BINCHILD --emb $BUILDDIR\\$SISCHILD --emb $RefDataPath\\$BINBASE3 --binpkg $IntegTestDataPath\\$BINPARENT");
       
   103 
       
   104 # Copy the generated package onto the Z drive
       
   105 # move reference packages
       
   106 my $CURREFDATADIR = '';
       
   107 if (lc($PLATFORM) ne "armv5")
       
   108 	{
       
   109 	$CURREFDATADIR = $REFDATADIR;
       
   110 	}
       
   111 else
       
   112 	{
       
   113 	$CURREFDATADIR = $REFARMV5DATADIR;
       
   114 	}
       
   115 unlink "$CURREFDATADIR\\$BINBASE";
       
   116 unlink "$CURREFDATADIR\\$BINUPGRADE";
       
   117 unlink "$CURREFDATADIR\\$BININVALID";
       
   118 unlink "$CURREFDATADIR\\$BININVALID2";
       
   119 mkdir "$CURREFDATADIR" unless -d "$CURREFDATADIR";
       
   120 move("$RefSamplePath\\$BINBASE", "$CURREFDATADIR\\$BINBASE");
       
   121 move("$RefSamplePath\\$BINUPGRADE", "$CURREFDATADIR\\$BINUPGRADE");
       
   122 move("$RefSamplePath\\$BININVALID", "$CURREFDATADIR\\$BININVALID");
       
   123 move("$RefDataPath\\$BINBASE3", "$CURREFDATADIR\\$BINBASE3");
       
   124 move("$RefDataPath\\$BININVALID2", "$CURREFDATADIR\\$BININVALID2");
       
   125 move("$RefDataPath\\$BININVALID3", "$CURREFDATADIR\\$BININVALID3");
       
   126 move("$RefDataPath\\$BININVALID4", "$CURREFDATADIR\\$BININVALID4");
       
   127 move("$RefDataPath\\$BININVALID5", "$CURREFDATADIR\\$BININVALID5");
       
   128 move("$RefDataPath\\$BININVALID6", "$CURREFDATADIR\\$BININVALID6");
       
   129 move("$RefDataPath\\$BININVALID7", "$CURREFDATADIR\\$BININVALID7");
       
   130 move("$RefDataPath\\$BININVALID8", "$CURREFDATADIR\\$BININVALID8");
       
   131 move("$RefDataPath\\$BININVALID9", "$CURREFDATADIR\\$BININVALID9");
       
   132 move("$RefDataPath\\$BININVALID10", "$CURREFDATADIR\\$BININVALID10");
       
   133 move("$RefDataPath\\$BININVALID11", "$CURREFDATADIR\\$BININVALID11");
       
   134 move("$RefDataPath\\$BININVALID12", "$CURREFDATADIR\\$BININVALID12");
       
   135 move("$RefDataPath\\$BINHOMOGENEOUSPARENT", "$CURREFDATADIR\\$BINHOMOGENEOUSPARENT");
       
   136 move("$RefDataPath\\$BINFILEINUSETEST", "$CURREFDATADIR\\$BINFILEINUSETEST");
       
   137 
       
   138 # move integration packages
       
   139 my $CURDATADIR = '';
       
   140 if (lc($PLATFORM) ne "armv5")
       
   141 	{
       
   142 	$CURDATADIR = $DATADIR;
       
   143 	}
       
   144 else
       
   145 	{
       
   146 	$CURDATADIR = $ARMV5DATADIR;
       
   147 	}
       
   148 
       
   149 unlink "$CURDATADIR\\$BINPARENT";
       
   150 mkdir "$CURDATADIR" unless -d "$CURDATADIR";
       
   151 move("$IntegTestDataPath\\$BINPARENT", "$CURDATADIR\\$BINPARENT");
       
   152 
       
   153 unlink "$IntegTestDataPath\\$BINCHILD";
       
   154 
       
   155 # Read the contents of a file into a string and return it
       
   156 sub MakeBinPkg ($) {
       
   157 	my ($args) = @_;
       
   158 	my $cmd = "perl $RefSamplePath\\makebinpkg.pl $args";
       
   159 	`$cmd`;
       
   160 }