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.
118 Jim Blandy (CodeSourcery)
119 Andrew Cagney (Red Hat)
120 Robert Dewar (AdaCore, NYU)
122 Paul Hilfinger (UC Berkeley)
123 Dan Jacobowitz (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):
179 His responsibilities are:
181 * organizing, scheduling, and managing releases of GDB.
183 * deciding the approval and commit policies for release branches,
184 and can change them as needed.
191 These volunteers track all patches submitted to the gdb-patches list. They
192 endeavor to prevent any posted patch from being overlooked; work with
193 contributors to meet GDB's coding style and general requirements, along with
194 FSF copyright assignments; remind (ping) responsible maintainers to review
195 patches; and ensure that contributors are given credit.
197 Current patch champions (in alphabetical order):
203 Responsible Maintainers
204 -----------------------
206 These developers have agreed to review patches in specific areas of GDB, in
207 which they have knowledge and experience. These areas are generally broad;
208 the role of a responsible maintainer is to provide coherent and cohesive
209 structure within their area of GDB, to assure that patches from many
210 different contributors all work together for the best results.
212 Global maintainers will defer to responsible maintainers within their areas,
213 as long as the responsible maintainer is active. Active means that
214 responsible maintainers agree to review submitted patches in their area
215 promptly; patches and followups should generally be answered within a week.
216 If a responsible maintainer is interested in reviewing a patch but will not
217 have time within a week of posting, the maintainer should send an
218 acknowledgement of the patch to the gdb-patches mailing list, and
219 plan to follow up with a review within a month. These deadlines are for
220 initial responses to a patch - if the maintainer has suggestions
221 or questions, it may take an extended discussion before the patch
222 is ready to commit. There are no written requirements for discussion,
223 but maintainers are asked to be responsive.
225 If a responsible maintainer misses these deadlines occasionally (e.g.
226 vacation or unexpected workload), it's not a disaster - any global
227 maintainer may step in to review the patch. But sometimes life intervenes
228 more permanently, and a maintainer may no longer have time for these duties.
229 When this happens, he or she should step down (either into the Authorized
230 Committers section if still interested in the area, or simply removed from
231 the list of Responsible Maintainers if not).
233 If a responsible maintainer is unresponsive for an extended period of time
234 without stepping down, please contact the Global Maintainers; they will try
235 to contact the maintainer directly and fix the problem - potentially by
236 removing that maintainer from their listed position.
238 If there are several maintainers for a given domain then any one of them
239 may review a submitted patch.
241 Target Instruction Set Architectures:
243 The *-tdep.c files. ISA (Instruction Set Architecture) and OS-ABI
244 (Operating System / Application Binary Interface) issues including CPU
247 The Target/Architecture maintainer works with the host maintainer when
248 resolving build issues. The Target/Architecture maintainer works with
249 the native maintainer when resolving ABI issues.
251 alpha --target=alpha-elf ,-Werror
253 arm --target=arm-elf ,-Werror
256 avr --target=avr ,-Werror
258 cris --target=cris-elf ,-Werror ,
259 (sim does not build with -Werror)
261 frv --target=frv-elf ,-Werror
263 h8300 --target=h8300-elf ,-Werror
265 i386 --target=i386-elf ,-Werror
268 ia64 --target=ia64-linux-gnu ,-Werror
269 (--target=ia64-elf broken)
271 m32c --target=m32c-elf ,-Werror
274 m32r --target=m32r-elf ,-Werror
276 m68hc11 --target=m68hc11-elf ,-Werror ,
279 m68k --target=m68k-elf ,-Werror
281 m88k --target=m88k-openbsd ,-Werror
286 mep --target=mep-elf ,-Werror
289 mips --target=mips-elf ,-Werror
291 mn10300 --target=mn10300-elf broken
292 (sim/ dies with make -j)
295 ms1 --target=ms1-elf ,-Werror
300 pa --target=hppa-elf ,-Werror
302 powerpc --target=powerpc-eabi ,-Werror
304 s390 --target=s390-linux-gnu ,-Werror
306 score --target=score-elf
309 sh --target=sh-elf ,-Werror
310 --target=sh64-elf ,-Werror
312 sparc --target=sparc64-solaris2.10 ,-Werror
313 (--target=sparc-elf broken)
315 spu --target=spu-elf ,-Werror
318 v850 --target=v850-elf ,-Werror
320 vax --target=vax-netbsd ,-Werror
322 x86-64 --target=x86_64-linux-gnu ,-Werror
324 xstormy16 --target=xstormy16-elf
327 xtensa --target=xtensa-elf
330 All developers recognized by this file can make arbitrary changes to
333 The Bourne shell script gdb_mbuild.sh can be used to rebuild all the
339 The Native maintainer is responsible for target specific native
340 support - typically shared libraries and quirks to procfs/ptrace/...
341 The Native maintainer works with the Arch and Core maintainers when
342 resolving more generic problems.
344 The host maintainer ensures that gdb can be built as a cross debugger on
351 MS Windows (NT, '00, 9x, Me, XP) host & native
353 GNU/Linux/x86 native & host
355 GNU/Linux MIPS native & host
362 Core: Generic components used by all of GDB
382 UI: External (user) interfaces.
393 Makefile.in, configure* ALL
395 mmalloc/ ALL Host maintainers
397 sim/ See sim/MAINTAINERS
399 readline/ Master version: ftp://ftp.cwru.edu/pub/bash/
401 Host maintainers (host dependant parts)
402 (but get your changes into the master version)
407 Authorized Committers
408 ---------------------
410 These are developers working on particular areas of GDB, who are trusted to
411 commit their own (or other developers') patches in those areas without
412 further review from a Global Maintainer or Responsible Maintainer. They are
413 under no obligation to review posted patches - but, of course, are invited
426 [Please use this address to contact DJ about DJGPP]
448 To get recommended for the Write After Approval list you need a valid
449 FSF assignment and have submitted one good patch.
594 Whenever removing yourself, or someone else, from this file, consider
595 listing their areas of development here for posterity.
597 Jimmy Guo (gdb.hp, tui) guo at cup dot hp dot com
598 Jeff Law (hppa) law at cygnus dot com
599 Daniel Berlin (C++ support) dan at cgsoftware dot com
600 Nick Duffek (powerpc, SCO, Sol/x86) nick at duffek dot com
601 David Taylor (d10v, sparc, utils, defs,
602 expression evaluator, language support) taylor at candd dot org
603 J.T. Conklin (dcache, NetBSD, remote, global) jtc at acorntoolworks dot com
604 Frank Ch. Eigler (sim) fche at redhat dot com
605 Per Bothner (Java) per at bothner dot com
606 Anthony Green (Java) green at redhat dot com
607 Fernando Nasser (testsuite/, mi, cli, KOD) fnasser at redhat dot com
608 Mark Salter (testsuite/lib+config) msalter at redhat dot com
609 Jim Kingdon (web pages) kingdon at panix dot com
610 Jim Ingham (gdbtk, libgui) jingham at apple dot com
611 Mark Kettenis (hurd native) kettenis at gnu dot org
612 Ian Roxborough (in-tree tcl, tk, itcl) irox at redhat dot com
613 Robert Lipe (SCO/Unixware) rjl at sco dot com
614 Peter Schauer (global, AIX, xcoffsolib,
615 Solaris/x86) Peter.Schauer at mytum dot de
616 Scott Bambrough (ARM) scottb at netwinder dot org
617 Philippe De Muyter (coff) phdm at macqel dot be
618 Michael Chastain (testsuite) mec.gnu at mindspring dot com
623 Folks that have been caught up in a paper trail: