Skip to main content

kati

Build and Test

kati is an experimental GNU make clone. The main goal of this tool is to speed-up incremental build of Android.

Currently, kati does not offer a faster build by itself. It instead converts your Makefile to a ninja file.

Development

Building:

$ make ckati

The above command produces a ckati binary in the project root.

Testing (best ran in a Ubuntu 22.04 environment):

$ make test
$ go test --ckati
$ go test --ckati --ninja
$ go test --ckati --ninja --all

The above commands run all cKati and Ninja tests in the testcases/ directory.

Alternatively, you can also run the tests in a Docker container in a prepared test enviroment:

$ docker build -t kati-test . && docker run kati-test

If you are working on a machine that does not provide make in the same version as kati is currently compatible with, you might want to download a prebuilt version instead. For example to use the prebuilt version of Ubuntu 20.04 LTS:

  $ mkdir tmp/ && cd tmp/
  $ wget http://mirrors.kernel.org/ubuntu/pool/main/m/make-dfsg/make_4.2.1-1.2_amd64.deb
  $ ar xv make_4.2.1-1.2_amd64.deb
  $ tar xf data.tar.xz
  $ cd ..
  $ PATH=$(pwd)/tmp/usr/bin/:$PATH make test

How to use for Android

For Android-N+, ckati and ninja is used automatically. There is a prebuilt checked in under prebuilts/build-tools that is used.

All Android's build commands (m, mmm, mmma, etc.) should just work.

Metadata

Release files for kati 0.0.20250520

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kati 0.0.20250520
File Size Uploaded
kati-0.0.20250520.tar.gz 150.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for kati 0.0.20250520
File
kati-0.0.20250520-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
kati-0.0.20250520-py3-none-musllinux_1_2_s390x.whl Python 3 none Linux musl 1.2+ IBM System/390x Details
kati-0.0.20250520-py3-none-musllinux_1_2_ppc64le.whl Python 3 none Linux musl 1.2+ PowerPC 64-le Details
kati-0.0.20250520-py3-none-musllinux_1_2_i686.whl Python 3 none Linux musl 1.2+ x86-32 Details
kati-0.0.20250520-py3-none-musllinux_1_2_armv7l.whl Python 3 none Linux musl 1.2+ ARMv7l Details
kati-0.0.20250520-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
kati-0.0.20250520-py3-none-manylinux_2_27_armv7l.manylinux_2_31_armv7l.whl Python 3 none Linux glibc 2.27+ ARMv7l, Linux glibc 2.31+ ARMv7l Details
kati-0.0.20250520-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
kati-0.0.20250520-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl Python 3 none Linux glibc 2.17+ IBM System/390x Details
kati-0.0.20250520-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl Python 3 none Linux glibc 2.17+ PowerPC 64-le Details
kati-0.0.20250520-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl Python 3 none Linux glibc 2.17+ x86-32 Details
kati-0.0.20250520-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
kati-0.0.20250520-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
kati-0.0.20250520-py3-none-macosx_10_13_x86_64.whl Python 3 none macOS 10.13+ x86-64 Details

Total release size: 10.6 MB

Release files / kati-0.0.20250520.tar.gz

Download URL kati-0.0.20250520.tar.gz
Size 150.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4ca20a142cc52410acb9aaf90d1a96d11d64bbb5f8f2fd087ee143f2da5bd6fc
BLAKE2b-256 checksum
How to use checksums
6a767eee044b386433090f4e8d50f638887f43a84f922c01418c497cb0800522
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_x86_64.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_x86_64.whl
Size 1.4 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
22aa1f95ace67d9e9126968a5dfb27b93cbc0fadbca4a934dd8804f313f30c9a
BLAKE2b-256 checksum
How to use checksums
9770dcb9e07f69dcd4d6ee2a533c165bcde01f29b8eb19c67bb0b22a7bc08f55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_s390x.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_s390x.whl
Size 1.5 MB
Tags Linux musl 1.2+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
f49da6f0abfe6e4290be423f234c2e4e730aba48dc51bab59d2afbd5fd30de72
BLAKE2b-256 checksum
How to use checksums
8769e485e341af3b2520e9cf4be4779f36006fc37c0469b95a3a680da81fedcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_ppc64le.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_ppc64le.whl
Size 1.4 MB
Tags Linux musl 1.2+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
ec91997eeab1c33dcfd1d5432d951d4b72af8c1b9ace50bc99d78a9efcb1f469
BLAKE2b-256 checksum
How to use checksums
1d3313f83549b64415f9593fe46f526b0ea6d2259697655d564e8b7e4ca1a958
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_i686.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_i686.whl
Size 1.5 MB
Tags Linux musl 1.2+ x86-32 Python 3
SHA-256 checksum
How to use checksums
707d93e656090ecea5a03d892da14deb4b0c3ef860ecff4ad812600318fccf2a
BLAKE2b-256 checksum
How to use checksums
8e945d18d2067a2070c5cdd2b309f25c661ffe3abf5329364139e9474253120f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_armv7l.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_armv7l.whl
Size 1.1 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
edabd2e6ab0c051baca1361286c22f392b7fdbe3b7064276eb9fd7d569c5a30a
BLAKE2b-256 checksum
How to use checksums
7c3acc6a42d1f2fe8ce6fc0b8494e6c28e23112360f1855288ebfdb0bb278865
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-musllinux_1_2_aarch64.whl

