<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 9, 2015 at 8:53 AM, James Y Knight via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span class=""><div><div>On Nov 9, 2015, at 11:42 AM, David Blaikie via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:</div><blockquote type="cite"><div><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 9, 2015 at 4:32 AM, Renato Golin <span dir="ltr"><<a href="mailto:renato.golin@linaro.org" target="_blank">renato.golin@linaro.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi David/Galina,<br>
<br>
FYI, I found one big reason why self-hosting bots fail long after the<br>
offending commit is tested: dirty builds.<br>
<br>
In a dirty build (no make clean), when a file X is changed that breaks<br>
file Y, the bot will only accuse the failure when file Y is changed,<br>
too, so that stage1 with modified X will compile file Y, and break.<br></blockquote><div><br></div><div>That sounds like a bug in the build system - do you have any examples of this? We should fix them.<br><br>The build should be reliable - any case where a clean build produces a different result from a dirty build reduces/removes confidence in incremental builds & hurts developer productivity (just like flakey tests, etc).<br></div></div></div></div></div></blockquote></div><div><br></div></span><div>I think he meant that the /second-stage/ build should always be done as a clean build -- to make sure that all of the source gets rebuilt with the newly-compiled compiler, instead of only rebuilding the modified sources with the newly-built compiler.</div><div><br></div><div>Build systems typically aren't expected to watch out for the compiler itself changing out from under them.</div></div></blockquote><div><br></div><div>+1, I know that my self-hosting Windows buildbot does not do a clean second stage build, and I've been meaning to fix that for some time.</div><div><br></div><div>Renato, I would rather fix this in our buildbot configs. We should just make stage2 always be clean, and that will fix my builders as well as yours.</div></div></div></div>