summary refs log tree commit diff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL796
1 files changed, 63 insertions, 733 deletions
diff --git a/INSTALL b/INSTALL
index 6a03afcf2b..369e50e822 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,313 +1,6 @@
 Library Maintenance
 *******************
 
-How to Install the GNU C Library
-================================
-
-   Installation of the GNU C library is relatively simple, but usually
-requires several GNU tools to be installed already.
-
-   To configure the GNU C library for your system, run the shell script
-`configure' with `sh'.  Use an argument which is the conventional GNU
-name for your system configuration--for example, `sparc-sun-sunos4.1',
-for a Sun 4 running SunOS 4.1.  *Note Installation:
-(gcc.info)Installation, for a full description of standard GNU
-configuration names.  If you omit the configuration name, `configure'
-will try to guess one for you by inspecting the system it is running
-on.  It may or may not be able to come up with a guess, and the its
-guess might be wrong.  `configure' will tell you the canonical name of
-the chosen configuration before proceeding.
-
-   Here are some options that you should specify (if appropriate) when
-you run `configure':
-
-`--with-binutils=DIRECTORY'
-     Use the binutils (assembler and linker) in `DIRECTORY', not the
-     ones the C compiler would default to.  You could use this option if
-     the default binutils on your system cannot deal with all the
-     constructs in the GNU C library.  (`configure' will detect the
-     problem and suppress these constructs, so the library will still
-     be usable, but functionality may be lost--for example, you can not
-     build a shared libc with old binutils.)
-
-`--without-fp'
-`--nfp'
-     Use this option if your computer lacks hardware floating-point
-     support and your operating system does not emulate an FPU.
-
-`--prefix=DIRECTORY'
-     Install machine-independent data files in subdirectories of
-     `DIRECTORY'.  (You can also set this in `configparms'; see below.)
-     The default is to install in `/usr/local'.
-
-`--exec-prefix=DIRECTORY'
-     Install the library and other machine-dependent files in
-     subdirectories of `DIRECTORY'.  (You can also set this in
-     `configparms'; see below.)  The default is to use <prefix>/bin and
-     <prefix>/sbin.
-
-`--enable-shared'
-`--disable-shared'
-     Enable or disable building of an ELF shared library on systems that
-     support it.  The default is to build the shared library on systems
-     using ELF when the GNU `binutils' are available.
-
-`--enable-profile'
-`--disable-profile'
-     Enable or disable building of the profiled C library, `-lc_p'.  The
-     default is to build the profiled library.  You may wish to disable
-     it if you don't plan to do profiling, because it doubles the build
-     time of compiling just the unprofiled static library.
-
-`--enable-omitfp'
-     Enable building a highly-optimized but possibly undebuggable
-     static C library.  This causes the normal static and shared (if
-     enabled) C libraries to be compiled with maximal optimization,
-     including the `-fomit-frame-pointer' switch that makes debugging
-     impossible on many machines, and without debugging information
-     (which makes the binaries substantially smaller).  An additional
-     static library is compiled with no optimization and full debugging
-     information, and installed as `-lc_g'.
-
-   The simplest way to run `configure' is to do it in the directory
-that contains the library sources.  This prepares to build the library
-in that very directory.
-
-   You can prepare to build the library in some other directory by going
-to that other directory to run `configure'.  In order to run configure,
-you will have to specify a directory for it, like this:
-
-     mkdir sun4
-     cd sun4
-     ../configure sparc-sun-sunos4.1
-
-`configure' looks for the sources in whatever directory you specified
-for finding `configure' itself.  It does not matter where in the file
-system the source and build directories are--as long as you specify the
-source directory when you run `configure', you will get the proper
-results.
-
-   This feature lets you keep sources and binaries in different
-directories, and that makes it easy to build the library for several
-different machines from the same set of sources.  Simply create a build
-directory for each target machine, and run `configure' in that
-directory specifying the target machine's configuration name.
-
-   The library has a number of special-purpose configuration parameters.
-These are defined in the file `Makeconfig'; see the comments in that
-file for the details.
-
-   But don't edit the file `Makeconfig' yourself--instead, create a
-file `configparms' in the directory where you are building the library,
-and define in that file the parameters you want to specify.
-`configparms' should *not* be an edited copy of `Makeconfig'; specify
-only the parameters that you want to override.  To see how to set these
-parameters, find the section of `Makeconfig' that says "These are the
-configuration variables." Then for each parameter that you want to
-change, copy the definition from `Makeconfig' to your new `configparms'
-file, and change the value as appropriate for your system.
-
-   It is easy to configure the GNU C library for cross-compilation by
-setting a few variables in `configparms'.  Set `CC' to the
-cross-compiler for the target you configured the library for; it is
-important to use this same `CC' value when running `configure', like
-this: `CC=TARGET-gcc configure TARGET'.  Set `BUILD_CC' to the compiler
-to use for for programs run on the build system as part of compiling
-the library.  You may need to set `AR' and `RANLIB' to cross-compiling
-versions of `ar' and `ranlib' if the native tools are not configured to
-work with object files for the target you configured for.
-
-   Some of the machine-dependent code for some machines uses extensions
-in the GNU C compiler, so you may need to compile the library with GCC.
-(In fact, all of the existing complete ports require GCC.)
-
-   To build the library and related programs, type `make'.  This will
-produce a lot of output, some of which may look like errors from `make'
-(but isn't).  Look for error messages from `make' containing `***'.
-Those indicate that something is really wrong.
-
-   To build and run some test programs which exercise some of the
-library facilities, type `make check'.  This will produce several files
-with names like `PROGRAM.out'.
-
-   To format the `GNU C Library Reference Manual' for printing, type
-`make dvi'.  You need a working TeX installation to do this.
-
-   To install the library and its header files, and the Info files of
-the manual, type `make install'.  This will build things if necessary,
-before installing them.  If you want to install the files in a different
-place than the one specified at configuration time you can specify a
-value for the Makefile variable `install_root' on the command line.
-This is useful to create chroot'ed environment or to prepare binary
-releases.
-
-Recommended Tools to Install the GNU C Library
-----------------------------------------------
-
-   We recommend installing the following GNU tools before attempting to
-build the GNU C library:
-
-   * `make' 3.76.1
-
-     You need the latest version of GNU `make'.  Modifying the GNU C
-     Library to work with other `make' programs would be so hard that we
-     recommend you port GNU `make' instead.  *Really.*  We recommend
-     version GNU `make' version 3.75, 3.76.1 or later.  Version 3.76 is
-     known to have a bug which only shows up in big projects like GNU
-     `libc'.
-
-   * GCC 2.7.2.3
-
-     On most platforms, the GNU C library can only be compiled with the
-     GNU C compiler.  We recommend GCC version 2.7.2 or later; earlier
-     versions may have problems.
-
-     On PowerPC, GCC versions dated earlier than 970904 are known not
-     to work (they crash), including 2.7.2.
-
-   * `binutils' 2.8.1
-
-     Using the GNU `binutils' (assembler, linker, and related tools) is
-     preferable when possible, and they are required to build an ELF
-     shared C library.  We recommend `binutils' version 2.8.1 or later;
-     earlier versions are known to have problems or to not support all
-     architectures.
-
-   * `texinfo' 3.11
-
-     To correctly translate and install the Texinfo documentation you
-     need this version of the `texinfo' package.  Former versions did
-     not understand all the tags used in the document and also the
-     installation mechanisms for the info files was not present or
-     worked differently.
-
-     On some Debian Linux based systems the used `install-info' program
-     works differently.  Here you have to run make like this:
-
-          make INSTALL_INFO=/path/to/GNU/install-info install
-
-   If you change any configuration file you will need also
-
-   * `autoconf' 2.12
-
-and if you change any of the message translation files you will also
-need
-
-   * `GNU gettext' 0.10 or later
-
-If you upgrade your source tree using the patches made available you
-probably will need those package above in any case.
-
-Supported Configurations
-------------------------
-
-   The GNU C Library currently supports configurations that match the
-following patterns:
-
-     alpha-ANYTHING-linux
-     iX86-ANYTHING-gnu
-     iX86-ANYTHING-linux
-     m68k-ANYTHING-linux
-     powerpc-ANYTHING-linux
-     sparc64-ANYTHING-linux
-
-   Former releases of this library (version 1.09.1 and perhaps earlier
-versions) used to run on the following configurations:
-
-     alpha-dec-osf1
-     alpha-ANYTHING-linuxecoff
-     iX86-ANYTHING-bsd4.3
-     iX86-ANYTHING-isc2.2
-     iX86-ANYTHING-isc3.N
-     iX86-ANYTHING-sco3.2
-     iX86-ANYTHING-sco3.2v4
-     iX86-ANYTHING-sysv
-     iX86-ANYTHING-sysv4
-     iX86-force_cpu386-none
-     iX86-sequent-bsd
-     i960-nindy960-none
-     m68k-hp-bsd4.3
-     m68k-mvme135-none
-     m68k-mvme136-none
-     m68k-sony-newsos3
-     m68k-sony-newsos4
-     m68k-sun-sunos4.N
-     mips-dec-ultrix4.N
-     mips-sgi-irix4.N
-     sparc-sun-solaris2.N
-     sparc-sun-sunos4.N
-
-   Since no one has volunteered to test and fix the above
-configurations, these are not supported at the moment.  It's expected
-that these don't work anymore.  Porting the library is not hard.  If
-you are interested in doing a port, please contact the glibc
-maintainers by sending electronic mail to <bug-glibc@prep.ai.mit.edu>.
-
-   Each case of `iX86' can be `i386', `i486', `i586', or `i686'.  All
-of those configurations produce a library that can run on any of these
-processors.  The library will be optimized for the specified processor,
-but will not use instructions not available on all of them.
-
-   While no other configurations are supported, there are handy aliases
-for these few.  (These aliases work in other GNU software as well.)
-
-     decstation
-     hp320-bsd4.3 hp300bsd
-     i486-gnu
-     i586-linux
-     i386-sco
-     i386-sco3.2v4
-     i386-sequent-dynix
-     i386-svr4
-     news
-     sun3-sunos4.N sun3
-     sun4-solaris2.N sun4-sunos5.N
-     sun4-sunos4.N sun4
-
-Reporting Bugs
-==============
-
-   There are probably bugs in the GNU C library.  There are certainly
-errors and omissions in this manual.  If you report them, they will get
-fixed.  If you don't, no one will ever know about them and they will
-remain unfixed for all eternity, if not longer.
-
-   To report a bug, first you must find it.  Hopefully, this will be the
-hard part.  Once you've found a bug, make sure it's really a bug.  A
-good way to do this is to see if the GNU C library behaves the same way
-some other C library does.  If so, probably you are wrong and the
-libraries are right (but not necessarily).  If not, one of the libraries
-is probably wrong.
-
-   Once you're sure you've found a bug, try to narrow it down to the
-smallest test case that reproduces the problem.  In the case of a C
-library, you really only need to narrow it down to one library function
-call, if possible.  This should not be too difficult.
-
-   The final step when you have a simple test case is to report the bug.
-When reporting a bug, send your test case, the results you got, the
-results you expected, what you think the problem might be (if you've
-thought of anything), your system type, and the version of the GNU C
-library which you are using.  Also include the files `config.status'
-and `config.make' which are created by running `configure'; they will
-be in whatever directory was current when you ran `configure'.
-
-   If you think you have found some way in which the GNU C library does
-not conform to the ISO and POSIX standards (*note Standards and
-Portability::.), that is definitely a bug.  Report it!
-
-   Send bug reports to the Internet address <bug-glibc@prep.ai.mit.edu>
-or the UUCP path <mit-eddie!prep.ai.mit.edu!bug-glibc>.  If you have
-other problems with installation or use, please report those as well.
-
-   If you are not sure how a function should behave, and this manual
-doesn't tell you, that's a bug in the manual.  Report that too!  If the
-function's behavior disagrees with the manual, then either the library
-or the manual has a bug, so report the disagreement.  If you find any
-errors or omissions in this manual, please report them to the Internet
-address <bug-glibc-manual@prep.ai.mit.edu> or the UUCP path
-<mit-eddie!prep.ai.mit.edu!bug-glibc-manual>.
-
 Adding New Functions
 ====================
 
@@ -463,8 +156,8 @@ function is used.
    Some rare functions are only useful on specific systems and aren't
 defined at all on others; these do not appear anywhere in the
 system-independent source code or makefiles (including the `generic'
-and `stub' directories), only in the system-dependent `Makefile' in the
-specific system's subdirectory.
+directory), only in the system-dependent `Makefile' in the specific
+system's subdirectory.
 
    If you come across a file that is in one of the main source
 directories (`string', `stdio', etc.), and you want to write a machine-
