You can also substitute text in any predefined macro (except $$@) using the same syntax as for other macros.
The command in the following description block makes a substitution within the predefined macro $@, which represents the full name of the current target. Note that although $@ is a single-character macro, when it is used in a substitution, it must be enclosed in parentheses.
target.abc : depend.xyz
echo $(@:targ=blank)
NMAKE substitutes blank for targ in the target, resulting in the string blanket.abc. If dependent depend.xyz has a later time stamp than target target.abc, then NMAKE executes the command
echo blanket.abc