Reproducing build errors reported to a mailing list is a pain. How much time do
we collectively spending asking "What kernel config did you use?", "What
compiler?" and "What architecture?"?
What if we could version and distribute build environments similarly to how we
version Linux source code?
TuxMake is a tool that provides portable and repeatable Linux kernel builds
across a variety of architectures, toolchains, kernel configurations, and make
targets. Critically, it supports docker natively so that build environments are
portable and builds are fully repeatable. TuxMake provides Docker images with
cross build toolchains for a comprehensive set of supported architectures.
TuxMake provides both a command line tool and a Python API. With each build,
you can specify the target architecture; which compiler to use; whether to use
ccache, sccache, or doing a clean build; which targets to build; which kernel
predefined configuration to start from, and which additional configurations to
apply on top of that. You can pass arbitrary environment variables, also
control the build concurrency. TuxMake is then responsible for running all the
necessary commands to build a kernel to your specification, collect artifacts,
logs, and extract metadata from the build environment.
TuxMake is in its early development stages, and is being designed to be
TuxBuild is a highly scalable and parallel Linux kernel building service. It
consists of a REST API and a command-line client which can perform individual
or pre-defined sets of builds. All builds happen on-demand, in parallel, and
are easy to use both interactively and from a CI system.
TuxBuild solves the problem of build capacity and build automation, and allows
kernel developers to perform more builds, more quickly, and more easily.
TuxMake is open source software, and TuxBuild is a private build service
provided by Linaro.
More information about TuxMake and TuxBuild can be found at
https://gitlab.com/Linaro/tuxmake and https://gitlab.com/Linaro/tuxbuild.
|I agree to abide by the anti-harassment policy||I agree|