Lines Matching defs:gn
108 CompatDeleteTarget(GNode *gn)
110 if (!GNode_IsPrecious(gn) &&
111 (gn->type & OP_PHONY) == 0) {
112 const char *file = GNode_VarTarget(gn);
133 GNode *gn = Targ_FindNode(".INTERRUPT");
134 if (gn != NULL)
135 Compat_Make(gn, gn);
156 DebugFailedTarget(const char *cmd, const GNode *gn)
160 gn->name);
228 * gn Node from which the command came
235 Compat_RunCommand(const char *cmdp, GNode *gn, StringListNode *ln)
254 silent = (gn->type & OP_SILENT) != OP_NONE;
255 errCheck = !(gn->type & OP_IGNORE);
259 cmdStart = Var_SubstInTarget(cmd, gn);
272 if (gn->type & OP_SAVE_CMDS) {
274 if (gn != endNode) {
291 gn->type |= OP_SAVE_CMDS;
315 if (!silent || !GNode_ShouldExecute(gn)) {
320 if (!doIt && !GNode_ShouldExecute(gn))
351 Var_ReexportVars(gn);
352 Var_ExportStackTrace(gn->name, cmd);
388 DebugFailedTarget(cmd, gn);
401 meta_job_error(NULL, gn, false, status);
403 gn->made = ERROR;
405 gn->exit_status = status;
416 CompatDeleteTarget(gn);
441 RunCommands(GNode *gn)
445 for (ln = gn->commands.first; ln != NULL; ln = ln->next) {
447 if (!Compat_RunCommand(cmd, gn, ln))
516 MakeUnmade(GNode *gn, GNode *pgn)
519 assert(gn->made == UNMADE);
529 gn->flags.remake = true;
530 gn->made = BEINGMADE;
532 if (!(gn->type & OP_MADE))
533 Suff_FindDeps(gn);
535 MakeNodes(&gn->children, gn);
537 if (!gn->flags.remake) {
538 gn->made = ABORTED;
543 if (Lst_FindDatum(&gn->implicitParents, pgn) != NULL)
544 Var_Set(pgn, IMPSRC, GNode_VarTarget(gn));
552 DEBUG1(MAKE, "Examining %s...", gn->name);
553 if (!GNode_IsOODate(gn)) {
554 gn->made = UPTODATE;
564 if (opts.query && gn != Targ_GetEndNode())
571 GNode_SetLocalVars(gn);
578 gn->type |= OP_IGNORE;
580 gn->type |= OP_SILENT;
582 if (Job_CheckCommands(gn, Fatal)) {
583 if (!opts.touch || (gn->type & OP_MAKE)) {
584 curTarg = gn;
586 if (useMeta && GNode_ShouldExecute(gn))
587 meta_job_start(NULL, gn);
589 RunCommands(gn);
592 Job_Touch(gn, (gn->type & OP_SILENT) != OP_NONE);
595 gn->made = ERROR;
598 if (useMeta && GNode_ShouldExecute(gn)) {
600 gn->made = ERROR;
604 if (gn->made != ERROR) {
610 gn->made = MADE;
611 if (Make_Recheck(gn) == 0)
613 if (!(gn->type & OP_EXEC)) {
615 GNode_UpdateYoungestChild(pgn, gn);
620 PrintOnError(gn, "\nStop.\n");
627 MakeOther(GNode *gn, GNode *pgn)
630 if (Lst_FindDatum(&gn->implicitParents, pgn) != NULL) {
631 const char *target = GNode_VarTarget(gn);
635 switch (gn->made) {
637 Error("Graph cycles through %s", gn->name);
638 gn->made = ERROR;
642 if (!(gn->type & OP_EXEC)) {
644 GNode_UpdateYoungestChild(pgn, gn);
648 if (!(gn->type & OP_EXEC))
649 GNode_UpdateYoungestChild(pgn, gn);
662 * gn The node to make
666 * gn->made
667 * UPTODATE gn was already up-to-date.
668 * MADE gn was recreated successfully.
669 * ERROR An error occurred while gn was being created,
671 * ABORTED gn was not remade because one of its
675 Compat_Make(GNode *gn, GNode *pgn)
680 if (gn->made == UNMADE && (gn == pgn || !(pgn->type & OP_MADE))) {
681 if (!MakeUnmade(gn, pgn))
684 /* XXX: Replace with GNode_IsError(gn) */
685 } else if (gn->made == ERROR) {
692 MakeOther(gn, pgn);
696 MakeNodes(&gn->cohorts, pgn);
702 GNode *gn = Targ_FindNode(".BEGIN");
703 if (gn == NULL)
706 Compat_Make(gn, gn);
707 if (GNode_IsError(gn)) {
708 PrintOnError(gn, "\nStop.\n");
753 GNode *gn = Lst_Dequeue(targets);
754 Compat_Make(gn, gn);
756 if (gn->made == UPTODATE) {
757 printf("`%s' is up to date.\n", gn->name);
758 } else if (gn->made == ABORTED) {
760 gn->name);
762 if (GNode_IsError(gn) && errorNode == NULL)
763 errorNode = gn;