]>
Commit | Line | Data |
---|---|---|
ea4ee7ac | 1 | ======================\r |
2 | = Code Contributions =\r | |
3 | ======================\r | |
4 | \r | |
5 | To make a contribution to a TianoCore project, follow these steps.\r | |
6 | 1. Create a change description in the format specified below to\r | |
7 | use in the source control commit log.\r | |
8 | 2. Your commit message must include your "Signed-off-by" signature,\r | |
9 | and "Contributed-under" message.\r | |
10 | 3. Your "Contributed-under" message explicitly states that the\r | |
11 | contribution is made under the terms of the specified\r | |
12 | contribution agreement. Your "Contributed-under" message\r | |
13 | must include the name of contribution agreement and version.\r | |
b6538c11 | 14 | For example: Contributed-under: TianoCore Contribution Agreement 1.1\r |
ea4ee7ac | 15 | The "TianoCore Contribution Agreement" is included below in\r |
16 | this document.\r | |
17 | 4. Submit your code to the TianoCore project using the process\r | |
18 | that the project documents on its web page. If the process is\r | |
19 | not documented, then submit the code on development email list\r | |
20 | for the project.\r | |
fad213a3 JJ |
21 | 5. It is preferred that contributions are submitted using the same\r |
22 | copyright license as the base project. When that is not possible,\r | |
23 | then contributions using the following licenses can be accepted:\r | |
24 | * BSD (2-clause): http://opensource.org/licenses/BSD-2-Clause\r | |
25 | * BSD (3-clause): http://opensource.org/licenses/BSD-3-Clause\r | |
26 | * MIT: http://opensource.org/licenses/MIT\r | |
27 | * Python-2.0: http://opensource.org/licenses/Python-2.0\r | |
28 | * Zlib: http://opensource.org/licenses/Zlib\r | |
29 | \r | |
b6538c11 MK |
30 | For documentation:\r |
31 | * FreeBSD Documentation License\r | |
32 | https://www.freebsd.org/copyright/freebsd-doc-license.html\r | |
33 | \r | |
fad213a3 JJ |
34 | Contributions of code put into the public domain can also be\r |
35 | accepted.\r | |
36 | \r | |
37 | Contributions using other licenses might be accepted, but further\r | |
38 | review will be required.\r | |
ea4ee7ac | 39 | \r |
26830e85 JJ |
40 | =====================================================\r |
41 | = Change Description / Commit Message / Patch Email =\r | |
42 | =====================================================\r | |
ea4ee7ac | 43 | \r |
44 | Your change description should use the standard format for a\r | |
45 | commit message, and must include your "Signed-off-by" signature\r | |
46 | and the "Contributed-under" message.\r | |
47 | \r | |
48 | == Sample Change Description / Commit Message =\r | |
49 | \r | |
26830e85 JJ |
50 | === Start of sample patch email message ===\r |
51 | \r | |
3f3c4895 | 52 | From: Contributor Name <contributor@example.com>\r |
b6538c11 | 53 | Subject: [Repository/Branch PATCH] Module: Brief-single-line-summary\r |
26830e85 JJ |
54 | \r |
55 | Full-commit-message\r | |
56 | \r | |
b6538c11 | 57 | Contributed-under: TianoCore Contribution Agreement 1.1\r |
3f3c4895 | 58 | Signed-off-by: Contributor Name <contributor@example.com>\r |
26830e85 JJ |
59 | ---\r |
60 | \r | |
61 | An extra message for the patch email which will not be considered part\r | |
62 | of the commit message can be added here.\r | |
63 | \r | |
64 | Patch content inline or attached\r | |
65 | \r | |
66 | === End of sample patch email message ===\r | |
67 | \r | |
68 | === Notes for sample patch email ===\r | |
69 | \r | |
70 | * The first line of commit message is taken from the email's subject\r | |
f4a8878b MK |
71 | line following [Repository/Branch PATCH]. The remaining portion of the\r |
72 | commit message is the email's content until the '---' line.\r | |
26830e85 JJ |
73 | * git format-patch is one way to create this format\r |
74 | \r | |
75 | === Definitions for sample patch email ===\r | |
ea4ee7ac | 76 | \r |
b6538c11 MK |
77 | * "Repository" is the identifier of the repository the patch applies.\r |
78 | This identifier should only be provided for repositories other than\r | |
79 | 'edk2'. For example 'edk2-BuildSpecification' or 'staging'.\r | |
80 | * "Branch" is the identifier of the branch the patch applies. This\r | |
81 | identifier should only be provided for branches other than 'edk2/master'.\r | |
82 | For example 'edk2/UDK2015', 'edk2-BuildSpecification/release/1.27', or\r | |
83 | 'staging/edk2-test'.\r | |
84 | * "Module" is a short identifier for the affected code or documentation. For\r | |
85 | example 'MdePkg', 'MdeModulePkg/UsbBusDxe', 'Introduction', or\r | |
86 | 'EDK II INF File Format'.\r | |
ea4ee7ac | 87 | * "Brief-single-line-summary" is a short summary of the change.\r |
88 | * The entire first line should be less than ~70 characters.\r | |
89 | * "Full-commit-message" a verbose multiple line comment describing\r | |
90 | the change. Each line should be less than ~70 characters.\r | |
b6538c11 MK |
91 | * "Contributed-under" explicitly states that the contribution is\r |
92 | made under the terms of the contribution agreement. This\r | |
ea4ee7ac | 93 | agreement is included below in this document.\r |
94 | * "Signed-off-by" is the contributor's signature identifying them\r | |
95 | by their real/legal name and their email address.\r | |
96 | \r | |
ea4ee7ac | 97 | ========================================\r |
b6538c11 | 98 | = TianoCore Contribution Agreement 1.1 =\r |
ea4ee7ac | 99 | ========================================\r |
100 | \r | |
f4a8878b MK |
101 | INTEL CORPORATION ("INTEL") MAKES AVAILABLE SOFTWARE, DOCUMENTATION\r |
102 | ("DOCUMENTATION"), INFORMATION AND/OR OTHER MATERIALS FOR USE IN THE\r | |
103 | TIANOCORE OPEN SOURCE PROJECT (COLLECTIVELY "CONTENT"). USE OF THE CONTENT\r | |
104 | IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT BETWEEN YOU AND\r | |
105 | INTEL AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES\r | |
106 | INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR\r | |
107 | USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND\r | |
108 | CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR\r | |
109 | REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS\r | |
ea4ee7ac | 110 | AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE\r |
111 | AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT\r | |
112 | USE THE CONTENT.\r | |
113 | \r | |
f4a8878b MK |
114 | Unless otherwise indicated, all Content (except Documentation) made available\r |
115 | on the TianoCore site is provided to you under the terms and conditions of the\r | |
116 | BSD License ("BSD"). A copy of the BSD License is available at\r | |
ea4ee7ac | 117 | http://opensource.org/licenses/bsd-license.php\r |
118 | or when applicable, in the associated License.txt file.\r | |
119 | \r | |
b6538c11 MK |
120 | Unless otherwise indicated, all Documentation made available on the\r |
121 | TianoCore site is provided to you under the terms and conditions of the\r | |
fc9f971e | 122 | FreeBSD Documentation License ("FreeBSD"). A copy of the license is\r |
b6538c11 MK |
123 | available at https://www.freebsd.org/copyright/freebsd-doc-license.html or,\r |
124 | when applicable, in the associated License.txt file.\r | |
125 | \r | |
ea4ee7ac | 126 | Certain other content may be made available under other licenses as\r |
b6538c11 | 127 | indicated in or with such Content (for example, in a License.txt file).\r |
ea4ee7ac | 128 | \r |
129 | You accept and agree to the following terms and conditions for Your\r | |
130 | present and future Contributions submitted to TianoCore site. Except\r | |
131 | for the license granted to Intel hereunder, You reserve all right,\r | |
132 | title, and interest in and to Your Contributions.\r | |
133 | \r | |
134 | == SECTION 1: Definitions ==\r | |
135 | * "You" or "Contributor" shall mean the copyright owner or legal\r | |
136 | entity authorized by the copyright owner that is making a\r | |
137 | Contribution hereunder. All other entities that control, are\r | |
138 | controlled by, or are under common control with that entity are\r | |
139 | considered to be a single Contributor. For the purposes of this\r | |
140 | definition, "control" means (i) the power, direct or indirect, to\r | |
141 | cause the direction or management of such entity, whether by\r | |
142 | contract or otherwise, or (ii) ownership of fifty percent (50%)\r | |
143 | or more of the outstanding shares, or (iii) beneficial ownership\r | |
144 | of such entity.\r | |
145 | * "Contribution" shall mean any original work of authorship,\r | |
146 | including any modifications or additions to an existing work,\r | |
147 | that is intentionally submitted by You to the TinaoCore site for\r | |
148 | inclusion in, or documentation of, any of the Content. For the\r | |
149 | purposes of this definition, "submitted" means any form of\r | |
150 | electronic, verbal, or written communication sent to the\r | |
151 | TianoCore site or its representatives, including but not limited\r | |
152 | to communication on electronic mailing lists, source code\r | |
153 | control systems, and issue tracking systems that are managed by,\r | |
154 | or on behalf of, the TianoCore site for the purpose of\r | |
155 | discussing and improving the Content, but excluding\r | |
156 | communication that is conspicuously marked or otherwise\r | |
157 | designated in writing by You as "Not a Contribution."\r | |
158 | \r | |
159 | == SECTION 2: License for Contributions ==\r | |
160 | * Contributor hereby agrees that redistribution and use of the\r | |
161 | Contribution in source and binary forms, with or without\r | |
162 | modification, are permitted provided that the following\r | |
163 | conditions are met:\r | |
164 | ** Redistributions of source code must retain the Contributor's\r | |
165 | copyright notice, this list of conditions and the following\r | |
166 | disclaimer.\r | |
167 | ** Redistributions in binary form must reproduce the Contributor's\r | |
168 | copyright notice, this list of conditions and the following\r | |
169 | disclaimer in the documentation and/or other materials provided\r | |
170 | with the distribution.\r | |
171 | * Disclaimer. None of the names of Contributor, Intel, or the names\r | |
172 | of their respective contributors may be used to endorse or\r | |
173 | promote products derived from this software without specific\r | |
174 | prior written permission.\r | |
175 | * Contributor grants a license (with the right to sublicense) under\r | |
176 | claims of Contributor's patents that Contributor can license that\r | |
177 | are infringed by the Contribution (as delivered by Contributor) to\r | |
178 | make, use, distribute, sell, offer for sale, and import the\r | |
179 | Contribution and derivative works thereof solely to the minimum\r | |
180 | extent necessary for licensee to exercise the granted copyright\r | |
181 | license; this patent license applies solely to those portions of\r | |
182 | the Contribution that are unmodified. No hardware per se is\r | |
183 | licensed.\r | |
184 | * EXCEPT AS EXPRESSLY SET FORTH IN SECTION 3 BELOW, THE\r | |
185 | CONTRIBUTION IS PROVIDED BY THE CONTRIBUTOR "AS IS" AND ANY\r | |
186 | EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\r | |
187 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A\r | |
188 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r | |
189 | CONTRIBUTOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\r | |
190 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\r | |
191 | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r | |
192 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r | |
193 | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r | |
194 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR\r | |
195 | OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE\r | |
196 | CONTRIBUTION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\r | |
197 | DAMAGE.\r | |
198 | \r | |
199 | == SECTION 3: Representations ==\r | |
200 | * You represent that You are legally entitled to grant the above\r | |
201 | license. If your employer(s) has rights to intellectual property\r | |
202 | that You create that includes Your Contributions, You represent\r | |
203 | that You have received permission to make Contributions on behalf\r | |
204 | of that employer, that Your employer has waived such rights for\r | |
205 | Your Contributions.\r | |
206 | * You represent that each of Your Contributions is Your original\r | |
207 | creation (see Section 4 for submissions on behalf of others).\r | |
208 | You represent that Your Contribution submissions include complete\r | |
209 | details of any third-party license or other restriction\r | |
210 | (including, but not limited to, related patents and trademarks)\r | |
211 | of which You are personally aware and which are associated with\r | |
212 | any part of Your Contributions.\r | |
213 | \r | |
214 | == SECTION 4: Third Party Contributions ==\r | |
215 | * Should You wish to submit work that is not Your original creation,\r | |
216 | You may submit it to TianoCore site separately from any\r | |
217 | Contribution, identifying the complete details of its source\r | |
218 | and of any license or other restriction (including, but not\r | |
219 | limited to, related patents, trademarks, and license agreements)\r | |
220 | of which You are personally aware, and conspicuously marking the\r | |
221 | work as "Submitted on behalf of a third-party: [named here]".\r | |
222 | \r | |
223 | == SECTION 5: Miscellaneous ==\r | |
224 | * Applicable Laws. Any claims arising under or relating to this\r | |
225 | Agreement shall be governed by the internal substantive laws of\r | |
226 | the State of Delaware or federal courts located in Delaware,\r | |
227 | without regard to principles of conflict of laws.\r | |
228 | * Language. This Agreement is in the English language only, which\r | |
229 | language shall be controlling in all respects, and all versions\r | |
230 | of this Agreement in any other language shall be for accommodation\r | |
231 | only and shall not be binding. All communications and notices made\r | |
232 | or given pursuant to this Agreement, and all documentation and\r | |
233 | support to be provided, unless otherwise noted, shall be in the\r | |
234 | English language.\r | |
235 | \r |