make: Implicit Rules
10 Using Implicit Rules
***********************
Certain standard ways of remaking target files are used very often. For
example, one customary way to make an object file is from a C source
file using the C compiler, 'cc'.
"Implicit rules" tell 'make' how to use customary techniques so that
you do not have to specify them in detail when you want to use them.
For example, there is an implicit rule for C compilation. File names
determine which implicit rules are run. For example, C compilation
typically takes a '.c' file and makes a '.o' file. So 'make' applies
the implicit rule for C compilation when it sees this combination of
file name endings.
A chain of implicit rules can apply in sequence; for example, 'make'
will remake a '.o' file from a '.y' file by way of a '.c' file.
The built-in implicit rules use several variables in their recipes so
that, by changing the values of the variables, you can change the way
the implicit rule works. For example, the variable 'CFLAGS' controls
the flags given to the C compiler by the implicit rule for C
compilation.
You can define your own implicit rules by writing "pattern rules".
"Suffix rules" are a more limited way to define implicit rules.
Pattern rules are more general and clearer, but suffix rules are
retained for compatibility.
Menu