PR binutils/14302
[external/binutils.git] / binutils / MAINTAINERS
1                 ========= Binutils Maintainers =========
2
3 This is the list of individuals responsible for maintenance and update
4 of the GNU Binary Utilities project.  This includes the linker (ld),
5 the assembler (gas), the profiler (gprof), a whole suite of other
6 programs (binutils) and the libraries that they use (bfd and
7 opcodes).  This project shares a common set of header files with the
8 GCC and GDB projects (include), so maintainership of those files is
9 shared amoungst the projects.
10
11 The home page for binutils is:
12
13   http://www.gnu.org/software/binutils/binutils.html
14
15 and patches should be sent to:
16
17   binutils@sourceware.org
18
19 with "[Patch]" as part of the subject line.  Note - patches to the
20 top level config.guess and config.sub scripts should be sent to:
21
22   config-patches@gnu.org
23
24 and not to the binutils lists.  Patches to the other top level
25 configure files (configure, configure.in, config-ml.in) should
26 be sent to the binutils lists, and copied to the gcc and gdb
27 lists as well (gcc-patches@gcc.gnu.org and
28 gdb-patches@sourceware.org).
29
30                 --------- Blanket Write Privs ---------
31
32 The following people have permission to check patches into the
33 repository without obtaining approval first:
34
35   Nick Clifton <nickc@redhat.com> (head maintainer)
36   Richard Henderson <rth@redhat.com>
37   Ian Lance Taylor <ian@airs.com>
38   Jeff Law <law@redhat.com>
39   Jim Wilson <wilson@tuliptree.org>
40   DJ Delorie <dj@redhat.com>
41   Alan Modra <amodra@gmail.com>
42   Michael Meissner <gnu@the-meissners.org>
43   Daniel Jacobowitz <drow@false.org>
44   Richard Sandiford <rdsandiford@googlemail.com>
45
46       --------- Maintainers ---------
47
48 Maintainers are individuals who are responsible for, and have
49 permission to check in changes in, certain subsets of the code.  Note
50 that maintainers still need approval to check in changes outside of
51 the immediate domain that they maintain.
52
53 If there is no maintainer for a given domain then the responsibility
54 falls to the head maintainer (above).  If there are several
55 maintainers for a given domain then responsibility falls to the first
56 maintainer.  The first maintainer is free to devolve that
57 responsibility among the other maintainers.
58
59   ALPHA            Richard Henderson <rth@redhat.com>
60   ARM              Nick Clifton <nickc@redhat.com>
61   ARM              Richard Earnshaw <rearnsha@arm.com>
62   ARM              Paul Brook <paul@codesourcery.com>
63   ARM (Symbian)    Mark Mitchell <mark@codesourcery.com>
64   AVR              Denis Chertykov <denisc@overta.ru>
65   AVR              Marek Michalkiewicz <marekm@amelek.gda.pl>
66   BFIN             Jie Zhang <jzhang918@gmail.com>
67   BFIN             Bernd Schmidt <bernd.schmidt@analog.com>
68   BFIN             Mike Frysinger <michael.frysinger@analog.com>
69   BUILD SYSTEM     Daniel Jacobowitz <drow@false.org>
70   CR16             M R Swami Reddy <MR.Swami.Reddy@nsc.com>
71   CRIS             Hans-Peter Nilsson <hp@axis.com>
72   CRX              M R Swami Reddy <MR.Swami.Reddy@nsc.com>
73   DLX              Nikolaos Kavvadias <nkavv@physics.auth.gr>
74   DWARF2           Jason Merrill <jason@redhat.com>
75   DWARF2           Jakub Jelinek <jakub@redhat.com>
76   EPIPHANY         Joern Rennecke <joern.rennecke@embecosm.com>
77   FR30             Dave Brolley <brolley@redhat.com>
78   FRV              Dave Brolley <brolley@redhat.com>
79   FRV              Alexandre Oliva <aoliva@redhat.com>
80   H8300            Prafulla Thakare <prafulla.thakare@kpitcummins.com>
81   HPPA             Dave Anglin <dave.anglin@nrc.ca>
82   HPPA elf32       Alan Modra <amodra@gmail.com>
83   HPPA elf64       Jeff Law <law@redhat.com> [Basic maintainance only]
84   IA-64            Jim Wilson <wilson@tuliptree.org>
85   IQ2000           Stan Cox <scox@redhat.com>
86   i860             Jason Eckhardt <jle@rice.edu>
87   ix86             H.J. Lu <hjl.tools@gmail.com>
88   ix86 PE          Christopher Faylor <me+binutils@cgf.cx>
89   ix86 COFF        DJ Delorie <dj@redhat.com>
90   ix86 PE/COFF     Dave Korn <dave.korn.cygwin@gmail.com>
91   ix86 INTEL MODE  Jan Beulich <jbeulich@novell.com>
92   LM32             Jon Beniston <jon@beniston.com>
93   M32R             Doug Evans <dje@sebabeach.org>
94   M68HC11 M68HC12  Stephane Carrez <stcarrez@nerim.fr>
95   M88k             Mark Kettenis <kettenis@gnu.org>
96   MACH-O           Tristan Gingold <gingold@adacore.com>
97   MAXQ             Inderpreet Singh <inderpreetb@noida.hcltech.com>
98   MEP              Dave Brolley <brolley@redhat.com>
99   MICROBLAZE       Michael Eager <eager@eagercon.com>
100   MIPS             Eric Christopher <echristo@apple.com>
101   MMIX             Hans-Peter Nilsson <hp@bitrange.com>
102   MN10300          Eric Christopher <echristo@apple.com>
103   MN10300          Alexandre Oliva <aoliva@redhat.com>
104   Moxie            Anthony Green <green@moxielogic.com>
105   MSP430           Dmitry Diky <diwil@spec.ru>
106   NetBSD support   Matt Thomas <matt@netbsd.org>
107   PPC              Geoff Keating <geoffk@geoffk.org>
108   PPC              Alan Modra <amodra@gmail.com>
109   PPC vector ext   Aldy Hernandez <aldyh@redhat.com>
110   RL78             DJ Delorie <dj@redhat.com>
111   RX               DJ Delorie <dj@redhat.com>
112   RX               Nick Clifton <nickc@redhat.com>
113   s390, s390x      Martin Schwidefsky <schwidefsky@de.ibm.com>
114   SCORE            Mei Ligang <ligang@sunnorth.com.cn>
115   SH               Alexandre Oliva <aoliva@redhat.com>
116   SH               Kaz Kojima <kkojima@rr.iij4u.or.jp>
117   SPARC            David S. Miller <davem@davemloft.net>
118   SPU              Alan Modra <amodra@gmail.com>
119   TIC4X            Svein Seldal <svein@dev.seldal.com>
120   TIC54X           Timothy Wall <twall@alum.mit.edu>
121   TIC6X            Joseph Myers <joseph@codesourcery.com>
122   TILE-Gx          Walter Lee <walt@tilera.com>
123   TILEPro          Walter Lee <walt@tilera.com>
124   VAX              Matt Thomas <matt@netbsd.org>
125   VAX              Jan-Benedict Glaw <jbglaw@lug-owl.de>
126   VMS              Tristan Gingold <gingold@adacore.com>
127   x86_64           Jan Hubicka <jh@suse.cz>
128   x86_64           Andreas Jaeger <aj@suse.de>
129   x86_64           H.J. Lu <hjl.tools@gmail.com>
130   XCOFF            Richard Sandiford <r.sandiford@uk.ibm.com>
131   XGATE            Sean Keys <skeys@ipdatasys.com>
132   Xtensa           Sterling Augustine <augustine.sterling@gmail.com> 
133   z80              Arnold Metselaar <arnold.metselaar@planet.nl>
134   z8k              Christian Groessler <chris@groessler.org>
135
136
137       --------- CGEN Maintainers -------------
138
139 CGEN is a tool for building, amongst other things, assemblers,
140 disassemblers and simulators from a single description of a CPU.
141 It creates files in several of the binutils directories, but it
142 is mentioned here since there is a single group that maintains
143 CGEN and the files that it creates.
144
145 If you have CGEN related problems you can send email to;
146
147    cgen@sourceware.org
148
149 The current CGEN maintainers are:
150
151   Doug Evans, Frank Eigler
152
153      --------- Write After Approval ---------
154
155 Individuals with "write after approval" have the ability to check in
156 changes, but they must get approval for each change from someone in
157 one of the above lists (blanket write or maintainers).
158
159 [It's a huge list, folks.  You know who you are.  If you have the
160  *ability* to do binutils checkins, you're in this group.  Just
161  remember to get approval before checking anything in.]
162
163      -------------  Obvious Fixes -------------
164
165 Fixes for obvious mistakes do not need approval, and can be checked in
166 right away, but the patch should still be sent to the binutils list.
167 The definition of obvious is a bit hazy, and if you are not sure, then
168 you should seek approval first.  Obvious fixes include fixes for
169 spelling mistakes, blatantly incorrect code (where the correct code is
170 also blatantly obvious), and so on.  Obvious fixes should always be
171 small, the larger they are, the more likely it is that they contain
172 some un-obvious side effect or consequence.
173
174     --------- Branch Checkins ---------
175
176 If a patch is approved for check in to the mainline sources, it can
177 also be checked into the current release branch.  Normally however
178 only bug fixes should be applied to the branch.  New features, new
179 ports, etc, should be restricted to the mainline.  (Otherwise the
180 burden of maintaining the branch in sync with the mainline becomes too
181 great).  If you are uncertain as to whether a patch is appropriate for
182 the branch, ask the branch maintainer.  This is:
183
184    Tristan Gingold  <gingold@adacore.com>
185
186     -------- Testsuites ---------------
187
188 In general patches to any of the binutils testsuites should be
189 considered generic and sent to the binutils mailing list for
190 approval.  Patches to target specific tests are the responsibility the
191 relevent port maintainer(s), and can be approved/checked in by them.
192 Other testsuite patches need the approval of a blanket-write-priveleges
193 person.
194
195     -------- Configure patches ----------
196
197 Patches to the top level configure files (config.sub & config.guess)
198 are not the domain of the binutils project and they cannot be approved
199 by the binutils group.  Instead they should be submitted to the config
200 maintainer at:
201
202         config-patches@gnu.org
203
204     --------- Creating Branches ---------
205
206 Anyone with at least write-after-approval access may create a branch
207 to use for their own development purposes.  In keeping with FSF
208 policies, all patches applied to such a branch must come from people
209 with appropriate copyright assignments on file.  All legal
210 requirements that would apply to any other contribution apply equally
211 to contributions on a branch.
212
213 Before creating the branch, you should select a name for the branch of
214 the form:
215
216   binutils-<org>-<name>
217
218 where "org" is the initials of your organization, or your own initials
219 if you are acting as an individual.  For example, for a branch created
220 by The GNUDist Company, "tgc" would be an appropriate choice for
221 "org".  It's up to each organization to select an appropriate choice
222 for "name"; some organizations may use more structure than others, so
223 "name" may contain additional hyphens.
224
225 Suppose that The GNUDist Company was creating a branch to develop a
226 port of Binutils to the FullMonty processor.  Then, an appropriate
227 choice of branch name would be:
228
229   binutils-tgc-fm
230
231 A date stamp is not required as part of the name field, but some
232 organizations like to have one.  If you do include the date, you
233 should follow these rules:
234
235 1. The date should be the date that the branch was created.
236
237 2. The date should be numerical and in the form YYYYMMDD.
238
239 For example:
240
241   binutils-tgc-fm_20050101
242
243 would be appropriate if the branch was created on January 1st, 2005.
244
245 Having selected the branch name, create the branch as follows:
246
247 1. Check out binutils, so that you have a CVS checkout corresponding
248    to the initial state of your branch.
249
250 2. Create a tag:
251
252      cvs tag binutils-<org>-<name>-branchpoint
253
254    That tag will allow you, and others, to easily determine what's
255    changed on the branch relative to the initial state.
256
257 3. Create the branch:
258
259      cvs rtag -b -r binutils-<org>-<name>-branchpoint \
260        binutils-<org>-<name>-branch
261
262 4. Document the branch:
263
264      Add a description of the branch to binutils/BRANCHES, and check
265      that file in.  All branch descriptions should be added to the
266      HEAD revision of the file; it doesn't help to modify
267      binutils/BRANCHES on a branch!
268
269 Please do not commit any patches to a branch you did not create
270 without the explicit permission of the person who created the branch.