<?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>3298</bug_id>
          
          <creation_ts>2012-10-18 08:12:46 +0000</creation_ts>
          <short_desc>Add a &apos;world native&apos; target</short_desc>
          <delta_ts>2013-05-02 12:17:42 +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>core</component>
          <version>1.4</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>Design</status_whiteboard>
          <keywords></keywords>
          <priority>Low</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>1.4 M3</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robert Yang">liezhi.yang</reporter>
          <assigned_to name="Hongxu Jia">hongxu.jia</assigned_to>
          <cc>alexandrux.palalau</cc>
    
    <cc>jason.wessel</cc>
    
    <cc>jessica.zhang</cc>
    
    <cc>liang.li2</cc>
    
    <cc>mark.hatle</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>richard.purdie</cc>
    
    <cc>sgw</cc>
    
    <cc>zhenfeng.zhao</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>---</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>26695</commentid>
    <comment_count>0</comment_count>
    <who name="Robert Yang">liezhi.yang</who>
    <bug_when>2012-10-18 08:12:46 +0000</bug_when>
    <thetext>The &quot;bitbake world&quot; will build everything, it would be good if we have a &quot;bitbake native (or something else)&quot; which can build all the native tools, this is useful for testing and collecting the native tools. Maybe we can enhance the &quot;bitbake world&quot; to achieve this, or do it in a recipe.

Put it in the &quot;oe-core&quot; product at the moment since I don&apos;t have detailed design about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26698</commentid>
    <comment_count>1</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2012-10-18 09:00:47 +0000</bug_when>
    <thetext>This already exists and is &quot;bitbake universe&quot;. Whilst its expected world will not fail, universe can and will due to it building multiple providers of things.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26702</commentid>
    <comment_count>2</comment_count>
    <who name="Robert Yang">liezhi.yang</who>
    <bug_when>2012-10-18 09:38:55 +0000</bug_when>
    <thetext>(In reply to comment #1)
&gt; This already exists and is &quot;bitbake universe&quot;. Whilst its expected world
&gt; will not fail, universe can and will due to it building multiple providers
&gt; of things.

Hi Richard,

Maybe I didn&apos;t describe it clearly, I meant that &quot;bitbake native&quot; only built the &quot;native&quot; tools, for what I know is that the &quot;bitbake universe&quot; would build everything, and it failed sometimes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26735</commentid>
    <comment_count>3</comment_count>
    <who name="Jessica">jessica.zhang</who>
    <bug_when>2012-10-18 14:42:14 +0000</bug_when>
    <thetext>Can you be more specific what&apos;s the reason for creating this native target? Customer requirement, or what so ever? thx</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26736</commentid>
    <comment_count>4</comment_count>
    <who name="Jessica">jessica.zhang</who>
    <bug_when>2012-10-18 14:43:46 +0000</bug_when>
    <thetext>Please see my last comment</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26742</commentid>
    <comment_count>5</comment_count>
    <who name="Jason Wessel">jason.wessel</who>
    <bug_when>2012-10-18 15:10:49 +0000</bug_when>
    <thetext>The idea would be to create a set of &quot;pre-built&quot; native tools which could eventually be used across a number of hosts, so as to not have every host have to rebuild everything that is a &quot;native&quot; package.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26756</commentid>
    <comment_count>6</comment_count>
    <who name="Robert Yang">liezhi.yang</who>
    <bug_when>2012-10-19 09:53:59 +0000</bug_when>
    <thetext>(In reply to comment #4)
&gt; Please see my last comment

Hi Jessica,

I think Jason has answered your question, can we set it to &quot;Accepted&quot; ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26757</commentid>
    <comment_count>7</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2012-10-19 10:11:22 +0000</bug_when>
    <thetext>(In reply to comment #5)
&gt; The idea would be to create a set of &quot;pre-built&quot; native tools which could
&gt; eventually be used across a number of hosts, so as to not have every host
&gt; have to rebuild everything that is a &quot;native&quot; package.

I think a &quot;world-native&quot; would not allow enough of the flexibility you&apos;d want in this. I suspect a packagegroup listing the native tools you wanted as part of this set would be more appropriate.

My main worry is how you&apos;d implement this &quot;world-native&quot; since the only way I can see it working if you don&apos;t use packagegroups is to teach bitbake special knowledge about &quot;native&quot; which is shouldn&apos;t really need to know anything about.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26758</commentid>
    <comment_count>8</comment_count>
    <who name="Robert Yang">liezhi.yang</who>
    <bug_when>2012-10-19 10:29:13 +0000</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #5)
&gt; &gt; The idea would be to create a set of &quot;pre-built&quot; native tools which could
&gt; &gt; eventually be used across a number of hosts, so as to not have every host
&gt; &gt; have to rebuild everything that is a &quot;native&quot; package.
&gt; 
&gt; I think a &quot;world-native&quot; would not allow enough of the flexibility you&apos;d
&gt; want in this. I suspect a packagegroup listing the native tools you wanted
&gt; as part of this set would be more appropriate.
&gt; 

Sounds great, so how about add such a recipe (use packagegroup) in oe-core ?

&gt; My main worry is how you&apos;d implement this &quot;world-native&quot; since the only way
&gt; I can see it working if you don&apos;t use packagegroups is to teach bitbake
&gt; special knowledge about &quot;native&quot; which is shouldn&apos;t really need to know
&gt; anything about.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27372</commentid>
    <comment_count>9</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2012-11-12 22:40:52 +0000</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; The idea would be to create a set of &quot;pre-built&quot; native tools which could
&gt; &gt; &gt; eventually be used across a number of hosts, so as to not have every host
&gt; &gt; &gt; have to rebuild everything that is a &quot;native&quot; package.
&gt; &gt; 
&gt; &gt; I think a &quot;world-native&quot; would not allow enough of the flexibility you&apos;d
&gt; &gt; want in this. I suspect a packagegroup listing the native tools you wanted
&gt; &gt; as part of this set would be more appropriate.
&gt; &gt; 
&gt; 
&gt; Sounds great, so how about add such a recipe (use packagegroup) in oe-core ?

I&apos;m ok with doing that and think its the best approach available although I&apos;m still unsure if it makes a huge amount of sense for the project.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27379</commentid>
    <comment_count>10</comment_count>
    <who name="Robert Yang">liezhi.yang</who>
    <bug_when>2012-11-13 02:55:08 +0000</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; (In reply to comment #7)
&gt; &gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; &gt; The idea would be to create a set of &quot;pre-built&quot; native tools which could
&gt; &gt; &gt; &gt; eventually be used across a number of hosts, so as to not have every host
&gt; &gt; &gt; &gt; have to rebuild everything that is a &quot;native&quot; package.
&gt; &gt; &gt; 
&gt; &gt; &gt; I think a &quot;world-native&quot; would not allow enough of the flexibility you&apos;d
&gt; &gt; &gt; want in this. I suspect a packagegroup listing the native tools you wanted
&gt; &gt; &gt; as part of this set would be more appropriate.
&gt; &gt; &gt; 
&gt; &gt; 
&gt; &gt; Sounds great, so how about add such a recipe (use packagegroup) in oe-core ?
&gt; 
&gt; I&apos;m ok with doing that and think its the best approach available although

I will use the packagegroup to do it, and add it in meta/recipes-gnome/packagegroups/

&gt; I&apos;m still unsure if it makes a huge amount of sense for the project.

I think that it is useful on the 2 aspects: 

1) We can share this set of native recipes&apos; sstate cache among different hosts.

2) We can use this set of native recipes to verify whether we can support a host
   (maybe &quot;bitbake world&quot; is a better verification way)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>28386</commentid>
    <comment_count>11</comment_count>
    <who name="Hongxu Jia">hongxu.jia</who>
    <bug_when>2012-12-20 00:34:49 +0000</bug_when>
    <thetext>Merged into master:

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=44c9d1ff258c31110a2cdca198e6300d705175e2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>28569</commentid>
    <comment_count>12</comment_count>
    <who name="liang li">liang.li2</who>
    <bug_when>2013-01-07 03:41:51 +0000</bug_when>
    <thetext>no error when run &quot;bitbake -b /path/to/packagegroup-toolset-native.bb&quot; with git master branch commit &quot;958162e96b4a4f23bca94500b5f20975633dd5c6&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32843</commentid>
    <comment_count>13</comment_count>
    <who name="Alexandru Palalau">alexandrux.palalau</who>
    <bug_when>2013-05-02 12:17:42 +0000</bug_when>
    <thetext>This is covered by the following Testopia test case:
https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=757</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>