On Sun, Oct 18, 2015 at 2:52 PM, Nicholas Alexander <nalexan...@mozilla.com>
wrote:

>
>
> On Thu, Oct 15, 2015 at 5:15 PM, Mike Hommey <m...@glandium.org> wrote:
>
>> Hi,
>>
>> I started a thread with the same subject almost two years ago. The
>> motivation hasn't changed, but the context surely has, so it's probably
>> time to reconsider.
>>
>> As a reminder, "dumbmake" is the feature that makes "mach build foo/bar"
>> sometimes rebuild in some other directories as well. For example, "mach
>> build gfx" will build gfx, as well as toolkit/library.
>>
>> OTOH, it is pretty limited, and, for instance, "mach build gfx/2d" will
>> only build gfx/2d.
>>
>> There are however now two build targets that can do the right thing for
>> most use cases:
>> - mach build binaries, which will build C/C++ related things
>>   appropriately
>> - mach build faster, which will build JS, XUL, CSS, etc. (iow, non
>>   C/C++) (although it skips what doesn't end up in dist/bin)
>>
>> At this point, I think "dumbmake" is more harmful than helpful, and the
>> above two targets should be used instead. Removing "dumbmake" would mean
>> that "mach build foo/bar" would still work, but would stop to "magically"
>> do something else than what was requested (or fail to do that thing for
>> all the cases it doesn't know about).
>>
>> Are there still objections to go forward, within the new context?
>>
>
> 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.
>
> If we need smarter build targets, let's make that happen at the mach
> level, not at the Make level
>

Slightly off-topic, but I'd like to argue against smarter build targets,
if by that you mean more stuff like "mach build binaries"

What's needed here is a dependency management system that
simply builds what's needed regardless of what's changed, not more
ways for the user to tell the build system "only rebuild some stuff".

-Ekr


> Nick
>
> [1]
> https://hg.mozilla.org/mozilla-central/filelog/e8c7dfe727cd970e2c3294934e2927b14143c205/build/dumbmake-dependencies
>
>
> _______________________________________________
> firefox-dev mailing list
> firefox-...@mozilla.org
> https://mail.mozilla.org/listinfo/firefox-dev
>
>
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to