<< 8/15 >>
First Last

Merged rules

Usually, you cannot specify rules with commands multiple times.

 foo.o: foo.c
   $(CC) $< -o $@
 foo.o: foo.c
   $(CC) $< -o $@ -g  # Error!

But you can do it if you use double-colon rules:

 foo.o:: foo.c
   $(CC) $< -o $@
 foo.o:: foo.c
   $(CC) $< -o $@ -g  # OK. make will run GCC twice to build foo.o

Not sure how this feature could be useful...