Make/Rule-Example
From Get docs
Next: Rule Syntax, Previous: Rules, Up: Rules [Contents][Index]
4.1 Rule Example
Here is an example of a rule:
foo.o : foo.c defs.h # module for twiddling the frobs cc -c -g foo.c
Its target is foo.o
and its prerequisites are foo.c
and
defs.h
. It has one command in the recipe: ‘cc -c -g foo.c
’.
The recipe starts with a tab to identify it as a recipe.
This rule says two things:
- How to decide whether
foo.o
is out of date: it is out of date if it does not exist, or if eitherfoo.c
ordefs.h
is more recent than it. - How to update the file
foo.o
: by runningcc
as stated. The recipe does not explicitly mentiondefs.h
, but we presume thatfoo.c
includes it, and that is whydefs.h
was added to the prerequisites.