Buildman build tool
Buildman builds U-Boot, for many boards and many commits at once, to check that a patch series has not broken anything. It:
builds each commit of a branch for any set of boards, in parallel, making full use of multi-processor machines;
summarises the results, so that new errors, warnings or image-size changes can be pinned to the commit and board which caused them;
fetches the cross-compilers it needs and works out which to use for each board;
can share builds across several machines over SSH;
adjusts board configurations on the fly for build experiments.
Installation
Install the latest release from PyPI:
pip install buildman
The buildman command is then on your path.
Quick start
From a U-Boot source tree, fetch a toolchain and build a board:
buildman --fetch-arch arm buildman -k rpi_2 ls ../current/rpi_2
Build every commit of the current branch for all ARM boards, then show a summary of the results:
buildman -b <branch> arm buildman -b <branch> -s arm
See buildman -H for the complete manual, or the documentation linked below.
Documentation
Full documentation is hosted on Read the Docs:
Development
Run the test suite from a checkout:
pip install -r requirements.txt pip install -e .[test] buildman -t
A few tests run U-Boot’s real Kconfig tools. Set UBOOT_SRC to a U-Boot source tree to include them; otherwise they are skipped. buildman --coverage checks that the tests cover all of the code.
The u_boot_pylib library, the parts of patman which buildman uses and U-Boot’s qconfig tool are vendored from the U-Boot tree, so no surrounding U-Boot source is needed to run the tests.
Metadata
Release files for buildman 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| buildman-0.1.0.tar.gz | 378.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| buildman-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 782.5 kB
Release files / buildman-0.1.0.tar.gz
| Download URL | buildman-0.1.0.tar.gz |
|---|---|
| Size | 378.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be4d4c6a5531d065eb9ededc3de0289e200bd0a9532b0f1b30a660e7ab60ffa1
|
|
BLAKE2b-256 checksum How to use checksums |
c52d7f7eebe18984989bbdcdfadaf8613032964e7d93c46f2e05b8eb0a1d3876
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 5, 2026.
Transparency logRelease files / buildman-0.1.0-py3-none-any.whl
| Download URL | buildman-0.1.0-py3-none-any.whl |
|---|---|
| Size | 404.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ac8cebadf4309381f8670a0d5e87b6fd3155023745631eeeeb040ca338b93ccf
|
|
BLAKE2b-256 checksum How to use checksums |
4e0e11922cd0050920e7422c983d1cb96243a5cd3407996de621ffcd53d8dc0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 5, 2026.
Transparency log