Logo Search packages:      
Sourcecode: ksh version File versions  Download package


.H 1 nmake
.B nmake
is the AT&T
.BR nmake ,
first released in 1985.
.B nmake
is a modern variant of the traditional Feldman
.B make
with an important difference:
.B nmake
maintains state that records
information for future runs.
The state includes:
file modification times
explicit prerequisites (from makefile assertions)
implicit prerequisites (from
.I #include
action text (used to build targets)
variable values
target attributes
.I and
a language to manipulate it finally makes concise
makefiles a reality; concise because rules traditionally placed in
each makefile can now be implemented in a general way in a single
.I "base rules"
The base rules are such a fundamental part of
.B nmake
that most of its visible features are controlled by them.
Most makefiles are just a few lines:

xgame :: README xgame.6 xgame.h xgame.c xutil.c -lXaw -lXmu -lXt
Automatically generated
.B probe
information provides convenient compiler abstractions:

ast 4.0 :LIBRARY: ast.c strmatch.c
In this case if the compiler supports
shared libraries (aka \fBdll\fP\fIs\fP) then
.L "nmake install"
will generate
.I libast.a
.I libast.so.4.0
(or the appropriate shared library suffix determined by
There are no
.B nmake
makefile generators (because the makefiles are so small),
there is no separate
.L "make depend"
(because the files with
attributes are automatically scanned for implicit prerequisites),
and there is no cheating (because all time stamp changes
are detected, not just
.IR newer-than ).

Generated by  Doxygen 1.6.0   Back to index