@@ -560,73 +253,56 @@ manufacturer's name, and the operating system.  `configure' uses these
 to pick the list of system-dependent directories to look for.  If the
 `--nfp' option is *not* passed to `configure', the directory
 `MACHINE/fpu' is also used.  The operating system often has a "base
-operating system"; for example, if the operating system is `sunos4.1',
-the base operating system is `unix/bsd'.  The algorithm used to pick
-the list of directories is simple: `configure' makes a list of the base
+operating system"; for example, if the operating system is `Linux', the
+base operating system is `unix/sysv'.  The algorithm used to pick the
+list of directories is simple: `configure' makes a list of the base
 operating system, manufacturer, CPU type, and operating system, in that
 order.  It then concatenates all these together with slashes in
 between, to produce a directory name; for example, the configuration
-`sparc-sun-sunos4.1' results in `unix/bsd/sun/sparc/sunos4.1'.
-`configure' then tries removing each element of the list in turn, so
-`unix/bsd/sparc' and `sun/sparc' are also tried, among others.  Since
+`i686-linux-gnu' results in `unix/sysv/linux/i386/i686'.  `configure'
+then tries removing each element of the list in turn, so
+`unix/sysv/linux' and `unix/sysv' are also tried, among others.  Since
 the precise version number of the operating system is often not
 important, and it would be very inconvenient, for example, to have
-identical `sunos4.1.1' and `sunos4.1.2' directories, `configure' tries
+identical `irix6.2' and `irix6.3' directories, `configure' tries
 successively less specific operating system names by removing trailing
 suffixes starting with a period.
 
    As an example, here is the complete list of directories that would be
-tried for the configuration `sparc-sun-sunos4.1' (without the `--nfp'
-option):
-
-     sparc/fpu
-     unix/bsd/sun/sunos4.1/sparc
-     unix/bsd/sun/sunos4.1
-     unix/bsd/sun/sunos4/sparc
-     unix/bsd/sun/sunos4
-     unix/bsd/sun/sunos/sparc
-     unix/bsd/sun/sunos
-     unix/bsd/sun/sparc
-     unix/bsd/sun
-     unix/bsd/sunos4.1/sparc
-     unix/bsd/sunos4.1
-     unix/bsd/sunos4/sparc
-     unix/bsd/sunos4
-     unix/bsd/sunos/sparc
-     unix/bsd/sunos
-     unix/bsd/sparc
-     unix/bsd
-     unix/sun/sunos4.1/sparc
-     unix/sun/sunos4.1
-     unix/sun/sunos4/sparc
-     unix/sun/sunos4
-     unix/sun/sunos/sparc
-     unix/sun/sunos
-     unix/sun/sparc
-     unix/sun
-     unix/sunos4.1/sparc
-     unix/sunos4.1
-     unix/sunos4/sparc
-     unix/sunos4
-     unix/sunos/sparc
-     unix/sunos
-     unix/sparc
-     unix
-     sun/sunos4.1/sparc
-     sun/sunos4.1
-     sun/sunos4/sparc
-     sun/sunos4
-     sun/sunos/sparc
-     sun/sunos
-     sun/sparc
-     sun
-     sunos4.1/sparc
-     sunos4.1
-     sunos4/sparc
-     sunos4
-     sunos/sparc
-     sunos
-     sparc
+tried for the configuration `i686-linux-gnu' (with the `crypt' and
+`linuxthreads' add-on):
+
+     sysdeps/i386/elf
+     crypt/sysdeps/unix
+     linuxthreads/sysdeps/unix/sysv/linux
+     linuxthreads/sysdeps/pthread
+     linuxthreads/sysdeps/unix/sysv
+     linuxthreads/sysdeps/unix
+     linuxthreads/sysdeps/i386/i686
+     linuxthreads/sysdeps/i386
+     linuxthreads/sysdeps/pthread/no-cmpxchg
+     sysdeps/unix/sysv/linux/i386
+     sysdeps/unix/sysv/linux
+     sysdeps/gnu
+     sysdeps/unix/common
+     sysdeps/unix/mman
+     sysdeps/unix/inet
+     sysdeps/unix/sysv/i386/i686
+     sysdeps/unix/sysv/i386
+     sysdeps/unix/sysv
+     sysdeps/unix/i386
+     sysdeps/unix
+     sysdeps/posix
+     sysdeps/i386/i686
+     sysdeps/i386/i486
+     sysdeps/libm-i387/i686
+     sysdeps/i386/fpu
+     sysdeps/libm-i387
+     sysdeps/i386
+     sysdeps/wordsize-32
+     sysdeps/ieee754
+     sysdeps/libm-ieee754
+     sysdeps/generic
 
    Different machine architectures are conventionally subdirectories at
 the top level of the `sysdeps' directory tree.  For example,
