From d922934cf80c9f50a3e2243ffb326eea829b2047 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 24 Mar 1992 09:50:46 +0000 Subject: Formerly rule.c.~2~ --- rule.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'rule.c') diff --git a/rule.c b/rule.c index 02302b0..0a54f7d 100644 --- a/rule.c +++ b/rule.c @@ -1,5 +1,5 @@ /* Pattern and suffix rule internals for GNU Make. -Copyright (C) 1988, 1989, 1990, 1991 Free Software Foundation, Inc. +Copyright (C) 1988, 1989, 1990, 1991, 1992 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify @@ -254,8 +254,12 @@ new_pattern_rule (rule, override) lastrule = pattern_rules; for (r = pattern_rules; r != 0; lastrule = r, r = r->next) for (i = 0; rule->targets[i] != 0; ++i) - for (j = 0; r->targets[j] != 0; ++j) - if (streq (rule->targets[i], r->targets[j])) + { + for (j = 0; r->targets[j] != 0; ++j) + if (!streq (rule->targets[i], r->targets[j])) + break; + if (r->targets[j] == 0) + /* All the targets matched. */ { register struct dep *d, *d2; for (d = rule->deps, d2 = r->deps; @@ -274,7 +278,7 @@ new_pattern_rule (rule, override) else last_pattern_rule->next = rule; last_pattern_rule = rule; - + /* We got one. Stop looking. */ goto matched; } @@ -285,6 +289,7 @@ new_pattern_rule (rule, override) return 0; } } + } matched:; -- cgit v1.2.3