13 rem Contributors: |
13 rem Contributors: |
14 rem |
14 rem |
15 rem Description: |
15 rem Description: |
16 rem |
16 rem |
17 @echo on |
17 @echo on |
18 |
|
19 @if not exist "%1" md "%1" |
|
20 @if not exist "%1" goto :InvalidFolder |
|
21 @if not exist "%2" goto :MissingCert |
|
22 @if not exist "%3" goto :MissingKey |
|
23 |
|
24 rem The stub.. |
18 rem The stub.. |
25 makesis -s centrepswiteststub.pkg |
19 makesis -s centrepswiteststub.pkg |
26 |
20 |
27 rem Make and sign the KS12 package. This modifies the KS1.2 keyspace, which |
21 rem Make and sign the KS12 package. This modifies the KS1.2 keyspace, which |
28 rem is a user mod on the ROM keyspace K1. |
22 rem is a user mod on the ROM keyspace K1. |
29 makesis KS12.pkg KS12.sis |
23 makesis KS12.pkg |
30 signsis -S KS12.sis KS12s.sis %2 %3 |
24 signsis -S KS12.sis KS12s.sis certstore\centreproot.pem certstore\centreproot.key |
31 |
25 |
32 rem Make and sign the KS14 package. |
26 rem Make and sign the KS14 package. |
33 makesis KS14.pkg KS14.sis |
27 makesis KS14.pkg |
34 signsis -S KS14.sis KS14s.sis %2 %3 |
28 signsis -S KS14.sis KS14s.sis certstore\centreproot.pem certstore\centreproot.key |
35 |
29 |
36 rem Make and sign the KS2 package. This creates the KS2 keyspace, which |
30 rem Make and sign the KS2 package. This creates the KS2 keyspace, which |
37 rem is new. |
31 rem is new. |
38 makesis KS2.pkg KS2.sis |
32 makesis KS2.pkg |
39 signsis -S KS2.sis KS2s.sis %2 %3 |
33 signsis -S KS2.sis KS2s.sis certstore\centreproot.pem certstore\centreproot.key |
40 |
34 |
41 rem Make and sign the KS22 package. This creates the KS22 keyspace, which |
35 rem Make and sign the KS22 package. This creates the KS22 keyspace, which |
42 rem upgrades KS21 (user modified KS2). |
36 rem upgrades KS21 (user modified KS2). |
43 makesis KS22.pkg KS22.sis |
37 makesis KS22.pkg |
44 signsis -S KS22.sis KS22s.sis %2 %3 |
38 signsis -S KS22.sis KS22s.sis certstore\centreproot.pem certstore\centreproot.key |
45 |
39 |
46 rem Make and sign the KS3 package. This package will fail to install |
40 rem Make and sign the KS3 package. This package will fail to install |
47 rem because the referenced keyspace file is not in the ROM stub. |
41 rem because the referenced keyspace file is not in the ROM stub. |
48 makesis KS3.pkg KS3.sis |
42 makesis KS3.pkg |
49 signsis -S KS3.sis KS3s.sis %2 %3 |
43 signsis -S KS3.sis KS3s.sis certstore\centreproot.pem certstore\centreproot.key |
50 |
44 |
51 rem Make and sign the KS4 package. This keyspace contains various capabilities |
45 rem Make and sign the KS4 package. This keyspace contains various capabilities |
52 rem which we'll test don't change on a further install. |
46 rem which we'll test don't change on a further install. |
53 makesis KS4.pkg KS4.sis |
47 makesis KS4.pkg |
54 signsis -S KS4.sis KS4s.sis %2 %3 |
48 signsis -S KS4.sis KS4s.sis certstore\centreproot.pem certstore\centreproot.key |
55 |
49 |
56 rem Installs on top of the above, you might think the capabilities in the |
50 rem Installs on top of the above, you might think the capabilities in the |
57 rem above would be lost, but no - they are persisted before the caps in this |
51 rem above would be lost, but no - they are persisted before the caps in this |
58 rem package can splat them. |
52 rem package can splat them. |
59 makesis KS41.pkg KS41.sis |
53 makesis KS41.pkg |
60 signsis -S KS41.sis KS41s.sis %2 %3 |
54 signsis -S KS41.sis KS41s.sis certstore\centreproot.pem certstore\centreproot.key |
61 |
55 |
62 rem Make and sign the KP4 package. This keyspace contains various capabilities |
56 rem Make and sign the KP4 package. This keyspace contains various capabilities |
63 rem which we'll test don't change on a further install. |
57 rem which we'll test don't change on a further install. |
64 makesis KP4.pkg KP4.sis |
58 makesis KP4.pkg |
65 signsis -S KP4.sis KP4s.sis %2 %3 |
59 signsis -S KP4.sis KP4s.sis certstore\centreproot.pem certstore\centreproot.key |
66 |
60 |
67 rem Installs on top of the above, you might think the capabilities in the |
61 rem Installs on top of the above, you might think the capabilities in the |
68 rem above would be lost, but no - they are persisted before the caps in this |
62 rem above would be lost, but no - they are persisted before the caps in this |
69 rem package can splat them. |
63 rem package can splat them. |
70 makesis KP41.pkg KP41.sis |
64 makesis KP41.pkg |
71 signsis -S KP41.sis KP41s.sis %2 %3 |
65 signsis -S KP41.sis KP41s.sis certstore\centreproot.pem certstore\centreproot.key |
72 |
66 |
73 rem SP filenull for uninstalling KP4. |
67 rem SP filenull for uninstalling KP4. |
74 makesis KPS4.pkg KPS4.sis |
68 makesis KPS4.pkg |
75 signsis -S KPS4.sis KPS4s.sis %2 %3 |
69 signsis -S KPS4.sis KPS4s.sis certstore\centreproot.pem certstore\centreproot.key |
76 |
70 |
77 rem Installs on top of the ROM (51551554) |
71 rem Installs on top of the ROM (51551554) |
78 makesis KS51.pkg KS51.sis |
72 makesis KS51.pkg |
79 signsis -S KS51.sis KS51s.sis %2 %3 |
73 signsis -S KS51.sis KS51s.sis certstore\centreproot.pem certstore\centreproot.key |
80 |
74 |
81 rem Make and sign the KP2 package. This creates the KP2 keyspace, which |
75 rem Make and sign the KP2 package. This creates the KP2 keyspace, which |
82 rem is new. |
76 rem is new. |
83 makesis KP2.pkg KP2.sis |
77 makesis KP2.pkg |
84 signsis -S KP2.sis KP2s.sis %2 %3 |
78 signsis -S KP2.sis KP2s.sis certstore\centreproot.pem certstore\centreproot.key |
85 |
79 |
86 rem Make and sign the KP22 package. This creates the KP22 keyspace, which |
80 rem Make and sign the KP22 package. This creates the KP22 keyspace, which |
87 rem upgrades KP21 (user modified KP2). |
81 rem upgrades KP21 (user modified KP2). |
88 makesis KP22.pkg KP22.sis |
82 makesis KP22.pkg |
89 signsis -S KP22.sis KP22s.sis %2 %3 |
83 signsis -S KP22.sis KP22s.sis certstore\centreproot.pem certstore\centreproot.key |
90 |
84 |
91 rem Make and sign the KP23 package. |
85 rem Make and sign the KP23 package. |
92 makesis KP23.pkg KP23.sis |
86 makesis KP23.pkg |
93 signsis -S KP23.sis KP23s.sis %2 %3 |
87 signsis -S KP23.sis KP23s.sis certstore\centreproot.pem certstore\centreproot.key |
94 |
88 |
95 rem Make and sign the KP12 package. |
89 rem Make and sign the KP12 package. |
96 makesis KP12.pkg KP12.sis |
90 makesis KP12.pkg |
97 signsis -S KP12.sis KP12s.sis %2 %3 |
91 signsis -S KP12.sis KP12s.sis certstore\centreproot.pem certstore\centreproot.key |
98 |
92 |
99 rem Make and sign the KP14 package. |
93 rem Make and sign the KP14 package. |
100 makesis KP14.pkg KP14.sis |
94 makesis KP14.pkg |
101 signsis -S KP14.sis KP14s.sis %2 %3 |
95 signsis -S KP14.sis KP14s.sis certstore\centreproot.pem certstore\centreproot.key |
102 |
96 |
103 rem Make and sign the KPS14 standard patch, this SP is installed with a |
97 rem Make and sign the KPS14 standard patch, this SP is installed with a |
104 rem file-null so the 51551551 keyspace file can be removed. |
98 rem file-null so the 51551551 keyspace file can be removed. |
105 makesis KPS14.pkg KPS14.sis |
99 makesis KPS14.pkg |
106 signsis -S KPS14.sis KPS14s.sis %2 %3 |
100 signsis -S KPS14.sis KPS14s.sis certstore\centreproot.pem certstore\centreproot.key |
107 |
101 |
108 rem Make and sign the KP3 package. This package will fail to install |
102 rem Make and sign the KP3 package. This package will fail to install |
109 rem because the referenced keyspace file is not in the ROM stub. |
103 rem because the referenced keyspace file is not in the ROM stub. |
110 makesis KP3.pkg KP3.sis |
104 makesis KP3.pkg |
111 signsis -S KP3.sis KP3s.sis %2 %3 |
105 signsis -S KP3.sis KP3s.sis certstore\centreproot.pem certstore\centreproot.key |
112 |
106 |
113 rem Make and sign the KP62 package. |
107 rem Make and sign the KP62 package. |
114 makesis KP62.pkg KP62.sis |
108 makesis KP62.pkg |
115 signsis -S KP62.sis KP62s.sis %2 %3 |
109 signsis -S KP62.sis KP62s.sis certstore\centreproot.pem certstore\centreproot.key |
116 |
110 |
117 rem Make and sign the KP62 package. |
111 rem Make and sign the KP62 package. |
118 makesis KS62.pkg KS62.sis |
112 makesis KS62.pkg |
119 signsis -S KS62.sis KS62s.sis %2 %3 |
113 signsis -S KS62.sis KS62s.sis certstore\centreproot.pem certstore\centreproot.key |
120 |
114 |
121 rem Make and sign the KPS64 package. |
115 rem Make and sign the KPS64 package. |
122 makesis KPS64.pkg KPS64.sis |
116 makesis KPS64.pkg |
123 signsis -S KPS64.sis KPS64s.sis %2 %3 |
117 signsis -S KPS64.sis KPS64s.sis certstore\centreproot.pem certstore\centreproot.key |
124 |
118 |
125 rem Make and sign the KSX package. This is the embedded sis that goes in AppX.sis |
119 rem Make and sign the KSX package. This is the embedded sis that goes in AppX.sis |
126 makesis KSX.pkg KSX.sis |
120 makesis KSX.pkg |
127 signsis -S KSX.sis KSXs.sis %2 %3 |
121 signsis -S KSX.sis KSXs.sis certstore\centreproot.pem certstore\centreproot.key |
128 |
122 |
129 rem Make the AppX package for the application. This is the sis which contains the |
123 rem Make the AppX package for the application. This is the sis which contains the |
130 rem embedded sis that has the application repository as a Centrep patch. This sis |
124 rem embedded sis that has the application repository as a Centrep patch. This sis |
131 rem is self-signed and conditonally installs the exe file depending on the environment |
125 rem is self-signed and conditonally installs the exe file depending on the environment |
132 makesis APPX.pkg APPX.sis |
126 makesis APPX.pkg |
133 signsis -S APPX.sis APPXs.sis certstore\appx.cer certstore\appx.key |
127 signsis -S APPX.sis APPXs.sis certstore\appx.cer certstore\appx.key |
134 |
128 |
135 rem Make and sign the KSD package. This contains the corrupt KSD keyspace. |
129 rem Make and sign the KSD package. This contains the corrupt KSD keyspace. |
136 makesis KSD.pkg KSD.sis |
130 makesis KSD.pkg |
137 signsis -S KSD.sis KSDs.sis %2 %3 |
131 signsis -S KSD.sis KSDs.sis certstore\centreproot.pem certstore\centreproot.key |
138 |
132 |
139 rem Make the AppY,1,2 packages for the application. These sis files contain the |
133 rem Make the AppY,1,2 packages for the application. These sis files contain the |
140 rem embedded sis that has the application repository as a Centrep patch. This sis |
134 rem embedded sis that has the application repository as a Centrep patch. This sis |
141 rem is self-signed and conditonally installs the exe file depending on the environment |
135 rem is self-signed and conditonally installs the exe file depending on the environment |
142 rem These SIS files are used to test a standard installation |
136 rem These SIS files are used to test a standard installation |
143 |
137 |
144 rem The following packages are used for the APP-SP test |
138 rem The following packages are used for the APP-SP test |
145 |
139 |
146 rem Make and sign the KSY package. This is the embedded PU sis that goes in AppY.sis |
140 rem Make and sign the KSY package. This is the embedded PU sis that goes in AppY.sis |
147 makesis KSY.pkg KSY.sis |
141 makesis KSY.pkg |
148 signsis -S KSY.sis KSYs.sis %2 %3 |
142 signsis -S KSY.sis KSYs.sis certstore\centreproot.pem certstore\centreproot.key |
149 |
143 |
150 rem Make and sign the APPY package. This package will install an APP exe |
144 rem Make and sign the APPY package. This package will install an APP exe |
151 rem a keyspace in an embedded PU package and an SP package to be used for the uninstall |
145 rem a keyspace in an embedded PU package and an SP package to be used for the uninstall |
152 makesis APPY.pkg APPY.sis |
146 makesis APPY.pkg |
153 signsis -S APPY.sis APPYs.sis certstore\appx.cer certstore\appx.key |
147 signsis -S APPY.sis APPYs.sis certstore\appx.cer certstore\appx.key |
154 |
148 |
155 |
149 |
156 rem Make and sign the KSY1 package. This is the embedded PU sis that goes in AppY1.sis |
150 rem Make and sign the KSY1 package. This is the embedded PU sis that goes in AppY1.sis |
157 makesis KSY1.pkg KSY1.sis |
151 makesis KSY1.pkg |
158 signsis -S KSY1.sis KSY1s.sis %2 %3 |
152 signsis -S KSY1.sis KSY1s.sis certstore\centreproot.pem certstore\centreproot.key |
159 |
153 |
160 rem Make and sign the APPY1 package. This package will install the APP exe |
154 rem Make and sign the APPY1 package. This package will install the APP exe |
161 rem a new version of the keyspace in an embedded PU package and an SP package |
155 rem a new version of the keyspace in an embedded PU package and an SP package |
162 rem to be used for the uninstall |
156 rem to be used for the uninstall |
163 makesis APPY1.pkg APPY1.sis |
157 makesis APPY1.pkg |
164 signsis -S APPY1.sis APPY1s.sis certstore\appx.cer certstore\appx.key |
158 signsis -S APPY1.sis APPY1s.sis certstore\appx.cer certstore\appx.key |
165 |
159 |
166 |
160 |
167 rem Make and sign the KSY2 package. This is the embedded PU sis that goes in AppY2.sis |
161 rem Make and sign the KSY2 package. This is the embedded PU sis that goes in AppY2.sis |
168 makesis KSY2.pkg KSY2.sis |
162 makesis KSY2.pkg |
169 signsis -S KSY2.sis KSY2s.sis %2 %3 |
163 signsis -S KSY2.sis KSY2s.sis certstore\centreproot.pem certstore\centreproot.key |
170 |
164 |
171 rem Make and sign the APPY2 package. This package will install the APP exe |
165 rem Make and sign the APPY2 package. This package will install the APP exe |
172 rem a new version of the keyspace in an embedded PU package and an SP package |
166 rem a new version of the keyspace in an embedded PU package and an SP package |
173 rem to be used for the uninstall |
167 rem to be used for the uninstall |
174 makesis APPY2.pkg APPY2.sis |
168 makesis APPY2.pkg |
175 signsis -S APPY2.sis APPY2s.sis certstore\appx.cer certstore\appx.key |
169 signsis -S APPY2.sis APPY2s.sis certstore\appx.cer certstore\appx.key |
176 |
170 |
177 echo f | XCOPY /fry *.sis %1\ |
|
178 del /f *.sis |
|
179 @goto :EOF |
|
180 |
|
181 :InvalidFolder |
|
182 @echo ERROR: Can't create folder %1 |
|
183 @goto :EOF |
|
184 |
|
185 :MissingCert |
|
186 @echo ERROR: Missing certificate %2 |
|
187 @goto :EOF |
|
188 |
|
189 :MissingKey |
|
190 @echo ERROR: Missing certificate key %3 |
|
191 @goto :EOF |
|