blob: 7aea5def9bc8e779b40ac7cc4f22e0e1865a50ee [file] [log] [blame]
Deployment Bot (from Travis CI)6d7e6e92021-06-14 19:18:41 +00001
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6 <head>
7 <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9 <title>Contributing to op-build &#8212; OpenPOWER Firmware v2.6-257-g5b5624c2
10 documentation</title>
11 <link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
12 <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
13 <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
14 <script type="text/javascript" src="../_static/jquery.js"></script>
15 <script type="text/javascript" src="../_static/underscore.js"></script>
16 <script type="text/javascript" src="../_static/doctools.js"></script>
17 <link rel="index" title="Index" href="../genindex.html" />
18 <link rel="search" title="Search" href="../search.html" />
19 <link rel="next" title="op-build Linux Kernel" href="KernelTree.html" />
20 <link rel="prev" title="Development Process" href="index.html" />
21
22 <link rel="stylesheet" href="../_static/custom.css" type="text/css" />
23
24
25 <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
26
27 </head><body>
28
29
30 <div class="document">
31 <div class="documentwrapper">
32 <div class="bodywrapper">
33
34
35 <div class="body" role="main">
36
37 <div class="section" id="contributing-to-op-build">
38<h1>Contributing to op-build<a class="headerlink" href="#contributing-to-op-build" title="Permalink to this headline"></a></h1>
39<p>op-build is the open source build system for OpenPOWER firmware. It assembles
40many individual components (only a few of which are OpenPOWER specific) into
41a single firmware image. op-build is implemented as a buildroot overlay.</p>
42<p>If you haven’t already, join us on IRC (#openpower on Freenode) and on
43the mailing list ( openpower-firmware&#64;lists.ozlabs.org - subscribe by
44going to https://lists.ozlabs.org/listinfo/openpower-firmware )</p>
45<p>We use GitHub Issues and Pull Requests for tracking contributions. We
46expect participants to adhere to the GitHub Community Guidelines (found
47at https://help.github.com/articles/github-community-guidelines/ ).</p>
48<p>If you are unable or unwilling to use GitHub, we can accept contributions
49via the mailing list.</p>
50<p>All contributions should have a Developer Certificate of Origin (see below).</p>
51<div class="section" id="development-philosophy">
52<h2>Development Philosophy<a class="headerlink" href="#development-philosophy" title="Permalink to this headline"></a></h2>
53<p>Our development philosophy is:</p>
54<ol class="simple">
55<li>Don’t re-invent the wheel</li>
56<li>Upstream first</li>
57</ol>
58<p>As such, we don’t like to carry patches in op-build, we prefer to interact
59with upstream projects and get patches accepted there. Where we do need
60to patch things locally, we prefer to carry backports from upstream, which
61can be removed when we move to more recent upstream.</p>
62</div>
63<div class="section" id="development-environment">
64<h2>Development Environment<a class="headerlink" href="#development-environment" title="Permalink to this headline"></a></h2>
65<p>For working on op-build you will need a reasonably recent Linux distribution.
66We aim to have all current major distros be suitable development platforms
67(focused on Ubuntu and Fedora, as that’s what most developers currently use).</p>
68<p>A host GCC of at least 4.9 is recommended (all modern Linux distributions
69provide this).</p>
70<p>You can build on x86-64, ppc64 or ppc64le, op-build will build appropriate
71cross-compilers for you (thanks to the magic of buildroot).</p>
72<p>You will need 8-15GB of disk space to do a full build of any one configuration.</p>
73</div>
74<div class="section" id="development-process">
75<h2>Development Process<a class="headerlink" href="#development-process" title="Permalink to this headline"></a></h2>
76<p>The main source repository is on GitHub. We use GitHub issues and pull requests
77as well as a mailing list (https://lists.ozlabs.org/listinfo/openpower-firmware).</p>
78<p>We tag a new op-build release roughly every 6 weeks.</p>
79<p>We use GitHub milestones: https://github.com/open-power/op-build/milestones</p>
80<p>Starting with the v1.15 release, active development occurs against the master
81branch. When we’re nearing a release, we move the content of the master branch
82over to a ‘release’ branch, ensuring development can continue while the release
83is prepared.</p>
84<p>We accept pull requests on GitHub: https://github.com/open-power/op-build/pulls</p>
85</div>
86<div class="section" id="developer-certificate-of-origin">
87<h2>Developer Certificate of Origin<a class="headerlink" href="#developer-certificate-of-origin" title="Permalink to this headline"></a></h2>
88<p>Contributions to this project should conform to the <code class="docutils literal notranslate"><span class="pre">Developer</span> <span class="pre">Certificate</span> <span class="pre">of</span> <span class="pre">Origin</span></code> as defined at http://elinux.org/Developer_Certificate_Of_Origin.
89Commits to this project need to contain the following line to indicate
90the submitter accepts the DCO:</p>
91<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Signed</span><span class="o">-</span><span class="n">off</span><span class="o">-</span><span class="n">by</span><span class="p">:</span> <span class="n">Your</span> <span class="n">Name</span> <span class="o">&lt;</span><span class="n">your_email</span><span class="nd">@domain</span><span class="o">.</span><span class="n">com</span><span class="o">&gt;</span>
92</pre></div>
93</div>
94<p>By contributing in this way, you agree to the terms as follows:</p>
95<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Developer</span> <span class="n">Certificate</span> <span class="n">of</span> <span class="n">Origin</span>
96<span class="n">Version</span> <span class="mf">1.1</span>
97
98<span class="n">Copyright</span> <span class="p">(</span><span class="n">C</span><span class="p">)</span> <span class="mi">2004</span><span class="p">,</span> <span class="mi">2006</span> <span class="n">The</span> <span class="n">Linux</span> <span class="n">Foundation</span> <span class="ow">and</span> <span class="n">its</span> <span class="n">contributors</span><span class="o">.</span>
99<span class="mi">660</span> <span class="n">York</span> <span class="n">Street</span><span class="p">,</span> <span class="n">Suite</span> <span class="mi">102</span><span class="p">,</span>
100<span class="n">San</span> <span class="n">Francisco</span><span class="p">,</span> <span class="n">CA</span> <span class="mi">94110</span> <span class="n">USA</span>
101
102<span class="n">Everyone</span> <span class="ow">is</span> <span class="n">permitted</span> <span class="n">to</span> <span class="n">copy</span> <span class="ow">and</span> <span class="n">distribute</span> <span class="n">verbatim</span> <span class="n">copies</span> <span class="n">of</span> <span class="n">this</span>
103<span class="n">license</span> <span class="n">document</span><span class="p">,</span> <span class="n">but</span> <span class="n">changing</span> <span class="n">it</span> <span class="ow">is</span> <span class="ow">not</span> <span class="n">allowed</span><span class="o">.</span>
104
105
106<span class="n">Developer</span><span class="s1">&#39;s Certificate of Origin 1.1</span>
107
108<span class="n">By</span> <span class="n">making</span> <span class="n">a</span> <span class="n">contribution</span> <span class="n">to</span> <span class="n">this</span> <span class="n">project</span><span class="p">,</span> <span class="n">I</span> <span class="n">certify</span> <span class="n">that</span><span class="p">:</span>
109
110<span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="n">The</span> <span class="n">contribution</span> <span class="n">was</span> <span class="n">created</span> <span class="ow">in</span> <span class="n">whole</span> <span class="ow">or</span> <span class="ow">in</span> <span class="n">part</span> <span class="n">by</span> <span class="n">me</span> <span class="ow">and</span> <span class="n">I</span>
111 <span class="n">have</span> <span class="n">the</span> <span class="n">right</span> <span class="n">to</span> <span class="n">submit</span> <span class="n">it</span> <span class="n">under</span> <span class="n">the</span> <span class="nb">open</span> <span class="n">source</span> <span class="n">license</span>
112 <span class="n">indicated</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">file</span><span class="p">;</span> <span class="ow">or</span>
113
114<span class="p">(</span><span class="n">b</span><span class="p">)</span> <span class="n">The</span> <span class="n">contribution</span> <span class="ow">is</span> <span class="n">based</span> <span class="n">upon</span> <span class="n">previous</span> <span class="n">work</span> <span class="n">that</span><span class="p">,</span> <span class="n">to</span> <span class="n">the</span> <span class="n">best</span>
115 <span class="n">of</span> <span class="n">my</span> <span class="n">knowledge</span><span class="p">,</span> <span class="ow">is</span> <span class="n">covered</span> <span class="n">under</span> <span class="n">an</span> <span class="n">appropriate</span> <span class="nb">open</span> <span class="n">source</span>
116 <span class="n">license</span> <span class="ow">and</span> <span class="n">I</span> <span class="n">have</span> <span class="n">the</span> <span class="n">right</span> <span class="n">under</span> <span class="n">that</span> <span class="n">license</span> <span class="n">to</span> <span class="n">submit</span> <span class="n">that</span>
117 <span class="n">work</span> <span class="k">with</span> <span class="n">modifications</span><span class="p">,</span> <span class="n">whether</span> <span class="n">created</span> <span class="ow">in</span> <span class="n">whole</span> <span class="ow">or</span> <span class="ow">in</span> <span class="n">part</span>
118 <span class="n">by</span> <span class="n">me</span><span class="p">,</span> <span class="n">under</span> <span class="n">the</span> <span class="n">same</span> <span class="nb">open</span> <span class="n">source</span> <span class="n">license</span> <span class="p">(</span><span class="n">unless</span> <span class="n">I</span> <span class="n">am</span>
119 <span class="n">permitted</span> <span class="n">to</span> <span class="n">submit</span> <span class="n">under</span> <span class="n">a</span> <span class="n">different</span> <span class="n">license</span><span class="p">),</span> <span class="k">as</span> <span class="n">indicated</span>
120 <span class="ow">in</span> <span class="n">the</span> <span class="n">file</span><span class="p">;</span> <span class="ow">or</span>
121
122<span class="p">(</span><span class="n">c</span><span class="p">)</span> <span class="n">The</span> <span class="n">contribution</span> <span class="n">was</span> <span class="n">provided</span> <span class="n">directly</span> <span class="n">to</span> <span class="n">me</span> <span class="n">by</span> <span class="n">some</span> <span class="n">other</span>
123 <span class="n">person</span> <span class="n">who</span> <span class="n">certified</span> <span class="p">(</span><span class="n">a</span><span class="p">),</span> <span class="p">(</span><span class="n">b</span><span class="p">)</span> <span class="ow">or</span> <span class="p">(</span><span class="n">c</span><span class="p">)</span> <span class="ow">and</span> <span class="n">I</span> <span class="n">have</span> <span class="ow">not</span> <span class="n">modified</span>
124 <span class="n">it</span><span class="o">.</span>
125
126<span class="p">(</span><span class="n">d</span><span class="p">)</span> <span class="n">I</span> <span class="n">understand</span> <span class="ow">and</span> <span class="n">agree</span> <span class="n">that</span> <span class="n">this</span> <span class="n">project</span> <span class="ow">and</span> <span class="n">the</span> <span class="n">contribution</span>
127 <span class="n">are</span> <span class="n">public</span> <span class="ow">and</span> <span class="n">that</span> <span class="n">a</span> <span class="n">record</span> <span class="n">of</span> <span class="n">the</span> <span class="n">contribution</span> <span class="p">(</span><span class="n">including</span> <span class="nb">all</span>
128 <span class="n">personal</span> <span class="n">information</span> <span class="n">I</span> <span class="n">submit</span> <span class="k">with</span> <span class="n">it</span><span class="p">,</span> <span class="n">including</span> <span class="n">my</span> <span class="n">sign</span><span class="o">-</span><span class="n">off</span><span class="p">)</span> <span class="ow">is</span>
129 <span class="n">maintained</span> <span class="n">indefinitely</span> <span class="ow">and</span> <span class="n">may</span> <span class="n">be</span> <span class="n">redistributed</span> <span class="n">consistent</span> <span class="k">with</span>
130 <span class="n">this</span> <span class="n">project</span> <span class="ow">or</span> <span class="n">the</span> <span class="nb">open</span> <span class="n">source</span> <span class="n">license</span><span class="p">(</span><span class="n">s</span><span class="p">)</span> <span class="n">involved</span><span class="o">.</span>
131</pre></div>
132</div>
133</div>
134</div>
135
136
137 </div>
138
139 </div>
140 </div>
141 <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
142 <div class="sphinxsidebarwrapper">
143<h1 class="logo"><a href="../index.html">OpenPOWER Firmware</a></h1>
144
145
146
147
148
149
150
151
152<h3>Navigation</h3>
153<p class="caption"><span class="caption-text">Contents:</span></p>
154<ul class="current">
155<li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction to OpenPOWER Firmware</a></li>
156<li class="toctree-l1"><a class="reference internal" href="../testing.html">Testing op-build</a></li>
157<li class="toctree-l1 current"><a class="reference internal" href="index.html">Development Process</a><ul class="current">
158<li class="toctree-l2 current"><a class="current reference internal" href="#">Contributing to op-build</a></li>
159<li class="toctree-l2"><a class="reference internal" href="KernelTree.html">op-build Linux Kernel</a></li>
160<li class="toctree-l2"><a class="reference internal" href="building-with-ci.html">Building with ci scripts</a></li>
161<li class="toctree-l2"><a class="reference internal" href="stable-rules.html">op-build stable tree rules and releases</a></li>
162</ul>
163</li>
164<li class="toctree-l1"><a class="reference internal" href="../boot-devices.html">Supported Boot Devices</a></li>
165<li class="toctree-l1"><a class="reference internal" href="../versioning.html">Version Scheme</a></li>
166<li class="toctree-l1"><a class="reference internal" href="../release-notes/index.html">op-build Release Notes</a></li>
167</ul>
168
169<div class="relations">
170<h3>Related Topics</h3>
171<ul>
172 <li><a href="../index.html">Documentation overview</a><ul>
173 <li><a href="index.html">Development Process</a><ul>
174 <li>Previous: <a href="index.html" title="previous chapter">Development Process</a></li>
175 <li>Next: <a href="KernelTree.html" title="next chapter">op-build Linux Kernel</a></li>
176 </ul></li>
177 </ul></li>
178</ul>
179</div>
180<div id="searchbox" style="display: none" role="search">
181 <h3>Quick search</h3>
182 <div class="searchformwrapper">
183 <form class="search" action="../search.html" method="get">
184 <input type="text" name="q" />
185 <input type="submit" value="Go" />
186 <input type="hidden" name="check_keywords" value="yes" />
187 <input type="hidden" name="area" value="default" />
188 </form>
189 </div>
190</div>
191<script type="text/javascript">$('#searchbox').show(0);</script>
192
193
194
195
196
197
198
199
200 </div>
201 </div>
202 <div class="clearer"></div>
203 </div>
204 <div class="footer">
205 &copy;2017, OpenPOWER Foundation System Software Work Group.
206
207 |
208 Powered by <a href="http://sphinx-doc.org/">Sphinx 1.7.9</a>
209 &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
210
211 |
212 <a href="../_sources/process/CONTRIBUTING.md.txt"
213 rel="nofollow">Page source</a>
214 </div>
215
216
217
218
219 </body>
220</html>