]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2TbltDevicePkg/Feature/Capsule/GenerateCapsule/LvfsGenCapsuleSampleColor.bat
Vlv2TbltDevicePkg/Capsule: Add Linux/LVFS generation scripts
[mirror_edk2.git] / Vlv2TbltDevicePkg / Feature / Capsule / GenerateCapsule / LvfsGenCapsuleSampleColor.bat
CommitLineData
1bb262ea
MK
1@REM @file\r
2@REM Windows batch file to generate UEFI capsules for a sample device\r
3@REM\r
4@REM Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>\r
5@REM\r
6@REM SPDX-License-Identifier: BSD-2-Clause-Patent\r
7@REM\r
8\r
9@echo off\r
10setlocal\r
11\r
12set COLOR=%1\r
13\r
14set FMP_CAPSULE_VENDOR=Intel\r
15set FMP_CAPSULE_GUID=%2\r
16set FMP_CAPSULE_BASE_NAME=%COLOR%\r
17set FMP_CAPSULE_FILE=%FMP_CAPSULE_BASE_NAME%.cap\r
18set FMP_CAPSULE_VERSION=0x00000010\r
19set FMP_CAPSULE_VERSION_DECIMAL=16\r
20set FMP_CAPSULE_STRING=0.0.0.16\r
21set FMP_CAPSULE_NAME="%FMP_CAPSULE_BASE_NAME% Progress Bar %FMP_CAPSULE_STRING%"\r
22set FMP_CAPSULE_LSV=0x00000000\r
23set FMP_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx\r
24set FMP_CAPSULE_PAYLOAD=Payload.bin\r
25set WINDOWS_CAPSULE_KEY=SAMPLE_DEVELOPMENT.pfx\r
26\r
27echo "%COLOR% Progress Bar" > %FMP_CAPSULE_PAYLOAD%\r
28\r
29if not exist "%FMP_CAPSULE_PAYLOAD%" exit\r
30\r
31if exist "%FMP_CAPSULE_KEY%" (\r
32 REM\r
33 REM Sign capsule using signtool\r
34 REM\r
35 call GenerateCapsule ^\r
36 --encode ^\r
37 -v ^\r
38 --guid %FMP_CAPSULE_GUID% ^\r
39 --fw-version %FMP_CAPSULE_VERSION% ^\r
40 --lsv %FMP_CAPSULE_LSV% ^\r
41 --capflag PersistAcrossReset ^\r
42 --capflag InitiateReset ^\r
43 --signing-tool-path="c:\Program Files (x86)\Windows Kits\8.1\bin\x86" ^\r
44 --pfx-file %FMP_CAPSULE_KEY% ^\r
45 -o %FMP_CAPSULE_FILE% ^\r
46 %FMP_CAPSULE_PAYLOAD%\r
47\r
48 copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\SampleDevelopment\r
49\r
50 copy %FMP_CAPSULE_FILE% firmware.bin\r
51 copy template.metainfo.xml firmware.metainfo.xml\r
52 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
53 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
54 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_VERSION_DECIMAL', '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
55 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
56 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
57 makecab /f Lvfs.ddf\r
58 copy firmware.cab %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPSULE_BASE_NAME%-%FMP_CAPSULE_STRING%.cab\r
59\r
60 erase firmware.cab\r
61 erase setup.inf\r
62 erase setup.rpt\r
63\r
64 erase firmware.metainfo.xml\r
65 erase firmware.bin\r
66 erase %FMP_CAPSULE_FILE%\r
67)\r
68\r
69if exist "NewCert.pem" (\r
70 REM\r
71 REM Sign capsule using OpenSSL with a new certificate\r
72 REM\r
73 call GenerateCapsule ^\r
74 --encode ^\r
75 -v ^\r
76 --guid %FMP_CAPSULE_GUID% ^\r
77 --fw-version %FMP_CAPSULE_VERSION% ^\r
78 --lsv %FMP_CAPSULE_LSV% ^\r
79 --capflag PersistAcrossReset ^\r
80 --capflag InitiateReset ^\r
81 --signer-private-cert=NewCert.pem ^\r
82 --other-public-cert=NewSub.pub.pem ^\r
83 --trusted-public-cert=NewRoot.pub.pem ^\r
84 -o %FMP_CAPSULE_FILE% ^\r
85 %FMP_CAPSULE_PAYLOAD%\r
86\r
87 copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\NewCert\r
88\r
89 copy %FMP_CAPSULE_FILE% firmware.bin\r
90 copy template.metainfo.xml firmware.metainfo.xml\r
91 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
92 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
93 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_VERSION_DECIMAL', '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
94 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
95 powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
96 makecab /f Lvfs.ddf\r
97 copy firmware.cab %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPSULE_BASE_NAME%-%FMP_CAPSULE_STRING%.cab\r
98\r
99 erase firmware.cab\r
100 erase setup.inf\r
101 erase setup.rpt\r
102\r
103 erase firmware.metainfo.xml\r
104 erase firmware.bin\r
105 erase %FMP_CAPSULE_FILE%\r
106)\r
107\r
108REM\r
109REM Sign capsule using OpenSSL with EDK II Test Certificate\r
110REM\r
111call GenerateCapsule ^\r
112 --encode ^\r
113 -v ^\r
114 --guid %FMP_CAPSULE_GUID% ^\r
115 --fw-version %FMP_CAPSULE_VERSION% ^\r
116 --lsv %FMP_CAPSULE_LSV% ^\r
117 --capflag PersistAcrossReset ^\r
118 --capflag InitiateReset ^\r
119 --signer-private-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestCert.pem ^\r
120 --other-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestSub.pub.pem ^\r
121 --trusted-public-cert=%WORKSPACE%\edk2\BaseTools\Source\Python\Pkcs7Sign\TestRoot.pub.pem ^\r
122 -o %FMP_CAPSULE_FILE% ^\r
123 %FMP_CAPSULE_PAYLOAD%\r
124\r
125copy %FMP_CAPSULE_FILE% %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\r
126\r
127copy %FMP_CAPSULE_FILE% firmware.bin\r
128copy template.metainfo.xml firmware.metainfo.xml\r
129powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_GUID', '%FMP_CAPSULE_GUID%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
130powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_BASE_NAME', '%FMP_CAPSULE_BASE_NAME%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
131powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_VERSION_DECIMAL', '%FMP_CAPSULE_VERSION_DECIMAL%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
132powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_STRING', '%FMP_CAPSULE_STRING%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
133powershell -Command "(gc firmware.metainfo.xml) -replace 'FMP_CAPSULE_DATE', '%date%' | Out-File firmware.metainfo.xml -encoding ASCII"\r
134makecab /f Lvfs.ddf\r
135copy firmware.cab %WORKSPACE%\Build\Vlv2TbltDevicePkg\Capsules\TestCert\%FMP_CAPSULE_BASE_NAME%-%FMP_CAPSULE_STRING%.cab\r
136\r
137erase firmware.cab\r
138erase setup.inf\r
139erase setup.rpt\r
140\r
141erase firmware.metainfo.xml\r
142erase firmware.bin\r
143erase %FMP_CAPSULE_FILE%\r
144\r
145erase %FMP_CAPSULE_PAYLOAD%\r