Commit graph

4 commits

Author SHA1 Message Date
Shinichiro Hamaji
5b6b6bb974 Add two flags for the latest ckati
* --regen

Re-generate build.ninja only when necessary. If either

1. .mk file is updated,
2. environment variable is updated,
3. $(wildcard) result is changed, or
4. $(shell) result is changed,

ckati will regenerate ninja file. This check takes only ~1
second, so incremental build will become much faster even
without "fastincremental" target.

* --ignore_dirty=out/%:

Some .mk files in out/ (e.g.,
out/target/product/generic/previous_build_config.mk)
are updated while ckati is running. With this flag, ckati
does not regenerate build.ninja when they look modified.
This should be OK for ninja based build, as ninja handles
command line changes nicely.

Change-Id: I7a2fca0e327d999599d6b16f06358e8a5e657565
2015-08-17 20:20:20 +09:00
Ying Wang
0a0e6eae3f Build static ckati on Linux.
Bug: 22798670
Change-Id: I3aaf127627c1c478ab3af2549e49506d4d1f19df
2015-08-04 12:23:27 -07:00
Ying Wang
bb1da5e614 Use unmodified MAKECMDGOALS in ninja.mk.
The build system removes targets like "PRODUCT-full-eng" from
MAKECMDGOALS in build/core/product_config.mk.
Without this change, such target isn't passed to kati.

Change-Id: I0b3949ed1f5557445d7f5d5bd59b7875c0b2ea7f
2015-07-29 12:21:54 -07:00
Colin Cross
3b324cb32e Build with kati+ninja when USE_NINJA=true
If USE_NINJA=true, use kati to translate makefiles into ninja files,
and then execute them with ninja.

Builds kati from source using simplified versions of the rules
in binary.mk and definitions.mk.

Adds two new goals when USE_NINJA=true: generateonly will regenerate
build.ninja but not rebuild (useful for comparing build.ninja output
between runs), and fastincremental will skip regenerating build.ninja
and go directly to running ninja, providing ~5 second incremental
builds.

Change-Id: Ib85399e730f1fbb1be7371fafeee7d1c31080771
2015-07-23 17:29:01 -07:00