On 13-05-06 9:03 PM, Josh Matthews wrote:
On 05/05/2013 09:07 PM, Felipe Gomes wrote:
Is the idea of smartmake to make things also work for non-toplevel
folders? For example, if I edit .cpp only in content/base/src, it
should be enough to rebuild that and toolkit/library. However, `mach
build content/base/src` won't add toolkit/library in that case.
I think this would be a nice use case to cover for the workflow of:
- enter folder
- make changes to files
- `mach build .`
In any case, I filed bug 868880 to include some of the browser/app
dependencies into smartmake.
I thought at one point I had longest substring matching in smartmake,
but the details are fuzzy. It feels like it should be fine to take the
dependency that is the longest substring match of the target and start
building from there, which would avoid the need to add
browser/devtools/* to the dependency list.
I commented on Bug 868880 to this effect, but: what if the longest
substring is /? Then we're forcing a top-level build. Or we're special
casing directories at the root (which I suppose we already are, since
|mach build| and |mach build DIR| do different things).
Personally, adding browser/devtools/* to the dependency list prompts us
developers to externalize our knowledge of the dependencies not captured
by the current build system, which seems like an artifact we will
appreciate in the future.
Nick
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform