GDB's roles

Andrew Cagney
2003-02-21T18:43:30Z

Ignoring the upper levels, I think the people listed in the gdb
MAINTAINERS file find themselves filling one or more of the following roles:

Elders:

These are the keepers of the `GDB wisdom'. They are largely uninvolved
in day to day GDB development - very hands off - very much don't given
opinions except where to point out problems and flaws.

Adminstrator:

They do the day to day stuff: bug report unreviewed patches, ping
maintainers that are asleep at the wheel, try to keep the political
(RMS, et.al.) separate from the technical (this groups focus), web
pages, ...

Architect:

Ensure that GDB is `heading in the right direction'. The actual
direction is determined by the group but this person gets to watch for
things going off the rails. Also, very occasionally, make architectural
judgment calls.

The architect is woried about key interfaces such as the architecture
and target vectors.

Core Maintainers:

These are the people on which everyone else depends. They put
themselves to the grindstone ensuring that the GDB wheel keeps turning.
These are the people that do the hard work of reviewing / approving
patches. These people need to be relatively reliable. These people
need to be willing to do the dirty work (such as restructuring) that
can't reasonably be expected of a contributor.

While a core maintainer might also be responsible for certain specific
areas (symtab, threads, remote), they won't cherry pick the patch list
and definitly won't fall asleep at the wheel.

Specific Maintainers:

These are responsible for specific areas. Native, target, host and
language maintainers come to mind. Their responsabilities are pretty
clear, while needing to be responsive, they are not on the critical path
like core maintainers. The thing I really like about the target
maintainers is how they, every so often, pop up to do some maintenance
(eliminate something deprecated), and then pop back down again.

Developers/Contributors:

These are the people that have `fun'. They have the luxury of poping
up, contributing a new feature, and then simply disappearing again
(typically though, a contributor ends up being the maintainer). New
development, of course, needs peer review (by a maintainer) as, in the
long run, it will be the [core] maintainers that have to support that code.

Using the above as a reference (the last thing this list needs is a long
irrelevant discussion about the semantics of each of the above :-)) it
might be helpful for global maintainers to look at this so that they can
see how their activities contribute to GDB.

Me? Architect/Adminstrator + core. While I'm a maintainer for a few
specific area's (remote and mips) that is very very low down, same for
development.

Andrew