Jump to content

Make: Difference between revisions

From EDM2
No edit summary
 
(5 intermediate revisions by one other user not shown)
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.


==OS/2 Implementations of Make==
==OS/2 Implementations==
* [[CMake]] - Open source - Current
* Borland Make (shipped with [[Borland C++]] for OS/2)
* [[Cook]]
* dmake
* [[GNU Make]] - Open Source - Current
* IBM [[NMAKE]]
* IBM [[NMAKE]]
* IBM IMAKE - Commercial - Discontinued
* IBM IMAKE
* [[PAMAKE]] - 16 bit, outdated
* [[PAMAKE]] - 16 bit, outdated
* Sage-PVCS/Make - Commercial - Discontinued
* [[PM Make]] - Freeware
* OpenWatcom WMake - Open Source - Current
* Sage-PVCS/Make (PolyMake)
* [[Opus make]]
 
* [[PM Make]] - Freeware - Current
''Open source''
* [[CMake]]
* Cook
* dmake
* [[GNU Make]]
* OpenWatcom WMake
* Opus make
* X11 imake  - Open Source (part of XFree86/2)
* X11 imake  - Open Source (part of XFree86/2)


====OS/2 text & programmers editors with Make file support====
;Editor support
* [[Elvis]] - (Unix style) Make file syntax support included by default - Open source - Current
* [[Elvis]] - (Unix style) Make file syntax support included by default.
* [[Enhanced Editor]] - Has Make files syntax highlighting built in with some auto-formatting features.
* [[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 autoindent. - Open source - Current.
* [[FTE]] - Has support for syntax highlighting, code folding and syntax-aware auto-indent.
* [[jEdit]] - Java based editor - Make file syntax highlighting built in - Current.
* [[jEdit]] - Java based editor - Make file syntax highlighting built in.
* [[Lugaru Epsilon]] - CMake syntax highlighting and autoindent available as a seperate download, some generic Make support as well. - Commercial.
* [[Lugaru Epsilon]] - CMake syntax highlighting and auto-indent available as a separate download, some generic Make support as well.


====Make file related 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


====DOS text & programmers editors with Make file support====
==Publications==
* [[Elvis]] - (Unix style) Make file syntax support included by default - Open source - Current.
*Clovis Tondo; Andrew Nathanson; Eden Yount: ''Mastering Make'' (2nd edition) - Prentice Hall 1994 - ISBN 0-13-121906-5
* [[FTE]] - Has support for syntax highlighting, code folding and syntax-aware autoindent. - Open source - Current.


[[Category:Tools]]
[[Category:Make]]
[[Category:Make]]
[[Category:File formats]]
[[Category:Software Configuration Management]]

Latest revision as of 02:55, 10 February 2022

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