Blob


1 void addrule(char*, Word*, char*, Word*, int, int, char*);
2 void addrules(Word*, Word*, char*, int, int, char*);
3 void addw(Word*, char*);
4 void assert(char*, int);
5 int assline(Biobuf *, Bufblock *);
6 long atimeof(int,char*);
7 void atouch(char*);
8 void bufcpy(Bufblock *, char *, int);
9 Envy *buildenv(Job*, int);
10 void catchnotes(void);
11 char *charin(char *, char *);
12 int chgtime(char*);
13 void clrmade(Node*);
14 char *copyq(char*, Rune, Bufblock*);
15 void delete(char*);
16 void delword(Word*);
17 int dorecipe(Node*);
18 void dumpa(char*, Arc*);
19 void dumpj(char*, Job*, int);
20 void dumpn(char*, Node*);
21 void dumpr(char*, Rule*);
22 void dumpv(char*);
23 void dumpw(char*, Word*);
24 int escapetoken(Biobuf*, Bufblock*, int, int);
25 void execinit(void);
26 int execsh(char*, char*, Bufblock*, Envy*);
27 void Exit(void);
28 char *expandquote(char*, Rune, Bufblock*);
29 void expunge(int, char*);
30 void freebuf(Bufblock*);
31 void front(char*);
32 Node *graph(char*);
33 void growbuf(Bufblock *);
34 void initenv(void);
35 void insert(Bufblock *, int);
36 void ipop(void);
37 void ipush(void);
38 void killchildren(char*);
39 void *Malloc(int);
40 char *maketmp(int*);
41 int match(char*, char*, char*);
42 char *membername(char*, int, char*);
43 void mk(char*);
44 ulong mkmtime(char*);
45 long mtime(char*);
46 Arc *newarc(Node*, Rule*, char*, Resub*);
47 Bufblock *newbuf(void);
48 Job *newjob(Rule*, Node*, char*, char**, Word*, Word*, Word*, Word*);
49 Word *newword(char*);
50 int nextrune(Biobuf*, int);
51 int nextslot(void);
52 void nproc(void);
53 void nrep(void);
54 int outofdate(Node*, Arc*, int);
55 void parse(char*, int, int);
56 int pipecmd(char*, Envy*, int*);
57 void prusage(void);
58 void rcopy(char**, Resub*, int);
59 void readenv(void);
60 void *Realloc(void*, int);
61 void rinsert(Bufblock *, Rune);
62 char *rulecnt(void);
63 void run(Job*);
64 void setvar(char*, void*);
65 char *shname(char*);
66 void shprint(char*, Envy*, Bufblock*);
67 Word *stow(char*);
68 void subst(char*, char*, char*);
69 void symdel(char*, int);
70 void syminit(void);
71 Symtab *symlook(char*, int, void*);
72 void symstat(void);
73 void symtraverse(int, void(*)(Symtab*));
74 void timeinit(char*);
75 long timeof(char*, int);
76 void touch(char*);
77 void update(int, Node*);
78 void usage(void);
79 Word *varsub(char**);
80 int waitfor(char*);
81 int waitup(int, int*);
82 Word *wdup(Word*);
83 int work(Node*, Node*, Arc*);
84 char *wtos(Word*, int);