(make.info.gz) 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 commands
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
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.
* Using Implicit How to use an existing implicit rule
to get the commands for updating a file.
* Catalogue of Rules A list of built-in implicit rules.
* Implicit Variables How to change what predefined rules do.
* Chained Rules How to use a chain of implicit rules.
* Pattern Rules How to define new implicit rules.
* Last Resort How to define commands for rules which
cannot find any.
* Suffix Rules The old-fashioned style of implicit rule.
* Implicit Rule Search The precise algorithm for applying
automatically generated byinfo2html