Mk replaced Make in Research Unix, starting from version 9.Qt Project's Jom tool is a clone of nmake. The Make tool supplied with Embarcadero products has a command-line option that "Causes MAKE to mimic Microsoft's NMAKE.". Inference rules differ from Make for example they can include search paths. It supports preprocessor directives such as includes and conditional expressions which use variables set on the command-line or within the makefiles. Microsoft nmake, a command-line tool which normally is part of Visual Studio.This program provides shortcuts and built-in features, which according to its developers reduces the size of makefiles by a factor of 10. Its input is similar to Make, but not compatible. Glenn Fowler's nmake is unrelated to the Microsoft program of the same name.Rocky Bernstein's Remake is a fork of GNU Make and provides several extensions over GNU Make, such as better location and error-location reporting, execution tracing, execution profiling, and it contains a debugger.
#MAKEFILE VS RUNJS SOFTWARE#
GNU Make is required for building many software systems, including GCC (since version 3.4 ), the Linux kernel, Apache OpenOffice, LibreOffice, and Mozilla Firefox. For example, the foreach function can be used to iterate over a list of values, such as the names of files in a given directory. It also provides many built-in functions which can be used to eliminate the need for shell-scripting in the makefile rules as well as to manipulate the variables set and used in the makefile. It provides several extensions over the original Make, such as conditionals. GNU Make (short gmake) is the standard implementation of Make for Linux and macOS.Distinctively, it has conditionals and iterative loops which are applied at the parsing stage and may be used to conditionally and programmatically construct the makefile, including generation of targets at runtime. BSD Make ( pmake, bmake or fmake ), which is derived from Adam de Boor's work on a version of Make capable of building targets in parallel, and survives with varying degrees of modification in FreeBSD, NetBSD and OpenBSD.While Apache OpenOffice still contains a mixture of both build systems, the much more actively developed LibreOffice only uses the modernized "gbuild" now.
It was originally required to build OpenOffice, but in 2009 the build system was rewritten to use GNU Make.
Make originated with a visit from Steve Johnson (author of yacc, etc.), storming into my office, cursing the Fates that had caused him to waste a morning debugging a correct program (bug had been fixed, file hadn't been compiled, cc *.o was therefore unaffected). įeldman was inspired to write Make by the experience of a coworker in futilely debugging a program of his where the executable was accidentally not being updated with changes: Feldman received the 2003 ACM Software System Award for the authoring of this widespread tool. It was originally created by Stuart Feldman in April 1976 at Bell Labs. There are now a number of dependency-tracking build utilities, but Make is one of the most widespread, primarily due to its inclusion in Unix, starting with the PWB/UNIX 1.0, which featured a variety of tools targeting software development tasks.