Hi,
In sdiff.c the use of kill() is guarded in cleanup():
static void
cleanup (int signo __attribute__((unused)))
{
#if HAVE_WORKING_FORK
if (0 < diffpid)
kill (diffpid, SIGPIPE);
#endif
if (tmpname)
unlink (tmpname);
}
However, in checksigs() it isn't. A simple fix to help build
diffutils under mingw (which doesn't have kill()) is:
+--- a/src/sdiff.c
++++ b/src/sdiff.c
+@@ -805,7 +805,9 @@
+
+ /* Yield an exit status indicating that a signal was received. */
+ untrapsig (s);
++#if HAVE_WORKING_FORK
+ kill (getpid (), s);
++#endif
+
+ /* That didn't work, so exit with error status. */
+ exit (EXIT_TROUBLE);
Cheers,
Ross