The GNU C library was written almost entirely by Roland McGrath, who now maintains it. Some parts of the library were contributed or worked on by other people.
The getopt
function and related code were written by Richard Stallman, David J. MacKenzie, and Roland McGrath.
Most of the math functions are taken from 4.4 BSD; they have been modified only slightly to work with the GNU C library. The Internet-related code (most of the `inet' subdirectory) and several other miscellaneous functions and header files have been included with little or no modification.
All code incorporated from 4.4 BSD is under the following copyright:
Copyright © 1991 Regents of the University of California.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
All advertising materials mentioning features or use of this software must display the following acknowledgement:
This product includes software developed by the University of California, Berkeley and its contributors.Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
this software is provided by the regents and contributors ``as is'' and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. in no event shall the regents or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.
The random number generation functions random
, srandom
, setstate
and initstate
, which are also the basis for the rand
and srand
functions, were written by Earl T. Cohen for the University of California at Berkeley and are copyrighted by the Regents of the University of California. They have undergone minor changes to fit into the GNU C library and to fit the ANSI C standard, but the functional code is Berkeley's.
The merge sort function qsort
was written by Michael J. Haertel.
The quick sort function used as a fallback by qsort
was written by Douglas C. Schmidt.
The memory allocation functions malloc
, realloc
and free
and related code were written by Michael J. Haertel.
Fast implementations of many of the string functions (memcpy
, strlen
, etc.) were written by Torbjorn Granlund.
Some of the support code for Mach is taken from Mach 3.0 by CMU, and is under the following copyright terms:
Mach Operating System
Copyright © 1991,1990,1989 Carnegie Mellon University
All Rights Reserved.
Permission to use, copy, modify and distribute this software and its documentation is hereby granted, provided that both the copyright notice and this permission notice appear in all copies of the software, derivative works or modified versions, and any portions thereof, and that both notices appear in supporting documentation.
carnegie mellon allows free use of this software in its ``as is'' condition. carnegie mellon disclaims any liability of any kind for any damages whatsoever resulting from the use of this software.
Carnegie Mellon requests users of this software to return to
Software Distribution Coordinator
School of Computer Science
Carnegie Mellon University
Pittsburgh PA 15213-3890
or `Software.Distribution@CS.CMU.EDU' any improvements or extensions that they make and grant Carnegie Mellon the rights to redistribute these changes.
The `tar.h' header file was written by David J. MacKenzie.
The port to the MIPS DECStation running Ultrix 4 (mips-dec-ultrix4
) was contributed by Brendan Kehoe and Ian Lance Taylor.
The DES encryption function crypt
and related functions were contributed by Michael Glad.
The ftw
function was contributed by Ian Lance Taylor.
The code to support SunOS shared libraries was contributed by Tom Quinn.
The mktime
function was contributed by Noel Cragg.
The port to the Sequent Symmetry running Dynix version 3 (i386-sequent-bsd
) was contributed by Jason Merrill.
The timezone support code is derived from the public-domain timezone package by Arthur David Olson.
The Internet resolver code is taken directly from BIND 4.9.1, which is under both the Berkeley copyright above and also:
Portions Copyright © 1993 by Digital Equipment Corporation.Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Digital Equipment Corporation not be used in advertising or publicity pertaining to distribution of the document or software without specific, written prior permission.
the software is provided ``as is'' and digital equipment corp. disclaims all warranties with regard to this software, including all implied warranties of merchantability and fitness. in no event shall digital equipment corporation be liable for any special, direct, indirect, or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software.
The port to the DEC Alpha running OSF/1 (alpha-dec-osf1
) was contributed by Brendan Kehoe, using some code written by Roland McGrath.
The floating-point printing function used by printf
and friends was written by Roland McGrath and Torbjorn Granlund. The multi-precision integer functions used in that function are taken from GNU MP, which was contributed by Torbjorn Granlund.
The code to support Sun RPC is taken verbatim from Sun's rpcsrc-4.0 distribution, and is covered by this copyright:
Copyright © 1984, Sun Microsystems, Inc.
Sun RPC is a product of Sun Microsystems, Inc. and is provided for unrestricted use provided that this legend is included on all tape media and as a part of the software program in whole or part. Users may copy or modify Sun RPC without charge, but are not authorized to license or distribute it to anyone else except as part of a product or program developed by the user.
sun rpc is provided as is with no warranties of any kind including the warranties of design, merchantibility and fitness for a particular purpose, or arising from a course of dealing, usage or trade practice.
Sun RPC is provided with no support and without any obligation on the part of Sun Microsystems, Inc. to assist in its use, correction, modification or enhancement.
sun microsystems, inc. shall have no liability with respect to the infringement of copyrights, trade secrets or any patents by sun rpc or any part thereof.
In no event will Sun Microsystems, Inc. be liable for any lost revenue or profits or other special, indirect and consequential damages, even if Sun has been advised of the possibility of such damages.
Sun Microsystems, Inc.
2550 Garcia Avenue
Mountain View, California 94043
The port to SGI machines running Irix 4 (mips-sgi-irix4
) was contributed by Tom Quinn.
The port of the Mach and Hurd code to the MIPS architecture (mips-anything-gnu
) was contribued by Kazumoto Kojima.