On Sat, 25 May 2013 14:48:30 -0400
Mike Gilbert <flop...@gentoo.org> wrote:

> For those unaware, dev-util/ninja is a make-replacement created by one
> of the Chromium guys at Google. Its focus is on making incremental
> builds of large software faster.

I've no idea how this would work out, so I'm asking some questions from
different perspective to form a better idea; this may step aside your
discussion but on the other hand could help other unaware developers.

If I missed earlier ML discussions on this by not paying attention or
being too new, feel free to point me to those; no need to repeat. :)

From an user perspective I was wondering if ninja in the Portage tree
makes use of this faster incremental builds feature. Should I expect
faster builds when trying this out?

From a developer perspective, aside from the above feature, are there
any other features that make ninja interesting to use in cmake ebuilds?
When should it be used?

From a maintainer's perspective, shouldn't the user be able to choose
whether ninja or make is used and not the developer? Or does ninja
really work out for the majority in a way nobody would complain?

From an upstream perspective, would it be problematic if people use
make instead of ninja; or wouldn't it translate into problems upstream
has to resolve? (To me, using ninja instead of make sounds like using
llvm instead of gcc; correct me if I'm wrong, I'm fairly new to ninja.)

> I'm wondering if we should create a more global function for calling
> ninja in a consistent way. Maybe we should introduce a NINJAOPTS
> variable for users to set in make.conf. Should we create a new eclass
> for this, or just stick it in eutils?

If we don't allow the user to pick which make system is preferred,
which I tried to suggest above; then I would prefer that we introduce
a NINJAOPTS variable like you suggest to go alongside MAKEOPTS.

In the case the user is able to choose which make system is preferred,
then MAKEOPTS should probably apply to that make system; unless we allow
maintainer's to override the user, then splitting them is back in favor.

But well, this is based on preliminary thoughts without really
properly knowing what the advantages and disadvantages here are.

Hopefully you can shed some light here, thanks in advance.

-- 
With kind regards,

Tom Wijsman (TomWij)
Gentoo Developer

E-mail address  : tom...@gentoo.org
GPG Public Key  : 6D34E57D
GPG Fingerprint : C165 AF18 AB4C 400B C3D2  ABF0 95B2 1FCD 6D34 E57D

Attachment: signature.asc
Description: PGP signature

Reply via email to