/[gentoo]/xml/htdocs/proj/en/glep/glep-0026.html
Gentoo

Diff of /xml/htdocs/proj/en/glep/glep-0026.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 Revision 1.2
6PEP, see http://www.python.org/peps/pep-0001.html for instructions and links 6PEP, see http://www.python.org/peps/pep-0001.html for instructions and links
7to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE! 7to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE!
8--> 8-->
9<head> 9<head>
10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
11 <meta name="generator" content="Docutils 0.3.0: http://docutils.sourceforge.net/" /> 11 <meta name="generator" content="Docutils 0.3.3: http://docutils.sourceforge.net/" />
12 <title>GLEP 26 -- Handling kernels with portage</title> 12 <title>GLEP 26 -- Handling kernels with portage</title>
13 <link rel="stylesheet" href="tools/glep.css" type="text/css" /> 13 <link rel="stylesheet" href="tools/glep.css" type="text/css" />
14</head> 14</head>
15<body bgcolor="white"> 15<body bgcolor="white">
16<table class="navigation" cellpadding="0" cellspacing="0" 16<table class="navigation" cellpadding="0" cellspacing="0"
20<img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]" 20<img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
21 border="0" width="150" height="35" /></a></td> 21 border="0" width="150" height="35" /></a></td>
22<td class="textlinks" align="left"> 22<td class="textlinks" align="left">
23[<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>] 23[<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
24[<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>] 24[<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
25[<b><a href="http://www.gentoo.org/proj/en/glep/glep-0026.txt">GLEP Source</a></b>] 25[<b><a href="./glep-0026.txt">GLEP Source</a></b>]
26</td></tr></table> 26</td></tr></table>
27<div class="document"> 27<div class="document">
28<table class="rfc2822 field-list" frame="void" rules="none"> 28<table class="rfc2822 field-list" frame="void" rules="none">
29<col class="field-name" /> 29<col class="field-name" />
30<col class="field-body" /> 30<col class="field-body" />
31<tbody valign="top"> 31<tbody valign="top">
32<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">26</td> 32<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">26</td>
33</tr> 33</tr>
34<tr class="field"><th class="field-name">Title:</th><td class="field-body">Handling kernels with portage</td> 34<tr class="field"><th class="field-name">Title:</th><td class="field-body">Handling kernels with portage</td>
35</tr> 35</tr>
36<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td> 36<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.2</td>
37</tr> 37</tr>
38<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0026.txt?cvsroot=gentoo">2004/05/03 01:48:45</a></td> 38<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs/xml/htdocs/proj/en/glep/glep-0026.txt?cvsroot=gentoo">2004/11/11 21:32:21</a></td>
39</tr> 39</tr>
40<tr class="field"><th class="field-name">Author:</th><td class="field-body">Nathaniel McCallum &lt;npmccallum&#32;&#97;t&#32;gentoo.org&gt;, Joshua Campbell &lt;warpzero&#32;&#97;t&#32;gentoo.org&gt;</td> 40<tr class="field"><th class="field-name">Author:</th><td class="field-body">Nathaniel McCallum &lt;npmccallum&#32;&#97;t&#32;gentoo.org&gt;, Joshua Campbell &lt;warpzero&#32;&#97;t&#32;gentoo.org&gt;</td>
41</tr> 41</tr>
42<tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> 42<tr class="field"><th class="field-name">Status:</th><td class="field-body">deferred</td>
43</tr> 43</tr>
44<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> 44<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
45</tr> 45</tr>
46<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td> 46<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0012.html">text/x-rst</a></td>
47</tr> 47</tr>
48<tr class="field"><th class="field-name">Created:</th><td class="field-body">2-May-2004</td> 48<tr class="field"><th class="field-name">Created:</th><td class="field-body">2-May-2004</td>
49</tr> 49</tr>
50<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">2-May-2004</td> 50<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">2-May-2004, 11-Nov-2004</td>
51</tr> 51</tr>
52</tbody> 52</tbody>
53</table> 53</table>
54<hr /> 54<hr />
55<div class="contents topic" id="contents"> 55<div class="contents topic" id="contents">
56<p class="topic-title"><a name="contents">Contents</a></p> 56<p class="topic-title first"><a name="contents">Contents</a></p>
57<ul class="simple"> 57<ul class="simple">
58<li><a class="reference" href="#abstract" id="id2" name="id2">Abstract</a></li> 58<li><a class="reference" href="#abstract" id="id2" name="id2">Abstract</a></li>
59<li><a class="reference" href="#status" id="id3" name="id3">Status</a></li>
59<li><a class="reference" href="#motivation" id="id3" name="id3">Motivation</a></li> 60<li><a class="reference" href="#motivation" id="id4" name="id4">Motivation</a></li>
60<li><a class="reference" href="#specification" id="id4" name="id4">Specification</a></li> 61<li><a class="reference" href="#specification" id="id5" name="id5">Specification</a></li>
61<li><a class="reference" href="#rationale" id="id5" name="id5">Rationale</a></li> 62<li><a class="reference" href="#rationale" id="id6" name="id6">Rationale</a></li>
62<li><a class="reference" href="#backwards-compatibility" id="id6" name="id6">Backwards Compatibility</a></li> 63<li><a class="reference" href="#backwards-compatibility" id="id7" name="id7">Backwards Compatibility</a></li>
63<li><a class="reference" href="#reference-implementation" id="id7" name="id7">Reference Implementation</a></li> 64<li><a class="reference" href="#reference-implementation" id="id8" name="id8">Reference Implementation</a></li>
64<li><a class="reference" href="#copyright" id="id8" name="id8">Copyright</a></li> 65<li><a class="reference" href="#copyright" id="id9" name="id9">Copyright</a></li>
65</ul> 66</ul>
66</div> 67</div>
67<div class="section" id="abstract"> 68<div class="section" id="abstract">
68<h1><a class="toc-backref" href="#id2" name="abstract">Abstract</a></h1> 69<h1><a class="toc-backref" href="#id2" name="abstract">Abstract</a></h1>
69<p>This GLEP proposes to create a more consistent handling of kernels and kernel building. 70<p>This GLEP proposes to create a more consistent handling of kernels and kernel building.
70Currently &quot;emerge kernel-name&quot; only installs the sources and does not build anything. 71Currently &quot;emerge kernel-name&quot; only installs the sources and does not build anything.
71&quot;emerge kernel-name&quot; should install only sources OR only a binary kernel, its modules, 72&quot;emerge kernel-name&quot; should install only sources OR only a binary kernel, its modules,
72and a tarballed package of kernel-headers, depending on USE flag.</p> 73and a tarballed package of kernel-headers, depending on USE flag.</p>
73</div> 74</div>
75<div class="section" id="status">
76<h1><a class="toc-backref" href="#id3" name="status">Status</a></h1>
77<p>Timed out</p>
78</div>
74<div class="section" id="motivation"> 79<div class="section" id="motivation">
75<h1><a class="toc-backref" href="#id3" name="motivation">Motivation</a></h1> 80<h1><a class="toc-backref" href="#id4" name="motivation">Motivation</a></h1>
76<p>Currently, the only automated kernel build proceedure that we have is genkernel. While 81<p>Currently, the only automated kernel build proceedure that we have is genkernel. While
77genkernel is a great tool, its main weakness is that it does not port well to other 82genkernel is a great tool, its main weakness is that it does not port well to other
78arches because of the initrd and the lack of good &quot;generic&quot; settings for other arches. 83arches because of the initrd and the lack of good &quot;generic&quot; settings for other arches.
79This GLEP hopes to overcome this by abstracting the various layers of genkernel and 84This GLEP hopes to overcome this by abstracting the various layers of genkernel and
80implementing the most common aspect (the build proceedure) into a portage eclass.</p> 85implementing the most common aspect (the build proceedure) into a portage eclass.</p>
81</div> 86</div>
82<div class="section" id="specification"> 87<div class="section" id="specification">
83<h1><a class="toc-backref" href="#id4" name="specification">Specification</a></h1> 88<h1><a class="toc-backref" href="#id5" name="specification">Specification</a></h1>
84<p>There would be 3 layers to kernel building: (place of implementation)</p> 89<p>There would be 3 layers to kernel building: (place of implementation)</p>
85<blockquote> 90<blockquote>
86<ul class="simple"> 91<ul class="simple">
87<li>Stage 1 - Configuring the kernel (optional) -- external utility</li> 92<li>Stage 1 - Configuring the kernel (optional) -- external utility</li>
88<li>Stage 2 - Building the kernel -- in an eclass</li> 93<li>Stage 2 - Building the kernel -- in an eclass</li>
149</li> 154</li>
150</ol> 155</ol>
151</blockquote> 156</blockquote>
152</div> 157</div>
153<div class="section" id="rationale"> 158<div class="section" id="rationale">
154<h1><a class="toc-backref" href="#id5" name="rationale">Rationale</a></h1> 159<h1><a class="toc-backref" href="#id6" name="rationale">Rationale</a></h1>
155<p>There are many advantages gained by this method:</p> 160<p>There are many advantages gained by this method:</p>
156<blockquote> 161<blockquote>
157<ol class="arabic simple"> 162<ol class="arabic simple">
158<li>Full arch support (GentooInstaller really could use this)</li> 163<li>Full arch support (GentooInstaller really could use this)</li>
159<li>More consistent with the rest of portage (installs binaries by building from source)</li> 164<li>More consistent with the rest of portage (installs binaries by building from source)</li>
167<p>The major problem is, however, that we currently have two different build systems, 172<p>The major problem is, however, that we currently have two different build systems,
168portage and genkernel. Having competing build systems is not a GoodThing TM. Therefore, 173portage and genkernel. Having competing build systems is not a GoodThing TM. Therefore,
169we can either make portage build kernels or we can make genkernel build everything else.</p> 174we can either make portage build kernels or we can make genkernel build everything else.</p>
170</div> 175</div>
171<div class="section" id="backwards-compatibility"> 176<div class="section" id="backwards-compatibility">
172<h1><a class="toc-backref" href="#id6" name="backwards-compatibility">Backwards Compatibility</a></h1> 177<h1><a class="toc-backref" href="#id7" name="backwards-compatibility">Backwards Compatibility</a></h1>
173<p>If you want to emerge kernel sources the old way, just do: USE=&quot;-buildkernel&quot; emerge kernel-name</p> 178<p>If you want to emerge kernel sources the old way, just do: USE=&quot;-buildkernel&quot; emerge kernel-name</p>
174<p>Perhaps we could also name the new kernel-config program (from Stage 1) &quot;genkernel&quot; so that users 179<p>Perhaps we could also name the new kernel-config program (from Stage 1) &quot;genkernel&quot; so that users
175can have a seemless transition.</p> 180can have a seemless transition.</p>
176</div> 181</div>
177<div class="section" id="reference-implementation"> 182<div class="section" id="reference-implementation">
178<h1><a class="toc-backref" href="#id7" name="reference-implementation">Reference Implementation</a></h1> 183<h1><a class="toc-backref" href="#id8" name="reference-implementation">Reference Implementation</a></h1>
179<p>not yet ..</p> 184<p>not yet ..</p>
180</div> 185</div>
181<div class="section" id="copyright"> 186<div class="section" id="copyright">
182<h1><a class="toc-backref" href="#id8" name="copyright">Copyright</a></h1> 187<h1><a class="toc-backref" href="#id9" name="copyright">Copyright</a></h1>
183<p>This document has been placed in the public domain.</p> 188<p>This document has been placed in the public domain.</p>
184</div> 189</div>
185</div> 190</div>
186 191
187<hr class="footer"/> 192<hr class="footer" />
188<div class="footer"> 193<div class="footer">
189<a class="reference" href="glep-0026.txt">View document source</a>. 194<a class="reference" href="glep-0026.txt">View document source</a>.
190Generated on: 2004-05-03 01:48 UTC. 195Generated on: 2004-11-11 21:25 UTC.
191Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. 196Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
192</div> 197</div>
193</body> 198</body>
194</html> 199</html>
195 200

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

  ViewVC Help
Powered by ViewVC 1.1.20