diff options
| author | cgd <cgd@NetBSD.org> | 1994-03-05 00:34:29 +0000 |
|---|---|---|
| committer | cgd <cgd@NetBSD.org> | 1994-03-05 00:34:29 +0000 |
| commit | 3db59563ee7dca190481dfee041222f12ed3a64f (patch) | |
| tree | ee00f5ed3bf2662f98775537e76f6ba74977a1f6 /usr.bin/make/make.c | |
| parent | 3e02952c52fd23241dc58d7a0165a865dd508bcd (diff) | |
fixes/improvements from Christos Zoulas <christos@deshaw.com>.
Diffstat (limited to 'usr.bin/make/make.c')
| -rw-r--r-- | usr.bin/make/make.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/usr.bin/make/make.c b/usr.bin/make/make.c index 56125122387..0f57e69038d 100644 --- a/usr.bin/make/make.c +++ b/usr.bin/make/make.c @@ -37,8 +37,8 @@ */ #ifndef lint -/*static char sccsid[] = "from: @(#)make.c 5.3 (Berkeley) 6/1/90";*/ -static char rcsid[] = "$Id: make.c,v 1.3 1994/01/13 21:01:57 jtc Exp $"; +/* from: static char sccsid[] = "@(#)make.c 5.3 (Berkeley) 6/1/90"; */ +static char *rcsid = "$Id: make.c,v 1.4 1994/03/05 00:34:58 cgd Exp $"; #endif /* not lint */ /*- @@ -73,8 +73,10 @@ static char rcsid[] = "$Id: make.c,v 1.3 1994/01/13 21:01:57 jtc Exp $"; * and perform the .USE actions if so. */ -#include <stdio.h> #include "make.h" +#include "hash.h" +#include "dir.h" +#include "job.h" static Lst toBeMade; /* The current fringe of the graph. These * are nodes which await examination by @@ -85,6 +87,10 @@ static int numNodes; /* Number of nodes to be processed. If this * is non-zero when Job_Empty() returns * TRUE, there's a cycle in the graph */ +static int MakeAddChild __P((GNode *, Lst)); +static int MakeAddAllSrc __P((GNode *, GNode *)); +static Boolean MakeStartJobs __P((void)); +static int MakePrintStatus __P((GNode *, Boolean)); /*- *----------------------------------------------------------------------- * Make_TimeStamp -- @@ -427,7 +433,12 @@ Make_Update (cgn) * little, so this stuff is commented out unless you're sure it's ok. * -- ardeb 1/12/88 */ - if (noExecute || Dir_MTime(cgn) == 0) { + /* + * Christos, 4/9/92: If we are saving commands pretend that + * the target is made now. Otherwise archives with ... rules + * don't work! + */ + if (noExecute || (cgn->type & OP_SAVE_CMDS) || Dir_MTime(cgn) == 0) { cgn->mtime = now; } if (DEBUG(MAKE)) { |
