[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

10.5 Defining and Redefining Pattern Rules

You define an implicit rule by writing a pattern rule. A pattern rule looks like an ordinary rule, except that its target contains the character `%' (exactly one of them). The target is considered a pattern for matching file names; the `%' can match any nonempty substring, while other characters match only themselves. The prerequisites likewise use `%' to show how their names relate to the target name.

Thus, a pattern rule `%.o : %.c' says how to make any file `stem.o' from another file `stem.c'.

Note that expansion using `%' in pattern rules occurs after any variable or function expansions, which take place when the makefile is read. See section How to Use Variables, and Functions for Transforming Text.

10.5.1 Introduction to Pattern Rules  An introduction to pattern rules.
10.5.2 Pattern Rule Examples  Examples of pattern rules.
10.5.3 Automatic Variables  How to use automatic variables in the commands of implicit rules.
10.5.4 How Patterns Match  How patterns match.
10.5.5 Match-Anything Pattern Rules  Precautions you should take prior to defining rules that can match any target file whatever.
10.5.6 Canceling Implicit Rules  How to override or cancel built-in rules.

This document was generated by Jeff Bailey on December, 25 2002 using texi2html