Build automation

From Gentoo Wiki
Jump to:navigation Jump to:search
Resources

Build automation (generally referred to as 'Build systems' in the Gentoo world) is software that automates the compilation, clean up, and installation stages of the software creation process. Recently it has become more common for build automation to perform elements of software testing. Gentoo developers must have at least a general understanding of one or more build systems in order to start writing ebuilds. This article services as a type of meta article in defining a list of build systems in Gentoo Linux.

Available software

Build systems available in the main Gentoo repository include:

Name Package Homepage Description
ant dev-java/ant https://ant.apache.org/ Java-based build tool similar to 'make' that uses XML configuration files.
autotools dev-build/autoconf dev-build/automake https://www.gnu.org/software/autoconf/autoconf.html https://www.gnu.org/software/automake/ A build system used commonly in open source projects. A little austere, but has the advantage of being almost ubiquitous.
bazel dev-util/bazel https://bazel.build/ "Fast and correct" automated build system.
cmake dev-build/cmake https://cmake.org/ Open-source, cross-platform tools to build, test and package software.
Gradle dev-java/gradle-bin https://gradle.org/ Java-based build, automation and delivery tool.
make dev-build/make https://www.gnu.org/software/make/make.html Standard tool to compile source trees
meson dev-build/meson https://mesonbuild.com/ Open source build system designed to be fast, and user friendly.
ninja dev-build/ninja https://ninja-build.org/ A small build system similar to make.
premake dev-util/premake https://premake.github.io Makefile generation tool.
SCons dev-build/scons http://www.scons.org/ Scons is a build system written in Python.

This is a partial selection of packages available in the Gentoo repository, see for example dev-build , or use eix (eix --category dev-build), to see packages from the dev-build category.

See also

External resources