mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-24 22:53:42 +00:00
8ad7893bfc
also needed for updated firebird to build
47 lines
1.3 KiB
Diff
47 lines
1.3 KiB
Diff
diff --git a/remake.c b/remake.c
|
|
index c0bf709..b1ddd23 100644
|
|
--- a/remake.c
|
|
+++ b/remake.c
|
|
@@ -612,6 +612,10 @@ update_file_1 (struct file *file, unsigned int depth)
|
|
d->file->dontcare = file->dontcare;
|
|
}
|
|
|
|
+ /* We may have already considered this file, when we didn't know
|
|
+ we'd need to update it. Force update_file() to consider it and
|
|
+ not prune it. */
|
|
+ d->file->considered = !considered;
|
|
|
|
dep_status |= update_file (d->file, depth);
|
|
|
|
diff --git a/tests/scripts/features/parallelism b/tests/scripts/features/parallelism
|
|
index d4250f0..76d24a7 100644
|
|
--- a/tests/scripts/features/parallelism
|
|
+++ b/tests/scripts/features/parallelism
|
|
@@ -214,6 +214,23 @@ rm main.x");
|
|
rmfiles(qw(foo.y foo.y.in main.bar));
|
|
}
|
|
|
|
+# Ensure intermediate/secondary files are not pruned incorrectly.
|
|
+# See Savannah bug #30653
|
|
+
|
|
+utouch(-15, 'file2');
|
|
+utouch(-10, 'file4');
|
|
+utouch(-5, 'file1');
|
|
+
|
|
+run_make_test(q!
|
|
+.INTERMEDIATE: file3
|
|
+file4: file3 ; @mv -f $< $@
|
|
+file3: file2 ; touch $@
|
|
+file2: file1 ; @touch $@
|
|
+!,
|
|
+ '--no-print-directory -j2', "touch file3");
|
|
+
|
|
+#rmfiles('file1', 'file2', 'file3', 'file4');
|
|
+
|
|
if ($all_tests) {
|
|
# Jobserver FD handling is messed up in some way.
|
|
# Savannah bug #28189
|
|
--
|
|
1.7.12
|
|
|