<?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>4945</bug_id>
          
          <creation_ts>2013-07-29 12:46:27 +0000</creation_ts>
          <short_desc>No proper message in case of errors when building u-boot through bitbake</short_desc>
          <delta_ts>2013-08-09 15:34:58 +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>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>Medium</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>1.5</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Laszlo Papp">lpapp</reporter>
          <assigned_to name="Ross Burton">ross.burton</assigned_to>
          <cc>bluelightning</cc>
    
    <cc>jefro</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>ross.burton</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>No (bug/feature does not impact docs)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>35086</commentid>
    <comment_count>0</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 12:46:27 +0000</bug_when>
    <thetext>While running the following command:

&quot;bitbake u-boot&quot; or &quot;UBOOT_MACHINE=omap3_beagle_config bitbake u-boot&quot;

.. getting the following error message:

ERROR: Nothing PROVIDES &apos;u-boot&apos;
ERROR: u-boot was skipped: because UBOOT_MACHINE is not set
ERROR: u-boot was skipped: because UBOOT_MACHINE is not set
ERROR: u-boot was skipped: because UBOOT_MACHINE is not set
ERROR: u-boot was skipped: because UBOOT_MACHINE is not set

==========================================

This is unclear for a newcomer due to the following reasons:

1) Not sure if UBOOT_MACHINE is supported or just the syntax is wrong somehow.

2) As it turns out &quot;MACHINE=beagleboard bitbake u-boot&quot; or similar kind should be passed, but I would have never guessed that as a newcomer.

The suggestion is simply the addition or proper error diagnostics. Some reference should be taken to MACHINE rather than just UBOOT_MACHINE.

That would clear up the situation right off-hand.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35087</commentid>
    <comment_count>1</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2013-07-29 12:55:35 +0000</bug_when>
    <thetext>UBOOT_MACHINE can&apos;t be set externally because it&apos;s not in BB_ENV_EXTRAWHITE and it is not appropriate to add it there. It should be set to an appropriate value from your machine configuration file.

Bottom line is you can&apos;t build u-boot for a machine that doesn&apos;t support it, and qemuarm doesn&apos;t. The recipe cannot tell which MACHINE will support it, only that UBOOT_MACHINE hasn&apos;t been set in the current configuration, which is exactly what it reports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35089</commentid>
    <comment_count>2</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-07-29 12:57:32 +0000</bug_when>
    <thetext>I&apos;d say the best we could have is the error message to say &quot;because UBOOT_MACHINE is not set, verify your machine configuration&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35090</commentid>
    <comment_count>3</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:02:18 +0000</bug_when>
    <thetext>No no, you misunderstood the report!

It should say: &quot;MACHINE is not set&quot; or something similar. The very least, it should say &quot;UBOOT_MACHINE, nor MACHINE&quot; or so.

Please be supportive with users, not reluctant.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35092</commentid>
    <comment_count>4</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:03:15 +0000</bug_when>
    <thetext>Giving errors about UBOOT_MACHINE, when the real issue is the MACHINE not specified is well... highly misleading to a user.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35094</commentid>
    <comment_count>5</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:05:05 +0000</bug_when>
    <thetext>Also, &quot;qemuarm&quot; was not mentioned in the report at all, but beagleboard, so please stay more on topic and focus on the issue at hand.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35095</commentid>
    <comment_count>6</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2013-07-29 13:07:35 +0000</bug_when>
    <thetext>MACHINE *is* specified; so it not being specified is not the problem. If it were not qemuarm then some other machine configuration where UBOOT_MACHINE hasn&apos;t been set.

We&apos;d take a patch to change it as Ross suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35096</commentid>
    <comment_count>7</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:10:25 +0000</bug_when>
    <thetext>Sorry, but you do not make any sense.

There was *** NO *** any note about qemuarm, okay? There was not any.

However, there was this mentioned because you are so attached to the outside world than this report, I have to repeat:

&quot;bitbake u-boot&quot; or &quot;UBOOT_MACHINE=omap3_beagle_config bitbake u-boot&quot;

I started with the first *** without *** MACHINE, okay?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35097</commentid>
    <comment_count>8</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2013-07-29 13:14:06 +0000</bug_when>
    <thetext>MACHINE is set. It&apos;s set by default in your local.conf, so it doesn&apos;t matter whether you supply it on the command line or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35098</commentid>
    <comment_count>9</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:16:03 +0000</bug_when>
    <thetext>Then, of course it should report that. &quot;MACHINE=... blabla specified not supporting this&quot;.

At any rate, the user experience is fully broken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35100</commentid>
    <comment_count>10</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:25:33 +0000</bug_when>
    <thetext>It should also mention that where it is specified exactly, so a file name for instance to make it explicitly clear as much as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35101</commentid>
    <comment_count>11</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:32:37 +0000</bug_when>
    <thetext>That would be more explicit than this:

&quot;because UBOOT_MACHINE is not set, verify your machine configuration&quot;

What does it mean machine configuration? UBOOT_MACHINE in the config? MACHINE in the config? UBOOT_MACHINE, MACHINE, or even something else on the command line?

