Below lists notable build automation tools.

Sequencing

Make

Tools similar to the original Unix make – one of the earliest build automation tools:

Other

Build script generation

These generator tools do not build directly, but rather generate files to be used by a native build tool (as the ones listed in the previous two sections).

Continuous integration

Main article: Comparison of continuous integration software

Configuration management

Package managers

See also: List of software package management systems § Source code-based

A package manager is a meta-build tool capable of building many different projects using a subset of existing build tools, generally using a list or repository of build scripts called "packages".

Others

Licensing overview

Tool name Description language License
A-A-P recipe GNU GPL
Ant XML Apache License 2.0
AnthillPro Wraps Make, Ant, Maven, MsBuild, Nant, etc. for controlled build, deploy, test processes. Discontinued
Bamboo continuous integration Trialware
Bazel BUILD/Starlark, a Python-like DSL Apache License 2.0
BuildAMation C# for build scripts, XML for high level dependencies New BSD License
Buildr Ruby Apache License 2.0
Boot Clojure Eclipse Public License
Capistrano XML MIT License
CMake uses CMakeLists.txt file New BSD License
Collective Knowledge Framework Python scripts with JSON API and JSON meta-description New BSD License
Continuum ? Apache License 2.0
CruiseControl XML BSD-style license
Dub JSON, SDL MIT License
FinalBuilder graphical IDE with support for Ant/NAnt, MSBuild, JScript, VBScript, IronPython, PowerShell Trialware
Gradle Groovy-based DSL; Kotlin-based DSL Apache License 2.0
Jenkins continuous integration MIT License
Homebrew Ruby Simplified BSD License
Leiningen Clojure Eclipse Public License
make uses Makefile Same as the bundling OS
Maven Project Object Model Apache License 2.0
Meson build system custom DSL Apache License 2.0
MPW Make ? Freeware
MSBuild XML MIT License
NAnt XML GNU GPL
nmake uses Makefile Freeware
Open Build Service uses various package and image description formats (spec, dsc, ARCH, kiwi) GNU GPL
Perforce Jam uses Jamfile Discontinued
Rake Ruby MIT License
sbt (Simple Build Tool) Scala-based DSL New BSD License
SCons Python MIT License
Team Foundation Server MSBuild, Windows Presentation Foundation, JSON - REST interfaces, Programmatic (Can generate definitions through code) Trialware
Visual Build XML Trialware
Waf Python New BSD License

References

  1. ^ mailing list discussion about porting PVCS-make scripts to GNU-make, From: Paul D. Smith, Subject: Re: PVCS to GNU, Date: 2003-02-25
  2. ^ "dale: a paranoid D task runner". April 12, 2023 – via GitHub.
  3. ^ "rez: C/C++ task runner". April 18, 2023 – via GitHub.
  4. ^ "tinyrick: a freeform Rust build system". April 12, 2023 – via GitHub.
  5. ^ "vast: a build tool for shell scripts". April 8, 2023 – via GitHub.
  6. ^ "cmake-generators(7) — CMake 3.11.1 Documentation". cmake.org.
  7. ^ "Setting Up CMake - Qt Creator Manual". doc.qt.io.
  8. ^ a b "GNOME Builder Development Environment Picking Up Many Features For GNOME 3.28 - Phoronix". www.phoronix.com.
  9. ^ https://confluence.atlassian.com/bitbucket/build-test-and-deploy-with-pipelines-792496469.html Cross-platform