=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/make/engine.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -r1.68 -r1.69 --- src/usr.bin/make/engine.c 2020/01/16 16:07:18 1.68 +++ src/usr.bin/make/engine.c 2020/01/26 12:41:21 1.69 @@ -1,4 +1,4 @@ -/* $OpenBSD: engine.c,v 1.68 2020/01/16 16:07:18 espie Exp $ */ +/* $OpenBSD: engine.c,v 1.69 2020/01/26 12:41:21 espie Exp $ */ /* * Copyright (c) 2012 Marc Espie. * @@ -241,7 +241,7 @@ Job_Touch(GNode *gn) { handle_all_signals(); - if (gn->type & (OP_JOIN|OP_USE|OP_EXEC|OP_OPTIONAL|OP_PHONY)) { + if (gn->type & (OP_USE|OP_OPTIONAL|OP_PHONY)) { /* * .JOIN, .USE, and .OPTIONAL targets are "virtual" targets * and, as such, shouldn't really be created. @@ -347,7 +347,7 @@ for (ln = Lst_First(&gn->children); ln != NULL; ln = Lst_Adv(ln)) { child = Lst_Datum(ln); - if ((child->type & (OP_EXEC|OP_USE|OP_INVISIBLE)) != 0) + if ((child->type & (OP_USE|OP_INVISIBLE)) != 0) continue; if (OP_NOP(child->type) || (target = Var(TARGET_INDEX, child)) == NULL) { @@ -371,10 +371,7 @@ * hosed. */ do_oodate = false; - if (gn->type & OP_JOIN) { - if (child->built_status == REBUILT) - do_oodate = true; - } else if (is_strictly_before(gn->mtime, child->mtime) || + if (is_strictly_before(gn->mtime, child->mtime) || (!is_strictly_before(child->mtime, starttime) && child->built_status == REBUILT)) do_oodate = true; @@ -413,9 +410,6 @@ if (gn->impliedsrc) Var(IMPSRC_INDEX, gn) = Var(TARGET_INDEX, gn->impliedsrc); - - if (gn->type & OP_JOIN) - Var(TARGET_INDEX, gn) = Var(ALLSRC_INDEX, gn); } /* Wrapper to call Make_TimeStamp from a forEach loop. */ @@ -434,7 +428,7 @@ * Certain types of targets needn't even be sought as their datedness * doesn't depend on their modification time... */ - if ((gn->type & (OP_JOIN|OP_USE|OP_EXEC|OP_PHONY)) == 0) { + if ((gn->type & (OP_USE|OP_PHONY)) == 0) { (void)Dir_MTime(gn); if (DEBUG(MAKE)) { if (!is_out_of_date(gn->mtime)) @@ -462,15 +456,7 @@ if (DEBUG(MAKE)) printf(".USE node..."); oodate = false; - } else if (gn->type & OP_JOIN) { - /* - * A target with the .JOIN attribute is only considered - * out-of-date if any of its children was out-of-date. - */ - if (DEBUG(MAKE)) - printf(".JOIN node..."); - oodate = gn->child_rebuilt; - } else if (gn->type & (OP_FORCE|OP_EXEC|OP_PHONY)) { + } else if (gn->type & (OP_FORCE|OP_PHONY)) { /* * A node which is the object of the force (!) operator or which * has the .EXEC attribute is always considered out-of-date.