summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfjoe <fjoe@FreeBSD.org>2007-11-25 20:43:27 +0000
committerfjoe <fjoe@FreeBSD.org>2007-11-25 20:43:27 +0000
commit5864a961653eb9afd806f675b08ad584ce78c5a5 (patch)
treeb539119d01e1bd57a1b8bbc7018b90b981d17d10
parent625e38eddc8b523d10948382f838410bcea38748 (diff)
downloadFreeBSD-src-5864a961653eb9afd806f675b08ad584ce78c5a5.zip
FreeBSD-src-5864a961653eb9afd806f675b08ad584ce78c5a5.tar.gz
Fix -jX when makefiles are remade.
-rw-r--r--usr.bin/make/main.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/usr.bin/make/main.c b/usr.bin/make/main.c
index fea2193..b683f85 100644
--- a/usr.bin/make/main.c
+++ b/usr.bin/make/main.c
@@ -808,6 +808,22 @@ Remake_Makefiles(void)
printf("`%s' not remade because of errors.\n",
gn->name);
error_cnt++;
+ } else if (gn->made == UPTODATE) {
+ Lst examine;
+
+ Lst_Init(&examine);
+ Lst_EnQueue(&examine, gn);
+ while (!Lst_IsEmpty(&examine)) {
+ LstNode *eln;
+ GNode *egn = Lst_DeQueue(&examine);
+
+ egn->make = FALSE;
+ LST_FOREACH(eln, &egn->children) {
+ GNode *cgn = Lst_Datum(eln);
+
+ Lst_EnQueue(&examine, cgn);
+ }
+ }
}
}
OpenPOWER on IntegriCloud