GNU Info

Info Node: (make.info)Implicit Rules

(make.info)Implicit Rules


Next: Archives Prev: Running Up: Top
Enter node , (file) or (file)node

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
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.

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 defining commands for rules
which cannot find any.
Suffix Rules
The old-fashioned style of implicit rule.
Implicit Rule Search
The precise algorithm for applying
implicit rules.

automatically generated by info2www version 1.2.2.9