Make STARTUP_WITH_SHELL a runtime toggle -- add new "set/show startup-with-shell...
authorPedro Alves <palves@redhat.com>
Thu, 24 Oct 2013 15:10:05 +0000 (16:10 +0100)
committerTom Tromey <tromey@sourceware.org>
Fri, 25 Oct 2013 14:02:59 +0000 (14:02 +0000)
commit98882a26513e25b2161b41dfd4bed97b59b2c01a
treeb93c6f85e6e42780f974f82faff02d1eaf9d6db5
parentc9737c08e7f804dfa80f71b74cb5678d0b69308e
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  <palves@redhat.com>

* 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  <palves@redhat.com>

* gdb.texinfo (Starting): Document set/show startup-with-shell.
gdb/ChangeLog
gdb/NEWS
gdb/config/alpha/nm-osf3.h
gdb/doc/ChangeLog
gdb/doc/gdb.texinfo
gdb/fork-child.c
gdb/inf-ptrace.c
gdb/inf-ttrace.c
gdb/infcmd.c
gdb/inferior.h
gdb/procfs.c