version 1.22, 2000/02/02 13:47:47 |
version 1.23, 2000/03/26 16:21:32 |
|
|
if (signo == SIGINT) { |
if (signo == SIGINT) { |
gn = Targ_FindNode(".INTERRUPT", TARG_NOCREATE); |
gn = Targ_FindNode(".INTERRUPT", TARG_NOCREATE); |
if (gn != NULL) { |
if (gn != NULL) { |
Lst_ForEach(gn->commands, CompatRunCommand, (ClientData)gn); |
Lst_ForEach(gn->commands, CompatRunCommand, gn); |
} |
} |
} |
} |
|
|
|
|
silent = gn->type & OP_SILENT; |
silent = gn->type & OP_SILENT; |
errCheck = !(gn->type & OP_IGNORE); |
errCheck = !(gn->type & OP_IGNORE); |
|
|
cmdNode = Lst_Member (gn->commands, (ClientData)cmd); |
cmdNode = Lst_Member(gn->commands, cmd); |
cmdStart = Var_Subst(cmd, gn, FALSE); |
cmdStart = Var_Subst(cmd, gn, FALSE); |
|
|
/* |
/* |
|
|
} else { |
} else { |
cmd = cmdStart; |
cmd = cmdStart; |
} |
} |
Lst_Replace (cmdNode, (ClientData)cmdStart); |
Lst_Replace(cmdNode, cmdStart); |
|
|
if ((gn->type & OP_SAVE_CMDS) && (gn != ENDNode)) { |
if ((gn->type & OP_SAVE_CMDS) && (gn != ENDNode)) { |
Lst_AtEnd(ENDNode->commands, (ClientData)cmdStart); |
Lst_AtEnd(ENDNode->commands, cmdStart); |
return(0); |
return(0); |
} else if (strcmp(cmdStart, "...") == 0) { |
} else if (strcmp(cmdStart, "...") == 0) { |
gn->type |= OP_SAVE_CMDS; |
gn->type |= OP_SAVE_CMDS; |
|
|
free(bp); |
free(bp); |
} |
} |
free(cmdStart); |
free(cmdStart); |
Lst_Replace(cmdNode, (ClientData)NULL); |
Lst_Replace(cmdNode, NULL); |
|
|
/* |
/* |
* The child is off and running. Now all we can do is wait... |
* The child is off and running. Now all we can do is wait... |
|
|
gn->make = TRUE; |
gn->make = TRUE; |
gn->made = BEINGMADE; |
gn->made = BEINGMADE; |
Suff_FindDeps (gn); |
Suff_FindDeps (gn); |
Lst_ForEach (gn->children, CompatMake, (ClientData)gn); |
Lst_ForEach(gn->children, CompatMake, gn); |
if (!gn->make) { |
if (!gn->make) { |
gn->made = ABORTED; |
gn->made = ABORTED; |
pgn->make = FALSE; |
pgn->make = FALSE; |
|
|
*/ |
*/ |
if (!touchFlag) { |
if (!touchFlag) { |
curTarg = gn; |
curTarg = gn; |
Lst_ForEach (gn->commands, CompatRunCommand, (ClientData)gn); |
Lst_ForEach(gn->commands, CompatRunCommand, gn); |
curTarg = NULL; |
curTarg = NULL; |
} else { |
} else { |
Job_Touch (gn, gn->type & OP_SILENT); |
Job_Touch (gn, gn->type & OP_SILENT); |
|
|
if (!queryFlag) { |
if (!queryFlag) { |
gn = Targ_FindNode(".BEGIN", TARG_NOCREATE); |
gn = Targ_FindNode(".BEGIN", TARG_NOCREATE); |
if (gn != NULL) { |
if (gn != NULL) { |
Lst_ForEach(gn->commands, CompatRunCommand, (ClientData)gn); |
Lst_ForEach(gn->commands, CompatRunCommand, gn); |
if (gn->made == ERROR) { |
if (gn->made == ERROR) { |
printf("\n\nStop.\n"); |
printf("\n\nStop.\n"); |
exit(1); |
exit(1); |
|
|
* If the user has defined a .END target, run its commands. |
* If the user has defined a .END target, run its commands. |
*/ |
*/ |
if (errors == 0) { |
if (errors == 0) { |
Lst_ForEach(ENDNode->commands, CompatRunCommand, (ClientData)gn); |
Lst_ForEach(ENDNode->commands, CompatRunCommand, gn); |
} |
} |
} |
} |