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):
182 His responsibilities are:
184 * organizing, scheduling, and managing releases of GDB.
186 * deciding the approval and commit policies for release branches,
187 and can change them as needed.
194 These volunteers track all patches submitted to the gdb-patches list. They
195 endeavor to prevent any posted patch from being overlooked; work with
196 contributors to meet GDB's coding style and general requirements, along with
197 FSF copyright assignments; remind (ping) responsible maintainers to review
198 patches; and ensure that contributors are given credit.
200 Current patch champions (in alphabetical order):
206 Responsible Maintainers
207 -----------------------
209 These developers have agreed to review patches in specific areas of GDB, in
210 which they have knowledge and experience. These areas are generally broad;
211 the role of a responsible maintainer is to provide coherent and cohesive
212 structure within their area of GDB, to assure that patches from many
213 different contributors all work together for the best results.
215 Global maintainers will defer to responsible maintainers within their areas,
216 as long as the responsible maintainer is active. Active means that
217 responsible maintainers agree to review submitted patches in their area
218 promptly; patches and followups should generally be answered within a week.
219 If a responsible maintainer is interested in reviewing a patch but will not
220 have time within a week of posting, the maintainer should send an
221 acknowledgement of the patch to the gdb-patches mailing list, and
222 plan to follow up with a review within a month. These deadlines are for
223 initial responses to a patch - if the maintainer has suggestions
224 or questions, it may take an extended discussion before the patch
225 is ready to commit. There are no written requirements for discussion,
226 but maintainers are asked to be responsive.
228 If a responsible maintainer misses these deadlines occasionally (e.g.
229 vacation or unexpected workload), it's not a disaster - any global
230 maintainer may step in to review the patch. But sometimes life intervenes
231 more permanently, and a maintainer may no longer have time for these duties.
232 When this happens, he or she should step down (either into the Authorized
233 Committers section if still interested in the area, or simply removed from
234 the list of Responsible Maintainers if not).
236 If a responsible maintainer is unresponsive for an extended period of time
237 without stepping down, please contact the Global Maintainers; they will try
238 to contact the maintainer directly and fix the problem - potentially by
239 removing that maintainer from their listed position.
241 If there are several maintainers for a given domain then any one of them
242 may review a submitted patch.
244 Target Instruction Set Architectures:
246 The *-tdep.c files. ISA (Instruction Set Architecture) and OS-ABI
247 (Operating System / Application Binary Interface) issues including CPU
250 The Target/Architecture maintainer works with the host maintainer when
251 resolving build issues. The Target/Architecture maintainer works with
252 the native maintainer when resolving ABI issues.
254 alpha --target=alpha-elf ,-Werror
256 arm --target=arm-elf ,-Werror
259 avr --target=avr ,-Werror
262 cris --target=cris-elf ,-Werror ,
263 (sim does not build with -Werror)
265 frv --target=frv-elf ,-Werror
267 h8300 --target=h8300-elf ,-Werror
269 i386 --target=i386-elf ,-Werror
272 ia64 --target=ia64-linux-gnu ,-Werror
273 (--target=ia64-elf broken)
276 lm32 --target=lm32-elf ,-Werror
278 m32c --target=m32c-elf ,-Werror
280 m32r --target=m32r-elf ,-Werror
282 m68hc11 --target=m68hc11-elf ,-Werror ,
285 m68k --target=m68k-elf ,-Werror
287 m88k --target=m88k-openbsd ,-Werror
292 mep --target=mep-elf ,-Werror
295 microblaze --target=microblaze-xilinx-elf ,-Werror
296 --target=microblaze-linux-gnu ,-Werror
299 mips --target=mips-elf ,-Werror
301 mn10300 --target=mn10300-elf broken
302 (sim/ dies with make -j)
305 moxie --target=moxie-elf ,-Werror
308 ms1 --target=ms1-elf ,-Werror
313 pa --target=hppa-elf ,-Werror
315 powerpc --target=powerpc-eabi ,-Werror
317 s390 --target=s390-linux-gnu ,-Werror
319 score --target=score-elf
322 sh --target=sh-elf ,-Werror
323 --target=sh64-elf ,-Werror
325 sparc --target=sparc64-solaris2.10 ,-Werror
326 (--target=sparc-elf broken)
328 spu --target=spu-elf ,-Werror
331 v850 --target=v850-elf ,-Werror
333 vax --target=vax-netbsd ,-Werror
335 x86-64 --target=x86_64-linux-gnu ,-Werror
337 xstormy16 --target=xstormy16-elf
340 xtensa --target=xtensa-elf
343 All developers recognized by this file can make arbitrary changes to
346 The Bourne shell script gdb_mbuild.sh can be used to rebuild all the
352 The Native maintainer is responsible for target specific native
353 support - typically shared libraries and quirks to procfs/ptrace/...
354 The Native maintainer works with the Arch and Core maintainers when
355 resolving more generic problems.
357 The host maintainer ensures that gdb can be built as a cross debugger on
364 MS Windows (NT, '00, 9x, Me, XP) host & native
366 GNU/Linux/x86 native & host
368 GNU/Linux MIPS native & host
375 Core: Generic components used by all of GDB
396 UI: External (user) interfaces.
407 Makefile.in, configure* ALL
409 mmalloc/ ALL Host maintainers
411 sim/ See sim/MAINTAINERS
413 readline/ Master version: ftp://ftp.cwru.edu/pub/bash/
415 Host maintainers (host dependant parts)
416 (but get your changes into the master version)
421 Authorized Committers
422 ---------------------
424 These are developers working on particular areas of GDB, who are trusted to
425 commit their own (or other developers') patches in those areas without
426 further review from a Global Maintainer or Responsible Maintainer. They are
427 under no obligation to review posted patches - but, of course, are invited
440 [Please use this address to contact DJ about DJGPP]
462 To get recommended for the Write After Approval list you need a valid
463 FSF assignment and have submitted one good patch.
629 Whenever removing yourself, or someone else, from this file, consider
630 listing their areas of development here for posterity.
632 Jimmy Guo (gdb.hp, tui) guo at cup dot hp dot com
633 Jeff Law (hppa) law at cygnus dot com
634 Daniel Berlin (C++ support) dan at cgsoftware dot com
635 Nick Duffek (powerpc, SCO, Sol/x86) nick at duffek dot com
636 David Taylor (d10v, sparc, utils, defs,
637 expression evaluator, language support) taylor at candd dot org
638 J.T. Conklin (dcache, NetBSD, remote, global) jtc at acorntoolworks dot com
639 Frank Ch. Eigler (sim) fche at redhat dot com
640 Per Bothner (Java) per at bothner dot com
641 Anthony Green (Java) green at redhat dot com
642 Fernando Nasser (testsuite/, mi, cli, KOD) fnasser at redhat dot com
643 Mark Salter (testsuite/lib+config) msalter at redhat dot com
644 Jim Kingdon (web pages) kingdon at panix dot com
645 Jim Ingham (gdbtk, libgui) jingham at apple dot com
646 Mark Kettenis (hurd native) kettenis at gnu dot org
647 Ian Roxborough (in-tree tcl, tk, itcl) irox at redhat dot com
648 Robert Lipe (SCO/Unixware) rjl at sco dot com
649 Peter Schauer (global, AIX, xcoffsolib,
650 Solaris/x86) Peter.Schauer at mytum dot de
651 Scott Bambrough (ARM) scottb at netwinder dot org
652 Philippe De Muyter (coff) phdm at macqel dot be
653 Michael Chastain (testsuite) mec.gnu at mindspring dot com
658 Folks that have been caught up in a paper trail: