$< In an inference rule, $< evaluates to the source file
name that corresponds to the implicit rule which
matches the suffix of the target being made. In other
words, it is the file that is out-of-date with respect
to the target. In the .DEFAULT rule, the $< macro
evaluates to the current target name. $< is evaluated
only for inference rules. Thus, in the .c.o rule, the
$< macro would evaluate to the .c file. An example for
making optimized .o files from .c files is:
.c.o:
cc -c -O $*.c
or:
.c.o:
cc -c -O $<
$* The macro $* is the current target name with the suffix
deleted. It is evaluated only for inference rules.