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.
99 GDB Steering Committee
100 ----------------------
102 The members of the GDB Steering Committee are the FSF-appointed
103 maintainers of the GDB project.
105 The Steering Committee has final authority for all GDB-related topics;
106 they may make whatever changes that they deem necessary, or that the FSF
107 requests. However, they are generally not involved in day-to-day
110 The current members of the steering committee are listed below, in
111 alphabetical order. Their affiliations are provided for reference only -
112 their membership on the Steering Committee is individual and not through
113 their affiliation, and they act on behalf of the GNU project.
115 Jim Blandy (CodeSourcery)
116 Andrew Cagney (Red Hat)
117 Robert Dewar (AdaCore, NYU)
119 Paul Hilfinger (UC Berkeley)
120 Dan Jacobowitz (CodeSourcery)
122 Richard Stallman (FSF)
123 Ian Lance Taylor (C2)
130 The global maintainers may review and commit any change to GDB, except in
131 areas with a Responsible Maintainer available. For major changes, or
132 changes to areas with other active developers, global maintainers are
133 strongly encouraged to post their own patches for feedback before
136 The global maintainers are responsible for reviewing patches to any area
137 for which no Responsible Maintainer is listed.
139 Global maintainers also have the authority to revert patches which should
140 not have been applied, e.g. patches which were not approved, controversial
141 patches committed under the Obvious Fix Rule, patches with important bugs
142 that can't be immediately fixed, or patches which go against an accepted and
143 documented roadmap for GDB development. Any global maintainer may request
144 the reversion of a patch. If no global maintainer, or responsible
145 maintainer in the affected areas, supports the patch (except for the
146 maintainer who originally committed it), then after 48 hours the maintainer
147 who called for the reversion may revert the patch.
149 No one may reapply a reverted patch without the agreement of the maintainer
150 who reverted it, or bringing the issue to the GDB Steering Committee for
153 At the moment there are no documented roadmaps for GDB development; in the
154 future, if there are, a reference to the list will be included here.
156 The current global maintainers are (in alphabetical order):
175 His responsibilities are:
177 * organizing, scheduling, and managing releases of GDB.
179 * deciding the approval and commit policies for release branches,
180 and can change them as needed.
187 These volunteers track all patches submitted to the gdb-patches list. They
188 endeavor to prevent any posted patch from being overlooked; work with
189 contributors to meet GDB's coding style and general requirements, along with
190 FSF copyright assignments; remind (ping) responsible maintainers to review
191 patches; and ensure that contributors are given credit.
193 Current patch champions (in alphabetical order):
200 Responsible Maintainers
201 -----------------------
203 These developers have agreed to review patches in specific areas of GDB, in
204 which they have knowledge and experience. These areas are generally broad;
205 the role of a responsible maintainer is to provide coherent and cohesive
206 structure within their area of GDB, to assure that patches from many
207 different contributors all work together for the best results.
209 Global maintainers will defer to responsible maintainers within their areas,
210 as long as the responsible maintainer is active. Active means that
211 responsible maintainers agree to review submitted patches in their area
212 promptly; patches and followups should generally be answered within a week.
213 If a responsible maintainer is interested in reviewing a patch but will not
214 have time within a week of posting, the maintainer should send an
215 acknowledgement of the patch to the gdb-patches mailing list, and
216 plan to follow up with a review within a month. These deadlines are for
217 initial responses to a patch - if the maintainer has suggestions
218 or questions, it may take an extended discussion before the patch
219 is ready to commit. There are no written requirements for discussion,
220 but maintainers are asked to be responsive.
222 If a responsible maintainer misses these deadlines occasionally (e.g.
223 vacation or unexpected workload), it's not a disaster - any global
224 maintainer may step in to review the patch. But sometimes life intervenes
225 more permanently, and a maintainer may no longer have time for these duties.
226 When this happens, he or she should step down (either into the Authorized
227 Committers section if still interested in the area, or simply removed from
228 the list of Responsible Maintainers if not).
230 If a responsible maintainer is unresponsive for an extended period of time
231 without stepping down, please contact the Global Maintainers; they will try
232 to contact the maintainer directly and fix the problem - potentially by
233 removing that maintainer from their listed position.
235 If there are several maintainers for a given domain then any one of them
236 may review a submitted patch.
238 Target Instruction Set Architectures:
240 The *-tdep.c files. ISA (Instruction Set Architecture) and OS-ABI
241 (Operating System / Application Binary Interface) issues including CPU
244 The Target/Architecture maintainer works with the host maintainer when
245 resolving build issues. The Target/Architecture maintainer works with
246 the native maintainer when resolving ABI issues.
248 alpha --target=alpha-elf ,-Werror
250 arm --target=arm-elf ,-Werror
253 avr --target=avr ,-Werror
255 cris --target=cris-elf ,-Werror
259 frv --target=frv-elf ,-Werror
261 h8300 --target=h8300-elf ,-Werror
263 i386 --target=i386-elf ,-Werror
266 ia64 --target=ia64-linux-gnu ,-Werror
267 (--target=ia64-elf broken)
269 m32c --target=m32c-elf ,-Werror
272 m32r --target=m32r-elf ,-Werror
274 m68hc11 --target=m68hc11-elf ,-Werror ,
277 m68k --target=m68k-elf ,-Werror
279 m88k --target=m88k-openbsd ,-Werror
284 mips --target=mips-elf ,-Werror
286 mn10300 --target=mn10300-elf broken
287 (sim/ dies with make -j)
290 ms1 --target=ms1-elf ,-Werror
295 pa --target=hppa-elf ,-Werror
297 powerpc --target=powerpc-eabi ,-Werror
299 s390 --target=s390-linux-gnu ,-Werror
301 sh --target=sh-elf ,-Werror
302 --target=sh64-elf ,-Werror
304 sparc --target=sparc-elf ,-Werror
306 v850 --target=v850-elf ,-Werror
308 vax --target=vax-netbsd ,-Werror
310 x86-64 --target=x86_64-linux-gnu ,-Werror
312 xstormy16 --target=xstormy16-elf
315 All developers recognized by this file can make arbitrary changes to
318 The Bourne shell script gdb_mbuild.sh can be used to rebuild all the
324 The Native maintainer is responsible for target specific native
325 support - typically shared libraries and quirks to procfs/ptrace/...
326 The Native maintainer works with the Arch and Core maintainers when
327 resolving more generic problems.
329 The host maintainer ensures that gdb can be built as a cross debugger on
336 MS Windows (NT, '00, 9x, Me, XP) host & native
338 GNU/Linux/x86 native & host
340 GNU/Linux MIPS native & host
347 Core: Generic components used by all of GDB
365 UI: External (user) interfaces.
376 Makefile.in, configure* ALL
378 mmalloc/ ALL Host maintainers
380 sim/ See sim/MAINTAINERS
382 readline/ Master version: ftp://ftp.cwru.edu/pub/bash/
384 Host maintainers (host dependant parts)
385 (but get your changes into the master version)
390 Authorized Committers
391 ---------------------
393 These are developers working on particular areas of GDB, who are trusted to
394 commit their own (or other developers') patches in those areas without
395 further review from a Global Maintainer or Responsible Maintainer. They are
396 under no obligation to review posted patches - but, of course, are invited
409 [Please use this address to contact DJ about DJGPP]
431 To get recommended for the Write After Approval list you need a valid
432 FSF assignment and have submitted one good patch.
559 Whenever removing yourself, or someone else, from this file, consider
560 listing their areas of development here for posterity.
562 Jimmy Guo (gdb.hp, tui) guo at cup dot hp dot com
563 Jeff Law (hppa) law at cygnus dot com
564 Daniel Berlin (C++ support) dan at cgsoftware dot com
565 Nick Duffek (powerpc, SCO, Sol/x86) nick at duffek dot com
566 David Taylor (d10v, sparc, utils, defs,
567 expression evaluator, language support) taylor at candd dot org
568 J.T. Conklin (dcache, NetBSD, remote, global) jtc at acorntoolworks dot com
569 Frank Ch. Eigler (sim) fche at redhat dot com
570 Per Bothner (Java) per at bothner dot com
571 Anthony Green (Java) green at redhat dot com
572 Fernando Nasser (testsuite/, mi, cli, KOD) fnasser at redhat dot com
573 Mark Salter (testsuite/lib+config) msalter at redhat dot com
574 Jim Kingdon (web pages) kingdon at panix dot com
575 Jim Ingham (gdbtk, libgui) jingham at apple dot com
576 Mark Kettenis (hurd native) kettenis at gnu dot org
577 Ian Roxborough (in-tree tcl, tk, itcl) irox at redhat dot com
578 Robert Lipe (SCO/Unixware) rjl at sco dot com
579 Peter Schauer (global, AIX, xcoffsolib,
580 Solaris/x86) Peter.Schauer at mytum dot de
581 Scott Bambrough (ARM) scottb at netwinder dot org
582 Philippe De Muyter (coff) phdm at macqel dot be
583 Michael Chastain (testsuite) mec.gnu at mindspring dot com
587 Folks that have been caught up in a paper trail: