<?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>1560</bug_id>
          
          <creation_ts>2011-10-03 07:12:09 +0000</creation_ts>
          <short_desc>Enable recipe specific sysroots</short_desc>
          <delta_ts>2017-01-23 14:46:37 +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>Meta-yocto</product>
          <component>meta-yocto</component>
          <version>unspecified</version>
          <rep_platform>x86</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>High</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>2.3 M2</target_milestone>
          
          <blocked>10684</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Richard Purdie">richard.purdie</reporter>
          <assigned_to name="Richard Purdie">richard.purdie</assigned_to>
          <cc>clemens.lang</cc>
    
    <cc>dongxiao.xu</cc>
    
    <cc>igor.stoppa</cc>
    
    <cc>jessica.zhang</cc>
    
    <cc>joshuagloe</cc>
    
    <cc>kergoth</cc>
    
    <cc>obi</cc>
    
    <cc>poky.bs.watcher</cc>
    
    <cc>poky.watcher</cc>
    
    <cc>randy.macleod</cc>
    
    <cc>sgw</cc>
          
          
          <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>16608</commentid>
    <comment_count>0</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2011-10-03 07:12:09 +0000</bug_when>
    <thetext>Enabling recipe specific sysroots would mean that only items present in a task&apos;s DEPENDS would be present in the sysroot so there would be 100% deterministic builds as dependencies couldn&apos;t be accidentally be satifised as per the current shared sysroot.

From a practical implementation level, this would mean the addition of a populate_recipe_sysroot task before do_configure which would replace the existing populate_sysroot task.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>68737</commentid>
    <comment_count>1</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2016-11-30 16:53:40 +0000</bug_when>
    <thetext>There is a proof of concept patch on the oe-architecture list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>68916</commentid>
    <comment_count>2</comment_count>
    <who name="Randy MacLeod">randy.macleod</who>
    <bug_when>2016-12-07 20:36:27 +0000</bug_when>
    <thetext>I think this would be a great improvement to the build system. 

One minor downside is that we would not accidentally discover missing dependencies by finding race conditions in the builds. Do you think that we should add yet another flag to permit the existing sysroot behaviour or do we just have to come up with a more intelligent way, that doesn&apos;t involve error-prone developers, for discovering package dependencies?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>68917</commentid>
    <comment_count>3</comment_count>
    <who name="Christopher Larson">kergoth</who>
    <bug_when>2016-12-07 20:37:43 +0000</bug_when>
    <thetext>I think if you want to know what optional deps a project has, you should read the documentation on the project, run ./configure --help, or read configure.in :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>68921</commentid>
    <comment_count>4</comment_count>
    <who name="Randy MacLeod">randy.macleod</who>
    <bug_when>2016-12-08 01:38:58 +0000</bug_when>
    <thetext>That&apos;s your fix? It&apos;ll never work reliably, at least for other people. :)
Random discovery isn&apos;t much or any better though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70006</commentid>
    <comment_count>5</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2017-01-23 14:46:37 +0000</bug_when>
    <thetext>Just over 5 years later from when I originally filed this, it finally has landed:
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=9107d6ca144ac1f6169830dee25dae2dad775333</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>