Lines Matching refs:fnode
113 filenode *fnode; member
148 void do_file(filenode *fnode);
150 int skip_ok(filenode *fnode);
151 int keep_ok(filenode *fnode);
222 strnode_add(strnodelist **listp, char *s, filenode *fnode) in strnode_add() argument
227 ent->node = fnode; in strnode_add()
272 add_require(filenode *fnode, char *s) in add_require() argument
283 rnode->next = fnode->req_list; in add_require()
284 fnode->req_list = rnode; in add_require()
292 add_provide(filenode *fnode, char *s) in add_provide() argument
307 head->fnode = NULL; in add_provide()
345 warnx("file `%s' provides `%s'.", fnode->filename, s); in add_provide()
347 head->next->fnode->filename); in add_provide()
354 pnode->fnode = fnode; in add_provide()
363 f_pnode->next = fnode->prov_list; in add_provide()
364 fnode->prov_list = f_pnode; in add_provide()
371 add_before(filenode *fnode, char *s) in add_before() argument
374 strnode_add(&bl_list, s, fnode); in add_before()
381 add_keyword(filenode *fnode, char *s) in add_keyword() argument
384 strnode_add(&fnode->keyword_list, s, fnode); in add_keyword()
494 head->fnode = NULL; in make_fake_provision()
501 pnode->fnode = node; in make_fake_provision()
548 rnode->next = pnode->fnode->req_list; in insert_before()
549 pnode->fnode->req_list = rnode; in insert_before()
625 do_file(head->next->fnode); in satisfy_req()
629 skip_ok(filenode *fnode) in skip_ok() argument
635 for (k = fnode->keyword_list; k; k = k->next) in skip_ok()
643 keep_ok(filenode *fnode) in keep_ok() argument
649 for (k = fnode->keyword_list; k; k = k->next) in keep_ok()
668 do_file(filenode *fnode) in do_file() argument
675 DPRINTF((stderr, "do_file on %s.\n", fnode->filename)); in do_file()
681 if (fnode->in_progress == SET) { in do_file()
683 fnode->filename); in do_file()
689 fnode->in_progress = SET; in do_file()
695 r = fnode->req_list; in do_file()
700 satisfy_req(r, fnode->filename); in do_file()
706 fnode->req_list = NULL; in do_file()
712 p = fnode->prov_list; in do_file()
726 fnode->prov_list = NULL; in do_file()
732 if (was_set == 0 && skip_ok(fnode) && keep_ok(fnode)) in do_file()
733 printf("%s\n", fnode->filename); in do_file()
735 if (fnode->next != NULL) { in do_file()
736 fnode->next->last = fnode->last; in do_file()
738 if (fnode->last != NULL) { in do_file()
739 fnode->last->next = fnode->next; in do_file()
742 DPRINTF((stderr, "nuking %s\n", fnode->filename)); in do_file()
744 free(fnode->filename); in do_file()
745 free(fnode); in do_file()