]> git.proxmox.com Git - mirror_edk2.git/blame - Readme.md
UefiPayloadPkg: Enhance UEFI payload for coreboot and Slim Bootloader
[mirror_edk2.git] / Readme.md
CommitLineData
827a09d0
MK
1# EDK II Project\r
2\r
3A modern, feature-rich, cross-platform firmware development environment\r
4for the UEFI and PI specifications from www.uefi.org.\r
5\r
827a09d0 6The majority of the content in the EDK II open source project uses a\r
3806e1fd
MK
7[BSD-2-Clause Plus Patent License](License.txt). The EDK II open source project\r
8contains the following components that are covered by additional licenses:\r
827a09d0
MK
9* [AppPkg/Applications/Python/Python-2.7.2/Tools/pybench](AppPkg/Applications/Python/Python-2.7.2/Tools/pybench/LICENSE)\r
10* [AppPkg/Applications/Python/Python-2.7.2](AppPkg/Applications/Python/Python-2.7.2/LICENSE)\r
11* [AppPkg/Applications/Python/Python-2.7.10](AppPkg/Applications/Python/Python-2.7.10/LICENSE)\r
12* [BaseTools/Source/C/BrotliCompress](BaseTools/Source/C/BrotliCompress/LICENSE)\r
13* [MdeModulePkg/Library/BrotliCustomDecompressLib](MdeModulePkg/Library/BrotliCustomDecompressLib/LICENSE)\r
3806e1fd
MK
14* [BaseTools/Source/C/LzmaCompress](BaseTools/Source/C/LzmaCompress/LZMA-SDK-README.txt)\r
15* [MdeModulePkg/Library/LzmaCustomDecompressLib](MdeModulePkg/Library/LzmaCustomDecompressLib/LZMA-SDK-README.txt)\r
16* [IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/Sdk](IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LZMA-SDK-README.txt)\r
17* [BaseTools/Source/C/VfrCompile/Pccts](BaseTools/Source/C/VfrCompile/Pccts/RIGHTS)\r
18* [EdkCompatibilityPkg/Other/Maintained/Tools/Pccts](EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/README)\r
19* [MdeModulePkg/Universal/RegularExpressionDxe/Oniguruma](MdeModulePkg/Universal/RegularExpressionDxe/Oniguruma/README)\r
827a09d0
MK
20* [OvmfPkg](OvmfPkg/License.txt)\r
21* [CryptoPkg/Library/OpensslLib/openssl](CryptoPkg/Library/OpensslLib/openssl/LICENSE)\r
22\r
23The EDK II Project is composed of packages. The maintainers for each package\r
24are listed in [Maintainers.txt](Maintainers.txt).\r
25\r
26# Resources\r
27* [TianoCore](http://www.tianocore.org)\r
28* [EDK II](https://github.com/tianocore/tianocore.github.io/wiki/EDK-II)\r
29* [Getting Started with EDK II](https://github.com/tianocore/tianocore.github.io/wiki/Getting-Started-with-EDK-II)\r
30* [Mailing Lists](https://github.com/tianocore/tianocore.github.io/wiki/Mailing-Lists)\r
31* [TianoCore Bugzilla](https://bugzilla.tianocore.org)\r
32* [How To Contribute](https://github.com/tianocore/tianocore.github.io/wiki/How-To-Contribute)\r
6f42f9a5
LG
33* [Release Planning](https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Release-Planning)\r
34* [UDK2017](https://github.com/tianocore/edk2/releases/tag/vUDK2017)\r
35* [UDK2018](https://github.com/tianocore/edk2/releases/tag/vUDK2018)\r
36* [edk2-stable201811](https://github.com/tianocore/edk2/releases/tag/edk2-stable201811)\r
3806e1fd
MK
37\r
38# Code Contributions\r
39To make a contribution to a TianoCore project, follow these steps.\r
401. Create a change description in the format specified below to\r
41 use in the source control commit log.\r
422. Your commit message must include your `Signed-off-by` signature\r
433. Submit your code to the TianoCore project using the process\r
44 that the project documents on its web page. If the process is\r
45 not documented, then submit the code on development email list\r
46 for the project.\r
474. It is preferred that contributions are submitted using the same\r
48 copyright license as the base project. When that is not possible,\r
49 then contributions using the following licenses can be accepted:\r
50 * BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause\r
51 * BSD (3-clause): http://opensource.org/licenses/BSD-3-Clause\r
52 * MIT: http://opensource.org/licenses/MIT\r
53 * Python-2.0: http://opensource.org/licenses/Python-2.0\r
54 * Zlib: http://opensource.org/licenses/Zlib\r
55\r
56 For documentation:\r
57 * FreeBSD Documentation License\r
58 https://www.freebsd.org/copyright/freebsd-doc-license.html\r
59\r
60 Contributions of code put into the public domain can also be\r
61 accepted.\r
62\r
63 Contributions using other licenses might be accepted, but further\r
64 review will be required.\r
65\r
66# Developer Certificate of Origin\r
67\r
68Your change description should use the standard format for a\r
69commit message, and must include your `Signed-off-by` signature.\r
70\r
71In order to keep track of who did what, all patches contributed must\r
72include a statement that to the best of the contributor's knowledge\r
73they have the right to contribute it under the specified license.\r
74\r
75The test for this is as specified in the [Developer's Certificate of\r
76Origin (DCO) 1.1](https://developercertificate.org/). The contributor\r
77certifies compliance by adding a line saying\r
78\r
79 Signed-off-by: Developer Name <developer@example.org>\r
80\r
81where `Developer Name` is the contributor's real name, and the email\r
82address is one the developer is reachable through at the time of\r
83contributing.\r
84\r
85```\r
86Developer's Certificate of Origin 1.1\r
87\r
88By making a contribution to this project, I certify that:\r
89\r
90(a) The contribution was created in whole or in part by me and I\r
91 have the right to submit it under the open source license\r
92 indicated in the file; or\r
93\r
94(b) The contribution is based upon previous work that, to the best\r
95 of my knowledge, is covered under an appropriate open source\r
96 license and I have the right under that license to submit that\r
97 work with modifications, whether created in whole or in part\r
98 by me, under the same open source license (unless I am\r
99 permitted to submit under a different license), as indicated\r
100 in the file; or\r
101\r
102(c) The contribution was provided directly to me by some other\r
103 person who certified (a), (b) or (c) and I have not modified\r
104 it.\r
105\r
106(d) I understand and agree that this project and the contribution\r
107 are public and that a record of the contribution (including all\r
108 personal information I submit with it, including my sign-off) is\r
109 maintained indefinitely and may be redistributed consistent with\r
110 this project or the open source license(s) involved.\r
111```\r
112\r
113# Sample Change Description / Commit Message\r
114\r
115```\r
116From: Contributor Name <contributor@example.com>\r
117Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary\r
118\r
119Full-commit-message\r
120\r
121Signed-off-by: Contributor Name <contributor@example.com>\r
122```\r
123\r
124## Notes for sample patch email\r
125\r
126* The first line of commit message is taken from the email's subject\r
127 line following `[Repository/Branch PATCH]`. The remaining portion of the\r
128 commit message is the email's content.\r
129* `git format-patch` is one way to create this format\r
130\r
131## Definitions for sample patch email\r
132\r
133* `Repository` is the identifier of the repository the patch applies.\r
134 This identifier should only be provided for repositories other than\r
135 `edk2`. For example `edk2-BuildSpecification` or `staging`.\r
136* `Branch` is the identifier of the branch the patch applies. This\r
137 identifier should only be provided for branches other than `edk2/master`.\r
138 For example `edk2/UDK2015`, `edk2-BuildSpecification/release/1.27`, or\r
139 `staging/edk2-test`.\r
140* `Module` is a short identifier for the affected code or documentation. For\r
141 example `MdePkg`, `MdeModulePkg/UsbBusDxe`, `Introduction`, or\r
142 `EDK II INF File Format`.\r
143* `Brief-single-line-summary` is a short summary of the change.\r
144* The entire first line should be less than ~70 characters.\r
145* `Full-commit-message` a verbose multiple line comment describing\r
146 the change. Each line should be less than ~70 characters.\r
147* `Signed-off-by` is the contributor's signature identifying them\r
148 by their real/legal name and their email address.\r