This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: MI testsuite improvements


> 
> Bob Rossi wrote:
> > On Wed, Feb 16, 2005 at 09:41:56AM -0500, Andrew Cagney wrote:
> > 
> >>Bob Rossi wrote:
> >>
> >>
> >>>>Let me know what you think. If you want the dbg.log files, I can provide
> >>>>them.
> >>
> >>I was kind of looking for an executive summary :-)  I've attached a 
> >>trimmed diff.
> >>
> >>Two things:
> >>
> >>- it should't be using --interpreter console ...
> >>Can you and/or: add a new -mi-tty command (+test, +doco) and use that; 
> >>invoke GDB with the --tty=... option.  Your call.  Either pre-approved 
> >>(but get thumbs up from Eli on the doco).
> >>
> >>- can the TTY output be identified in someway?
> >>That might make debugging easier, but if it isn't possible I guess we 
> >>live with that.
> > 
> > 
> > OK, I like this idea a lot. I'll make a new mi function that allows you
> > to set a tty. I'll also make a new MI function that will allow you to
> > retrieve the tty device being used, both GDB and the inferior.
> 
> Ok.  Wonder if it should be ``set/show tty'', "tty ..." just a wrapper.
> 
> > Finally, I think it would be helpful to have GDB actually be able to
> > create a pty for the front end. In case you didn't know, creating a pty
> > can be a non portable task, and GDB should be capable of doing it every
> > where it ports to. This would help out the Front Ends a lot. What do you
> > think? Something like -mi-tty-new -mi-tty-close?
> 
> I suspect this is correct.
> 
> Alain, how does the CDT currently hande the PTY problem?  Would this be 
> useful?
> 

Yes, it would be.
The problem comes from local inferior outputs that are intertwine
with MI stream(The remote case is ok since the output is properly
wrap in @"..." steam).

CDT handles this by creating JNI code per platform that
will create a pseudo pty,  the slave pty is pass to gdb

	gdb --tty /dev/ptys/n app

And the IDE is reading at the other end of the master and
redirecting the outputs to the IDE console widget.


Caveats:

- Not all platform supports pseudo tty, we still have
  no solution for Win32/cygwin.

- On some platform like Solaris, because the way the suspend is
  implemented, CTRL-C will no longer work.

- When we relaunch/restart, it probably will not work, since
  the tty is close by the inferior.  (Relaunching is important when you have an
  huge executable .. loading the symbols can be a pain).


Now if gdb can create the pty and can give back the master/slave
pty so we can redirect the output to the IDE ... that would be perfect
making the JNI code obsolete.


Sorry, I did not follow Bob's proposals in the mailing list.
So maybe I'm completely of track.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]