You can customize NMAKE by placing commonly used macros, inference rules, and description blocks in the TOOLS.INI initialization file. Settings for NMAKE must follow a line that begins with [NMAKE]. This section of the initialization file can contain macro definitions, .SUFFIXES lists, and inference rules. For example, if TOOLS.INI contains the following section:
[NMAKE]
CC=qcl
CFLAGS=/Gc /Gs /W3 /Oat
.c.obj:
$(CC) /c $(CFLAGS) $*.c
NMAKE reads and applies the lines following [NMAKE]. The example redefines the macro CC to invoke the Microsoft QuickCŇ Compiler, defines the macro CFLAGS, and redefines the inference rule for making .OBJ files from .C sources. (Note that macros are case sensitive; a macro called cc is not substituted in a rule that uses $(CC).)
NMAKE looks for TOOLS.INI in the current directory. If it isn't there, NMAKE searches the directory specified by the INIT environment variable.
Macros and inference rules appearing in TOOLS.INI can be overridden. See Section 10.3.4.7, “Precedence among Macro Definitions,” and Section 10.3.5.5, “Precedence among Inference Rules.”