The Ultimate List of Build Tools
CMake is cross-platform free and open-source software for managing the build process of software using a compiler-independent method. It is designed to support directory hierarchies and applications that depend on multiple libraries. It is used in conjunction with native build environments such as make, Apple’s Xcode, and Microsoft Visual Studio. It has minimal dependencies, requiring […]
CruiseControl is a Java-based framework for a continuous build process. It includes, but is not limited to, plugins for email notification, Ant, and various source control tools. A web interface is provided to view the details of the current and previous builds. It allows one to perform a continuous integration of any software development process.
Rake is a software task management and build automation tool. It allows you to specify tasks and describe dependencies as well as to group tasks in a namespace. It is similar to SCons and Make, but it has a number of differences. The tool is written in the Ruby programming language and the Rakefiles (equivalent […]
BuildMaster is an automated deployment tool, designed by the software development team, Inedo. It combines features to manage and automate processes primarily related to continuous integration, database change scripts, and production deployments. The tool is browser-based and able to be used “out-of-the-box”. Its feature set and scope put it in line with the DevOps movement, […]
Apache Ant is a software tool for automating software build processes. It originally came from the Apache Tomcat project in early 2000. It was a replacement for the unix make build tool, and was created due to a number of problems with the unix make. It is similar to Make but is implemented using the […]
Visual Build is a GUI software for Windows that enables software developers and build masters to create an automated, repeatable process for software builds. It has built-in support for integrating various development tools into the build process. Projects are stored as XML to facilitate storage in version control systems.
The Open Build Service (OBS) is a generic system to build and distribute packages from sources in an automatic, consistent and reproducible way. It makes it possible to release software for a wide range of operating systems and hardware architectures. The OBS reference server, which we use to build the openSUSE distribution, currently hosts 47,344 […]
QuickBuild is PMease’s build automation tool derived from LuntBuild. Like LuntBuild, QuickBuild is a powerful build automation and management tool. Continuous Integration or nightly builds can be easily set using a clean web interface. Executed builds are well managed using functions such as search, categorization, promotion, patching, deletion, etc. It also acts as a central […]
Buildr is an open-source build system mainly intended to build Java applications, but capable of doing much more. It gives the developer the power of a full-blown scripting language (Ruby) while writing his or her build scripts, much missed in XML-based building environments like Apache Ant or Apache Maven.
Perforce Jam is an open-source build system developed by Christopher Seiwald of Perforce Software. It can be used as a replacement for make. Its primary feature is its ability to express build patterns in an imperative language which supports structured namespaces (similar to Pascal records) and simple lists.
Invoke is a Python (2.6+ and 3.3+) task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set. Like Ruby’s Rake tool and Invoke’s own predecessor Fabric 1.x, it provides a clean, high-level API for running shell commands and defining/organizing task functions from a tasks.py file.
Make is a utility that automatically builds executable programs and libraries from source code by reading files called makefiles which specify how to derive the target program. Though integrated development environments and language-specific compiler features can also be used to manage a build process, Make remains widely used, especially in Unix.
MSBuild, also called Microsoft Build Engine, is a build tool for managed code and was part of .NET Framework. Visual Studio depends on MSBuild, but MSBuild does not depend on Visual Studio. Visual Studio Application Lifecycle Management depends on MSBuild to perform team builds via the Team Foundation Server.
Luntbuild is a powerful build automation and management tool. Continuous Integration or nightly builds can be easily set using a clean web interface. Executed builds are well managed using functions such as search, categorization, promotion, patching, deletion, etc. It also acts as a central build artifacts repository and download area for your whole team.
Gradle is a project automation tool that builds upon the concepts of Apache Ant and Apache Maven and introduces a Groovy-based domain-specific language (DSL) instead of the more traditional XML form of declaring the project configuration. Gradle uses a directed acyclic graph (“DAG”) to determine the order in which tasks can be run.