Lines Matching +full:runs +full:- +full:on

14 |---|---|---|
15-compatible front-end. Encodes build logic in `.mk` scripts. Declares buildable units in `Android.…
17-like front-end. Encodes build logic in Go. Declares build units in `Android.bp`, parsed by Bluepr…
22 |Make (replaced in-place by Kati)|No longer in use. Entire build system, replaced by the tools abov…
29 * **“Kati-config” for the purpose of this document**
31 * **“Kati-build” for the purpose of this document**
33 * **“Kati-package” for the purpose of this document**
35 * **"Kati-cleanspec" for the purpose of this document**
37 * **Ninja** component to execute actions from Kati-build, Kati-package and soong\_build
38 * **Bazel** as the next generation of the entire build system, starting as a Ninja executor drop-in…
42 for inter-process communication (IPC), with one known case of unix socket
44 …roid/platform/superproject/+/master:build/soong/ui/build/paths/logs.go;l=112-133;drc=184901135cda8…
53 1. soong\_ui runs auxiliary tools to aggregate files into filelists, for
55 1. soong\_ui runs Kati-config with
62 1. Bootstrap phase runs Ninja on a build.ninja file that runs minibp to
65 1. Primary phase runs Ninja on a build.ninja file that runs soong_build
67 1. soong\_build also runs its own tests alongside generating
68 out/soong/build.ninja, which can be skipped with the `--skip-soong-tests`
70 1. soong\_ui runs Kati-cleanspec with
72 1. soong\_ui runs Kati-build to generate a Ninja file, with
74 1. soong\_ui runs Kati-package to generate a Ninja file, with
78 1. soong\_ui runs either Ninja or Bazel to execute the build, with the
81 soong\_ui has a --skip-make flag that will skip Kati-config, Kati cleanspec,
82 Kati-build and Kati-package, used for Soong-only builds in NDK and some
94 tools. For example, it generates Android.mk.list for Kati-build,
95 AndroidProducts.mk.list for Kati-config, and Android.bp.list for
100 tools with checked-in prebuilts, and uses path\_interposer to intercept calls
101 and error out whenever non-allowlisted tools are used (see out/.path for
104 soong\_ui generates a Kati suffix to ensure that Kati-generated files are
108 creates another Ninja file (out/combined-<product>.ninja) to combine the
113 ## Kati-config
115 As a product configuration tool, soong\_ui runs Kati-config in
116 **[--dumpvars-mode](https://cs.android.com/android/platform/superproject/+/master:build/soong/cmd/s…
119 Kati-config eventually evaluates[
122 …/android/platform/superproject/+/master:build/make/core/soong_config.mk;l=16-222;drc=341928ecc5da2…
123 This way, Kati-config can communicate product configuration to soong\_build,
124 as soong\_build parses the dumped variables from the JSON on startup, and
125 stores them into an in-memory Config object.
130 …oid/platform/superproject/+/master:build/make/core/dex_preopt_config.mk;l=71-142;drc=f26015449f074…
132 …android/platform/superproject/+/master:build/soong/dexpreopt/config.go;l=175-196;drc=1af783fae7471…
133 in a similar way as Kati-config evaluates dex\_preopt\_config.mk included in
136 soong\_ui sets up a **KatiReader** to monitor Kati-config’s stdout/err for UI
144 soong\_build communicates with Kati-build by generating Make Vars and running
146 (out/soong/{Android, late, make\_vars}-<product>.mk).
148 * Android-<product>.mk contains Soong modules as Make modules so Make
149 modules can depend on Soong modules.
150 * make\_vars-<product>.mk contains Make variables for Kati-build, exported
154 * late-<product>.mk contains Make variables that are not read while Kati-build
160 make this happen at this moment, since late.mk rules don’t currently depend on any
163 ## Kati-build / Kati-package
165 Kati-build’s primary role is to evaluate all Android.mk files with
167 out/build-<product>.ninja. It also generates cleanspec.ninja for the
168 product, containing statements on how to remove stale output files.
170 Kati-build’s primary role is to evaluate all packaging .mk files with
172 build/make/packaging/distdir.mk for dist-for-goals calls, and generate
173 out/package-<product>.ninja.
175 Kati-build/Kati-package’s stdout/stderr is monitored by soong\_ui’s
178 As Kati-build/Kati-package generates Ninja files, they also generate
179 out/ninja-<product>.sh and out/env-<product>.sh. These scripts are
185 As Ninja executes files from Kati-build, Kati-package, soong\_build and other
193 information about converted modules to BUILD/bzl files on disk. soong\_build