<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Oct 18, 2015 at 2:52 PM, Nicholas Alexander <span dir="ltr"><<a href="mailto:nalexander@mozilla.com" target="_blank">nalexander@mozilla.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><span class=""><br><div class="gmail_quote">On Thu, Oct 15, 2015 at 5:15 PM, Mike Hommey <span dir="ltr"><<a href="mailto:mh@glandium.org" target="_blank">mh@glandium.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
I started a thread with the same subject almost two years ago. The<br>
motivation hasn't changed, but the context surely has, so it's probably<br>
time to reconsider.<br>
<br>
As a reminder, "dumbmake" is the feature that makes "mach build foo/bar"<br>
sometimes rebuild in some other directories as well. For example, "mach<br>
build gfx" will build gfx, as well as toolkit/library.<br>
<br>
OTOH, it is pretty limited, and, for instance, "mach build gfx/2d" will<br>
only build gfx/2d.<br>
<br>
There are however now two build targets that can do the right thing for<br>
most use cases:<br>
- mach build binaries, which will build C/C++ related things<br>
  appropriately<br>
- mach build faster, which will build JS, XUL, CSS, etc. (iow, non<br>
  C/C++) (although it skips what doesn't end up in dist/bin)<br>
<br>
At this point, I think "dumbmake" is more harmful than helpful, and the<br>
above two targets should be used instead. Removing "dumbmake" would mean<br>
that "mach build foo/bar" would still work, but would stop to "magically"<br>
do something else than what was requested (or fail to do that thing for<br>
all the cases it doesn't know about).<br>
<br>
Are there still objections to go forward, within the new context?<br></blockquote><br></div></span><div class="gmail_quote">I agree that dumbmake is more harmful than helpful.  I did some of the work to port it forward to the mach world; IIRC, my motivation was to ease the transition to "mach and smarter build targets".  We're now seeing smarter build targets that aren't based on (recursive) Make, and dumbmake hasn't helped anybody transition to anything: there have been a wopping 10 commits to the underlying dependency tree [1], some of which are backouts and relandings.<br><br></div><div class="gmail_quote">If we need smarter build targets, let's make that happen at the mach level, not at the Make level<br></div></div></div></blockquote><div><br></div><div>Slightly off-topic, but I'd like to argue against smarter build targets,</div><div>if by that you mean more stuff like "mach build binaries"</div><div><br></div><div>What's needed here is a dependency management system that</div><div>simply builds what's needed regardless of what's changed, not more</div><div>ways for the user to tell the build system "only rebuild some stuff".</div><div><br></div><div>-Ekr</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"></div><div class="gmail_quote">Nick<br></div><div class="gmail_quote"><br>[1] <a href="https://hg.mozilla.org/mozilla-central/filelog/e8c7dfe727cd970e2c3294934e2927b14143c205/build/dumbmake-dependencies" target="_blank">https://hg.mozilla.org/mozilla-central/filelog/e8c7dfe727cd970e2c3294934e2927b14143c205/build/dumbmake-dependencies</a><br><br></div></div></div>
<br>_______________________________________________<br>
firefox-dev mailing list<br>
<a href="mailto:firefox-dev@mozilla.org">firefox-dev@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/firefox-dev" rel="noreferrer" target="_blank">https://mail.mozilla.org/listinfo/firefox-dev</a><br>
<br></blockquote></div><br></div></div>