summaryrefslogtreecommitdiff
path: root/devel/bmake/files/arch.c
diff options
context:
space:
mode:
Diffstat (limited to 'devel/bmake/files/arch.c')
-rw-r--r--devel/bmake/files/arch.c15
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