]> git.ipfire.org Git - thirdparty/glibc.git/blame - manual/contrib.texi
Correct the spelling of more contributors
[thirdparty/glibc.git] / manual / contrib.texi
CommitLineData
d9dc34cd 1@node Contributors, Free Manuals, Platform, Top
1f77f049
JM
2@c %MENU% Who wrote what parts of the GNU C Library
3@appendix Contributors to @theglibc{}
3c20b9b6 4
d8e272ab
AJ
5@Theglibc{} project would like to thank its many contributors.
6Without them the project would not have been nearly as successful as
7it has been. Any omissions in this list are accidental. Feel free to
8file a bug in bugzilla if you have been left out or some of your
9contributions are not listed. Please keep this list in alphabetical
10order.
3c20b9b6
UD
11
12@itemize @bullet
d8e272ab 13
1900fab9
SP
14@item
15Nick Alcock for contributing fixes to allow @theglibc{} to be built with the
16stack smashing protector enabled.
17
15192aaa
SP
18@item
19John David Anglin for various fixes to the hppa port.
20
330c9d0d
SP
21@item
22Albert ARIBAUD for Y2038 related fixes.
23
3c20b9b6 24@item
ee7cc385
SP
25Ryan S. Arnold for his improvements for Linux on PowerPC and his direction
26as FSF Project Steward for @theglibc{}.
3c20b9b6
UD
27
28@item
d8e272ab
AJ
29Miles Bader for writing the @code{argp} argument-parsing package, and the
30@code{argz}/@code{envz} interfaces.
3c20b9b6 31
1bced8ca
PE
32@item
33Ralf B@"achle for contributing @file{fpu_control.h},
34@file{regdef.h}, @file{sgidefs.h}, @file{sys/asm.h}, and @file{sys/regdef.h}
35under the @file{sysdeps/mips} directory.
36
3c20b9b6 37@item
d8e272ab 38Jeff Bailey for his maintainership of the HPPA architecture.
3c20b9b6
UD
39
40@item
d8e272ab 41Petr Baudis for bug fixes and testing.
3c20b9b6 42
330c9d0d
SP
43@item
44Anton Blanchard for various fixes.
45
3c20b9b6 46@item
d8e272ab
AJ
47Stephen R. van den Berg for contributing a highly-optimized
48@code{strstr} function.
3c20b9b6 49
db24e684 50@item
e6855a3b 51Ond@v{r}ej B@'ilka for contributing optimized string routines for x64 and various
68159946 52fixes.
db24e684 53
3c20b9b6 54@item
d8e272ab
AJ
55Eric Blake for adding O(n) implementations of @code{memmem},
56@code{strstr} and @code{strcasestr}.
3c20b9b6
UD
57
58@item
d8e272ab
AJ
59Philip Blundell for the ports to Linux/ARM
60(@code{arm-@var{ANYTHING}-linuxaout}) and ARM standalone
61(@code{arm-@var{ANYTHING}-none}), as well as for parts of the IPv6
62support code.
3c20b9b6
UD
63
64@item
d8e272ab
AJ
65Per Bothner for the implementation of the @code{libio} library which
66is used to implement @code{stdio} functions.
3c20b9b6
UD
67
68@item
d8e272ab
AJ
69Mark Brown for his direction as part of @theglibc{} steering
70committee.
3c20b9b6
UD
71
72@item
d8e272ab 73Thomas Bushnell for his contributions to Hurd.
3c20b9b6 74
6cca855e
CD
75@item
76Rogerio Alves Cardoso for various fixes to PowerPC.
77
78@item
79Paul Clarke for optimized functions on PowerPC.
80
ced64e01
DL
81@item
82Palmer Dabbelt for contributing the port to Linux/RISC-V.
83
15192aaa 84@item
6cca855e 85DJ Delorie for maintenance of Linux/RISC-V, and various fixes.
15192aaa 86
c46303ef
AM
87@item
88Wilco Dijkstra for various fixes.
89
3c20b9b6 90@item
ef48b196 91Liubov Dmitrieva for optimized string and math functions on x86-64 and
06c5abbd 92x86.
3c20b9b6
UD
93
94@item
d8e272ab
AJ
95Ulrich Drepper for his many contributions in almost all parts of
96@theglibc{}, including:
97@itemize @bullet
136fa185 98@item writing most of the POSIX Threads Library originally.
d8e272ab
AJ
99@item internationalization support, including the @code{locale} and
100@code{localedef} utilities.
101@item Linux i386/ELF support
102@item the @code{hsearch} and @code{drand48} families of functions,
103reentrant @samp{@dots{}@code{_r}} versions of the @code{random}
104family; System V shared memory and IPC support code
105@item several highly-optimized string functions for i@var{x}86
106processors
107@item many math functions
108@item the character conversion functions (@code{iconv})
109@item the @code{ftw} and @code{nftw} functions
110@item the floating-point printing function used by @code{printf} and friends
111and the floating-point reading function used by @code{scanf},
112@code{strtod} and friends
113@item the @code{catgets} support and the entire suite of multi-byte
114and wide-character support functions (@file{wctype.h}, @file{wchar.h}, etc.).
115@item versioning of objects on the symbol level
116@end itemize
3c20b9b6 117
04cb913d
CD
118@item
119Richard Earnshaw for continued support and fixes to the various ARM
120machine files.
121
3c20b9b6 122@item
d8e272ab
AJ
123Paul Eggert for the @code{mktime} function and for his direction as
124part of @theglibc{} steering committee.
3c20b9b6 125
68159946
SP
126@item
127Steve Ellcey for various fixes.
128
15192aaa 129@item
6cca855e
CD
130Mike FABIAN for automating Unicode updates, for updating the locale data
131for ISO 14651, for updating the library Unicode support, and for various
132locale updates and fixes.
15192aaa 133
06c5abbd
AJ
134@item
135Tulio Magno Quites Machado Filho for adding a new class of installed
136headers for low-level platform-specific functionality and one such for
1900fab9 137PowerPC and various fixes.
06c5abbd 138
1bced8ca
PE
139@item
140Olaf Flebbe and Ralf B@"achle for contributing
141@file{sysdeps/mips/fpu_control.h}.
142
3c20b9b6 143@item
d8e272ab
AJ
144Mike Frysinger for his maintaining of the IA64 architecture and for
145testing and bug fixing.
3c20b9b6 146
1900fab9
SP
147@item
148Martin Galvan for contributing gdb pretty printer support to glibc and adding
149an initial set of pretty printers for structures in the POSIX Threads library.
150
3c20b9b6 151@item
841785ba 152Michael Glad for the passphrase-hashing function @code{crypt} and related
d8e272ab 153functions.
3c20b9b6
UD
154
155@item
d8e272ab
AJ
156Wolfram Gloger for contributing the memory allocation functions
157functions @code{malloc}, @code{realloc} and @code{free} and related
158code.
3c20b9b6 159
6cca855e
CD
160@item
161Gabriel F. T. Gomes for his improvements for Linux on PowerPC and for
162implementing the IEEE 128-bit floating point type for PowerPC.
163
3c20b9b6 164@item
d8e272ab
AJ
165Torbj@"orn Granlund for fast implementations of many of the string
166functions (@code{memcpy}, @code{strlen}, etc.).
3c20b9b6
UD
167
168@item
d8e272ab
AJ
169Michael J. Haertel for writing the merge sort function @code{qsort}
170and malloc checking functions like @code{mcheck}.
3c20b9b6
UD
171
172@item
d8e272ab
AJ
173Bruno Haible for his improvements to the @code{iconv} and locale
174implementations.
3c20b9b6
UD
175
176@item
d8e272ab 177Richard Henderson for the port to Linux on Alpha
c10c5267 178(@code{alpha-@var{anything}-linux}) and software floating-point support.
3c20b9b6 179
db24e684
DM
180@item
181David Holsgrove for the port to Linux on MicroBlaze.
182
330c9d0d
SP
183@item
184Leonhard Holz for various fixes.
185
3c20b9b6 186@item
d8e272ab 187Daniel Jacobowitz for various fixes and enhancements.
3c20b9b6
UD
188
189@item
d8e272ab
AJ
190Andreas Jaeger for the port to Linux on x86-64
191(@code{x86_64-@var{anything}-linux} and his work on Linux for MIPS
192(@code{mips-@var{anything}-linux}), implementing the @file{ldconfig}
193program, providing a test suite for the math library and for his
194direction as part of @theglibc{} steering committee.
3c20b9b6
UD
195
196@item
d8e272ab 197Aurelien Jarno for various fixes.
3c20b9b6 198
1900fab9 199@item
ef8659ea 200Rical Jasan for contributing various fixes in @theglibc{} manual.
1900fab9 201
3c20b9b6 202@item
c10c5267
JM
203Jakub Jelinek for implementing a number of checking functions,
204software floating-point support and for
d8e272ab
AJ
205his direction as part of @theglibc{} steering committee.
206
23947846
JM
207@item
208Simon Josefsson for the @code{libidn} add-on.
209
d8e272ab
AJ
210@item
211Geoffrey Keating for the port to Linux on PowerPC
212(@code{powerpc-@var{anything}-linux}).
213
214@item
215Brendan Kehoe for contributing the port to the MIPS DECStation running
216Ultrix 4 (@code{mips-dec-ultrix4}) and the port to the DEC Alpha
217running OSF/1 (@code{alpha-dec-osf1}).
218
219@item
be208619 220Mark Kettenis for implementing the @code{utmpx} interface and a utmp
d8e272ab
AJ
221daemon, and for a Hesiod NSS module.
222
db24e684
DM
223@item
224Andi Kleen for implementing pthreads lock elision with TSX.
225
d8e272ab
AJ
226@item
227Kazumoto Kojima for the port of the Mach and Hurd code to the MIPS
228architecture (@code{mips-@var{anything}-gnu}) and for his work on the
229SH architecture.
230
1900fab9
SP
231@item
232Maxim Kuvyrkov for various fixes.
233
d8e272ab
AJ
234@item
235Andreas Krebbel for his work on Linux for s390 and s390x.
236
237@item
238Thorsten Kukuk for providing an implementation for NIS (YP) and NIS+,
239securelevel 0, 1 and 2 and for the implementation for a caching daemon
240for NSS (@file{nscd}).
241
15192aaa
SP
242@item
243Akhilesh Kumar for various fixes to locales.
244
d8e272ab
AJ
245@item
246Jeff Law for various fixes.
247
248@item
249Doug Lea for contributing the memory allocation functions
be208619 250@code{malloc}, @code{realloc} and @code{free} and related
d8e272ab
AJ
251code.
252
68159946
SP
253@item
254Chris Leonard for various fixes and enhancements to localedata.
255
330c9d0d
SP
256@item
257Ilya Leoshkevich for various fixes.
258
259@item
260Dmitry V. Levin for various fixes.
261
c46303ef
AM
262@item
263Stefan Liebler for various fixes.
264
d8e272ab
AJ
265@item
266Hongjiu Lu for providing the support for a Linux 32-bit runtime
267environment under x86-64 (x32), for porting to Linux on IA64, for
bc38c906 268improved string functions, a framework for testing IFUNC
6cca855e
CD
269implementations, for implementing Intel Control-Flow Enforcement
270Technology, and many bug fixes.
d8e272ab 271
15192aaa 272@item
ab74d59f
PE
273Rafa@l{} Lu@dotaccent{z}y@'nski
274for contributing support for two grammatical forms of month
ced64e01 275names, and for various fixes to locales.
15192aaa 276
d8e272ab
AJ
277@item
278Luis Machado for optimized functions on PowerPC.
279
280@item
281David J. MacKenzie for his contribution to the @code{getopt}
282function and writing the @file{tar.h} header.
283
284@item
285Greg McGary for adding runtime support for bounds checking.
286
287@item
288Roland McGrath for writing most of @theglibc{} originally, for his
289work on the Hurd port, his direction as part of @theglibc{} steering
ee7cc385
SP
290committee and as FSF Project Steward for @theglibc{}, and for many bug
291fixes and reviewing of contributions.
d8e272ab 292
68159946
SP
293@item
294Allan McRae for various fixes.
295
d8e272ab
AJ
296@item
297Jason Merrill for the port to the Sequent Symmetry running Dynix
298version 3 (@code{i386-sequent-bsd}).
299
300@item
301Chris Metcalf for the port to Linux/Tile
302(@code{tilegx-@var{anything}-linux} and
a3fb6b6b
JM
303@code{tilepro-@var{anything}-linux}) and support for the generic Linux
304kernel syscall interface used by several newer ports.
d8e272ab 305
330c9d0d
SP
306@item
307Jim Meyering for various fixes.
308
d8e272ab
AJ
309@item
310David Miller for contributing the port to Linux/Sparc
311(@code{sparc*-@var{anything}-linux}).
312
313@item
314Alan Modra for his improvements for Linux on PowerPC.
315
316@item
317David Mosberger-Tang for contributing the port to Linux/Alpha
3c20b9b6
UD
318(@code{alpha-@var{anything}-linux}).
319
15192aaa
SP
320@item
321Wainer dos Santos Moschetta for various fixes to powerpc.
322
3c20b9b6 323@item
d8e272ab
AJ
324Stephen Moshier for implementing some 128-bit long double format math
325functions.
3c20b9b6
UD
326
327@item
d8e272ab
AJ
328Stephen Munroe for his port to Linux on PowerPC64
329(@code{powerpc64-@var{anything}-linux}) and for adding optimized
330implementations for PowerPC.
3c20b9b6 331
1900fab9 332@item
6cca855e
CD
333Paul E. Murphy for various fixes on PowerPC and for implementing the IEEE
334128-bit floating point type for PowerPC.
1900fab9 335
3c20b9b6 336@item
bc38c906 337Joseph S. Myers for numerous bug fixes for the libm functions, for
6cca855e
CD
338his maintainership of the ARM and MIPS architectures and the math
339component, improving cross-compilation and cross-testing of
340@theglibc{}, expanded coverage of conformtest, merging the ports/
341subdirectory into the @glibcadj{} main repository and his direction as
342FSF Project Steward for @theglibc{}.
3c20b9b6 343
15192aaa
SP
344@item
345Marko Myllynen for various fixes.
346
1900fab9
SP
347@item
348Szabolcs Nagy for various fixes.
349
db24e684 350@item
68159946
SP
351Will Newton for contributing some optimized string functions and pointer
352encryption support for ARM and various fixes.
db24e684 353
3c20b9b6 354@item
ee7cc385
SP
355Carlos O'Donell for his maintainership of the HPPA architecture, for
356maintaining @theglibc{} web pages and wiki, for his direction as FSF
357Project Steward for @theglibc{} and various bug fixes.
3c20b9b6
UD
358
359@item
20196a5e
AO
360Alexandre Oliva for adding TLS descriptors for LD and GD on x86 and
361x86-64, for the am33 port, for completing the MIPS n64/n32/o32 multilib
68159946 362port, for thread-safety, async-signal safety and async-cancellation
ee7cc385
SP
363safety documentation in the manual, for his direction as FSF Project
364Maintainer and for various fixes.
3c20b9b6
UD
365
366@item
d8e272ab 367Paul Pluzhnikov for various fixes.
3c20b9b6
UD
368
369@item
d8e272ab 370Marek Polacek for various fixes.
3c20b9b6
UD
371
372@item
1900fab9 373Siddhesh Poyarekar for various fixes, an implementation of a framework for
43ce02c6 374performance benchmarking of functions and implementing the tunables
1900fab9 375infrastructure.
3c20b9b6 376
4648c381
TS
377@item
378Tom Quinn for contributing the startup code to support SunOS shared
379libraries and the port to SGI machines running Irix 4
380(@code{mips-sgi-irix4}).
381
04cb913d 382@item
1900fab9
SP
383Torvald Riegel for the implementation of new algorithms for semaphores,
384pthread_rwlock and condition variables.
385
386@item
6cca855e
CD
387Maciej W. Rozycki for MIPS fixes, support for ABSOLUTE symbols,
388and various fixes.
04cb913d 389
330c9d0d
SP
390@item
391Leonardo Sandoval for various fixes.
392
3c20b9b6 393@item
d8e272ab 394Pravin Satpute for writing sorting rules for some Indian languages.
3c20b9b6 395
4648c381
TS
396@item
397Douglas C. Schmidt for writing the quick sort function used as a
398fallback by @code{qsort}.
399
06c5abbd
AJ
400@item
401Will Schmidt for optimized string functions on PowerPC.
402
4648c381
TS
403@item
404Andreas Schwab for the port to Linux/m68k
ced64e01
DL
405(@code{m68k-@var{anything}-linux}), for his direction as part of
406@theglibc{} steering committee, and for various bug fixes.
4648c381 407
3c20b9b6 408@item
d8e272ab
AJ
409Martin Schwidefsky for porting to Linux on s390
410(@code{s390-@var{anything}-linux}) and s390x
411(@code{s390x-@var{anything}-linux}).
3c20b9b6 412
4648c381
TS
413@item
414Thomas Schwinge for his contribution to Hurd and the SH architecture.
415
330c9d0d
SP
416@item
417Martin Sebor for various fixes.
418
1900fab9
SP
419@item
420Andrew Senkevich for contributing vector math function implementations for x86.
421
3c20b9b6 422@item
d8e272ab 423Carlos Eduardo Seo for optimized functions on PowerPC.
3c20b9b6 424
ced64e01
DL
425@item
426Arjun Shankar for testing and bug fixing.
427
bc38c906 428@item
cedb2a90 429Marcus Shawcroft for contributing the AArch64 port.
bc38c906 430
3c20b9b6 431@item
d8e272ab 432Franz Sirl for various fixes.
3c20b9b6
UD
433
434@item
d8e272ab 435Jes Sorensen for porting to Linux on IA64 (@code{ia64-@var{anything}-linux}).
3c20b9b6 436
1900fab9 437@item
6cca855e
CD
438Rajalakshmi Srinivasaraghavan for various fixes and optimizations on PowerPC
439and for implementing the IEEE 128-bit floating point type for PowerPC.
1900fab9 440
3c20b9b6 441@item
d8e272ab 442Richard Stallman for his contribution to the @code{getopt} function.
3c20b9b6 443
d8e272ab
AJ
444@item
445Alfred M. Szmidt for various fixes.
446
15192aaa
SP
447@item
448Chung-Lin Tang for contributing the Nios II port.
449
d8e272ab
AJ
450@item
451Ian Lance Taylor for contributing the port to the MIPS DECStation
452running Ultrix 4 (@code{mips-dec-ultrix4}).
453
aac78a43
AJ
454@item
455Samuel Thibault for improving the Hurd port.
456
15192aaa
SP
457@item
458Pino Toscano for various fixes.
459
330c9d0d
SP
460@item
461Matt Turner for various fixes to the Alpha port.
462
d8e272ab
AJ
463@item
464Tim Waugh for the implementation of the POSIX.2 @code{wordexp}
465function family.
466
330c9d0d
SP
467@item
468Ulrich Weigand for various fixes to the PowerPC64 and Arm ports.
469
ced64e01
DL
470@item
471Florian Weimer for his maintainership of the network component, for handling
472of security issues, and for various fixes.
473
1900fab9
SP
474@item
475Zack Weinberg for the @code{explicit_bzero} implementation and for various
476fixes.
477
330c9d0d
SP
478@item
479Mark Wielaard for various fixes.
480
d8e272ab
AJ
481@item
482Eric Youngdale for implementing versioning of objects on the symbol level.
483
484@item
6cca855e
CD
485Adhemerval Zanella for optimized functions on PowerPC, ISO C threads support
486and various fixes.
d8e272ab
AJ
487
488@end itemize
489
490Some code in @theglibc{} comes from other projects and might be under
491a different license:
492
493@itemize @bullet
494@item
495The timezone support code is derived from the public-domain timezone
496package by Arthur David Olson and his many contributors.
497
498@item
499Some of the support code for Mach is taken from Mach 3.0 by CMU;
be208619 500the file @file{if_ppp.h} is also copyright by CMU, but under a different license;
d8e272ab 501see the file @file{LICENSES} for the text of the licenses.
3c20b9b6
UD
502
503@item
504The random number generation functions @code{random}, @code{srandom},
505@code{setstate} and @code{initstate}, which are also the basis for the
506@code{rand} and @code{srand} functions, were written by Earl T. Cohen
507for the University of California at Berkeley and are copyrighted by the
508Regents of the University of California. They have undergone minor
1f77f049 509changes to fit into @theglibc{} and to fit the @w{ISO C} standard,
3c20b9b6
UD
510but the functional code is Berkeley's.@refill
511
d8e272ab
AJ
512@item
513The Internet-related code (most of the @file{inet} subdirectory) and
514several other miscellaneous functions and header files have been
515included from 4.4 BSD with little or no modification. The copying
516permission notice for this code can be found in the file @file{LICENSES}
517in the source distribution.
518
519@item
520The @code{getaddrinfo} and @code{getnameinfo} functions and supporting
521code were written by Craig Metz; see the file @file{LICENSES} for
522details on their licensing.
523
3c20b9b6 524@item
c10c5267 525The DNS resolver code is taken directly from BIND 8.2.3-T5B, which
c6c6dd48
RM
526includes copyrighted code from UC Berkeley and from Digital Equipment
527Corporation. See the file @file{LICENSES} for the text of the DEC license.
528
529@item
530The code to support Sun RPC is taken verbatim from Sun's
531@w{@sc{rpcsrc-4.0}} distribution; see the file @file{LICENSES} for the
532text of the license.
3c20b9b6 533
c6c6dd48 534@item
d8e272ab
AJ
535The math functions are taken from @code{fdlibm-5.1} by Sun
536Microsystems, as modified by J.T. Conklin, Ian Lance Taylor,
537Ulrich Drepper, Andreas Schwab, and Roland McGrath.
538
539@item
540Many of the IEEE 64-bit double precision math functions
541(in the @file{sysdeps/ieee754/dbl-64} subdirectory) come
542from the IBM Accurate Mathematical Library, contributed by IBM.
3c20b9b6 543
c6c6dd48
RM
544@item
545Many of the IA64 math functions are taken from a collection of
546``Highly Optimized Mathematical Functions for Itanium'' that Intel
547makes available under a free license; see the file @file{LICENSES} for
548details.
3c20b9b6 549
3c20b9b6 550@end itemize