1 ========= Binutils Maintainers =========
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.
11 The home page for binutils is:
13 http://www.gnu.org/software/binutils/binutils.html
15 and patches should be sent to:
17 binutils@sourceware.org
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:
22 config-patches@gnu.org
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).
30 --------- Blanket Write Privs ---------
32 The following people have permission to check patches into the
33 repository without obtaining approval first:
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>
46 --------- Maintainers ---------
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.
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.
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 RX DJ Delorie <dj@redhat.com>
111 RX Nick Clifton <nickc@redhat.com>
112 s390, s390x Martin Schwidefsky <schwidefsky@de.ibm.com>
113 SCORE Mei Ligang <ligang@sunnorth.com.cn>
114 SH Alexandre Oliva <aoliva@redhat.com>
115 SH Kaz Kojima <kkojima@rr.iij4u.or.jp>
116 SPARC David S. Miller <davem@davemloft.net>
117 SPU Alan Modra <amodra@gmail.com>
118 TIC4X Svein Seldal <svein@dev.seldal.com>
119 TIC54X Timothy Wall <twall@alum.mit.edu>
120 TIC6X Joseph Myers <joseph@codesourcery.com>
121 TILE-Gx Walter Lee <walt@tilera.com>
122 TILEPro Walter Lee <walt@tilera.com>
123 VAX Matt Thomas <matt@netbsd.org>
124 VAX Jan-Benedict Glaw <jbglaw@lug-owl.de>
125 VMS Tristan Gingold <gingold@adacore.com>
126 x86_64 Jan Hubicka <jh@suse.cz>
127 x86_64 Andreas Jaeger <aj@suse.de>
128 x86_64 H.J. Lu <hjl.tools@gmail.com>
129 XCOFF Richard Sandiford <r.sandiford@uk.ibm.com>
130 Xtensa Sterling Augustine <augustine.sterling@gmail.com>
131 z80 Arnold Metselaar <arnold.metselaar@planet.nl>
132 z8k Christian Groessler <chris@groessler.org>
135 --------- CGEN Maintainers -------------
137 CGEN is a tool for building, amongst other things, assemblers,
138 disassemblers and simulators from a single description of a CPU.
139 It creates files in several of the binutils directories, but it
140 is mentioned here since there is a single group that maintains
141 CGEN and the files that it creates.
143 If you have CGEN related problems you can send email to;
147 The current CGEN maintainers are:
149 Doug Evans, Frank Eigler
151 --------- Write After Approval ---------
153 Individuals with "write after approval" have the ability to check in
154 changes, but they must get approval for each change from someone in
155 one of the above lists (blanket write or maintainers).
157 [It's a huge list, folks. You know who you are. If you have the
158 *ability* to do binutils checkins, you're in this group. Just
159 remember to get approval before checking anything in.]
161 ------------- Obvious Fixes -------------
163 Fixes for obvious mistakes do not need approval, and can be checked in
164 right away, but the patch should still be sent to the binutils list.
165 The definition of obvious is a bit hazy, and if you are not sure, then
166 you should seek approval first. Obvious fixes include fixes for
167 spelling mistakes, blatantly incorrect code (where the correct code is
168 also blatantly obvious), and so on. Obvious fixes should always be
169 small, the larger they are, the more likely it is that they contain
170 some un-obvious side effect or consequence.
172 --------- Branch Checkins ---------
174 If a patch is approved for check in to the mainline sources, it can
175 also be checked into the current release branch. Normally however
176 only bug fixes should be applied to the branch. New features, new
177 ports, etc, should be restricted to the mainline. (Otherwise the
178 burden of maintaining the branch in sync with the mainline becomes too
179 great). If you are uncertain as to whether a patch is appropriate for
180 the branch, ask the branch maintainer. This is:
182 Tristan Gingold <gingold@adacore.com>
184 -------- Testsuites ---------------
186 In general patches to any of the binutils testsuites should be
187 considered generic and sent to the binutils mailing list for
188 approval. Patches to target specific tests are the responsibility the
189 relevent port maintainer(s), and can be approved/checked in by them.
190 Other testsuite patches need the approval of a blanket-write-priveleges
193 -------- Configure patches ----------
195 Patches to the top level configure files (config.sub & config.guess)
196 are not the domain of the binutils project and they cannot be approved
197 by the binutils group. Instead they should be submitted to the config
200 config-patches@gnu.org
202 --------- Creating Branches ---------
204 Anyone with at least write-after-approval access may create a branch
205 to use for their own development purposes. In keeping with FSF
206 policies, all patches applied to such a branch must come from people
207 with appropriate copyright assignments on file. All legal
208 requirements that would apply to any other contribution apply equally
209 to contributions on a branch.
211 Before creating the branch, you should select a name for the branch of
214 binutils-<org>-<name>
216 where "org" is the initials of your organization, or your own initials
217 if you are acting as an individual. For example, for a branch created
218 by The GNUDist Company, "tgc" would be an appropriate choice for
219 "org". It's up to each organization to select an appropriate choice
220 for "name"; some organizations may use more structure than others, so
221 "name" may contain additional hyphens.
223 Suppose that The GNUDist Company was creating a branch to develop a
224 port of Binutils to the FullMonty processor. Then, an appropriate
225 choice of branch name would be:
229 A date stamp is not required as part of the name field, but some
230 organizations like to have one. If you do include the date, you
231 should follow these rules:
233 1. The date should be the date that the branch was created.
235 2. The date should be numerical and in the form YYYYMMDD.
239 binutils-tgc-fm_20050101
241 would be appropriate if the branch was created on January 1st, 2005.
243 Having selected the branch name, create the branch as follows:
245 1. Check out binutils, so that you have a CVS checkout corresponding
246 to the initial state of your branch.
250 cvs tag binutils-<org>-<name>-branchpoint
252 That tag will allow you, and others, to easily determine what's
253 changed on the branch relative to the initial state.
255 3. Create the branch:
257 cvs rtag -b -r binutils-<org>-<name>-branchpoint \
258 binutils-<org>-<name>-branch
260 4. Document the branch:
262 Add a description of the branch to binutils/BRANCHES, and check
263 that file in. All branch descriptions should be added to the
264 HEAD revision of the file; it doesn't help to modify
265 binutils/BRANCHES on a branch!
267 Please do not commit any patches to a branch you did not create
268 without the explicit permission of the person who created the branch.