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 } |
|