Precedence Among Macro Definitions

If you define the same macro name in more than one place, NMAKE uses the macro with the highest precedence. The precedence from highest to lowest is as follows:

1.A macro defined on the command line

2.A macro defined in a makefile or include file

3.An inherited environment-variable macro

4.A macro defined in the TOOLS.INI file

5.A predefined macro, such as CC and AS

The /E option causes macros inherited from environment variables to override any macros with the same name in the makefile. The !UNDEF directive in a makefile overrides a macro defined on the command line.