3b60ac745f892c99fd6894c66ba042af15bfb2bc
[binutils-gdb.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 amongst 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.ac, 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 Patches to the libiberty sources should be sent to
31 gcc-patches@gcc.gnu.org.
32
33 --------- Blanket Write Privs ---------
34
35 The following people have permission to check patches into the
36 repository without obtaining approval first:
37
38 Nick Clifton <nickc@redhat.com> (head maintainer)
39 Ian Lance Taylor <ian@airs.com>
40 Jeff Law <law@redhat.com>
41 Jim Wilson <wilson@tuliptree.org>
42 DJ Delorie <dj@redhat.com>
43 Alan Modra <amodra@gmail.com>
44 Michael Meissner <gnu@the-meissners.org>
45 Richard Sandiford <rdsandiford@googlemail.com>
46 Jan Beulich <jbeulich@suse.com>
47
48 GDB global maintainers also have permission to commit and approve
49 patches to the top level files and to those parts of bfd files
50 primarily used by GDB.
51
52 --------- Maintainers ---------
53
54 Maintainers are individuals who are responsible for, and have
55 permission to check in changes in, certain subsets of the code. Note
56 that maintainers still need approval to check in changes outside of
57 the immediate domain that they maintain.
58
59 If there is no maintainer for a given domain then the responsibility
60 falls to the head maintainer (above). If there are several
61 maintainers for a given domain then responsibility falls to the first
62 maintainer. The first maintainer is free to devolve that
63 responsibility among the other maintainers.
64
65 AARCH64 Richard Earnshaw <rearnsha@arm.com>
66 AARCH64 Marcus Shawcroft <marcus.shawcroft@arm.com>
67 ARC Claudiu Zissulescu <claziss@synopsys.com>
68 ARM Nick Clifton <nickc@redhat.com>
69 ARM Richard Earnshaw <rearnsha@arm.com>
70 ARM Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
71 AVR Denis Chertykov <chertykov@gmail.com>
72 AVR Marek Michalkiewicz <marekm@amelek.gda.pl>
73 BFIN Jie Zhang <jzhang918@gmail.com>
74 BFIN Mike Frysinger <vapier@gentoo.org>
75 BPF Jose E. Marchesi <jose.marchesi@oracle.com>
76 CR16 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
77 CRIS Hans-Peter Nilsson <hp@axis.com>
78 CRX M R Swami Reddy <MR.Swami.Reddy@nsc.com>
79 CTF Nick Alcock <nick.alcock@oracle.com>
80 C-SKY Lifang Xia <lifang_xia@c-sky.com>
81 C-SKY Yunhai Shang <yunhai_shang@c-sky.com>
82 DLX Nikolaos Kavvadias <nkavv@physics.auth.gr>
83 DWARF2 Jason Merrill <jason@redhat.com>
84 DWARF2 Jakub Jelinek <jakub@redhat.com>
85 dwarf-mode.el Tom Tromey <tom@tromey.com>
86 EPIPHANY Joern Rennecke <joern.rennecke@embecosm.com>
87 FR30 Nick Clifton <nickc@redhat.com>
88 FRV Nick Clifton <nickc@redhat.com>
89 FRV Alexandre Oliva <aoliva@sourceware.org>
90 GOLD Ian Lance Taylor <iant@google.com>
91 GOLD Cary Coutant <ccoutant@gmail.com>
92 gprofng Vladimir Mezentsev <vladimir.mezentsev@oracle.com>
93 H8300 Prafulla Thakare <prafulla.thakare@kpitcummins.com>
94 HPPA Dave Anglin <dave.anglin@bell.net>
95 HPPA elf32 Alan Modra <amodra@gmail.com>
96 HPPA elf64 Jeff Law <law@redhat.com> [Basic maintainance only]
97 IA-64 Jim Wilson <wilson@tuliptree.org>
98 IQ2000 Stan Cox <scox@redhat.com>
99 ix86 H.J. Lu <hjl.tools@gmail.com>
100 ix86 COFF DJ Delorie <dj@redhat.com>
101 ix86 PE/COFF Dave Korn <dave.korn.cygwin@gmail.com>
102 ix86 INTEL MODE Jan Beulich <jbeulich@suse.com>
103 LM32 Jon Beniston <jon@beniston.com>
104 LoongArch Chenghua Xu <xuchenghua@loongson.cn>
105 LoongArch Zhensong Liu <liuzhensong@loongson.cn>
106 M32R Doug Evans <dje@sebabeach.org>
107 M68HC11 M68HC12 Stephane Carrez <Stephane.Carrez@gmail.com>
108 M68HC11 M68HC12 Sean Keys <skeys@ipdatasys.com>
109 MACH-O Tristan Gingold <tgingold@free.fr>
110 MAXQ Inderpreet Singh <inderpreetb@noida.hcltech.com>
111 MEP Nick Clifton <nickc@redhat.com>
112 METAG Markos Chandras <markos.chandras@imgtec.com>
113 MICROBLAZE Michael Eager <eager@eagercon.com>
114 MIPS Chenghua Xu <paul.hua.gm@gmail.com>
115 MIPS I-IV Maciej W. Rozycki <macro@orcam.me.uk>
116 MMIX Hans-Peter Nilsson <hp@bitrange.com>
117 MN10300 Alexandre Oliva <aoliva@sourceware.org>
118 Moxie Anthony Green <green@moxielogic.com>
119 MSP430 Dmitry Diky <diwil@spec.ru>
120 NDS32 Kuan-Lin Chen <kuanlinchentw@gmail.com>
121 NDS32 Wei-Cheng Wang <cole945@gmail.com>
122 NetBSD support Matt Thomas <matt@netbsd.org>
123 Nios II Sandra Loosemore <sandra@codesourcery.com>
124 Nios II Andrew Jenner <andrew@codesourcery.com>
125 OR1K Christian Svensson <blue@cmd.nu>
126 OR1K Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
127 OR1K Stafford Horne <shorne@gmail.com>
128 PDP11 Stephen Casner <casner@acm.org>
129 PPC Geoff Keating <geoffk@geoffk.org>
130 PPC Alan Modra <amodra@gmail.com>
131 PPC Peter Bergner <bergner@vnet.ibm.com>
132 PPC vector ext Aldy Hernandez <aldyh@redhat.com>
133 RISC-V Palmer Dabbelt <palmer@dabbelt.com>
134 RISC-V Andrew Waterman <andrew@sifive.com>
135 RISC-V Jim Wilson <jim.wilson.gcc@gmail.com>
136 RISC-V Nelson Chu <nelson@rivosinc.com>
137 RX Nick Clifton <nickc@redhat.com>
138 S12Z John Darrington <john@darrington.wattle.id.au>
139 s390, s390x Andreas Krebbel <krebbel@linux.ibm.com>
140 SH Alexandre Oliva <aoliva@sourceware.org>
141 SPARC David S. Miller <davem@davemloft.net>
142 SPARC Jose E. Marchesi <jose.marchesi@oracle.com>
143 SPU Alan Modra <amodra@gmail.com>
144 TIC54X Timothy Wall <twall@alum.mit.edu>
145 TIC6X Joseph Myers <joseph@codesourcery.com>
146 TILE-Gx Walter Lee <walt@tilera.com>
147 TILEPro Walter Lee <walt@tilera.com>
148 VAX Matt Thomas <matt@netbsd.org>
149 VAX Jan-Benedict Glaw <jbglaw@lug-owl.de>
150 Visium Eric Botcazou <ebotcazou@libertysurf.fr>
151 VMS Tristan Gingold <tgingold@free.fr>
152 x86_64 Jan Hubicka <jh@suse.cz>
153 x86_64 Andreas Jaeger <aj@suse.de>
154 x86_64 H.J. Lu <hjl.tools@gmail.com>
155 XCOFF Richard Sandiford <r.sandiford@uk.ibm.com>
156 XGATE Sean Keys <skeys@ipdatasys.com>
157 Xtensa Max Filippov <jcmvbkbc@gmail.com>
158 Xtensa Sterling Augustine <augustine.sterling@gmail.com>
159 z8k Christian Groessler <chris@groessler.org>
160
161 --------- Past Maintainers -------------
162
163 These folks have acted as maintainers in the past, but have now
164 moved on to other things. Our thanks for all their hard work
165 goes with them.
166
167 Paul Brook
168 Eric Christopher
169 Jason Eckhardt
170 Mark Kettenis
171 Mei Ligang
172 Arnold Metselaar
173 Mark Mitchell
174 Bernd Schmidt
175 Svein Seldal
176 Martin Schwidefsky
177
178 --------- CGEN Maintainers -------------
179
180 CGEN is a tool for building, amongst other things, assemblers,
181 disassemblers and simulators from a single description of a CPU.
182 It creates files in several of the binutils directories, but it
183 is mentioned here since there is a single group that maintains
184 CGEN and the files that it creates.
185
186 If you have CGEN related problems you can send email to;
187
188 cgen@sourceware.org
189
190 The current CGEN maintainers are:
191
192 Doug Evans, Frank Eigler
193
194 --------- Write After Approval ---------
195
196 Individuals with "write after approval" have the ability to check in
197 changes, but they must get approval for each change from someone in
198 one of the above lists (blanket write or maintainers).
199
200 [It's a huge list, folks. You know who you are. If you have the
201 *ability* to do binutils checkins, you're in this group. Just
202 remember to get approval before checking anything in.]
203
204 ------------- Obvious Fixes -------------
205
206 Fixes for obvious mistakes do not need approval, and can be checked in
207 right away, but the patch should still be sent to the binutils list.
208 The definition of obvious is a bit hazy, and if you are not sure, then
209 you should seek approval first. Obvious fixes include fixes for
210 spelling mistakes, blatantly incorrect code (where the correct code is
211 also blatantly obvious), and so on. Obvious fixes should always be
212 small, the larger they are, the more likely it is that they contain
213 some un-obvious side effect or consequence.
214
215 --------- Branch Checkins ---------
216
217 If a patch is approved for check in to the mainline sources, it can
218 also be checked into the current release branch. Normally however
219 only bug fixes should be applied to the branch. New features, new
220 ports, etc, should be restricted to the mainline. (Otherwise the
221 burden of maintaining the branch in sync with the mainline becomes too
222 great). If you are uncertain as to whether a patch is appropriate for
223 the branch, ask the branch maintainer. This is:
224
225 (cf global maintainers)
226
227 -------- Testsuites ---------------
228
229 In general patches to any of the binutils testsuites should be
230 considered generic and sent to the binutils mailing list for
231 approval. Patches to target specific tests are the responsibility the
232 relevant port maintainer(s), and can be approved/checked in by them.
233 Other testsuite patches need the approval of a blanket-write-priveleges
234 person.
235
236 -------- Configure patches ----------
237
238 Patches to the top level configure files (config.sub & config.guess)
239 are not the domain of the binutils project and they cannot be approved
240 by the binutils group. Instead they should be submitted to the config
241 maintainer at:
242
243 config-patches@gnu.org
244
245 --------- Creating Branches ---------
246
247 Anyone with at least write-after-approval access may create a branch
248 to use for their own development purposes. In keeping with FSF
249 policies, all patches applied to such a branch must come from people
250 with appropriate copyright assignments on file. All legal
251 requirements that would apply to any other contribution apply equally
252 to contributions on a branch.
253
254 Before creating the branch, you should select a name for the branch of
255 the form:
256
257 binutils-<org>-<name>
258
259 where "org" is the initials of your organization, or your own initials
260 if you are acting as an individual. For example, for a branch created
261 by The GNUDist Company, "tgc" would be an appropriate choice for
262 "org". It's up to each organization to select an appropriate choice
263 for "name"; some organizations may use more structure than others, so
264 "name" may contain additional hyphens.
265
266 Suppose that The GNUDist Company was creating a branch to develop a
267 port of Binutils to the FullMonty processor. Then, an appropriate
268 choice of branch name would be:
269
270 binutils-tgc-fm
271
272 A date stamp is not required as part of the name field, but some
273 organizations like to have one. If you do include the date, you
274 should follow these rules:
275
276 1. The date should be the date that the branch was created.
277
278 2. The date should be numerical and in the form YYYYMMDD.
279
280 For example:
281
282 binutils-tgc-fm_20050101
283
284 would be appropriate if the branch was created on January 1st, 2005.
285
286 Having selected the branch name, create the branch as follows:
287
288 1. Check out binutils, so that you have a git checkout corresponding
289 to the initial state of your branch.
290
291 2. Create a tag:
292
293 git tag binutils-<org>-<name>-branchpoint
294
295 That tag will allow you, and others, to easily determine what's
296 changed on the branch relative to the initial state.
297
298 3. Create and push the branch:
299
300 git checkout -b binutils-<org>-<name>-branch
301 git push origin HEAD
302
303 4. Document the branch:
304
305 Add a description of the branch to binutils/BRANCHES, and check
306 that file in. All branch descriptions should be added to the
307 HEAD revision of the file; it doesn't help to modify
308 binutils/BRANCHES on a branch!
309
310 Please do not commit any patches to a branch you did not create
311 without the explicit permission of the person who created the branch.
312 \f
313 Copyright (C) 2012-2022 Free Software Foundation, Inc.
314
315 Copying and distribution of this file, with or without modification,
316 are permitted in any medium without royalty provided the copyright
317 notice and this notice are preserved.