help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug or correct behavior?


From: Derek Clegg
Subject: Re: Bug or correct behavior?
Date: Tue, 5 Feb 2008 13:16:56 -0800

On Feb 5, 2008, at 11:45 AM, Mike Shal wrote:

Pattern rules are treated a little differently. Specifically, see
section 10.5.1 "Introduction to Pattern Rules" in the make info pages:

 The order in which pattern rules appear in the makefile is important
 since this is the order in which they are considered.  Of equally
 applicable rules, only the first one found is used.

In your example, only the first pattern rule will apply, and the foo.h
dependency will be ignored.

I'm not sure this is correct. If it were, as you point out:

You could move foo.h to the line above and have a single pattern rule to get your expected behavior in this case.

I tried this, and the behavior is unchanged. Unless there's a bug, this implies that I have a single pattern rule:
  dir/%.c: %.c | dir ; cp $< $@

The rule
  dir/%.c: foo.h

does not appear to be treated as a pattern rule. (Otherwise, putting it first would have changed the behavior.)

Derek




reply via email to

[Prev in Thread] Current Thread [Next in Thread]