Download URL kati-0.0.20250520-py3-none-musllinux_1_2_aarch64.whl
Size 1.3 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
6690c8d50ac837cba042ad28bca85e9d289628a9981e8d3d4094b9135b0e420e
BLAKE2b-256 checksum
How to use checksums
4e193fe3726a89c41917b6f7de6934693db2b1d77708a17b233048138f64fac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_27_armv7l.manylinux_2_31_armv7l.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_27_armv7l.manylinux_2_31_armv7l.whl
Size 256.7 kB
Tags Linux glibc 2.27+ ARMv7l Linux glibc 2.31+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
cc324d98eaa92957291efd964c643069e1795fd841e79c659e5f26ad5eca3049
BLAKE2b-256 checksum
How to use checksums
92ac2cd2148aa5b98b1b3521a9b6d825eecc1e933b757dcad8f04c19774661d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 289.2 kB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
e49189f1b81d8335a32378cf3dfde570e0cec5a7ae7ef9f394068f11548f4ae0
BLAKE2b-256 checksum
How to use checksums
dc88acea8f167ebe47334faa0ca8e03afda8b1f4f242b1f90b57e1a94e943ac5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 287.8 kB
Tags Linux glibc 2.17+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
acec36b41ef4bc3734e3bb43d64353e8f04a932152993c57b29f5fe288a2943e
BLAKE2b-256 checksum
How to use checksums
325d267ab40bca442de6a2f7ce4f16f5b6fa71a2ce7f115a21cd59db82bc86a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 328.3 kB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
d8740f87656ed44f73a64ec67a37b860a9800c3eace9ed491a58672f7dd15282
BLAKE2b-256 checksum
How to use checksums
b89e987d4e193c33547215810231bd4e1fb226ece9f199804fa0b2c554d4ca96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Size 298.1 kB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
2fe3fd1edcd22c9ccd022c47ae005265b5d15c34ac2d5fe7ddb2e12d92a35028
BLAKE2b-256 checksum
How to use checksums
41aacbbe9973cdeb315ef586707d4f613cb84f574d8f6868ba76084c8a0e4c60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL kati-0.0.20250520-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 286.3 kB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
4c4be88644b8f6fdd34abc20ba2b088f856746c1158df435e7a54c5a167f59a8
BLAKE2b-256 checksum
How to use checksums
396793cd5d4f706c9dc84c5389684b60d06522049ceb3e65cc97a71df7111a45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-macosx_11_0_arm64.whl

Download URL kati-0.0.20250520-py3-none-macosx_11_0_arm64.whl
Size 239.7 kB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1fa7df0a8999250001e836d875836ed37954d858beae7fe0748977fe765a1d79
BLAKE2b-256 checksum
How to use checksums
1c206b4b63a3a7657104e7f5bba988cc3afd19cca067ecb63370d8c87e60860c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release files / kati-0.0.20250520-py3-none-macosx_10_13_x86_64.whl

Download URL kati-0.0.20250520-py3-none-macosx_10_13_x86_64.whl
Size 269.6 kB
Tags Python 3 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
630925752ea8d32b730bf1001fc2ef0fe714855e5b1f3f06ccbea7accfa6ee46
BLAKE2b-256 checksum
How to use checksums
71ca987d1bc896aa1577fea7238235fce6ff79f1f6f8238ee1a26f85b54ee92e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

0.0.20250520 This release

15 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page