xref: /plan9/sys/src/cmd/mk/job.c (revision 7dd7cddf99dd7472612f1413b4da293630e6b1bc)
13e12c5d1SDavid du Colombier #include	"mk.h"
23e12c5d1SDavid du Colombier 
33e12c5d1SDavid du Colombier Job *
newjob(Rule * r,Node * nlist,char * stem,char ** match,Word * pre,Word * npre,Word * tar,Word * atar)4*7dd7cddfSDavid du Colombier newjob(Rule *r, Node *nlist, char *stem, char **match, Word *pre, Word *npre, Word *tar, Word *atar)
53e12c5d1SDavid du Colombier {
63e12c5d1SDavid du Colombier 	register Job *j;
73e12c5d1SDavid du Colombier 
83e12c5d1SDavid du Colombier 	j = (Job *)Malloc(sizeof(Job));
93e12c5d1SDavid du Colombier 	j->r = r;
103e12c5d1SDavid du Colombier 	j->n = nlist;
113e12c5d1SDavid du Colombier 	j->stem = stem;
123e12c5d1SDavid du Colombier 	j->match = match;
133e12c5d1SDavid du Colombier 	j->p = pre;
143e12c5d1SDavid du Colombier 	j->np = npre;
153e12c5d1SDavid du Colombier 	j->t = tar;
163e12c5d1SDavid du Colombier 	j->at = atar;
173e12c5d1SDavid du Colombier 	j->nproc = -1;
183e12c5d1SDavid du Colombier 	j->next = 0;
193e12c5d1SDavid du Colombier 	return(j);
203e12c5d1SDavid du Colombier }
213e12c5d1SDavid du Colombier 
223e12c5d1SDavid du Colombier void
dumpj(char * s,Job * j,int all)233e12c5d1SDavid du Colombier dumpj(char *s, Job *j, int all)
243e12c5d1SDavid du Colombier {
25*7dd7cddfSDavid du Colombier 	Bprint(&bout, "%s\n", s);
263e12c5d1SDavid du Colombier 	while(j){
27*7dd7cddfSDavid du Colombier 		Bprint(&bout, "job@%p: r=%p n=%p stem='%s' nproc=%d\n",
283e12c5d1SDavid du Colombier 			j, j->r, j->n, j->stem, j->nproc);
29*7dd7cddfSDavid du Colombier 		Bprint(&bout, "\ttarget='%s' alltarget='%s' prereq='%s' nprereq='%s'\n",
30*7dd7cddfSDavid du Colombier 			wtos(j->t, ' '), wtos(j->at, ' '), wtos(j->p, ' '), wtos(j->np, ' '));
313e12c5d1SDavid du Colombier 		j = all? j->next : 0;
323e12c5d1SDavid du Colombier 	}
333e12c5d1SDavid du Colombier }
34