Lines Matching defs:target

134 		 * Normalize every target name before entering.
136 * There is only one target ../obj/a.o
142 /* Internalize the name. Detect the name "+" (target group here) */
453 * If a "+" was seen when the target list was scanned we need to extract
454 * the groups. Each target in the name vector that is a member of a
479 /* If the previous target terminated a group */
486 /* the next target */
494 * 0: No target group started and next element is not "+"
496 * 1: A target group is being built and the next element
498 * 2: No target group started and the next member is "+"
499 * This is the first target in a group.
500 * 3: A target group started and the next member is a "+"
514 /* Add this target to the */
539 * enter_dependencies(target, target_group, depes, command, separator)
541 * Take one target and a list of dependencies and process the whole thing.
542 * The target might be special in some sense in which case that is handled
545 * target The target we want to enter
546 * target_group Non-NULL if target is part of a group this time
547 * depes A list of dependencies for the target
548 * command The command the target should be entered with
552 * built_last_make_run_seen If the previous target was
558 * default_target_to_build Set to the target if reading makefile
559 * and this is the first regular target
569 enter_dependencies(register Name target, Chain target_group, register Name_vector depes, register Cmd_line command, register Separator separator)
590 target->has_recursive_dependency = true;
595 /* Read the dependencies. They are "<directory> <target-made>*/
628 /* enter the recursive prop for the target */
633 for (line = get_prop(target->prop, recursive_prop);
637 (line->body.recursive.target == name)) {
645 line2 = append_prop(target, recursive_prop);
647 line2->body.recursive.target = name;
654 /* If this is the first target that doesnt start with a "." in the */
656 Wstring tstr(target);
664 ** The target with empty name cannot be default_target_to_build
666 if (target->hash.length != 0)
667 default_target_to_build = target;
671 if (target->colons == no_colon) {
672 target->colons = separator;
674 if (target->colons != separator) {
675 fatal_reader(gettext(":/:: conflict for target `%s'"),
676 target->string_mb);
679 if (target->colons == two_colon) {
689 target->stat.is_precious = true;
691 * Build a synthetic target "<number>%target"
692 * for "target".
694 mb_namep = getmem((int) (strlen(target->string_mb) + 10));
695 namep = ALLOC_WC((int) (target->hash.length + 10));
696 slash = strrchr(target->string_mb, (int) slash_char);
700 target->colon_splits++,
701 target->string_mb);
706 target->string_mb,
707 target->colon_splits++,
716 (void) printf("%s:\t", target->string_mb);
718 /* Make "target" depend on "<number>%target */
719 line2 = maybe_append_prop(target, line_prop);
721 line2->body.line.target = target;
722 /* Put a prop on "<number>%target that makes */
723 /* appear as "target" */
726 body.target.target = target;
727 target->is_double_colon_parent = true;
733 (target = name)->stat.is_file = true;
737 line = maybe_append_prop(target, line_prop);
738 line->body.line.target = target;
744 /* redefines the rule for the target */
776 target->ran_command = true;
790 /* dependencies. If this is the first time the target is */
793 if (target->temp_file_number == temp_file_number) {
796 target->temp_file_number = temp_file_number;
812 /* A target may only be involved in one target group */
815 fatal_reader(gettext("Too many target groups for target `%s'"),
816 target->string_mb);
823 (void) printf("%s:\t", target->string_mb);
904 (line->body.line.target != NULL)) {
905 line->body.line.target->has_regular_dependency = true;
910 * enter_percent(target, depes, command)
913 * % patterns are stored in four parts head and tail for target and source
916 * target Left hand side of pattern
926 enter_percent(register Name target, Chain target_group, register Name_vector depes, Cmd_line command)
942 result->name = target;
947 Wstring wcb(target);
973 result->patterns[pattern] = GETNAME(cp, (int) target->hash.length - (cp - wcb.get_string()));
1052 * enter_dyntarget(target)
1057 * target Left hand side of pattern
1064 enter_dyntarget(register Name target)
1072 result->name = target;
1082 (void) printf("Dynamic target %s:\n", result->name->string_mb);
1089 * special_reader(target, depes, command)
1093 * target/dependency sets.
1096 * target The special target
1105 * svr4 Set when ".SVR4" target is read
1107 * posix Set when ".POSIX" target is read
1110 * default_rule Set when ".DEFAULT" target is read
1113 * ignore_errors Set if ".IGNORE" target is read
1115 * keep_state Set if ".KEEP_STATE" target is read
1123 * sccs_get_rule Set when ".SCCS_GET" target is read
1124 * silent Set when ".SILENT" target is read
1129 special_reader(Name target, register Name_vector depes, Cmd_line command)
1133 switch (target->special_reader) {
1137 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1138 target->string_mb);
1154 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1155 target->string_mb);
1176 warning(gettext("Illegal dependency list for target `%s'"),
1177 target->string_mb);
1190 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1191 target->string_mb);
1218 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1219 target->string_mb);
1247 fatal_reader(gettext("Illegal dependency list for target `%s'"),
1248 target->string_mb);
1369 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1370 target->string_mb);
1382 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1383 target->string_mb);
1394 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1395 target->string_mb);
1409 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1410 target->string_mb);
1422 fatal_reader(gettext("Illegal dependencies for target `%s'"),
1423 target->string_mb);
1659 * enter_conditional(target, name, value, append)
1661 * Enter "target := MACRO= value" constructs
1664 * target The target the macro is for
1671 * where the target is a % pattern
1675 enter_conditional(register Name target, Name name, Name value, register Boolean append)
1679 Name orig_target = target;
1682 enter_conditional(target, virtual_root, virtual_root, false);
1685 if (target->percent) {
1686 target = conditionals;
1694 /* target */
1695 if (target->percent) {
1696 target = conditionals;
1699 target->conditional_cnt++;
1701 /* Add the property for the target */
1702 conditional = append_prop(target, conditional_prop);
1703 conditional->body.conditional.target = orig_target;
1711 target->string_mb,
1717 target->string_mb,