From 98882a26513e25b2161b41dfd4bed97b59b2c01a Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Thu, 24 Oct 2013 16:10:05 +0100 Subject: Make STARTUP_WITH_SHELL a runtime toggle -- add new "set/show startup-with-shell" option. Occasionaly we hear about people having problems with GDB not being able to start programs (with "run"/"start"). GDB spawns a shell to start the program, and most often, it'll be the case that the problem is actually with the user's shell setup. GDB has code to disable the use of the shell to start programs. That's the STARTUP_WITH_SHELL macro that native targets could set to 0 in their nm.h file (though no target actually uses it nowadays). This patch makes that setting a run-time knob instead. This will be useful to quickly diagnose such shell issues, and might also come in handy at other times (such as when debugging the shell itself, if you don't have a different shell handy). gdb/ 2013-10-24 Pedro Alves * NEWS (New options): Mention set/show startup-with-shell. * config/alpha/nm-osf3.h (START_INFERIOR_TRAPS_EXPECTED): Set to 2 instead of 3. * fork-child.c (fork_inferior, startup_inferior): Handle 'set startup-with-shell'. (show_startup_with_shell): New function. (_initialize_fork_child): Register the set/show startup-with-shell commands. * inf-ptrace.c (inf_ptrace_create_inferior): Remove comment. * inf-ttrace.c (inf_ttrace_him): Remove comment. * procfs.c (procfs_init_inferior): Remove comment. * infcmd.c (startup_with_shell): New global. * inferior.h (startup_with_shell): Declare global. (STARTUP_WITH_SHELL): Delete. (START_INFERIOR_TRAPS_EXPECTED): Set to 1 by default instead of 2. gdb/doc/ 2013-10-24 Pedro Alves * gdb.texinfo (Starting): Document set/show startup-with-shell. --- gdb/NEWS | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gdb/NEWS') diff --git a/gdb/NEWS b/gdb/NEWS index 10834df..6eb5090 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -98,6 +98,11 @@ set range-stepping show range-stepping Control whether target-assisted range stepping is enabled. +set startup-with-shell +show startup-with-shell + Specifies whether Unix child processes are started via a shell or + directly. + * You can now use a literal value 'unlimited' for options that interpret 0 or -1 as meaning "unlimited". E.g., "set trace-buffer-size unlimited" is now an alias for "set -- cgit v1.1