Re: gdb/mi

Jim Ingham
2002-07-11T17:47:39Z

>
>
> On Wed, 10 Jul 2002, Greg Watson wrote:
>
>> Seems like Apple must have already fixed this in the MacOS X version
>> (which is 5.0). Here is the output from 'gdb -i mi' to prove it. :-)
>
> I've already fixed this in my branch, based on Apple's work:
>
> $ ./gdb --i=mi
> ~"GNU gdb 2002-06-19-cvs\n"
> ~"Copyright 2002 Free Software Foundation, Inc.\n"
> ~"GDB is free software, covered by the GNU General Public License, and
> you are\n"
> ~"welcome to change it and/or distribute copies of it under certain
> conditions.\n"
> ~"Type \"show copying\" to see the conditions.\n"
> ~"There is absolutely no warranty for GDB. Type \"show warranty\" for
> details.\n"
> ~"This GDB was configured as \"i686-pc-linux-gnu\"."
> ~"\n"
> (gdb)
>
> We should see these changes rolling into mainline sources sometime in
> the
> coming weeks. I've still a few anomalies to hammer out.

Cool!

>
>> Oh damn! I thought you'd already done the hard stuff and I could get
>> rid of the pty code from my front end. I guess that means that
>> asynchronous commands will only work with remote targets as well? Can
>> you point me at the approximate archive so I can review this
>> discussion?
>
> Yes, async on remotes only. I haven't even attempted to do this work
> yet.
> I figure sync is good enough to get my MI project moving.

We use the async mode for the MacOS X native target. It took a bit of
thinking to get this right, partly because MacOS X itself is a little
complicated (you have to talk both to mach & to the bsd layer...) and
because there were many aspects of the async support that weren't fully
worked out (like how exactly are user-defined & breakpoint commands
going to work in async gdb...). I also am pretty sure I broke remote
async targets, there were some hacks involving who had the terminal in
the remote async code which were wrong I am pretty sure (and the
comments in the code indicated the original author suspected that as
well) and kept our native async support from working.

But if you are interested, all the code is in the Darwin repository (or
in opendarwin for those who would prefer not to give Apple their e-mail
address)...

>
>> Do you know if there are any plans to handle native output within the
>> mi syntax, or would you be interested in someone adding this
>> functionality, or is it likely to be too difficult?
>
> If you want to help, we could use the help. I don't think anyone is
> even thinking about how to do this yet, so almost anything is better
> than
> nothing. The solution to this problem is almost certainly going to
> differ
> from system to system, but we've got to start somewhere IMO.

Not sure here. We switched ProjectBuilder over to using a separate tty
for program output, it wasn't that hard to do, and it makes life just
SO much easier. So while it would be great if somebody was going to
put the work into separating the output, given how easy the workaround
is, it would be way way down on my list of things to do...

Jim
--
Jim Ingham jingham@apple.com
Developer Tools - gdb
Apple Computer