@@ -651,6 +327,15 @@ hierarchy that are not for particular machine architectures.
      this directory is referred to in the `Implies' file in a machine
      architecture-specific directory, such as `m68k/Implies'.
 
+`libm-ieee754'
+     This directory contains an implementation of a mathematical library
+     usable on platforms which use IEEE 754 conformant floating-point
+     arithmetic.
+
+`libm-i387'
+     This is a special case.  Ideally the code should be in
+     `sysdeps/i386/fpu' but for various reasons it is kept aside.
+
 `posix'
      This directory contains implementations of things in the library in
      terms of POSIX.1 functions.  This includes some of the POSIX.1
@@ -670,8 +355,8 @@ hierarchy that are not for particular machine architectures.
 
     `unix/inet'
           This directory is for `socket' and related functions on Unix
-          systems.  The `inet' top-level subdirectory is enabled by
-          `unix/inet/Subdirs'.  `unix/common' implies `unix/inet'.
+          systems.  `unix/inet/Subdirs' enables the `inet' top-level
+          subdirectory.  `unix/common' implies `unix/inet'.
 
 `mach'
      This is the directory for things based on the Mach microkernel
@@ -695,10 +380,11 @@ subdirectories (and subdirectory trees) for various Unix variants.
 
    The functions which are system calls in most Unix systems are
 implemented in assembly code, which is generated automatically from
-specifications in the file `sysdeps/unix/syscalls.list'.  Some special
-system calls are implemented in files that are named with a suffix of
-`.S'; for example, `_exit.S'.  Files ending in `.S' are run through the
-C preprocessor before being fed to the assembler.
+specifications in files named `syscalls.list'.  There are several such
+files, one in `sysdeps/unix' and others in its subdirectories.  Some
+special system calls are implemented in files that are named with a
+suffix of `.S'; for example, `_exit.S'.  Files ending in `.S' are run
+through the C preprocessor before being fed to the assembler.
 
    These files all use a set of macros that should be defined in
 `sysdep.h'.  The `sysdep.h' file in `sysdeps/unix' partially defines
