<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>6658</bug_id>
          
          <creation_ts>2014-08-24 17:33:35 +0000</creation_ts>
          <short_desc>devtool: enable kernel development</short_desc>
          <delta_ts>2016-07-27 21:47:00 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>devtools / tool chain</component>
          <version>1.7</version>
          <rep_platform>All</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>2.1 M3</target_milestone>
          <dependson>6653</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Paul Eggleton">bluelightning</reporter>
          <assigned_to name="Markus Lehtonen">markus.lehtonen</assigned_to>
          <cc>alexandru.c.georgescu</cc>
    
    <cc>bruce.ashfield</cc>
    
    <cc>dvhart</cc>
    
    <cc>francisco.j.pedraza.gonzalez</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
          
          <qa_contact name="Francisco Pedraza">francisco.j.pedraza.gonzalez</qa_contact>
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Yes (doc changes required)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>45238</commentid>
    <comment_count>0</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2014-08-24 17:33:35 +0000</bug_when>
    <thetext>Ensure we have whatever we need in place to support kernel development using the tool outlined in bug 6653. This includes but may not be limited to:
* Ensure that externalsrc works properly for the kernel
* Ensure that the appropriate tasks are called when building
* Reduce as much as possible the time taken to build after changes, e.g. ensure compilation is incremental; possibly eliminate module building where appropriate
* Allow access to menuconfig for the kernel (and other recipes that inherit cml1)

(This may obviate bug 2658.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50429</commentid>
    <comment_count>1</comment_count>
    <who name="Markus Lehtonen">markus.lehtonen</who>
    <bug_when>2015-04-20 19:13:26 +0000</bug_when>
    <thetext>Handling the kernel configuration nicely is possibly the trickiest part. There are multiple &quot;levels&quot; of support that could be enabled:
1. Changing config in B (builddir), e.g. via menuconfig
2. Store/commit full config in srctree and use that for building
3. Support modifying config via the meta branch

Any opinions? Maybe a separate bug about the config handling would be in order?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50445</commentid>
    <comment_count>2</comment_count>
    <who name="Bruce Ashfield">bruce.ashfield</who>
    <bug_when>2015-04-21 14:16:16 +0000</bug_when>
    <thetext>(In reply to comment #1)
&gt; Handling the kernel configuration nicely is possibly the trickiest part.
&gt; There are multiple &quot;levels&quot; of support that could be enabled:
&gt; 1. Changing config in B (builddir), e.g. via menuconfig
&gt; 2. Store/commit full config in srctree and use that for building
&gt; 3. Support modifying config via the meta branch
&gt; 
&gt; Any opinions? Maybe a separate bug about the config handling would be in
&gt; order?

Cases #1 and #2 make sense if you find a sane starting configuration. 

For #3, it would be the meta branch, or just use recipe space 
configuration fragments (since they are treated the same by the code).
An easier starting point would be recipe space fragments.

In the end, it would be a good idea to ensure that whatever the tools
support for configuration that we end up producing consistent:

  - base configuration
  - incremental fragments

We can do that for any of the cases above, by saving the original
config, and either directly producing the fragment, or by diffing
against the original. Since this model familiarizes developers with
configuration fragments, and they are something that can easily
be reviewed and made part of a permanent build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>56993</commentid>
    <comment_count>3</comment_count>
    <who name="Markus Lehtonen">markus.lehtonen</who>
    <bug_when>2015-12-03 14:08:34 +0000</bug_when>
    <thetext>This bug has been a bit forgotten. All the basic support should be there, now, except for the kernel config handling.

I just sent a devtool patch that makes devtool copy kernel .config to the srctree when doing &apos;extract&apos; operation:
http://lists.openembedded.org/pipermail/openembedded-core/2015-December/113693.html

What do you think, is this a sufficient way to store a base configuration? With this &apos;devtool update-recipe&apos; could diff the effective configuration in ${S} against this base and add any changes as one monolithic config fragment to the recipe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58331</commentid>
    <comment_count>4</comment_count>
    <who name="Markus Lehtonen">markus.lehtonen</who>
    <bug_when>2016-01-29 08:42:33 +0000</bug_when>
    <thetext>I&apos;m closing this now as the basic kernel support has been merged. There is a separate related bug kernel about kernel config handling:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=8999

Please re-open if you disagree</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>