diff options
Diffstat (limited to 'devel/bmake/files/arch.c')
-rw-r--r-- | devel/bmake/files/arch.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/devel/bmake/files/arch.c b/devel/bmake/files/arch.c index 70a8768100d..80c289a7637 100644 --- a/devel/bmake/files/arch.c +++ b/devel/bmake/files/arch.c @@ -1,4 +1,4 @@ -/* $NetBSD: arch.c,v 1.1.1.6 2010/04/20 13:32:19 joerg Exp $ */ +/* $NetBSD: arch.c,v 1.1.1.7 2011/06/18 22:17:42 bsiegert Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,14 +69,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: arch.c,v 1.1.1.6 2010/04/20 13:32:19 joerg Exp $"; +static char rcsid[] = "$NetBSD: arch.c,v 1.1.1.7 2011/06/18 22:17:42 bsiegert Exp $"; #else #include <sys/cdefs.h> #ifndef lint #if 0 static char sccsid[] = "@(#)arch.c 8.2 (Berkeley) 1/2/94"; #else -__RCSID("$NetBSD: arch.c,v 1.1.1.6 2010/04/20 13:32:19 joerg Exp $"); +__RCSID("$NetBSD: arch.c,v 1.1.1.7 2011/06/18 22:17:42 bsiegert Exp $"); #endif #endif /* not lint */ #endif @@ -1260,7 +1260,7 @@ Arch_FindLib(GNode *gn, Lst path) * A library will be considered out-of-date for any of these reasons, * given that it is a target on a dependency line somewhere: * Its modification time is less than that of one of its - * sources (gn->mtime < gn->cmtime). + * sources (gn->mtime < gn->cmgn->mtime). * Its modification time is greater than the time at which the * make began (i.e. it's been modified in the course * of the make, probably by archiving). @@ -1293,8 +1293,9 @@ Arch_LibOODate(GNode *gn) oodate = TRUE; } else if (OP_NOP(gn->type) && Lst_IsEmpty(gn->children)) { oodate = FALSE; - } else if ((!Lst_IsEmpty(gn->children) && gn->cmtime == 0) || - (gn->mtime > now) || (gn->mtime < gn->cmtime)) { + } else if ((!Lst_IsEmpty(gn->children) && gn->cmgn == NULL) || + (gn->mtime > now) || + (gn->cmgn != NULL && gn->mtime < gn->cmgn->mtime)) { oodate = TRUE; } else { #ifdef RANLIBMAG @@ -1309,7 +1310,7 @@ Arch_LibOODate(GNode *gn) if (DEBUG(ARCH) || DEBUG(MAKE)) { fprintf(debug_file, "%s modified %s...", RANLIBMAG, Targ_FmtTime(modTimeTOC)); } - oodate = (gn->cmtime > modTimeTOC); + oodate = (gn->cmgn == NULL || gn->cmgn->mtime > modTimeTOC); } else { /* * A library w/o a table of contents is out-of-date |