Lines Matching refs:rule
27 static void freerule PARAMS ((struct rule *rule, struct rule *lastrule));
31 struct rule *pattern_rules;
35 struct rule *last_pattern_rule;
72 register struct rule *rule, *lastrule; in count_implicit_rule_limits() local
79 rule = pattern_rules; in count_implicit_rule_limits()
81 while (rule != 0) in count_implicit_rule_limits()
85 struct rule *next = rule->next; in count_implicit_rule_limits()
91 while (rule->targets[ntargets] != 0) in count_implicit_rule_limits()
97 for (dep = rule->deps; dep != 0; dep = dep->next) in count_implicit_rule_limits()
146 lastrule = rule; in count_implicit_rule_limits()
147 rule = next; in count_implicit_rule_limits()
285 new_pattern_rule (struct rule *rule, int override) in new_pattern_rule() argument
287 register struct rule *r, *lastrule; in new_pattern_rule()
290 rule->in_use = 0; in new_pattern_rule()
291 rule->terminal = 0; in new_pattern_rule()
293 rule->next = 0; in new_pattern_rule()
298 for (i = 0; rule->targets[i] != 0; ++i) in new_pattern_rule()
301 if (!streq (rule->targets[i], r->targets[j])) in new_pattern_rule()
307 for (d = rule->deps, d2 = r->deps; in new_pattern_rule()
320 pattern_rules = rule; in new_pattern_rule()
322 last_pattern_rule->next = rule; in new_pattern_rule()
323 last_pattern_rule = rule; in new_pattern_rule()
331 freerule (rule, (struct rule *) 0); in new_pattern_rule()
344 pattern_rules = rule; in new_pattern_rule()
346 last_pattern_rule->next = rule; in new_pattern_rule()
347 last_pattern_rule = rule; in new_pattern_rule()
362 register struct rule *r; in install_pattern_rule()
365 r = (struct rule *) xmalloc (sizeof (struct rule)); in install_pattern_rule()
410 freerule (struct rule *rule, struct rule *lastrule) in freerule() argument
412 struct rule *next = rule->next; in freerule()
416 for (i = 0; rule->targets[i] != 0; ++i) in freerule()
417 free (rule->targets[i]); in freerule()
419 dep = rule->deps; in freerule()
432 free ((char *) rule->targets); in freerule()
433 free ((char *) rule->suffixes); in freerule()
434 free ((char *) rule->lens); in freerule()
447 free ((char *) rule); in freerule()
449 if (pattern_rules == rule) in freerule()
456 if (last_pattern_rule == rule) in freerule()
477 struct rule *r = (struct rule *) xmalloc (sizeof (struct rule)); in create_pattern_rule()
518 print_rule (struct rule *r) in print_rule()
546 register struct rule *r; in print_rule_data_base()