&quot;machine configuration&quot; is a vague term, so I do not support that suggestion. It should be as explicit as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35102</commentid>
    <comment_count>12</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-07-29 13:46:09 +0000</bug_when>
    <thetext>http://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#platdev-newmachine-conffile

&quot;Machine configuration&quot; isn&apos;t a vague term, it&apos;s a specific file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35103</commentid>
    <comment_count>13</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-07-29 13:48:25 +0000</bug_when>
    <thetext>Except that it does not tell anything specific to a newcomer without a lot of investigation on the topic.

Just be cool and provide error message for end users, not hard code developers. :)

The whole point is machine in this case anyway, and its validity after all, not the whole machine configuration anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35182</commentid>
    <comment_count>14</comment_count>
    <who name="Saul Wold">sgw</who>
    <bug_when>2013-07-30 19:31:59 +0000</bug_when>
    <thetext>To ensure we are not vague in the error message, we can say the following:

ERROR: u-boot was skipped: because UBOOT_MACHINE is not set in the ${MACHINE} 
machine configuration file, please verify your configuration&quot;

Where ${MACHINE} will be the setting of MACHINE

It&apos;s not easy to identify the location of where MACHINE might be set, but one 
can use bitbake -e &lt;target&gt; to determine that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35242</commentid>
    <comment_count>15</comment_count>
    <who name="Saul Wold">sgw</who>
    <bug_when>2013-08-01 06:26:52 +0000</bug_when>
    <thetext>See previous comment</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35246</commentid>
    <comment_count>16</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-01 06:43:08 +0000</bug_when>
    <thetext>local.conf != command line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35248</commentid>
    <comment_count>17</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-01 06:46:18 +0000</bug_when>
    <thetext>As I said, it is not proper.

When the machine does not support u-boot, it should just tell that up front by also mentioning the selected machine.

UBOOT_MACHINE is a red herring in case of qemuarm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35251</commentid>
    <comment_count>18</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-08-01 09:08:57 +0000</bug_when>
    <thetext>Patch sent that implements what Saul said.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35255</commentid>
    <comment_count>19</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-01 10:33:21 +0000</bug_when>
    <thetext>Then please open a bugreport for that. I am not asking that in this bugreport.

Also, as written several times already, *please* post the links on bugzilla.

Please be concerned about quality here, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35256</commentid>
    <comment_count>20</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-01 10:36:15 +0000</bug_when>
    <thetext>Please do not change the status to review if it implements a different request; thank you for your understand.

I appreciate your work, but if it is a different request, then it is a different request, and hence &quot;review&quot; would be incorrect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35257</commentid>
    <comment_count>21</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-08-01 10:38:19 +0000</bug_when>
    <thetext>Then I clearly don&apos;t understand your original request.  Please explain clearly and concisely, in pseudocode if possible, exactly what it is that you are requesting and explain how my patch doesn&apos;t implement it.

As far as I can understand the patch I&apos;ve sent is the best that is possible, so marking as in review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35259</commentid>
    <comment_count>22</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-01 10:39:39 +0000</bug_when>
    <thetext>ok, you won the ping-pong game.

As for the change ... you have not even bothered to paste a link even requested ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35260</commentid>
    <comment_count>23</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-08-01 10:44:46 +0000</bug_when>
    <thetext>I&apos;m genuinely curious as to why my patch doesn&apos;t implement what you want, this wasn&apos;t some game for me.

For looking up patches I recommend the patchworks service. http://patches.openembedded.org/patch/54893/.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35504</commentid>
    <comment_count>24</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-08-08 17:09:01 +0000</bug_when>
    <thetext>Resolving fixed, the patch has been integrated into oe-core (beef66beaee926ec3d3640b79133fdb2ccc404f0) and no further improvements have been suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35505</commentid>
    <comment_count>25</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-08 17:10:11 +0000</bug_when>
    <thetext>Actually, I have had suggestions on the mailing list which seems to have been ignored. :/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35507</commentid>
    <comment_count>26</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2013-08-08 17:16:40 +0000</bug_when>
    <thetext>One suggestion was along the lines of &quot;I would like it to be more specific.&quot;  There&apos;s a balance between concise and verbose, and listing the full path to all of the files that are involved in the machine configuration pushes too far into verbose for my liking.  We state the machine name, so worst-case it&apos;s a find command to find the right initial configuration file.

The other suggestion was along the lines of a warning when a variable is set in the environment.  That&apos;s a valid use-case so we don&apos;t want to warn there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35522</commentid>
    <comment_count>27</comment_count>
    <who name="Laszlo Papp">lpapp</who>
    <bug_when>2013-08-08 20:05:32 +0000</bug_when>
    <thetext>1) Why would everyone ever use find and similar stuff when it can return the very only file at hand right away? I am not even sure what &quot;all the files&quot; you are referring to.

2) Do you seriously think it is a normal and intended situation if a user sets the machine to foo when it is already foo in the background? That seems pointless to me, and it is very likely that is not what the user wanted, i.e. we should warn.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>