Lines Matching defs:pat_rule

61 static	void 		create_target_group_and_dependencies_list(Name target, Percent pat_rule, String percent);
62 static Boolean match_found_with_pattern(Name target, Percent pat_rule, String percent, wchar_t *percent_buf);
63 static void construct_string_from_pattern(Percent pat_rule, String percent, String result);
797 register Percent pat_rule, pat_depe;
829 for (pat_rule = percent_list;
830 pat_rule != NULL;
831 pat_rule = pat_rule->next) {
833 if (pat_rule->being_expanded == true) {
837 /* Mark this pat_rule as "maybe ok". If no % rule is found
857 if (!match_found_with_pattern(true_target, pat_rule, &percent, percent_buf)) {
860 if (pat_rule->dependencies != NULL) {
861 for (pat_depe = pat_rule->dependencies;
911 pat_rule->being_expanded = true;
952 pat_rule->being_expanded = false;
970 rule_candidate = pat_rule;
979 pat_rule = rule_candidate;
988 if(pat_rule != NULL) {
989 pat_rule->being_expanded = false;
1000 for (pat_depe = pat_rule->dependencies;
1022 pat_rule->name->string_mb);
1024 for (pat_depe = pat_rule->dependencies;
1038 create_target_group_and_dependencies_list(target, pat_rule, &percent);
1061 pat_rule->being_expanded = false;
1065 pat_rule->being_expanded = false;
1101 pat_rule->name->string_mb);
1103 for (pat_depe = pat_rule->dependencies;
1125 pat_rule->name->string_mb,
1140 line->body.line.command_template = pat_rule->command_template;
1158 pat_rule->being_expanded = false;
1165 * ( target, pat_rule, percent, percent_buf)
1182 match_found_with_pattern(Name target, Percent pat_rule, String percent, wchar_t *percent_buf) {
1187 Name prefix = pat_rule->patterns[0];
1214 Name suffix = pat_rule->patterns[pat_rule->patterns_total - 1];
1254 construct_string_from_pattern(pat_rule, percent, &string);
1271 * (target, pat_rule, percent)
1292 * pat_rule the % pattern that matched "target", here %/%.a
1300 create_target_group_and_dependencies_list(Name target, Percent pat_rule, String percent) {
1311 for (pat_depe = pat_rule->dependencies; pat_depe != NULL; pat_depe = pat_depe->next) {
1331 for (group_member = pat_rule->target_group; group_member != NULL; group_member = group_member->next) {
1374 * (pat_rule, percent, result)
1383 * pat_rule matched pattern rule
1389 construct_string_from_pattern(Percent pat_rule, String percent, String result) {
1390 for (int i = 0; i < pat_rule->patterns_total; i++) {
1391 if (pat_rule->patterns[i]->dollar) {
1392 expand_value(pat_rule->patterns[i],
1397 append_string(pat_rule->patterns[i]->string_mb,
1399 pat_rule->patterns[i]->hash.length);
1402 if (i < pat_rule->patterns_total - 1) {