@@ -707,368 +393,12 @@ for the particular machine and operating system variant.  See
 `sysdeps/unix/sysdep.h' and the machine-specific `sysdep.h'
 implementations to see what these macros are and what they should do.
 
-   The system-specific makefile for the `unix' directory (that is, the
-file `sysdeps/unix/Makefile') gives rules to generate several files
-from the Unix system you are building the library on (which is assumed
-to be the target system you are building the library *for*).  All the
+   The system-specific makefile for the `unix' directory
+(`sysdeps/unix/Makefile') gives rules to generate several files from
+the Unix system you are building the library on (which is assumed to be
+the target system you are building the library *for*).  All the
 generated files are put in the directory where the object files are
 kept; they should not affect the source tree itself.  The files
 generated are `ioctls.h', `errnos.h', `sys/param.h', and `errlist.c'
 (for the `stdio' section of the library).
 
-Contributors to the GNU C Library
-=================================
-
-   The GNU C library was written originally by Roland McGrath.  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.
-
-   * 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 Torbj"orn Granlund.
-
-   * 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' and `nftw' function was contributed by Ulrich Drepper.
-
-   * The startup code to support SunOS shared libraries was contributed
-     by Tom Quinn.
-
-   * The `mktime' function was contributed by Paul Eggert.
-
-   * 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 and his many contributors.
-
-   * 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 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 contributed by Kazumoto Kojima.
-
-   * The floating-point printing function used by `printf' and friends
-     and the floating-point reading function used by `scanf', `strtod'
-     and friends were written by Ulrich Drepper.  The multi-precision
-     integer functions used in those functions are taken from GNU MP,
-     which was contributed by Torbj"orn Granlund.
-
-   * The internationalization support in the library, and the support
-     programs `locale' and `localedef', were written by Ulrich Drepper.
-     Ulrich Drepper adapted the support code for message catalogs
-     (`libintl.h', etc.) from the GNU `gettext' package, which he also
-     wrote.  He also contributed the `catgets' support and the entire
-     suite of multi-byte and wide-character support functions
-     (`wctype.h', `wchar.h', etc.).
-
-   * The implementations of the `nsswitch.conf' mechanism and the files
-     and DNS backends for it were designed and written by Ulrich
-     Drepper and Roland McGrath, based on a backend interface defined
-     by Peter Eriksson.
-
-   * The port to Linux i386/ELF (`i386-ANYTHING-linux') was contributed
-     by Ulrich Drepper, based in large part on work done in Hongjiu
-     Lu's Linux version of the GNU C Library.
-
-   * The port to Linux/m68k (`m68k-ANYTHING-linux') was contributed by
-     Andreas Schwab.
-
-   * The ports to Linux/ARM (`arm-ANYTHING-linuxaout') and ARM
-     standalone (`arm-ANYTHING-none'), as well as parts of the IPv6
-     support code, were contributed by Philip Blundell.
-
-   * Richard Henderson contributed the ELF dynamic linking code and
-     other support for the Alpha processor.
-
-   * David Mosberger-Tang contributed the port to Linux/Alpha
-     (`alpha-ANYTHING-linux').
-
-   * The port to Linux on PowerPC (`powerpc-ANYTHING-linux') was
-     contributed by Geoffrey Keating.
-
-   * Miles Bader wrote the argp argument-parsing package, and the
-     argz/envz interfaces.
-
-   * Stephen R. van den Berg contributed a highly-optimized `strstr'
-     function.
-
-   * Ulrich Drepper contributed the `hsearch' and `drand48' families of
-     functions; reentrant `...`_r'' versions of the `random' family;
-     System V shared memory and IPC support code; and several
-     highly-optimized string functions for iX86 processors.
-
-   * The math functions are taken from `fdlibm-5.1' by Sun
-     Microsystems, as modified by J.T. Conklin, Ian Lance Taylor,
-     Ulrich Drepper, Andreas Schwab, and Roland McGrath.
-
-   * The `libio' library used to implement `stdio' functions on some
-     platforms was written by Per Bothner and modified by Ulrich
-     Drepper.
-
-   * The Internet-related code (most of the `inet' subdirectory) and
-     several other miscellaneous functions and header files have been
-     included from 4.4 BSD with little or no modification.
-
-     All code incorporated from 4.4 BSD is under the following
-     copyright:
-
-               Copyright (C) 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:
-
-            1. Redistributions of source code must retain the above
-               copyright notice, this list of conditions and the
-               following disclaimer.
-
-            2. 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.
-
-            3. 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.
-
-            4. 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 ISO C
-     standard, but the functional code is Berkeley's.
-
-   * The Internet resolver code is taken directly from BIND 4.9.5,
-     which is under both the Berkeley copyright above and also:
-
-          Portions Copyright (C) 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 code to support Sun RPC is taken verbatim from Sun's
-     RPCSRC-4.0 distribution, and is covered by this copyright:
-
-               Copyright (C) 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
-
-   * 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 (C) 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 code for the database library `libdb' comes from the 2.3
-     release of Berkeley DB. That code is under the same copyright as
-     4.4 BSD and also:
-
-               Copyright (C) 1990, 1993, 1994, 1995, 1996, 1997
-               Sleepycat Software.  All rights reserved.
-
-          Redistribution and use in source and binary forms, with or
-          without modification, are permitted provided that the
-          following conditions are met:
-
-            1. Redistributions of source code must retain the above
-               copyright notice, this list of conditions and the
-               following disclaimer.
-
-            2. 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.
-
-            3. Redistributions in any form must be accompanied by
-               information on how to obtain complete source code for
-               the DB software and any accompanying software that uses
-               the DB software.  The source code must either be
-               included in the distribution or be available for no more
-               than the cost of distribution plus a nominal fee, and
-               must be freely redistributable under reasonable
-               conditions.  For an executable file, complete source
-               code means the source code for all modules it contains.
-               It does not mean source code for modules or files that
-               typically accompany the operating system on which the
-               executable file runs, e.g., standard library modules or
-               system header files.
-
-          THIS SOFTWARE IS PROVIDED BY SLEEPYCAT SOFTWARE "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
-          SLEEPYCAT SOFTWARE 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.
-
-               Portions copyright (C) 1995, 1996
-               The President and Fellows of Harvard University.
-               All rights reserved.
-
-          Redistribution and use in source and binary forms, with or
-          without modification, are permitted provided that the
-          following conditions are met:
-            1. Redistributions of source code must retain the above
-               copyright notice, this list of conditions and the
-               following disclaimer.
-
-            2. 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.
-
-            3. All advertising materials mentioning features or use of
-               this software must display the following acknowledgement:
-                     This product includes software developed by
-                    Harvard University  and its contributors.
-
-            4. 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 HARVARD AND ITS 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 HARVARD OR ITS 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.
-
-          For a license to use, redistribute or sell DB software under
-          conditions other than those described above, or to purchase
-          support for this software, please contact Sleepycat Software
-          at
-
-                Sleepycat Software
-                394 E. Riding Dr.
-                Carlisle, MA 01741
-                USA
-                +1-508-287-4781
-
-          or <db@sleepycat.com>.
-
-