(ENOSYS): Define to a bogus value if not already defined.
authorJim Meyering <jim@meyering.net>
Sun, 15 Aug 1999 12:56:00 +0000 (12:56 +0000)
committerJim Meyering <jim@meyering.net>
Sun, 15 Aug 1999 12:56:00 +0000 (12:56 +0000)
(parse_options): Warn if --pid=PID is used and kill()
returns ENOSYS (e.g. when compiled with DJGPP).

src/tail.c

index b1b4b44..40ce9f0 100644 (file)
 # define OFF_T_MAX TYPE_MAXIMUM (off_t)
 #endif
 
+#ifndef ENOSYS
+  /* Some systems don't have ENOSYS -- this should be a big enough
+     value that no valid errno value will match it.  */
+# define ENOSYS 99999
+#endif
+
 /* Number of items to tail.  */
 #define DEFAULT_N_LINES 10
 
@@ -1435,6 +1441,11 @@ parse_options (int argc, char **argv,
   if (pid && !forever)
     error (0, 0,
           _("warning: PID ignored; --pid=PID is useful only when following"));
+  else if (pid && kill (pid, 0) != 0 && errno == ENOSYS)
+    {
+      error (0, 0, _("warning: --pid=PID is not supported on this system"));
+      pid = 0;
+    }
 }
 
 int