Normal bash:

$ kill -l 141
PIPE

Bash compiled with --enable-minimal-config --enable-alias:

$ kill -l 141
SIGPIPE

That SIG prefix shouldn't be there. (Enabling POSIX mode makes no
difference to the output.)

A look at the source tells me that, for some reason, the POSIXly correct
output of 'kill -l' was made dependent on job control being compiled in.
I don't see any reason for that, so unless I'm missing something, the
attached patch should fix it.

Thanks,

- M.
diff --git a/builtins/common.c b/builtins/common.c
index 0eabe06..9e06c1e 100644
--- a/builtins/common.c
+++ b/builtins/common.c
@@ -782,13 +782,9 @@ display_signal_list (list, forcecols)
 	      list = list->next;
 	      continue;
 	    }
-#if defined (JOB_CONTROL)
 	  /* POSIX.2 says that `kill -l signum' prints the signal name without
 	     the `SIG' prefix. */
 	  printf ("%s\n", (this_shell_builtin == kill_builtin) ? name + 3 : name);
-#else
-	  printf ("%s\n", name);
-#endif
 	}
       else
 	{

Reply via email to