Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Joel Brobecker <brobecker@adacore.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFA/python:2/2] First script in GDB python library - command/pahole.py
Date: Thu, 27 May 2010 20:37:00 -0000	[thread overview]
Message-ID: <m3aarlf5n7.fsf@fleche.redhat.com> (raw)
In-Reply-To: <1274918921-23200-3-git-send-email-brobecker@adacore.com> (Joel	Brobecker's message of "Wed, 26 May 2010 17:08:41 -0700")

>>>>> "Joel" == Joel Brobecker <brobecker@adacore.com> writes:

Joel> This patch makes use of the work done in the previous patch that allows
Joel> to store the GDB python library at a global location.  It updates the
Joel> Makefile.in, adding install-python and uninstall-python targets. And
Joel> it also introduces the first script in the GDB python library: pahole.py.

Today I remembered the other reasons we haven't upstreamed any of the
new commands written in Python :-(

There is no sensible way for a user to activate such a command.  With
this patch a user would have to know the name of the command's file and
invoke "python import gdb.command.pahole".

On the branch we have this "require" system so that users can write
"require command pahole" (with completion!).  But that was just a kind
of experiment, I don't think it is a very good idea.

One idea would be to allow some kind of auto-loading when a command is
not found.  That is, load pahole.py the first time the "pahole" command
is used.  Or even better, scan the install tree first so that command
completion still works.  (This is not ideal, though, since there is not
actually a way to discover command names without loading the file.)

FWIW I did not want to load all the commands at startup, as I was
concerned about slowing down startup.


Also there is the documentation issue.  If we ship a command then it
seems like we are giving it an official stamp, and it ought to be
documented in the manual.


I realize this is a lot of problems to solve.  The command activation
solution is one that would also be useful to users, since (ideally) it
would let them install local commands alongside built-in ones.

Tom


  reply	other threads:[~2010-05-27 20:32 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-27  0:09 Add support for the GDB Python Library Joel Brobecker
2010-05-27  0:09 ` [RFA/python:2/2] First script in GDB python library - command/pahole.py Joel Brobecker
2010-05-27 20:37   ` Tom Tromey [this message]
2010-05-28  1:34     ` Joel Brobecker
2010-06-03  0:11     ` Joel Brobecker
2010-06-03  6:28       ` Doug Evans
2010-06-03 15:35         ` Joel Brobecker
2010-07-11 18:49           ` Tom Tromey
2010-05-27  0:25 ` [RFA/python:1/2] Add support for --with-pythondir Joel Brobecker
2010-05-27  6:49   ` Doug Evans
2010-05-27 20:32   ` Tom Tromey
2010-05-28  9:55     ` Doug Evans
2010-05-28 17:20       ` Joel Brobecker
2010-05-30 17:10         ` Doug Evans
2010-06-01 20:15           ` Joel Brobecker
2010-06-01 20:39             ` Doug Evans
2010-06-01 20:53               ` Joel Brobecker
2010-05-27  1:54 ` Add support for the GDB Python Library Doug Evans
2010-05-27  3:42   ` Doug Evans
2010-05-27 15:17   ` Joel Brobecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3aarlf5n7.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox