Go to the first, previous, next, last section, table of contents.

## Pattern-specific Variable Values

In addition to target-specific variable values (see section Target-specific Variable Values), GNU `make` supports pattern-specific variable values. In this form, a variable is defined for any target that matches the pattern specified. Variables defined in this way are searched after any target-specific variables defined explicitly for that target, and before target-specific variables defined for the parent target.

Set a pattern-specific variable value like this:

    pattern ... : variable-assignment

or like this:

    pattern ... : override variable-assignment

where pattern is a %-pattern. As with target-specific variable values, multiple pattern values create a pattern-specific variable value for each pattern individually. The variable-assignment can be any valid form of assignment. Any command-line variable setting will take precedence, unless `override` is specified.

For example:

    %.o : CFLAGS = -O

will assign `CFLAGS` the value of ``-O'` for all targets matching the pattern `%.o`.

Go to the first, previous, next, last section, table of contents.