Paradigm | macro, declarative |
---|---|
Designed by | Stuart Feldman |
First appeared | April 1976 |
Implementation language | C |
OS | Unix-like, Inferno |
File formats | Makefile |
Major implementations | |
BSD, GNU, nmake | |
Dialects | |
BSD make, GNU make, Microsoft nmake | |
Influenced | |
Ant, Rake, MSBuild, and others |
In software development, Make is a command-line interface software tool that performs actions ordered by configured dependencies as defined in a configuration file called a makefile. It is commonly used for build automation to build executable code (such as a program or library) from source code. But, not limited to building, Make can perform any operation available via the operating system shell.
Make is widely used, especially in Unix and Unix-like operating systems, even though many competing technologies and tools are available including: similar tools that perform actions based on dependencies, some compilers and interactively via an integrated development environment.
In addition to referring to the original Unix tool, Make is also a technology since multiple tools have been implemented with roughly the same functionality – including similar makefile syntax and semantics.