<div><br></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Mar 15, 2020 at 3:25 PM Richard Purdie <<a href="mailto:richard.purdie@linuxfoundation.org">richard.purdie@linuxfoundation.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sun, 2020-03-15 at 15:23 -0700, Khem Raj wrote:<br>
> On Sun, Mar 15, 2020 at 3:14 PM Richard Purdie<br>
> <<a href="mailto:richard.purdie@linuxfoundation.org" target="_blank">richard.purdie@linuxfoundation.org</a>> wrote:<br>
> > On Sat, 2020-03-14 at 21:29 -0700, Khem Raj wrote:<br>
> > > In some cases, we run into parallel build failures where<br>
> > > BUILT_SOURCES<br>
> > > is skipped, as a result required header files are not generated and<br>
> > > the<br>
> > > build fails with missing header errors like<br>
> > > <br>
> > > ../bison-3.5.2/lib/uniwidth/width.c:21:10: fatal error: uniwidth.h:<br>
> > > No such file or directory<br>
> > > #include "uniwidth.h"<br>
> > > ^~~~~~~~~~~~<br>
> > > compilation terminated.<br>
> > > <br>
> > > BUILT_SOURCES should be built automatically with `make all` [1]<br>
> > > therefore<br>
> > > ensure that make is invoked with `all` target<br>
> > > <br>
> > > bison-native parallel build fails when -l<n> is passed globally from<br>
> > > build environment, errors like below due to race starts to show up<br>
> > > <br>
> > > Therefore removes a previous load limit if set<br>
> > > <br>
> > > [1]<br>
> > > <a href="https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Built-Sources-Example" rel="noreferrer" target="_blank">https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Built-Sources-Example</a><br>
> > <br>
> > I'm not sure I understand this. We've seen a failure on our ubuntu1604<br>
> > performance tester which I think is the same bug as this. The<br>
> > environment on that machine doesn't change, so how/where is this -l<br>
> > option coming from?<br>
> > <br>
> <br>
> From custom distro global settings for EXTRA_OEMAKE<br>
> <br>
> > I suspect there is some issue we're not quite getting to still :(<br>
> > <br>
> its well reproducible now with -j and -l together on our builders, From what<br>
> I see in makefiles bison is doing right thing in using BUILT_SOURCES so<br>
> I suspect it could be make acting in a certain way when those options<br>
> are present.<br>
> <br>
> our custom settings use -l options globally in EXTRA_OEMAKE<br>
> this is to let machines with certain configurations build when machines are<br>
> shared, we don't want a given build to use all resources on box. Yes one<br>
> could say why not do something else to limit the resources build uses but<br>
> this is a global setting that works well<br>
> <br>
> This patch just ensures that any -l setting passed from environment is<br>
> cleaned up and reset. So for general case it will be a noop.<br>
<br>
Ok, that explains your failure but not the one on our performance<br>
testing worker :/.</blockquote><div dir="auto"><br></div><div dir="auto">What errors do you see on perf testing worker is it exactly same ?</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
Cheers,<br>
<br>
Richard<br>
<br>
</blockquote></div></div>