8 This file describes different groups of people who are, together, the
9 maintainers and developers of the GDB project. Don't worry - it sounds
10 more complicated than it really is.
12 There are four groups of GDB developers, covering the patch development and
15 - The Global Maintainers.
17 These are the developers in charge of most daily development. They
18 have wide authority to apply and reject patches, but defer to the
19 Responsible Maintainers (see below) within their spheres of
22 - The Responsible Maintainers.
24 These are developers who have expertise and interest in a particular
25 area of GDB, who are generally available to review patches, and who
26 prefer to enforce a single vision within their areas.
28 - The Authorized Committers.
30 These are developers who are trusted to make changes within a specific
31 area of GDB without additional oversight.
33 - The Write After Approval Maintainers.
35 These are developers who have write access to the GDB source tree. They
36 can check in their own changes once a developer with the appropriate
37 authority has approved the changes; they can also apply the Obvious
40 All maintainers are encouraged to post major patches to the gdb-patches
41 mailing list for comments, even if they have the authority to commit the
42 patch without review from another maintainer. This especially includes
43 patches which change internal interfaces (e.g. global functions, data
44 structures) or external interfaces (e.g. user, remote, MI, et cetera).
46 The term "review" is used in this file to describe several kinds of feedback
47 from a maintainer: approval, rejection, and requests for changes or
48 clarification with the intention of approving a revised version. Review is
49 a privilege and/or responsibility of various positions among the GDB
50 Maintainers. Of course, anyone - whether they hold a position but not the
51 relevant one for a particular patch, or are just following along on the
52 mailing lists for fun, or anything in between - may suggest changes or
53 ask questions about a patch!
55 There's also a couple of other people who play special roles in the GDB
56 community, separately from the patch process:
58 - The GDB Steering Committee.
60 These are the official (FSF-appointed) maintainers of GDB. They have
61 final and overriding authority for all GDB-related decisions, including
62 anything described in this file. The committee is not generally
63 involved in day-to-day development (although its members may be, as
66 - The Release Manager.
68 This developer is in charge of making new releases of GDB.
70 - The Patch Champions.
72 These volunteers make sure that no contribution is overlooked or
75 Most changes to the list of maintainers in this file are handled by
76 consensus among the global maintainers and any other involved parties.
77 In cases where consensus can not be reached, the global maintainers may
78 ask the Steering Committee for a final decision.
84 All maintainers listed in this file, including the Write After Approval
85 developers, are allowed to check in obvious fixes.
87 An "obvious fix" means that there is no possibility that anyone will
88 disagree with the change.
90 A good mental test is "will the person who hates my work the most be
91 able to find fault with the change" - if so, then it's not obvious and
92 needs to be posted first. :-)
94 Something like changing or bypassing an interface is _not_ an obvious
95 fix, since such a change without discussion will result in
96 instantaneous and loud complaints.
98 For documentation changes, about the only kind of fix that is obvious
99 is correction of a typo or bad English usage.
102 GDB Steering Committee
103 ----------------------
105 The members of the GDB Steering Committee are the FSF-appointed
106 maintainers of the GDB project.
108 The Steering Committee has final authority for all GDB-related topics;
109 they may make whatever changes that they deem necessary, or that the FSF
110 requests. However, they are generally not involved in day-to-day
113 The current members of the steering committee are listed below, in
114 alphabetical order. Their affiliations are provided for reference only -
115 their membership on the Steering Committee is individual and not through
116 their affiliation, and they act on behalf of the GNU project.
119 Andrew Cagney (Red Hat)
120 Robert Dewar (AdaCore, NYU)
122 Paul Hilfinger (UC Berkeley)
123 Dan Jacobowitz (CodeSourcery)
124 Stan Shebs (CodeSourcery)
125 Richard Stallman (FSF)
126 Ian Lance Taylor (C2)
133 The global maintainers may review and commit any change to GDB, except in
134 areas with a Responsible Maintainer available. For major changes, or
135 changes to areas with other active developers, global maintainers are
136 strongly encouraged to post their own patches for feedback before
139 The global maintainers are responsible for reviewing patches to any area
140 for which no Responsible Maintainer is listed.
142 Global maintainers also have the authority to revert patches which should
143 not have been applied, e.g. patches which were not approved, controversial
144 patches committed under the Obvious Fix Rule, patches with important bugs
145 that can't be immediately fixed, or patches which go against an accepted and
146 documented roadmap for GDB development. Any global maintainer may request
147 the reversion of a patch. If no global maintainer, or responsible
148 maintainer in the affected areas, supports the patch (except for the
149 maintainer who originally committed it), then after 48 hours the maintainer
150 who called for the reversion may revert the patch.
152 No one may reapply a reverted patch without the agreement of the maintainer
153 who reverted it, or bringing the issue to the GDB Steering Committee for
156 At the moment there are no documented roadmaps for GDB development; in the
157 future, if there are, a reference to the list will be included here.
159 The current global maintainers are (in alphabetical order):
180 His responsibilities are:
182 * organizing, scheduling, and managing releases of GDB.
184 * deciding the approval and commit policies for release branches,
185 and can change them as needed.
192 These volunteers track all patches submitted to the gdb-patches list. They
193 endeavor to prevent any posted patch from being overlooked; work with
194 contributors to meet GDB's coding style and general requirements, along with
195 FSF copyright assignments; remind (ping) responsible maintainers to review
196 patches; and ensure that contributors are given credit.
198 Current patch champions (in alphabetical order):
204 Responsible Maintainers
205 -----------------------
207 These developers have agreed to review patches in specific areas of GDB, in
208 which they have knowledge and experience. These areas are generally broad;
209 the role of a responsible maintainer is to provide coherent and cohesive
210 structure within their area of GDB, to assure that patches from many
211 different contributors all work together for the best results.
213 Global maintainers will defer to responsible maintainers within their areas,
214 as long as the responsible maintainer is active. Active means that
215 responsible maintainers agree to review submitted patches in their area
216 promptly; patches and followups should generally be answered within a week.
217 If a responsible maintainer is interested in reviewing a patch but will not
218 have time within a week of posting, the maintainer should send an
219 acknowledgement of the patch to the gdb-patches mailing list, and
220 plan to follow up with a review within a month. These deadlines are for
221 initial responses to a patch - if the maintainer has suggestions
222 or questions, it may take an extended discussion before the patch
223 is ready to commit. There are no written requirements for discussion,
224 but maintainers are asked to be responsive.
226 If a responsible maintainer misses these deadlines occasionally (e.g.
227 vacation or unexpected workload), it's not a disaster - any global
228 maintainer may step in to review the patch. But sometimes life intervenes
229 more permanently, and a maintainer may no longer have time for these duties.
230 When this happens, he or she should step down (either into the Authorized
231 Committers section if still interested in the area, or simply removed from
232 the list of Responsible Maintainers if not).
234 If a responsible maintainer is unresponsive for an extended period of time
235 without stepping down, please contact the Global Maintainers; they will try
236 to contact the maintainer directly and fix the problem - potentially by
237 removing that maintainer from their listed position.
239 If there are several maintainers for a given domain then any one of them
240 may review a submitted patch.
242 Target Instruction Set Architectures:
244 The *-tdep.c files. ISA (Instruction Set Architecture) and OS-ABI
245 (Operating System / Application Binary Interface) issues including CPU
248 The Target/Architecture maintainer works with the host maintainer when
249 resolving build issues. The Target/Architecture maintainer works with
250 the native maintainer when resolving ABI issues.
252 alpha --target=alpha-elf ,-Werror
254 arm --target=arm-elf ,-Werror
257 avr --target=avr ,-Werror
259 cris --target=cris-elf ,-Werror ,
260 (sim does not build with -Werror)
262 frv --target=frv-elf ,-Werror
264 h8300 --target=h8300-elf ,-Werror
266 i386 --target=i386-elf ,-Werror
269 ia64 --target=ia64-linux-gnu ,-Werror
270 (--target=ia64-elf broken)
272 m32c --target=m32c-elf ,-Werror
275 m32r --target=m32r-elf ,-Werror
277 m68hc11 --target=m68hc11-elf ,-Werror ,
280 m68k --target=m68k-elf ,-Werror
282 m88k --target=m88k-openbsd ,-Werror
287 mep --target=mep-elf ,-Werror
290 mips --target=mips-elf ,-Werror
292 mn10300 --target=mn10300-elf broken
293 (sim/ dies with make -j)
296 ms1 --target=ms1-elf ,-Werror
301 pa --target=hppa-elf ,-Werror
303 powerpc --target=powerpc-eabi ,-Werror
305 s390 --target=s390-linux-gnu ,-Werror
307 score --target=score-elf
310 sh --target=sh-elf ,-Werror
311 --target=sh64-elf ,-Werror
313 sparc --target=sparc64-solaris2.10 ,-Werror
314 (--target=sparc-elf broken)
316 spu --target=spu-elf ,-Werror
319 v850 --target=v850-elf ,-Werror
321 vax --target=vax-netbsd ,-Werror
323 x86-64 --target=x86_64-linux-gnu ,-Werror
325 xstormy16 --target=xstormy16-elf
328 xtensa --target=xtensa-elf
331 All developers recognized by this file can make arbitrary changes to
334 The Bourne shell script gdb_mbuild.sh can be used to rebuild all the
340 The Native maintainer is responsible for target specific native
341 support - typically shared libraries and quirks to procfs/ptrace/...
342 The Native maintainer works with the Arch and Core maintainers when
343 resolving more generic problems.
345 The host maintainer ensures that gdb can be built as a cross debugger on
352 MS Windows (NT, '00, 9x, Me, XP) host & native
354 GNU/Linux/x86 native & host
356 GNU/Linux MIPS native & host
363 Core: Generic components used by all of GDB
384 UI: External (user) interfaces.
395 Makefile.in, configure* ALL
397 mmalloc/ ALL Host maintainers
399 sim/ See sim/MAINTAINERS
401 readline/ Master version: ftp://ftp.cwru.edu/pub/bash/
403 Host maintainers (host dependant parts)
404 (but get your changes into the master version)
409 Authorized Committers
410 ---------------------
412 These are developers working on particular areas of GDB, who are trusted to
413 commit their own (or other developers') patches in those areas without
414 further review from a Global Maintainer or Responsible Maintainer. They are
415 under no obligation to review posted patches - but, of course, are invited
428 [Please use this address to contact DJ about DJGPP]
450 To get recommended for the Write After Approval list you need a valid
451 FSF assignment and have submitted one good patch.
606 Whenever removing yourself, or someone else, from this file, consider
607 listing their areas of development here for posterity.
609 Jimmy Guo (gdb.hp, tui) guo at cup dot hp dot com
610 Jeff Law (hppa) law at cygnus dot com
611 Daniel Berlin (C++ support) dan at cgsoftware dot com
612 Nick Duffek (powerpc, SCO, Sol/x86) nick at duffek dot com
613 David Taylor (d10v, sparc, utils, defs,
614 expression evaluator, language support) taylor at candd dot org
615 J.T. Conklin (dcache, NetBSD, remote, global) jtc at acorntoolworks dot com
616 Frank Ch. Eigler (sim) fche at redhat dot com
617 Per Bothner (Java) per at bothner dot com
618 Anthony Green (Java) green at redhat dot com
619 Fernando Nasser (testsuite/, mi, cli, KOD) fnasser at redhat dot com
620 Mark Salter (testsuite/lib+config) msalter at redhat dot com
621 Jim Kingdon (web pages) kingdon at panix dot com
622 Jim Ingham (gdbtk, libgui) jingham at apple dot com
623 Mark Kettenis (hurd native) kettenis at gnu dot org
624 Ian Roxborough (in-tree tcl, tk, itcl) irox at redhat dot com
625 Robert Lipe (SCO/Unixware) rjl at sco dot com
626 Peter Schauer (global, AIX, xcoffsolib,
627 Solaris/x86) Peter.Schauer at mytum dot de
628 Scott Bambrough (ARM) scottb at netwinder dot org
629 Philippe De Muyter (coff) phdm at macqel dot be
630 Michael Chastain (testsuite) mec.gnu at mindspring dot com
635 Folks that have been caught up in a paper trail: