f78
Implicit Rules
Contents|Index|Previous|Next
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.
The following documentation has related discussions.
Using Implicit Rules
Catalogue of Implicit Rules
Variables Used by Implicit Rules
Chains of Implicit Rules
Defining and Redefining Pattern Rules
Introduction to Pattern Rules
Pattern Rule Examples
Automatic Variables
How Patterns Match
Match-Anything Pattern Rules
Canceling Implicit Rules
Defining Last-Resort Default Rules
Old-Fashioned Suffix Rules
Implicit Rule Search Algorithm
0