The fix for SV 60595 causes make to re-execute when the makefile is
read from stdin. E.g.
$ printf 'all:; $(info hello)' | make -sf -
Reported by Sergei Trofimovich <siarheit@google.com>
Test added by Paul Smith <psmith@gnu.org>
* src/main.c (main): Set the mtime of the stdin temporary file.
* tests/scripts/features/reinvoke: Add a test.
make re-exec. */
f->intermediate = 0;
f->dontcare = 0;
+ /* Avoid re-exec due to stdin. */
+ f->last_mtime = f->mtime_before_update = f_mtime (f, 0);
}
}
}
unlink('hello.td');
+# Test DV 62088 : make sure we don't re-invoke for stdin makefiles.
+# The test framework doesn't seem to have a good way to do this.
+
+create_file('input.mk', "all:;\$(info all)\n");
+
+close(STDIN);
+open(STDIN, "<", 'input.mk') || die "input.mk: $!\n";
+
+run_make_test('', '-sf -', "all\n");
+
+unlink('input.mk');
+
# This tells the test driver that the perl test script executed properly.
1;