GDB is the GNU project's native debugger
Andrew Cagney
cagney@gnu.org
Wed Nov 17 01:24:00 GMT 2004
> Andrew Cagney <cagney@gnu.org> writes:
>
>
>>GDB is the GNU project's native debuger. While we're certainly happy
>>to accomodate people using GDB as either an embedded debugger or
>>native debugger on other systems, the need to persue GDB as a native
>>debugger on GNU systems must be our first priority.
>>
>>Do we all agree with this?
>
>
> While I think we all agree with this in some sense, I think you should
> spell out where you are going with this.
>
> For example, it would be easy to use this statement as the motivation
> for removing features required for using gdb for embedded systems, or
> on Windows. I don't think that would be appropriate.
I think this first needs a little context.
One group, the embedded companies have found that with very little
effort (I believe the guesstimate is ~6 weeks) they can add an
architecture to GDB, leveraging themselves a very powerful debugger.
This work is typically contracted, and once the money dries up all
incentive to further develop that code disappears.
This creates a very on-sided relationship. The embedded targets get all
the cool features of GDB while the native developers get to "support"
(i.e., maintain) it.
To address this (since you mention code removal) I've (lets face it is
me willing to put my neck on the line and drive this forward) set clear
technical criteria such as:
> * END-OF-LIFE frame compatibility module
>
> GDB's internal frame infrastructure has been completely rewritten.
> The new infrastructure making it possible to support key new features
> ....
or:
- it has't built for a full release cycle
- it has't worked for a full release cycle
to identify code that can be removed.
While this is helping, the fact that it is only by taking such action
the code gets maintained tells us we should go further setting a clearer
bar: for instance requiring test results against each major release; or
clarifying that architectural changes to GDB's core allowing better
support for native GNU systems take priority over concerns that it might
break embedded code.
> If you want to state that, where there is a direct and immediatete
> conflict between the needs of GNU systems and the needs of other
> systems, the needs of the GNU systems take priority, I could support
> that.
In addition, many people (including I) are now in a situtation where
their financial future is in part dependant on their ability to work on
GNU software. As such they are finding that this conflict directly
affects their, or their peers, bottom line. A manouver that influences
the timing of a decision to deprecate (new code can't use) or
end-of-life (removing) a mechanism or accept/reject a change has the
potential to either cost or save these embedded / contract engineering
companies and their employees 10's if not 100's of thousands of dollars.
(Having worked in both GNU native and enbedded contract engineering, I
can confidently state that the embedded side is brutally cut throat and
far more likely to attempt influence. This is also why when accepting a
new architecture or system I've tried to set clear consistent acceptance
criteria).
> If you want to state that this applies to considerations of resources,
> and of which parts of gdb to mark obsolescent, I could not support
> that.
I'm not sure what you mean.
Andrew
More information about the Gdb
mailing list