[PATCH] [DOC] shell startup files, clarifications and fixes. (was: Re: [PATCH] Make STARTUP_WITH_SHELL a runtime toggle -- add new "set/show startup-with-shell" option.)

Pedro Alves
2013-10-25T11:11:14Z

On 10/23/2013 03:49 PM, Pedro Alves wrote:
>
> @emph{Warning:} On Unix systems, @value{GDBN} runs your program using
> the shell indicated
> by your @code{SHELL} environment variable if it exists (or
> @code{/bin/sh} if not). If your @code{SHELL} variable names a shell
> that runs an initialization file---such as @file{.cshrc} for C-shell, or
> @file{.bashrc} for BASH---any variables you set in that file affect
> your program. You may wish to move setting of environment variables to
> files that are only run when you sign on, such as @file{.login} or
> @file{.profile}.
>
> So that's wrong too. I'll fix it as a follow up if the change below
> is OK.

Like so. OK?

-------
Subject: [DOC] shell startup files, clarifications and fixes.

When Bash is started non-interactively, it runs the script pointed by
the BASH_ENV environment variable, not .bashrc. While at it, mention
Z shell in the warning too, and mention non-interactive mode
explicitly.

gdb/doc/
2013-10-25 Pedro Alves <palves@redhat.com>

* gdb.texinfo (Starting) <set/show startup-with-shell>: Mention
non-interactive mode.
(Environment) <shell startup files warning>: Mention
non-interactive mode. Mention .zshenv for Z shell, and talk about
BASH_ENV instead of .bashrc for BASH.
---
gdb/doc/gdb.texinfo | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 32516ae..d6b29d1 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -2139,9 +2139,10 @@ During startup program terminated with signal SIGSEGV, Segmentation fault.
@noindent
which indicates the shell or the wrapper specified with
@samp{exec-wrapper} crashed, not your program. Most often, this is
-caused by something odd in your shell's initialization file---such as
-@file{.cshrc} for C-shell, $@file{.zshenv} for the Z shell, or the
-file specified in the @samp{BASH_ENV} environment variable for BASH.
+caused by something odd in your shell's non-interactive mode
+initialization file---such as @file{.cshrc} for C-shell,
+$@file{.zshenv} for the Z shell, or the file specified in the
+@samp{BASH_ENV} environment variable for BASH.

@kindex set disable-randomization
@item set disable-randomization
@@ -2305,14 +2306,15 @@ rather than assigning it an empty value.
@end table

@emph{Warning:} On Unix systems, @value{GDBN} runs your program using
-the shell indicated
-by your @code{SHELL} environment variable if it exists (or
-@code{/bin/sh} if not). If your @code{SHELL} variable names a shell
-that runs an initialization file---such as @file{.cshrc} for C-shell, or
-@file{.bashrc} for BASH---any variables you set in that file affect
-your program. You may wish to move setting of environment variables to
-files that are only run when you sign on, such as @file{.login} or
-@file{.profile}.
+the shell indicated by your @code{SHELL} environment variable if it
+exists (or @code{/bin/sh} if not). If your @code{SHELL} variable
+names a shell that runs an initialization file when started
+non-interactively---such as @file{.cshrc} for C-shell, $@file{.zshenv}
+for the Z shell, or the file specified in the @samp{BASH_ENV}
+environment variable for BASH---any variables you set in that file
+affect your program. You may wish to move setting of environment
+variables to files that are only run when you sign on, such as
+@file{.login} or @file{.profile}.

@node Working Directory
@section Your Program's Working Directory
--
1.7.11.7