This page lists notable software build automation tools and systems.
Sequencing These tools sequence build operations, often based on dependencies, sometimes running tasks in parallel.
Apache Ant – Java build tool; uses XML format for configuration files Apache Maven – Software tool for managing build dependencies ASDF Bazel – Software tool that automates software builds and tests BitBake – Build automation tool often used for building Linux distributions; written in Python Boot; written in Clojure Boost boost.build – For C++ projects, cross-platform, based on Perforce Jam Buck – Build system developed and used by Meta Platforms; written in Rust, using Starlark (BUILD file syntax) as Bazel Buildout; Python-based Cabal Cargo The Rust package manager and Build tool D Dub – Official package and build manager of D language Flowtracer – Build management toolPages displaying short descriptions of redirect targets Gradle – Free software build automation tool with a Groovy- and Kotlin-based domain specific language (DSL) combining features of Ant and Maven with more features like a reliable incremental build Grunt – JavaScript build tool Gulp – Server-side JavaScript build tool IncrediBuild – Grid computing softwarePages displaying short descriptions of redirect targets Leiningen – Build automation tool; for Clojure projects Make – Software build automation tool; one of the earliest build automation tools; many variants Mix – Build automation software for Elixir MSBuild – Build automation software; from Microsoft NAnt – Free and open source software tool; based on Ant Ninja – Free build automation software Perforce Jam – Build tool by Perforce, inspired by Make Qt Build System Rake – Make-like tool written in Ruby sbt – Open-source build tool for Scala and Java projects SCons – Software development tool; Python-based Stack – Haskell development tool Waf; Python-based
Meta build
Called meta-build tools, these generate configuration files for other build tools such as those listed above.
CMake – Cross-platform build tool for configuring platform-specific builds; very popular and integrated with integrated development environments (IDEs) such as Qt Creator, KDevelop and GNOME Builder GNU build system (aka Autotools) – Software build toolset from GNUPages displaying short descriptions of redirect targets GYP (Generate Your Projects) – Build automation tool created by Google; superseded by GN which generates files for ninja and other tools imake OpenMake Software Meister Meson – Build automation tool; integrated with GNOME Builder Premake – Cross-platform build tool for configuring platform-specific builds; written in Lua qmake – Object-oriented framework for software developmentPages displaying short descriptions of redirect targets
Continuous integration Continuous integration systems automate build operations at a relatively high level via features including: scheduling and triggering builds, storing build log and output files and integrating with version control systems.
AnthillPro – Continuous integration server Apache Continuum – Continuous integration server for building Java-based projects; discontinued Bitbucket Pipelines and Deployments – Continuous integration for Bitbucket hosted repositories Buildbot – Continuous integration testing framework CruiseControl – Software continuous build framework Go continuous delivery – Open source, cross-platform GitLab Runner – Continuous integration GitHub Actions – Free continuous integration service for open-source projects Hudson – Continuous integration tool Jenkins – Open source automation server; Hudson fork Spinnaker – Open source multi-cloud continuous delivery service from Netflix and Google TeamCity – Build management and continuous integration server Travis CI – Service to build and test software projects
Others BuildStream A flexible, extensible framework written in Python for modeling build and CI pipelines using a declarative YAML format. checkinstall – Computer program for Unix-like operating systemsPages displaying short descriptions of redirect targets Open Build Service – Development platform for Linux distributions
Licensing
See also Comparison of continuous integration software List of software package management systems List of version-control software Make variants – Tools based on or very similar to Unix make Software configuration management – Tracking and controlling software changes
References
