diff options
| author | Steve Price <steve@FreeBSD.org> | 1996-10-06 02:35:38 +0000 |
|---|---|---|
| committer | Steve Price <steve@FreeBSD.org> | 1996-10-06 02:35:38 +0000 |
| commit | c0d06fe46307038927b1e161cbb4d3f4527ac669 (patch) | |
| tree | ab5bd5270becce85fa203b4b54d26c39fa7c14bc /usr.bin/make/make.c | |
| parent | 81beb58a1ae55112cf28eb7227f5ca2940d84271 (diff) | |
Notes
Diffstat (limited to 'usr.bin/make/make.c')
| -rw-r--r-- | usr.bin/make/make.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/usr.bin/make/make.c b/usr.bin/make/make.c index d6959a80e78c..92074fc05b3b 100644 --- a/usr.bin/make/make.c +++ b/usr.bin/make/make.c @@ -207,7 +207,7 @@ Make_OODate (gn) printf(".JOIN node..."); } oodate = gn->childMade; - } else if (gn->type & (OP_FORCE|OP_EXEC)) { + } else if (gn->type & (OP_FORCE|OP_EXEC|OP_PHONY)) { /* * A node which is the object of the force (!) operator or which has * the .EXEC attribute is always considered out-of-date. @@ -215,6 +215,8 @@ Make_OODate (gn) if (DEBUG(MAKE)) { if (gn->type & OP_FORCE) { printf("! operator..."); + } else if (gn->type & OP_PHONY) { + printf(".PHONY node..."); } else { printf(".EXEC node..."); } @@ -570,9 +572,16 @@ MakeAddAllSrc (cgnp, pgnp) GNode *pgn = (GNode *) pgnp; if ((cgn->type & (OP_EXEC|OP_USE|OP_INVISIBLE)) == 0) { char *child; - char *p1; + char *p1 = NULL; - child = Var_Value(TARGET, cgn, &p1); + if (OP_NOP(cgn->type)) { + /* + * this node is only source; use the specific pathname for it + */ + child = cgn->path ? cgn->path : cgn->name; + } + else + child = Var_Value(TARGET, cgn, &p1); Var_Append (ALLSRC, child, pgn); if (pgn->type & OP_JOIN) { if (cgn->made == MADE) { |
