]>
Commit | Line | Data |
---|---|---|
1 | # EDK II Project\r | |
2 | \r | |
3 | A modern, feature-rich, cross-platform firmware development environment\r | |
4 | for the UEFI and PI specifications from www.uefi.org.\r | |
5 | \r | |
6 | The majority of the content in the EDK II open source project uses a\r | |
7 | [BSD-2-Clause Plus Patent License](License.txt). The EDK II open source project\r | |
8 | contains the following components that are covered by additional licenses:\r | |
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 | |
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 | |
20 | * [OvmfPkg](OvmfPkg/License.txt)\r | |
21 | * [CryptoPkg/Library/OpensslLib/openssl](CryptoPkg/Library/OpensslLib/openssl/LICENSE)\r | |
22 | \r | |
23 | The EDK II Project is composed of packages. The maintainers for each package\r | |
24 | are 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 | |
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 | |
37 | \r | |
38 | # Code Contributions\r | |
39 | To make a contribution to a TianoCore project, follow these steps.\r | |
40 | 1. Create a change description in the format specified below to\r | |
41 | use in the source control commit log.\r | |
42 | 2. Your commit message must include your `Signed-off-by` signature\r | |
43 | 3. 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 | |
47 | 4. 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 | |
68 | Your change description should use the standard format for a\r | |
69 | commit message, and must include your `Signed-off-by` signature.\r | |
70 | \r | |
71 | In order to keep track of who did what, all patches contributed must\r | |
72 | include a statement that to the best of the contributor's knowledge\r | |
73 | they have the right to contribute it under the specified license.\r | |
74 | \r | |
75 | The test for this is as specified in the [Developer's Certificate of\r | |
76 | Origin (DCO) 1.1](https://developercertificate.org/). The contributor\r | |
77 | certifies compliance by adding a line saying\r | |
78 | \r | |
79 | Signed-off-by: Developer Name <developer@example.org>\r | |
80 | \r | |
81 | where `Developer Name` is the contributor's real name, and the email\r | |
82 | address is one the developer is reachable through at the time of\r | |
83 | contributing.\r | |
84 | \r | |
85 | ```\r | |
86 | Developer's Certificate of Origin 1.1\r | |
87 | \r | |
88 | By 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 | |
116 | From: Contributor Name <contributor@example.com>\r | |
117 | Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary\r | |
118 | \r | |
119 | Full-commit-message\r | |
120 | \r | |
121 | Signed-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 |