NMAKE Option Descriptions

Option Description
/A Forces build of all evaluated targets, even if not out-of-date with respect to dependents. Does not force build of unrelated targets.
/B Forces build even if timestamps are equal. Recommended for very fast systems (resolution of two seconds or less).
/C Suppresses default output, including nonfatal NMAKE errors or warnings, timestamps, and NMAKE copyright message. Suppresses warnings issued by the /K option.
/D Displays timestamps of each evaluated target and dependent and a message when a target does not exist. Useful with the /P option for debugging a makefile. Use !CMDSWITCHES (described in Makefile Preprocessing Directives) to set or clear the /D option for part of a makefile.
/E Causes environment variables to override makefile macro definitions.
/F filename The option /F filename specifies filename as a makefile. Spaces or tabs can precede filename. Specify the /F option once for each makefile. To supply a makefile from standard input, specify a dash (-) for filename. End keyboard input with either F6 or Ctrl+Z.
/HELP, /? The option /HELP or /? displays a brief summary of NMAKE command-line syntax.
/I Ignores exit codes from all commands. To set or clear the /I option for part of a makefile, use !CMDSWITCHES (described in Makefile Preprocessing Directives). To ignore exit codes for part of a makefile, use a dash (-) command modifier or .IGNORE. Overrides the /K option if both are specified.
/K Continues building unrelated dependencies if a command returns an error; also issues a warning and returns an exit code of 1. By default, NMAKE halts if any command returns a nonzero exit code. Warnings from the /K option are suppressed by the /C option; the /I option overrides the /K option if both are specified.
/N Displays but does not execute commands; preprocessing commands are executed. Does not display commands in recursive NMAKE calls. Useful for debugging makefiles and checking timestamps. To set or clear the /N option for part of a makefile, use !CMDSWITCHES (described in Makefile Preprocessing Directives).
/NOLOGO Suppresses the NMAKE copyright message.
/P Displays information (macro definitions, inference rules, targets, .SUFFIXES list) to standard output, then runs the build. If no makefile or command-line target exists, it displays information only. Use with the /D option to debug a makefile.
/Q Checks timestamps of targets; does not run the build. Returns a zero exit code if all are up-to-date and a nonzero exit code if any target is not. Preprocessing commands are executed. Useful when running NMAKE from a batch file.
/R Clears the .SUFFIXES list and ignores inference rules and macros that are defined in the TOOLS.INI file or that are predefined.
/S Suppresses display of executed commands. To suppress display in part of a makefile, use the @ command modifier or .SILENT. To set or clear the /S option for part of a makefile, use !CMDSWITCHES (described in Makefile Preprocessing Directives).
/T Updates timestamps of command-line targets (or first makefile target) and executes preprocessing commands but does not run the build.
/X filename The option /X filename sends NMAKE error output to filename instead of standard error. Spaces or tabs can precede filename. To send error output to standard output, specify a dash (-) for filename. Does not affect output from commands to standard error.
/Y Disables batch-mode inference rules. When this option is selected, all batch-mode inference rules are treated as regular inference rules.