From 64ab457d1f218a02f3bdd8efc843e91be76d5385 Mon Sep 17 00:00:00 2001 From: Sean Brogan Date: Tue, 28 Apr 2020 12:35:56 -0700 Subject: [PATCH] ReadMe: Convert to rst and add Platform CI Status REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2570 Convert workspace root Readme.md to reStructuredText ReStructuredText supports building tables with syntax that is easier to read in plain-text. Rename as ReadMe.rst. Add Platform CI Status Tables Cc: Andrew Fish Cc: Laszlo Ersek Cc: Leif Lindholm Cc: Michael D Kinney Signed-off-by: Michael Kubacki Reviewed-by: Laszlo Ersek Reviewed-by: Bret Barkelew Reviewed-by: Leif Lindholm --- ReadMe.rst | 354 +++++++++++++++++++++++++++++++++++++++++++++++++++++ Readme.md | 235 ----------------------------------- 2 files changed, 354 insertions(+), 235 deletions(-) create mode 100644 ReadMe.rst delete mode 100644 Readme.md diff --git a/ReadMe.rst b/ReadMe.rst new file mode 100644 index 0000000000..d597e34efc --- /dev/null +++ b/ReadMe.rst @@ -0,0 +1,354 @@ +============== +EDK II Project +============== + +A modern, feature-rich, cross-platform firmware development +environment for the UEFI and PI specifications from www.uefi.org. + +Core CI Build Status +-------------------- + +============================= ================= =============== =================== + Host Type & Toolchain Build Status Test Status Code Coverage +============================= ================= =============== =================== +Windows_VS2019_ |WindowsCiBuild| |WindowsCiTest| |WindowsCiCoverage| +Ubuntu_GCC5_ |UbuntuCiBuild| |UbuntuCiTest| |UbuntuCiCoverage| +============================= ================= =============== =================== + +`More CI Build information <.pytool/Readme.md>`__ + +Platform CI Build Status +------------------------ + +Microsoft Windows VS2019 +```````````````````````` + +============================= ================= ============= ============= ============== + Toolchain CONFIG DEBUG RELEASE NOOPT +============================= ================= ============= ============= ============== +EmulatorPkg_Win_VS2019_ | IA32 |em32d| |em32r| |em32n| +| | X64 |em64d| |em64r| |em64n| +OvmfPkg_Win_VS2019_ | IA32 |op32d| |op32r| |op32n| +| | X64 |op64d| |op64r| |op64n| +| | IA32 X64 |op3264d| |op3264r| |op3264n| +| | IA32 X64 FULL |op3264fd| |op3264fr| |op3264fn| +============================= ================= ============= ============= ============== + +Ubuntu 18.04 GCC5 +````````````````` + +============================= ================= ============= ============= ============== + Toolchain CONFIG DEBUG RELEASE NOOPT +============================= ================= ============= ============= ============== +ArmVirtPkg_Ubuntu_GCC5_ | AARCH64 |avAArch64du| |avAArch64ru| |avAArch64nu| +| | ARM |avArmdu| |avArmru| |avArmnu| +EmulatorPkg_Ubuntu_GCC5_ | IA32 |em32du| |em32ru| |em32nu| +| | X64 |em64du| |em64ru| |em64nu| +OvmfPkg_Ubuntu_GCC5_ | IA32 |op32du| |op32ru| |op32nu| +| | X64 |op64du| |op64ru| |op64nu| +| | IA32 X64 |op3264du| |op3264ru| |op3264nu| +| | IA32 X64 FULL |op3264fdu| |op3264fru| |op3264fru| +============================= ================= ============= ============= ============== + +|TCBZ_2668|_ - EmulatorPkg Ubuntu GCC5 Segfaults during execution. + +|TCBZ_2639|_ - EmulatorPkg Ubuntu GCC5 Segfaults during execution. + +`More ArmVirtPkg CI Build Information `__ + +`More EmulatorPkg CI Build Information `__ + +`More OvmfPkg CI Build Information `__ + + +License Details +--------------- + +The majority of the content in the EDK II open source project uses a +`BSD-2-Clause Plus Patent License `__. The EDK II open +source project contains the following components that are covered by additional +licenses: + +- `BaseTools/Source/C/BrotliCompress/brotli `__ +- `MdeModulePkg/Library/BrotliCustomDecompressLib/brotli `__ +- `BaseTools/Source/C/LzmaCompress `__ +- `MdeModulePkg/Library/LzmaCustomDecompressLib `__ +- `IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/Sdk `__ +- `BaseTools/Source/C/VfrCompile/Pccts `__ +- `MdeModulePkg/Universal/RegularExpressionDxe/oniguruma `__ +- `OvmfPkg `__ +- `CryptoPkg/Library/OpensslLib/openssl `__ +- `ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 `__ + +The EDK II Project is composed of packages. The maintainers for each package +are listed in `Maintainers.txt `__. + +Resources +--------- + +- `TianoCore `__ +- `EDK + II `__ +- `Getting Started with EDK + II `__ +- `Mailing + Lists `__ +- `TianoCore Bugzilla `__ +- `How To + Contribute `__ +- `Release + Planning `__ + +Code Contributions +------------------ + +To make a contribution to a TianoCore project, follow these steps. + +#. Create a change description in the format specified below to + use in the source control commit log. +#. Your commit message must include your ``Signed-off-by`` signature +#. Submit your code to the TianoCore project using the process + that the project documents on its web page. If the process is + not documented, then submit the code on development email list + for the project. +#. It is preferred that contributions are submitted using the same + copyright license as the base project. When that is not possible, + then contributions using the following licenses can be accepted: + +- BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause +- BSD (3-clause): http://opensource.org/licenses/BSD-3-Clause +- MIT: http://opensource.org/licenses/MIT +- Python-2.0: http://opensource.org/licenses/Python-2.0 +- Zlib: http://opensource.org/licenses/Zlib + +For documentation: + +- FreeBSD Documentation License + https://www.freebsd.org/copyright/freebsd-doc-license.html + +Contributions of code put into the public domain can also be accepted. + +Contributions using other licenses might be accepted, but further +review will be required. + +Developer Certificate of Origin +------------------------------- + +Your change description should use the standard format for a +commit message, and must include your ``Signed-off-by`` signature. + +In order to keep track of who did what, all patches contributed must +include a statement that to the best of the contributor's knowledge +they have the right to contribute it under the specified license. + +The test for this is as specified in the `Developer's Certificate of +Origin (DCO) 1.1 `__. The contributor +certifies compliance by adding a line saying + +Signed-off-by: Developer Name developer@example.org + +where ``Developer Name`` is the contributor's real name, and the email +address is one the developer is reachable through at the time of +contributing. + +:: + + Developer's Certificate of Origin 1.1 + + By making a contribution to this project, I certify that: + + (a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + + (b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + + (c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + + (d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. + +Sample Change Description / Commit Message +------------------------------------------ + +:: + + From: Contributor Name + Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary + + Full-commit-message + + Signed-off-by: Contributor Name + +Notes for sample patch email +```````````````````````````` + +- The first line of commit message is taken from the email's subject + line following ``[Repository/Branch PATCH]``. The remaining portion + of the commit message is the email's content. +- ``git format-patch`` is one way to create this format + +Definitions for sample patch email +`````````````````````````````````` + +- ``Repository`` is the identifier of the repository the patch applies. + This identifier should only be provided for repositories other than + ``edk2``. For example ``edk2-BuildSpecification`` or ``staging``. +- ``Branch`` is the identifier of the branch the patch applies. This + identifier should only be provided for branches other than + ``edk2/master``. + For example ``edk2/UDK2015``, + ``edk2-BuildSpecification/release/1.27``, or + ``staging/edk2-test``. +- ``Module`` is a short identifier for the affected code or + documentation. For example ``MdePkg``, ``MdeModulePkg/UsbBusDxe``, ``Introduction``, or + ``EDK II INF File Format``. +- ``Brief-single-line-summary`` is a short summary of the change. +- The entire first line should be less than ~70 characters. +- ``Full-commit-message`` a verbose multiple line comment describing + the change. Each line should be less than ~70 characters. +- ``Signed-off-by`` is the contributor's signature identifying them + by their real/legal name and their email address. + +Submodules +---------- + +Submodule in EDK II is allowed but submodule chain should be avoided +as possible as we can. Currently EDK II contains the following submodules + +- CryptoPkg/Library/OpensslLib/openssl +- ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 +- MdeModulePkg/Universal/RegularExpressionDxe/oniguruma +- MdeModulePkg/Library/BrotliCustomDecompressLib/brotli +- BaseTools/Source/C/BrotliCompress/brotli + +ArmSoftFloatLib is actually required by OpensslLib. It's inevitable +in openssl-1.1.1 (since stable201905) for floating point parameter +conversion, but should be dropped once there's no such need in future +release of openssl. + +To get a full, buildable EDK II repository, use following steps of git +command + +.. code-block:: bash + + git clone https://github.com/tianocore/edk2.git + cd edk2 + git submodule update --init + cd .. + +If there's update for submodules, use following git commands to get +the latest submodules code. + +.. code-block:: bash + + cd edk2 + git pull + git submodule update + +Note: When cloning submodule repos, '--recursive' option is not +recommended. EDK II itself will not use any code/feature from +submodules in above submodules. So using '--recursive' adds a +dependency on being able to reach servers we do not actually want +any code from, as well as needlessly downloading code we will not +use. + +.. =================================================================== +.. This is a bunch of directives to make the README file more readable +.. =================================================================== + +.. CoreCI + +.. _Windows_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=32&branchName=master +.. |WindowsCiBuild| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/Windows%20VS2019%20CI?branchName=master +.. |WindowsCiTest| image:: https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/32.svg +.. |WindowsCiCoverage| image:: https://img.shields.io/badge/coverage-coming_soon-blue + +.. _Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=31&branchName=master +.. |UbuntuCiBuild| image:: https://dev.azure.com/tianocore/edk2-ci/_apis/build/status/Ubuntu%20GCC5%20CI?branchName=master +.. |UbuntuCiTest| image:: https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/31.svg +.. |UbuntuCiCoverage| image:: https://img.shields.io/badge/coverage-coming_soon-blue + +.. ArmVirtPkg + +.. _ArmVirtPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=46&branchName=master +.. |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 +.. |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 +.. |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 + +.. |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 +.. |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 +.. |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 + +.. EmulatorPkg + +.. |TCBZ_2668| image:: https://img.shields.io/bugzilla/2668?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org +.. _TCBZ_2668: https://bugzilla.tianocore.org/show_bug.cgi?id=2668 + +.. |TCBZ_2639| image:: https://img.shields.io/bugzilla/2639?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org +.. _TCBZ_2639: https://bugzilla.tianocore.org/show_bug.cgi?id=2639 + +.. _EmulatorPkg_Win_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=44&branchName=master +.. _EmulatorPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=43&branchName=master + +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 + +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 + +.. OvmfPkg + +.. |TCBZ_2661| image:: https://img.shields.io/bugzilla/2661?baseUrl=https%3A%2F%2Fbugzilla.tianocore.org +.. _TCBZ_2661: https://bugzilla.tianocore.org/show_bug.cgi?id=2661 + +.. _OvmfPkg_Win_VS2019: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=50&branchName=master +.. _OvmfPkg_Ubuntu_GCC5: https://dev.azure.com/tianocore/edk2-ci/_build/latest?definitionId=48&branchName=master + +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 + +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 + + +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 +.. |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 + +.. |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 +.. |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 +.. |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 +.. |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 +.. |op3264fn| replace:: |TCBZ_2661|_ +.. |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 diff --git a/Readme.md b/Readme.md deleted file mode 100644 index 8430463654..0000000000 --- a/Readme.md +++ /dev/null @@ -1,235 +0,0 @@ -# EDK II Project - -A modern, feature-rich, cross-platform firmware development environment -for the UEFI and PI specifications from www.uefi.org. - -# Build Status - - - - - - - - - - - - - - - - - - - - - - - - - - -
Host TypeToolchainBranchBuild StatusTest StatusCode Coverage
WindowsVS2019master - - - - - - - - -
UbuntuGCCmaster - - - - - - - - -
- -[More CI Build information](.pytool/Readme.md) - -# License Details - -The majority of the content in the EDK II open source project uses a -[BSD-2-Clause Plus Patent License](License.txt). The EDK II open source project -contains the following components that are covered by additional licenses: -* [BaseTools/Source/C/BrotliCompress/brotli](https://github.com/google/brotli/blob/master/LICENSE) -* [MdeModulePkg/Library/BrotliCustomDecompressLib/brotli](https://github.com/google/brotli/blob/master/LICENSE) -* [BaseTools/Source/C/LzmaCompress](BaseTools/Source/C/LzmaCompress/LZMA-SDK-README.txt) -* [MdeModulePkg/Library/LzmaCustomDecompressLib](MdeModulePkg/Library/LzmaCustomDecompressLib/LZMA-SDK-README.txt) -* [IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/Sdk](IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LZMA-SDK-README.txt) -* [BaseTools/Source/C/VfrCompile/Pccts](BaseTools/Source/C/VfrCompile/Pccts/RIGHTS) -* [MdeModulePkg/Universal/RegularExpressionDxe/oniguruma](https://github.com/kkos/oniguruma/blob/master/README.md) -* [OvmfPkg](OvmfPkg/License.txt) -* [CryptoPkg/Library/OpensslLib/openssl](https://github.com/openssl/openssl/blob/50eaac9f3337667259de725451f201e784599687/LICENSE) -* [ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3](https://github.com/ucb-bar/berkeley-softfloat-3/blob/b64af41c3276f97f0e181920400ee056b9c88037/COPYING.txt) - -The EDK II Project is composed of packages. The maintainers for each package -are listed in [Maintainers.txt](Maintainers.txt). - -# Resources -* [TianoCore](http://www.tianocore.org) -* [EDK II](https://github.com/tianocore/tianocore.github.io/wiki/EDK-II) -* [Getting Started with EDK II](https://github.com/tianocore/tianocore.github.io/wiki/Getting-Started-with-EDK-II) -* [Mailing Lists](https://github.com/tianocore/tianocore.github.io/wiki/Mailing-Lists) -* [TianoCore Bugzilla](https://bugzilla.tianocore.org) -* [How To Contribute](https://github.com/tianocore/tianocore.github.io/wiki/How-To-Contribute) -* [Release Planning](https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Release-Planning) - -# Code Contributions -To make a contribution to a TianoCore project, follow these steps. -1. Create a change description in the format specified below to - use in the source control commit log. -2. Your commit message must include your `Signed-off-by` signature -3. Submit your code to the TianoCore project using the process - that the project documents on its web page. If the process is - not documented, then submit the code on development email list - for the project. -4. It is preferred that contributions are submitted using the same - copyright license as the base project. When that is not possible, - then contributions using the following licenses can be accepted: - * BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause - * BSD (3-clause): http://opensource.org/licenses/BSD-3-Clause - * MIT: http://opensource.org/licenses/MIT - * Python-2.0: http://opensource.org/licenses/Python-2.0 - * Zlib: http://opensource.org/licenses/Zlib - - For documentation: - * FreeBSD Documentation License - https://www.freebsd.org/copyright/freebsd-doc-license.html - - Contributions of code put into the public domain can also be - accepted. - - Contributions using other licenses might be accepted, but further - review will be required. - -# Developer Certificate of Origin - -Your change description should use the standard format for a -commit message, and must include your `Signed-off-by` signature. - -In order to keep track of who did what, all patches contributed must -include a statement that to the best of the contributor's knowledge -they have the right to contribute it under the specified license. - -The test for this is as specified in the [Developer's Certificate of -Origin (DCO) 1.1](https://developercertificate.org/). The contributor -certifies compliance by adding a line saying - - Signed-off-by: Developer Name - -where `Developer Name` is the contributor's real name, and the email -address is one the developer is reachable through at the time of -contributing. - -``` -Developer's Certificate of Origin 1.1 - -By making a contribution to this project, I certify that: - -(a) The contribution was created in whole or in part by me and I - have the right to submit it under the open source license - indicated in the file; or - -(b) The contribution is based upon previous work that, to the best - of my knowledge, is covered under an appropriate open source - license and I have the right under that license to submit that - work with modifications, whether created in whole or in part - by me, under the same open source license (unless I am - permitted to submit under a different license), as indicated - in the file; or - -(c) The contribution was provided directly to me by some other - person who certified (a), (b) or (c) and I have not modified - it. - -(d) I understand and agree that this project and the contribution - are public and that a record of the contribution (including all - personal information I submit with it, including my sign-off) is - maintained indefinitely and may be redistributed consistent with - this project or the open source license(s) involved. -``` - -# Sample Change Description / Commit Message - -``` -From: Contributor Name -Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary - -Full-commit-message - -Signed-off-by: Contributor Name -``` - -## Notes for sample patch email - -* The first line of commit message is taken from the email's subject - line following `[Repository/Branch PATCH]`. The remaining portion of the - commit message is the email's content. -* `git format-patch` is one way to create this format - -## Definitions for sample patch email - -* `Repository` is the identifier of the repository the patch applies. - This identifier should only be provided for repositories other than - `edk2`. For example `edk2-BuildSpecification` or `staging`. -* `Branch` is the identifier of the branch the patch applies. This - identifier should only be provided for branches other than `edk2/master`. - For example `edk2/UDK2015`, `edk2-BuildSpecification/release/1.27`, or - `staging/edk2-test`. -* `Module` is a short identifier for the affected code or documentation. For - example `MdePkg`, `MdeModulePkg/UsbBusDxe`, `Introduction`, or - `EDK II INF File Format`. -* `Brief-single-line-summary` is a short summary of the change. -* The entire first line should be less than ~70 characters. -* `Full-commit-message` a verbose multiple line comment describing - the change. Each line should be less than ~70 characters. -* `Signed-off-by` is the contributor's signature identifying them - by their real/legal name and their email address. - -# Submodules - -Submodule in EDK II is allowed but submodule chain should be avoided -as possible as we can. Currently EDK II contains the following submodules - -- CryptoPkg/Library/OpensslLib/openssl -- ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 -- MdeModulePkg/Universal/RegularExpressionDxe/oniguruma -- MdeModulePkg/Library/BrotliCustomDecompressLib/brotli -- BaseTools/Source/C/BrotliCompress/brotli - -ArmSoftFloatLib is actually required by OpensslLib. It's inevitable -in openssl-1.1.1 (since stable201905) for floating point parameter -conversion, but should be dropped once there's no such need in future -release of openssl. - -To get a full, buildable EDK II repository, use following steps of git -command - -``` -$ git clone https://github.com/tianocore/edk2.git -$ cd edk2 -$ git submodule update --init -$ cd .. -``` - -If there's update for submodules, use following git commands to get the -latest submodules code. - -``` -$ cd edk2 -$ git pull -$ git submodule update -``` - -Note: When cloning submodule repos, '--recursive' option is not -recommended. EDK II itself will not use any code/feature from -submodules in above submodules. So using '--recursive' adds a -dependency on being able to reach servers we do not actually want -any code from, as well as needlessly downloading code we will not -use.