Jump to content

Make: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Ak120 (talk | contribs)
mNo edit summary
Line 1: Line 1:
Make is a utility that builds executable programs and libraries from source code listings by reading files called Makefiles which specify how to derive the target program from a given list of dependencies (eg. source files, compiler options, required preprocessors etc.). In addition to its intended use it is sometimes used as a sort of project manager utility where files that require automatic or semi-automatic updates from other files or ports.
'''Make''' is a utility that builds executable programs and libraries from source code listings by reading files called Makefiles which specify how to derive the target program from a given list of dependencies (eg. source files, compiler options, required preprocessors etc.). In addition to its intended use it is sometimes used as a sort of project manager utility where files that require automatic or semi-automatic updates from other files or ports.


Note that in the [[UNIX]] world "Make" and "Make files" have a specific format that must be adhered to, however because the standard can be problematic with other systems and had some design errors to begin with (superfluous tabs for instance), Make files used by utilities intended for OS/2, [[DOS]] and [[Microsoft Windows]] can differ from the Unix norm, sometimes quite significantly.
Note that in the [[UNIX]] world "Make" and "Make files" have a specific format that must be adhered to, however because the standard can be problematic with other systems and had some design errors to begin with (superfluous tabs for instance), Make files used by utilities intended for OS/2, [[DOS]] and [[Microsoft Windows]] can differ from the Unix norm, sometimes quite significantly.
Line 5: Line 5:
==OS/2 Implementations==
==OS/2 Implementations==
* Borland Make (shipped with [[Borland C++]] for OS/2)
* Borland Make (shipped with [[Borland C++]] for OS/2)
* [[CMake]] - Open source - Current
* IBM [[NMAKE]]
* IBM IMAKE
* [[PAMAKE]] - 16 bit, outdated
* [[PM Make]] - Freeware
* Sage-PVCS/Make (PolyMake)
 
''Open source''
* [[CMake]]
* Cook
* Cook
* dmake
* dmake
* [[GNU Make]] - Open Source - Current
* [[GNU Make]]
* IBM [[NMAKE]]
* OpenWatcom WMake
* IBM IMAKE - Commercial - Discontinued
* [[PAMAKE]] - 16 bit, outdated
* Sage-PVCS/Make (PolyMake) - Commercial - Discontinued
* OpenWatcom WMake - Open Source - Current
* Opus make
* Opus make
* [[PM Make]] - Freeware - Current
* X11 imake  - Open Source (part of XFree86/2)
* X11 imake  - Open Source (part of XFree86/2)


Line 26: Line 28:


;Programmer's utilities
;Programmer's utilities
* [[Exuberant ctags]] - Creates index files out of make files - Open source - Current
* [[Exuberant ctags]] - Creates index files out of make files
* [[kBuild]] - Allow you to create complex make files automatically - Open Source - Current
* [[kBuild]] - Allow you to create complex make files automatically


==Publications==
==Publications==
*Clovis Tondo; Andrew Nathanson; Eden Yount: ''Mastering Make'' (2nd edition) - Prentice Hall 1994 - ISBN 0-13-121906-5
*Clovis Tondo; Andrew Nathanson; Eden Yount: ''Mastering Make'' (2nd edition) - Prentice Hall 1994 - ISBN 0-13-121906-5


[[Category:Make]][[Category:Software Configuration Management]]
[[Category:Software Configuration Management]]

Revision as of 06:50, 31 December 2019

Make is a utility that builds executable programs and libraries from source code listings by reading files called Makefiles which specify how to derive the target program from a given list of dependencies (eg. source files, compiler options, required preprocessors etc.). In addition to its intended use it is sometimes used as a sort of project manager utility where files that require automatic or semi-automatic updates from other files or ports.

Note that in the UNIX world "Make" and "Make files" have a specific format that must be adhered to, however because the standard can be problematic with other systems and had some design errors to begin with (superfluous tabs for instance), Make files used by utilities intended for OS/2, DOS and Microsoft Windows can differ from the Unix norm, sometimes quite significantly.

OS/2 Implementations

Open source

  • CMake
  • Cook
  • dmake
  • GNU Make
  • OpenWatcom WMake
  • Opus make
  • X11 imake - Open Source (part of XFree86/2)
Editor support
  • Elvis - (Unix style) Make file syntax support included by default.
  • Enhanced Editor - Has Make files syntax highlighting built in with some auto-formatting features.
  • FTE - Has support for syntax highlighting, code folding and syntax-aware auto-indent.
  • jEdit - Java based editor - Make file syntax highlighting built in.
  • Lugaru Epsilon - CMake syntax highlighting and auto-indent available as a separate download, some generic Make support as well.
Programmer's utilities
  • Exuberant ctags - Creates index files out of make files
  • kBuild - Allow you to create complex make files automatically

Publications

  • Clovis Tondo; Andrew Nathanson; Eden Yount: Mastering Make (2nd edition) - Prentice Hall 1994 - ISBN 0-13-121906-5