5 A modern, feature-rich, cross-platform firmware development
6 environment for the UEFI and PI specifications from www.uefi.org.
11 ============================= ================= =============== ===================
12 Host Type & Toolchain Build Status Test Status Code Coverage
13 ============================= ================= =============== ===================
14 Windows_VS2019_ |WindowsCiBuild| |WindowsCiTest| |WindowsCiCoverage|
15 Ubuntu_GCC5_ |UbuntuCiBuild| |UbuntuCiTest| |UbuntuCiCoverage|
16 ============================= ================= =============== ===================
18 `More CI Build information <.pytool/Readme.md>`__
20 Platform CI Build Status
21 ------------------------
23 Microsoft Windows VS2019
24 ````````````````````````
26 ============================= ================= ============= ============= ==============
27 Toolchain CONFIG DEBUG RELEASE NOOPT
28 ============================= ================= ============= ============= ==============
29 EmulatorPkg_Win_VS2019_ | IA32 |em32d| |em32r| |em32n|
30 | | X64 |em64d| |em64r| |em64n|
31 OvmfPkg_Win_VS2019_ | IA32 |op32d| |op32r| |op32n|
32 | | X64 |op64d| |op64r| |op64n|
33 | | IA32 X64 |op3264d| |op3264r| |op3264n|
34 | | IA32 X64 FULL |op3264fd| |op3264fr| |op3264fn|
35 ============================= ================= ============= ============= ==============
40 ============================= ================= ============= ============= ==============
41 Toolchain CONFIG DEBUG RELEASE NOOPT
42 ============================= ================= ============= ============= ==============
43 ArmVirtPkg_Ubuntu_GCC5_ | AARCH64 |avAArch64du| |avAArch64ru| |avAArch64nu|
44 | | ARM |avArmdu| |avArmru| |avArmnu|
45 EmulatorPkg_Ubuntu_GCC5_ | IA32 |em32du| |em32ru| |em32nu|
46 | | X64 |em64du| |em64ru| |em64nu|
47 OvmfPkg_Ubuntu_GCC5_ | IA32 |op32du| |op32ru| |op32nu|
48 | | X64 |op64du| |op64ru| |op64nu|
49 | | IA32 X64 |op3264du| |op3264ru| |op3264nu|
50 | | IA32 X64 FULL |op3264fdu| |op3264fru| |op3264fru|
51 ============================= ================= ============= ============= ==============
53 |TCBZ_2668|_ - EmulatorPkg Ubuntu GCC5 Segfaults during execution.
55 |TCBZ_2639|_ - EmulatorPkg Ubuntu GCC5 Segfaults during execution.
57 `More ArmVirtPkg CI Build Information <ArmVirtPkg/PlatformCI/ReadMe.md>`__
59 `More EmulatorPkg CI Build Information <EmulatorPkg/PlatformCI/ReadMe.md>`__
61 `More OvmfPkg CI Build Information <OvmfPkg/PlatformCI/ReadMe.md>`__
67 The majority of the content in the EDK II open source project uses a
68 `BSD-2-Clause Plus Patent License <License.txt>`__. The EDK II open
69 source project contains the following components that are covered by additional
72 - `BaseTools/Source/C/LzmaCompress <BaseTools/Source/C/LzmaCompress/LZMA-SDK-README.txt>`__
73 - `BaseTools/Source/C/VfrCompile/Pccts <BaseTools/Source/C/VfrCompile/Pccts/RIGHTS>`__
74 - `CryptoPkg\Library\BaseCryptLib\SysCall\inet_pton.c <CryptoPkg\Library\BaseCryptLib\SysCall\inet_pton.c>`__
75 - `CryptoPkg\Library\Include\crypto\dso_conf.h <https://github.com/openssl/openssl/blob/e2e09d9fba1187f8d6aafaa34d4172f56f1ffb72/LICENSE>`__
76 - `CryptoPkg\Library\Include\openssl\opensslconf.h <https://github.com/openssl/openssl/blob/e2e09d9fba1187f8d6aafaa34d4172f56f1ffb72/LICENSE>`__
77 - `EmbeddedPkg/Library/FdtLib <EmbeddedPkg/Library/FdtLib/fdt.c>`__. (EDK II uses BSD License)
78 - `EmbeddedPkg/Include/fdt.h <EmbeddedPkg/Include/fdt.h>`__. (EDK II uses BSD Licence)
79 - `EmbeddedPkg/Include/libfdt.h <EmbeddedPkg/Include/libfdt.h>`__. (EDK II uses BSD License)
80 - `MdeModulePkg/Library/LzmaCustomDecompressLib <MdeModulePkg/Library/LzmaCustomDecompressLib/LZMA-SDK-README.txt>`__
81 - `OvmfPkg <OvmfPkg/License.txt>`__
83 The EDK II open source project uses content from upstream projects as git submodules
84 that are covered by additional licenses.
86 - `ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 <https://github.com/ucb-bar/berkeley-softfloat-3/blob/b64af41c3276f97f0e181920400ee056b9c88037/COPYING.txt>`__
87 - `BaseTools/Source/C/BrotliCompress/brotli <https://github.com/google/brotli/blob/666c3280cc11dc433c303d79a83d4ffbdd12cc8d/LICENSE>`__
88 - `CryptoPkg/Library/OpensslLib/openssl <https://github.com/openssl/openssl/blob/e2e09d9fba1187f8d6aafaa34d4172f56f1ffb72/LICENSE>`__
89 - `MdeModulePkg/Library/BrotliCustomDecompressLib/brotli <https://github.com/google/brotli/blob/666c3280cc11dc433c303d79a83d4ffbdd12cc8d/LICENSE>`__
90 - `MdeModulePkg/Universal/RegularExpressionDxe/oniguruma <https://github.com/kkos/oniguruma/blob/abfc8ff81df4067f309032467785e06975678f0d/COPYING>`__
91 - `UnitTestFrameworkPkg/Library/CmockaLib/cmocka <https://git.cryptomilk.org/projects/cmocka.git/tree/COPYING?h=cmocka-1.1.5&id=f5e2cd77c88d9f792562888d2b70c5a396bfbf7a>`__
93 The EDK II Project is composed of packages. The maintainers for each package
94 are listed in `Maintainers.txt <Maintainers.txt>`__.
99 - `TianoCore <http://www.tianocore.org>`__
101 II <https://github.com/tianocore/tianocore.github.io/wiki/EDK-II>`__
102 - `Getting Started with EDK
103 II <https://github.com/tianocore/tianocore.github.io/wiki/Getting-Started-with-EDK-II>`__
105 Lists <https://github.com/tianocore/tianocore.github.io/wiki/Mailing-Lists>`__
106 - `TianoCore Bugzilla <https://bugzilla.tianocore.org>`__
108 Contribute <https://github.com/tianocore/tianocore.github.io/wiki/How-To-Contribute>`__
110 Planning <https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Release-Planning>`__
115 To make a contribution to a TianoCore project, follow these steps.
117 #. Create a change description in the format specified below to
118 use in the source control commit log.
119 #. Your commit message must include your ``Signed-off-by`` signature
120 #. Submit your code to the TianoCore project using the process
121 that the project documents on its web page. If the process is
122 not documented, then submit the code on development email list
124 #. It is preferred that contributions are submitted using the same
125 copyright license as the base project. When that is not possible,
126 then contributions using the following licenses can be accepted:
128 - BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause
129 - BSD (3-clause): http://opensource.org/licenses/BSD-3-Clause
130 - MIT: http://opensource.org/licenses/MIT
131 - Python-2.0: http://opensource.org/licenses/Python-2.0
132 - Zlib: http://opensource.org/licenses/Zlib
136 - FreeBSD Documentation License
137 https://www.freebsd.org/copyright/freebsd-doc-license.html
139 Contributions of code put into the public domain can also be accepted.
141 Contributions using other licenses might be accepted, but further
142 review will be required.
144 Developer Certificate of Origin
145 -------------------------------
147 Your change description should use the standard format for a
148 commit message, and must include your ``Signed-off-by`` signature.
150 In order to keep track of who did what, all patches contributed must
151 include a statement that to the best of the contributor's knowledge
152 they have the right to contribute it under the specified license.
154 The test for this is as specified in the `Developer's Certificate of
155 Origin (DCO) 1.1 <https://developercertificate.org/>`__. The contributor
156 certifies compliance by adding a line saying
158 Signed-off-by: Developer Name developer@example.org
160 where ``Developer Name`` is the contributor's real name, and the email
161 address is one the developer is reachable through at the time of
166 Developer's Certificate of Origin 1.1
168 By making a contribution to this project, I certify that:
170 (a) The contribution was created in whole or in part by me and I
171 have the right to submit it under the open source license
172 indicated in the file; or
174 (b) The contribution is based upon previous work that, to the best
175 of my knowledge, is covered under an appropriate open source
176 license and I have the right under that license to submit that
177 work with modifications, whether created in whole or in part
178 by me, under the same open source license (unless I am
179 permitted to submit under a different license), as indicated
182 (c) The contribution was provided directly to me by some other
183 person who certified (a), (b) or (c) and I have not modified
186 (d) I understand and agree that this project and the contribution
187 are public and that a record of the contribution (including all
188 personal information I submit with it, including my sign-off) is
189 maintained indefinitely and may be redistributed consistent with
190 this project or the open source license(s) involved.
192 Sample Change Description / Commit Message
193 ------------------------------------------
197 From: Contributor Name <contributor@example.com>
198 Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary
202 Signed-off-by: Contributor Name <contributor@example.com>
204 Notes for sample patch email
205 ````````````````````````````
207 - The first line of commit message is taken from the email's subject
208 line following ``[Repository/Branch PATCH]``. The remaining portion
209 of the commit message is the email's content.
210 - ``git format-patch`` is one way to create this format
212 Definitions for sample patch email
213 ``````````````````````````````````
215 - ``Repository`` is the identifier of the repository the patch applies.
216 This identifier should only be provided for repositories other than
217 ``edk2``. For example ``edk2-BuildSpecification`` or ``staging``.
218 - ``Branch`` is the identifier of the branch the patch applies. This
219 identifier should only be provided for branches other than
221 For example ``edk2/UDK2015``,
222 ``edk2-BuildSpecification/release/1.27``, or
223 ``staging/edk2-test``.
224 - ``Module`` is a short identifier for the affected code or
225 documentation. For example ``MdePkg``, ``MdeModulePkg/UsbBusDxe``, ``Introduction``, or
226 ``EDK II INF File Format``.
227 - ``Brief-single-line-summary`` is a short summary of the change.
228 - The entire first line should be less than ~70 characters.
229 - ``Full-commit-message`` a verbose multiple line comment describing
230 the change. Each line should be less than ~70 characters.
231 - ``Signed-off-by`` is the contributor's signature identifying them
232 by their real/legal name and their email address.
237 Submodule in EDK II is allowed but submodule chain should be avoided
238 as possible as we can. Currently EDK II contains the following submodules
240 - CryptoPkg/Library/OpensslLib/openssl
241 - ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3
242 - MdeModulePkg/Universal/RegularExpressionDxe/oniguruma
243 - MdeModulePkg/Library/BrotliCustomDecompressLib/brotli
244 - BaseTools/Source/C/BrotliCompress/brotli
246 ArmSoftFloatLib is actually required by OpensslLib. It's inevitable
247 in openssl-1.1.1 (since stable201905) for floating point parameter
248 conversion, but should be dropped once there's no such need in future
251 To get a full, buildable EDK II repository, use following steps of git
256 git clone https://github.com/tianocore/edk2.git
258 git submodule update --init
261 If there's update for submodules, use following git commands to get
262 the latest submodules code.
270 Note: When cloning submodule repos, '--recursive' option is not
271 recommended. EDK II itself will not use any code/feature from
272 submodules in above submodules. So using '--recursive' adds a
273 dependency on being able to reach servers we do not actually want
274 any code from, as well as needlessly downloading code we will not
277 .. ===================================================================
278 .. This is a bunch of directives to make the README file more readable
279 .. ===================================================================
283 .. _Windows_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=32&branchName=master
284 .. |WindowsCiBuild| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/Windows%20VS2019%20CI?branchName=master
285 .. |WindowsCiTest| image:: https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/32.svg
286 .. |WindowsCiCoverage| image:: https://img.shields.io/badge/coverage-coming_soon-blue
288 .. _Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=31&branchName=master
289 .. |UbuntuCiBuild| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/Ubuntu%20GCC5%20CI?branchName=master
290 .. |UbuntuCiTest| image:: https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/31.svg
291 .. |UbuntuCiCoverage| image:: https://img.shields.io/badge/coverage-coming_soon-blue
295 .. _ArmVirtPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=46&branchName=master
296 .. |avAArch64du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_AARCH64_DEBUG
297 .. |avAArch64ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_AARCH64_RELEASE
298 .. |avAArch64nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_AARCH64_NOOPT
300 .. |avArmdu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_ARM_DEBUG
301 .. |avArmru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_ARM_RELEASE
302 .. |avArmnu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_ArmVirtPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20QEMU_ARM_NOOPT
306 .. |TCBZ_2668| image:: https://img.shields.io/bugzilla/2668?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org
307 .. _TCBZ_2668: https://bugzilla.tianocore.org/show_bug.cgi?id=2668
309 .. |TCBZ_2639| image:: https://img.shields.io/bugzilla/2639?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org
310 .. _TCBZ_2639: https://bugzilla.tianocore.org/show_bug.cgi?id=2639
312 .. _EmulatorPkg_Win_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=44&branchName=master
313 .. _EmulatorPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=43&branchName=master
315 .. |em32d| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_DEBUG
316 .. |em32du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_DEBUG
317 .. |em32r| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_RELEASE
318 .. |em32ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_RELEASE
319 .. |em32n| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_NOOPT
320 .. |em32nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_IA32_NOOPT
322 .. |em64d| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_DEBUG
323 .. |em64du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_DEBUG
324 .. |em64r| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_RELEASE
325 .. |em64ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_RELEASE
326 .. |em64n| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_NOOPT
327 .. |em64nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_EmulatorPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20EmulatorPkg_X64_NOOPT
331 .. |TCBZ_2661| image:: https://img.shields.io/bugzilla/2661?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org
332 .. _TCBZ_2661: https://bugzilla.tianocore.org/show_bug.cgi?id=2661
334 .. _OvmfPkg_Win_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=50&branchName=master
335 .. _OvmfPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=48&branchName=master
337 .. |op32d| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_DEBUG
338 .. |op32du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_DEBUG
339 .. |op32r| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_RELEASE
340 .. |op32ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_RELEASE
341 .. |op32n| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_NOOPT
342 .. |op32nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32_NOOPT
344 .. |op64d| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_DEBUG
345 .. |op64du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_DEBUG
346 .. |op64r| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_RELEASE
347 .. |op64ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_RELEASE
348 .. |op64n| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_NOOPT
349 .. |op64nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_X64_NOOPT
352 .. |op3264d| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_DEBUG
353 .. |op3264du| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_DEBUG
354 .. |op3264r| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_RELEASE
355 .. |op3264ru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_RELEASE
356 .. |op3264n| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_NOOPT
357 .. |op3264nu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_NOOPT
359 .. |op3264fd| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_FULL_DEBUG
360 .. |op3264fdu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_FULL_DEBUG
361 .. |op3264fr| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Windows_VS2019_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_FULL_RELEASE
362 .. |op3264fru| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_FULL_RELEASE
363 .. |op3264fn| replace:: |TCBZ_2661|_
364 .. |op3264fnu| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/PlatformCI_OvmfPkg_Ubuntu_GCC5_CI?branchName=master&jobName=Platform_CI&configuration=Platform_CI%20OVMF_IA32X64_FULL_NOOPT