diff options
author | Kevin Buettner <kevinb@redhat.com> | 2022-07-25 12:04:10 -0700 |
---|---|---|
committer | Kevin Buettner <kevinb@redhat.com> | 2022-07-25 12:05:14 -0700 |
commit | 24d2cbc42ccf08dba79394635db3be084eed9062 (patch) | |
tree | 5ca03b1fe4cb30ead26999da1c83da08af874faf /gdb/doc | |
parent | 23aa2befce75966acd388b810e139922857533fa (diff) | |
download | gdb-24d2cbc42ccf08dba79394635db3be084eed9062.zip gdb-24d2cbc42ccf08dba79394635db3be084eed9062.tar.gz gdb-24d2cbc42ccf08dba79394635db3be084eed9062.tar.bz2 |
set/show python dont-write-bytecode fixes
GDB uses the environment variable PYTHONDONTWRITEBYTECODE to
determine whether or not to write the result of byte-compiling
python modules when the "python dont-write-bytecode" setting
is "auto". Simon noticed that GDB's implementation doesn't
follow the Python documentation.
At present, GDB only checks for the existence of this environment
variable. That is not sufficient though. Regarding
PYTHONDONTWRITEBYTECODE, this document...
https://docs.python.org/3/using/cmdline.html
...says:
If this is set to a non-empty string, Python won't try to write
.pyc files on the import of source modules.
This commit fixes GDB's handling of PYTHONDONTWRITEBYTECODE by adding
an empty string check.
This commit also corrects the set/show command documentation for
"python dont-write-bytecode". The current doc was just a copy
of that for set/show python ignore-environment.
During his review of an earlier version of this patch, Eli Zaretskii
asked that the help text that I proposed for "set/show python
dont-write-bytecode" be expanded. I've done that in addition to
clarifying the documentation of this option in the GDB manual.
Diffstat (limited to 'gdb/doc')
-rw-r--r-- | gdb/doc/python.texi | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gdb/doc/python.texi b/gdb/doc/python.texi index eeb847a..cdf7db9 100644 --- a/gdb/doc/python.texi +++ b/gdb/doc/python.texi @@ -134,9 +134,14 @@ initialized early during @value{GDBN}'s startup process, then this option must be placed into the early initialization file (@pxref{Initialization Files}) to have the desired effect. -By default this option is set to @samp{auto}, in this mode Python will -check the environment variable @env{PYTHONDONTWRITEBYTECODE} to see +By default this option is set to @samp{auto}. In this mode, provided +the @code{python ignore-environment} setting is @samp{off}, the +environment variable @env{PYTHONDONTWRITEBYTECODE} is examined to see if it should write out byte-code or not. +@env{PYTHONDONTWRITEBYTECODE} is considered to be off/disabled either +when set to the empty string or when the environment variable doesn't +exist. All other settings, including those which don't seem to make +sense, indicate that it's on/enabled. This option is equivalent to passing @option{-B} to the real @command{python} executable. |