mirror of git://sourceware.org/git/glibc.git
				
				
				
			
		
			
				
	
	
		
			1660 lines
		
	
	
		
			60 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			1660 lines
		
	
	
		
			60 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| GNU C Library NEWS -- history of user-visible changes.  2007-11-06
 | ||
| Copyright (C) 1992-2006, 2007 Free Software Foundation, Inc.
 | ||
| See the end for copying conditions.
 | ||
| 
 | ||
| Please send GNU C library bug reports via <http://sources.redhat.com/bugzilla/>
 | ||
| using `glibc' in the "product" field.
 | ||
| 
 | ||
| Version 2.8
 | ||
| 
 | ||
| * New locales: bo_CN, bo_IN.
 | ||
| 
 | ||
| Version 2.7
 | ||
| 
 | ||
| * More checking functions: fread, fread_unlocked, open*, mq_open.
 | ||
|   Implemented by Jakub Jelinek and Ulrich Drepper.
 | ||
| 
 | ||
| * Extend fortification to C++.  Implemented by Jakub Jelinek.
 | ||
| 
 | ||
| * Implement 'm' modifier for scanf.  Add stricter C99/SUS compliance
 | ||
|   by not recognizing 'a' as a modifier when those specs are requested.
 | ||
|   Implemented by Jakub Jelinek.
 | ||
| 
 | ||
| * PPC optimizations to math and string functions.
 | ||
|   Implemented by Steven Munroe.
 | ||
| 
 | ||
| * New interfaces: mkostemp, mkostemp64.  Like mkstemp* but allow additional
 | ||
|   options to be passed.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * More CPU set manipulation functions.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * New Linux interfaces: signalfd, eventfd, eventfd_read, and eventfd_write.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Handle private futexes in the NPTL implementation.
 | ||
|   Implemented by Jakub Jelinek and Ulrich Drepper.
 | ||
| 
 | ||
| * Add support for O_CLOEXEC.  Implement in Hurd.  Use throughout libc.
 | ||
|   Implemented by Roland McGrath and Ulrich Drepper.
 | ||
| 
 | ||
| * Linux/x86-64 vDSO support.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * SHA-256 and SHA-512 based password encryption.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * New locales: ber_DZ, ber_MA, en_NG, fil_PH, fur_IT, fy_DE, ha_NG, ig_NG,
 | ||
|   ik_CA, iu_CA, li_BE, li_NL, nds_DE, nds_NL, pap_AN, sc_IT, tk_TM, ug_CN,
 | ||
|   yo_NG.
 | ||
| 
 | ||
| + New iconv modules: MAC-CENTRALEUROPE, ISO-8859-9E, KOI8-RU.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| Version 2.6
 | ||
| 
 | ||
| * New Linux interfaces: epoll_pwait, sched_getcpu.
 | ||
| 
 | ||
| * New generic interfaces: strerror_l.
 | ||
| 
 | ||
| * nscd can now cache the services database.   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| 
 | ||
| Version 2.5
 | ||
| 
 | ||
| * For Linux, the sorting of addresses returned by getaddrinfo now also
 | ||
|   handles rules 3, 4, and 7 from RFC 3484.  I.e., all rules are handled.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Allow system admin to configure getaddrinfo with the /etc/gai.conf file.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * New Linux interfaces: splice, tee, sync_file_range, vmsplice.
 | ||
| 
 | ||
| * New iconv module for MIK.  Contributed by Alexander Shopov.
 | ||
| 
 | ||
| * For sites with broken group and/or passwd database, the auto-propagate
 | ||
|   option of nscd can prevent creating ID lookup entries from the results
 | ||
|   of a name lookup and vice versa.   This usually is no problem but some
 | ||
|   site might have problems with the default behavior.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Iterating over entire database in NIS can be slow.  With the
 | ||
|   SETENT_BATCH_READ option in /etc/default/nss a system admin can decide
 | ||
|   to trade time for memory.  The entire database will be read at once.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * The interfaces introduced in RFC 3542 have been implemented by
 | ||
|   Ulrich Drepper.
 | ||
| 
 | ||
| * Support for the new ELF hash table format was added by Ulrich Drepper.
 | ||
| 
 | ||
| * Support for priority inheritance mutexes added by Jakub Jelinek and
 | ||
|   Ulrich Drepper.
 | ||
| 
 | ||
| * Support for priority protected mutexes added by Jakub Jelinek.
 | ||
| 
 | ||
| * New locales: nr_ZA, pa_PK, ca_AD, ca_FR, ca_IT, el_CY, tr_CY, as_IN,
 | ||
|   or_IN, csb_PL, fy_NL, sr_ME.
 | ||
| 
 | ||
| Version 2.4
 | ||
| 
 | ||
| * More overflow detection functions.
 | ||
| 
 | ||
| * New iconv converters for IBM1025, IBM1122, IBM1137, IBM1153,
 | ||
|   IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158 contributed by Jiro Sekiba.
 | ||
| 
 | ||
|   More converters for IBM803, IBM901, IBM902, IBM921, IBM1008, IBM1097,
 | ||
|   IBM1112, IBM1123, IBM1130, IBM1140, IBM1141, IBM1142, IBM1143, IBM1144,
 | ||
|   IBM1145, IBM1146, IBM1147, IBM1148, IBM1149, IBM1166, IBM1167, IBM4517,
 | ||
|   IBM4899, IBM4909, IBM4971, IBM5347, IBM9030, IBM9066, IBM9448, IBM12712,
 | ||
|   IBM16804, IBM1364, IBM1371, IBM1388, IBM1390, and IBM1399 contributed
 | ||
|   by Masahide Washizawa.
 | ||
| 
 | ||
| * It is now possible to install audit libraries for the dynamic linker using
 | ||
|   LD_AUDIT.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * The LinuxThreads add-on, providing pthreads on Linux 2.4 kernels, is no
 | ||
|   longer supported.  The new NPTL implementation requires Linux 2.6 kernels.
 | ||
|   For a libc and libpthread that works well on Linux 2.4 kernels, we
 | ||
|   recommend using the stable 2.3 branch.
 | ||
| 
 | ||
| * The new function open_wmemstream acts like open_memstream,
 | ||
|   but uses a wchar_t wide character buffer.
 | ||
| 
 | ||
| * The new function ppoll is an improved version of poll, similar to pselect.
 | ||
| 
 | ||
| * New interfaces: fdopendir, openat, fstatat, fchmodat, fchownat,
 | ||
|   futimesat, faccessat, mkdirat, mkfifoat, mknodat,
 | ||
|   renameat, unlinkat, linkat, symlinkat, readlinkat.
 | ||
| 
 | ||
| * New Linux kernel system calls: unshare,
 | ||
|   inotify_init, inotify_add_watch, inotify_rm_watch.
 | ||
| 
 | ||
| * The euidaccess function is now also known by the alias eaccess,
 | ||
|   for compatibility with some other systems.
 | ||
| 
 | ||
| * Timezone data updated to 2006b version.
 | ||
| 
 | ||
| Version 2.3.6
 | ||
| 
 | ||
| * The following bugs are resolved with this release:
 | ||
| 
 | ||
|   38, 253, 549, 622, 653, 721, 758, 851, 877, 915, 934, 955, 961,
 | ||
|   1016, 1037, 1076, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
 | ||
|   1087, 1088, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098,
 | ||
|   1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109,
 | ||
|   1110, 1111, 1112, 1113, 1125, 1137, 1138, 1249, 1250, 1251, 1252,
 | ||
|   1253, 1254, 1350, 1358, 1394, 1438, 1498, 1534
 | ||
| 
 | ||
|   Visit <http://sources.redhat.com/bugzilla/> for the details of each bug.
 | ||
| 
 | ||
| * As of this release, GCC 4 can be used to compile the C Library.
 | ||
| 
 | ||
| * Timezone data updated to 2005m version.
 | ||
| 
 | ||
| Version 2.3.5
 | ||
| 
 | ||
| * The following bugs are resolved with this release:
 | ||
| 
 | ||
|   284, 592, 602, 626, 633, 640, 650, 661, 671, 681, 693, 700, 710, 719,
 | ||
|   722, 723, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
 | ||
|   737, 738, 739, 740, 741, 742, 743, 744, 745, 765, 767, 768, 769, 776,
 | ||
|   777, 787, 821, 822, 823, 825
 | ||
| 
 | ||
|   Visit <http://sources.redhat.com/bugzilla/> for the details of each bug.
 | ||
| 
 | ||
| Version 2.3.4
 | ||
| 
 | ||
| * Support for RFC 3678.  Real implementations exist only for Linux so far.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * nscd can now cache entries persistently.  Expiring entries are reloaded.
 | ||
|   For speedups the cache can be shared in memory with client processes.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * nscd can now perform SELinux checks.
 | ||
|   Implemented by Matthew Rickard <mjricka@epoch.ncsc.mil>.
 | ||
| 
 | ||
| * getaddrinfo queries are now cached.  Canonical name lookup is performed
 | ||
|   efficiently.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * The nothrow function attribute is used when headers are used by gcc when
 | ||
|   compiling C code.  This can avoid significant amounts of exception
 | ||
|   handling data.
 | ||
| 
 | ||
| * The malloc functions perform more error checking and are stricter when
 | ||
|   it comes to reacting on errors.  The default action is to terminate
 | ||
|   the process after showing an error message.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Reverse lookups of IPv6 addresses does not use bit string or .ip6.int
 | ||
|   lookups anymore unless explicitly requested.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Namespaces in ld.so are implemented.  DSOs can be loaded in separate
 | ||
|   namespaces using the new function dlmopen().  This feature is of course,
 | ||
|   like most other dynamic loading functionality, not available in statically
 | ||
|   linked applications.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Low-overhead boundary checking variants of string and some stdio functions
 | ||
|   were added.  These are to be used in conjunction with a gcc patch by
 | ||
|   Jakub Jelinek which adds calls to these functions if possible.
 | ||
|   Implemented by Jakub Jelinek and Ulrich Drepper.
 | ||
| 
 | ||
| * Old code for several operating systems and machine architectures that
 | ||
|   have not been in working condition in a long time have been removed from
 | ||
|   the main source tree maintained by the GNU C Library's maintainers.
 | ||
|   These files are now reside in the separate `ports' source module
 | ||
|   that is usable as an add-on when building the library.
 | ||
| 
 | ||
| Version 2.3.3
 | ||
| 
 | ||
| * New functions `dladdr1' and `dlinfo' in <dlfcn.h> provide more ways to
 | ||
|   interrogate the dynamic linker, compatible with the Solaris interface.
 | ||
| 
 | ||
| * ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64;
 | ||
|   implemented by Paul Mackerras, Steven Munroe, and Roland McGrath.
 | ||
| 
 | ||
| * getifaddrs now uses the netlink interface on Linux to get its information.
 | ||
|   Implemented by Thorsten Kukuk.
 | ||
| 
 | ||
| * getaddrinfo now implements AI_V4MAPPED, AI_ALL, and AI_ADDRCONF.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * support for non-executable stacks on x86 has been added.  Changes mostly
 | ||
|   by Roland McGrath.
 | ||
| 
 | ||
| * regex is now much faster for multibyte locales.  Changes by Jakub Jelinek
 | ||
|   and Ulrich Drepper.
 | ||
| 
 | ||
| * getaddrinfo now performs destination address selection according to
 | ||
|   RFC 3484.
 | ||
| 
 | ||
| Version 2.3.2
 | ||
| 
 | ||
| * Thread-safe interfaces for many functions that access locale data
 | ||
|   were added in version 2.3, but these features were omitted from NEWS.
 | ||
|   Many functions have variants with an `_l' suffix that take a `locale_t'
 | ||
|   object as a parameter rather than consulting the current locale.
 | ||
|   The new functions `newlocale', `duplocale', and `freelocale' in <locale.h>
 | ||
|   create and maintain `locale_t' objects.  Additionally, the new function
 | ||
|   `uselocale' sets "the current locale" (as used by functions not so
 | ||
|   parameterized) set for an individual thread.  These features were added
 | ||
|   in version 2.3, implemented by Ulrich Drepper and Roland McGrath.
 | ||
| 
 | ||
| * The functions getresuid, getresgid, setresuid, and setresgid, which
 | ||
|   have long been available on Linux, are now declared in <unistd.h>
 | ||
|   and are now also available on the Hurd.
 | ||
| 
 | ||
| * ELF thread-local storage support (TLS) now works on x86-64.
 | ||
| 
 | ||
| * The new dynamic string token $LIB is expanded in shared library names.
 | ||
|   This normally expands to lib, but on some 64-bit platforms to lib64 instead.
 | ||
| 
 | ||
| * Aldy Hernandez contributed complete software floating point support for
 | ||
|   PowerPC machines with no FPU.
 | ||
| 
 | ||
| * fexecve is implemented on Linux.
 | ||
| 
 | ||
| * The `btowc' function should work at least twice as fast due to
 | ||
|   specialized callbacks in the iconv modules.  Implemented by Bruno Haible.
 | ||
| 
 | ||
| * With approriate thread add-ons cancelable functions are now implemented
 | ||
|   in libc.so as well.  No need to call the function in libpthread.  This
 | ||
|   change allowed to finally disable the incorrect and expensive handling
 | ||
|   of weak definition in ld.so.
 | ||
| 
 | ||
| * Yet more PLT entries in libc.so have been removed.  We finally arrived
 | ||
|   at the bare minimum.  Startup times improved appropriately.
 | ||
| 
 | ||
| * Support for the new Linux/x86 system call interface was added.  The
 | ||
|   AT_SYSINFO auxiliary vector entry is recognized and handled.
 | ||
| 
 | ||
| Version 2.3
 | ||
| 
 | ||
| * Masahide Washizawa contributed iconv modules for IBM1163 and IBM1164
 | ||
|   charsets.
 | ||
| 
 | ||
| * iconv (the program and the interface) now accepts empty names (excluding
 | ||
|   options like //TRANSLIT) to mean "use charset of current locale".
 | ||
| 
 | ||
| * localedef can now transliterate characters in strings which are not in
 | ||
|   the provided charmap.  The information from the input locale is used.
 | ||
| 
 | ||
| * Prelinking support was added for ELF targets.  This requires additional
 | ||
|   tools and recent versions of the GNU binutils.  Contributed by Jakub Jelinek.
 | ||
| 
 | ||
| * Read-only stdio streams now use mmap to speed up operation by eliminating
 | ||
|   copying and buffer underflows.  To use add 'm' to the mode string of
 | ||
|   the fopen/fdopen/freopen call.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * The malloc functions were completely rewritten by Wolfram Gloger based
 | ||
|   on Doug Lea's malloc-2.7.0.c.
 | ||
| 
 | ||
| * Isamu Hasegawa contributed a completely new and POSIX-conformant
 | ||
|   implementation of regex.
 | ||
| 
 | ||
| * Bruno Haible upgraded the iconv and locale implementation to support
 | ||
|   Unicode 3.2.
 | ||
| 
 | ||
| * Contents of the LC_* and LANG environment variables in the CEN style are
 | ||
|   not recognized anymore.   It never was used.  Change by Ulrich Drepper.
 | ||
| 
 | ||
| * The runtime (ld.so, libc, libpthread for Linux) now can handle the ELF
 | ||
|   thread-local storage (TLS) ABI on some platforms.
 | ||
|   Changes by Ulrich Drepper.  SH support by Kaz Kojima.
 | ||
| 
 | ||
| * Bruno Haible contributed iconv converters for ISO-2022-JP-3, SHIFT JIS-X0213,
 | ||
|   EUC-JISX0213, and TSCII.
 | ||
| 
 | ||
| * New header <ifaddrs.h> with functions `getifaddrs' and `freeifaddrs':
 | ||
|   BSD-compatible interface for getting all network interface addresses.
 | ||
|   Implementation for IPv4 by Roland McGrath.
 | ||
| 
 | ||
| * Loading of locale data is faster due to the introduction of a locale
 | ||
|   archive.  Implemented by Roland McGrath and Ulrich Drepper.
 | ||
| 
 | ||
| * Startup times are significantly reduced by not using exported functions
 | ||
|   inside the library itself.  Changes by Jakub Jelinek, Roland McGrath,
 | ||
|   and Ulrich Drepper.
 | ||
| 
 | ||
| * Steven Munroe contributed a port to PowerPC64/Linux.
 | ||
| 
 | ||
| Version 2.2.6
 | ||
| 
 | ||
| * The Hurd now uses the GNU libio implementation of stdio rather than the
 | ||
|   old GNU stdio implementation, and uses a new ABI (libc.so.0.3).
 | ||
| 
 | ||
| * The Hurd on x86 now has the `ioperm' function and <sys/io.h> header file
 | ||
|   with the same behavior as the Linux system call of the same name.
 | ||
| 
 | ||
| Version 2.2.5
 | ||
| 
 | ||
| * Stephen Moshier implemented log2, log10, powl and cbrtl for the
 | ||
|   128-bit long double format.
 | ||
| 
 | ||
| * Masahide Washizawa contributed iconv modules for IBM1132, IBM1133, IBM1160,
 | ||
|   IBM1161, and IBM1162 charsets.
 | ||
| 
 | ||
| * Andreas Jaeger contributed a port to x86-64/Linux.
 | ||
| 
 | ||
| * Peter Bruin contributed a port to PowerPC/Hurd.
 | ||
| 
 | ||
| * libc functions using I/O streams now can handle wide-oriented streams
 | ||
|   as well.
 | ||
| 
 | ||
| * optimizations in the dynamic linker.  Binaries created by recent binutils
 | ||
|   versions start up quicker due to reduced time spent on relocations.
 | ||
| 
 | ||
| * Support for use of gcc3 added by Jakub Jelinek and HJ Lu.
 | ||
| 
 | ||
| Version 2.2.4
 | ||
| 
 | ||
| * Stephen Moshier implemented cosh, expm1, log1p, acos, sinh, tanh,
 | ||
|   asinh, atanh, j0 for the 128-bit long double format.
 | ||
| 
 | ||
| * Bruno Haible updated all the code handling Unicode in some form to
 | ||
|   support Unicode 3.1.
 | ||
| 
 | ||
| * Speed of regex for single-byte locales is back to previous levels.
 | ||
|   Patch by Isamu Hasegawa.
 | ||
| 
 | ||
| * Alpha, SPARC, and IA-64 now also using floating stacks.
 | ||
| 
 | ||
| * Startup time of internationalized applications greatly improved through
 | ||
|   iconv cache.  Use iconvconfig to generate the cache file.
 | ||
|   Contributed by Ulrich Drepper.
 | ||
| 
 | ||
| * The IA-64 specific part of ld.so was rewritten to eliminate some pretty
 | ||
|   severe performance problems.  Patch by David Mosberger.
 | ||
| 
 | ||
| * The Hurd port got a lot more functionality like AIO, various stdio
 | ||
|   extensions, etc.  Mainly done by Roland McGrath.
 | ||
| 
 | ||
| * mtrace can now lookup symbols in shared libraries.
 | ||
| 
 | ||
| Version 2.2.3
 | ||
| 
 | ||
| * Intel's IA-64 math library is largely integrated.  It provides fast and
 | ||
|   accurate implementatations for most basic and standard math functions
 | ||
|   in float, double, and long double format.
 | ||
| 
 | ||
| * Stephen Moshier implemented j0, j1, jn, y0, y1, yn, lgamma, erf, erfc,
 | ||
|   and asin for the 96-bit long double format and asin, log, tan for the
 | ||
|   128-bit long double format.
 | ||
| 
 | ||
| * The beginning of a last-bit accurate math library by IBM Haifa were added.
 | ||
|   The basic double functions exist today.  Contributed by Abraham Ziv
 | ||
|   <ziv@il.ibm.com>, Moshe Olshansky <olshansk@il.ibm.com>, Ealan Henis
 | ||
|   <ealan@il.ibm.com>, and Anna Reitman <reitman@il.ibm.com>.
 | ||
| 
 | ||
| * An asynchronous name lookup library was added.  The interface is designed
 | ||
|   after POSIX AIO.  The proposal was circulated beforehand to get comments.
 | ||
|   No negative ones came in.  Implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Port to S390/64bit contributed by Martin Schwidefsky
 | ||
|   <schwidefsky@de.ibm.com>.
 | ||
| 
 | ||
| * David Mosberger <davidm@hpl.hp.com> implemented the setcontext family
 | ||
|   of functions for Linux/IA-64.
 | ||
| 
 | ||
| * The RPC code is now thread safe.  Threads can now use the same service
 | ||
|   of different services at the same time.  Patch by Eric Norum
 | ||
|   <eric.norum@usask.ca> with some help by Ulrich Drepper.
 | ||
| 
 | ||
| * Martin Schwidefsky <schwidefsky@de.ibm.com> implemented the setcontext
 | ||
|   family of functions for Linux/S390.
 | ||
| 
 | ||
| * Ulrich Drepper <drepper@redhat.com> implemented the setcontext family
 | ||
|   of functions for Linux/x86.
 | ||
| 
 | ||
| * Port to Linux/CRIS contributed by Axis Communications.
 | ||
| 
 | ||
| Version 2.2.2
 | ||
| 
 | ||
| * Lots of headers were cleaned up.  Using the tool in the conform/ subdir
 | ||
|   we can now check for namespace violations and missing declarations.  The
 | ||
|   result is that almost all headers are now Unix-compliant (as defined in
 | ||
|   the upcoming XPG6).  The negative side is that some programs might need
 | ||
|   corrections, too, if they depend on the incorrect form of the headers in
 | ||
|   previous versions which defined too many symbols and included too many
 | ||
|   other headers.
 | ||
| 
 | ||
| * regex now handles multibyte character sets correctly.
 | ||
|   Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 | ||
| 
 | ||
| * iconv (the program) does now conform to the upcoming XPG6 and handles
 | ||
|   charmaps.  Instead of the charset names the path of charmaps can be
 | ||
|   provided and the conversion happens based on this data.
 | ||
|   Contributed by Ulrich Drepper.
 | ||
| 
 | ||
| * The locale program now provides detailed information about the installed
 | ||
|   locales.  While
 | ||
| 
 | ||
|     locale -a
 | ||
| 
 | ||
|   only lists the names of the supported locales
 | ||
| 
 | ||
|     locale -a --verbose
 | ||
| 
 | ||
|   provides details such as country, language, and codeset name.
 | ||
|   Contributed by Ulrich Drepper.
 | ||
| 
 | ||
| Version 2.2.1
 | ||
| 
 | ||
| * The gencat program now parses the input file according to the charset
 | ||
|   selected by the LC_CTYPE category.  This is important for stateful
 | ||
|   character sets.  To make generating catalogs easier there is a way
 | ||
|   to overwrite the charset selected by the locale: before the first
 | ||
|   message or $ quote line the catalog can contain a line like
 | ||
| 
 | ||
|     $ codeset=ISO-8859-2
 | ||
| 
 | ||
|   to select the charset (ISO-8859-2 in this case).
 | ||
| 
 | ||
|   Implemented by Shinya Hanataka and Ulrich Drepper.
 | ||
| 
 | ||
| * New codeset conversion modules: IBM-922  (Estonia PC codeset),
 | ||
|   IBM-1124 (Ukraine PC codeset), IBM-1129 (Vietnamese PC codeset).
 | ||
|   Contributed by Masahide Washizawa <washi@jp.ibm.com>.
 | ||
| 
 | ||
| * Optimized string functions for Alpha ev6 and ev67 by Richard Henderson
 | ||
|   <rth@redhat.com> and Rick Gorton <rick.gorton@alpha-processor.com>.
 | ||
| 
 | ||
| * The LANGUAGE environment variable is now ignored unless the locale is
 | ||
|   changed from the default "C" locale.
 | ||
| 
 | ||
| * The usual bug fixes.
 | ||
| 
 | ||
| Version 2.2
 | ||
| 
 | ||
| * Greg McGary added runtime support for bounds checking using gcc's
 | ||
|   new -fbounded-pointers option.  ix86 target is complete.  PowerPC
 | ||
|   is in progress.
 | ||
| 
 | ||
| * Thorsten Kukuk added secure mode support to nscd.
 | ||
| 
 | ||
| * The Berkeley db libraries have been removed.
 | ||
| 
 | ||
|   Related, the nss_db module is now in a separate package since it
 | ||
|   obviously requires a database library being available.
 | ||
| 
 | ||
| * Wide character I/O streams implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Functions from the extended socket API added by Ulrich Drepper.
 | ||
| 
 | ||
| * Functions feenableexcept and fedisableexcept to control the
 | ||
|   behaviour of individual exceptions have been added by Andreas Jaeger.
 | ||
| 
 | ||
| * ldconfig program added by Andreas Jaeger and Jakub Jelinek.
 | ||
| 
 | ||
| * The resolver code has been updated from bind 8.2.3-T5B which supports
 | ||
|   threads.  The integration was done by Andreas Jaeger, Adam D. Bradley,
 | ||
|   and Mark Kettenis.
 | ||
| 
 | ||
|   This change could in some situations effect backward compatibility.  Since
 | ||
|   now `_res' is a thread-local instead of a global variable, modifying it
 | ||
|   in one thread does not have any effect in other threads.
 | ||
| 
 | ||
|   The resolver library was also extended to allow IPv6 as the transport
 | ||
|   protocol for the requests.  This work was done by Stig Venaas.
 | ||
| 
 | ||
| * Compatibility code for K&R C compilers has been removed from the
 | ||
|   header files.  A ISO C compiler is needed to use the library
 | ||
|   (conforming to either C89 or C99 standard).
 | ||
| 
 | ||
| * Complete rewrite of the localedef program to support multibyte character
 | ||
|   sets.  Implement handling of ISO 14651 and ISO 14652.  Rewrite strcoll,
 | ||
|   strxfrm, wcscoll, and wcsxfrm functions.  Make isw*() functions work.
 | ||
|   Implemented by Ulrich Drepper.
 | ||
| 
 | ||
|   Bruno Haible significantly improved the generation and use of the data
 | ||
|   structures for the wide character tables.
 | ||
| 
 | ||
| * Plural handling in gettext implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * The utmp daemon has been removed.
 | ||
| 
 | ||
| * The port to MIPS-Linux has been finished by Andreas Jaeger.
 | ||
| 
 | ||
| * A port to Hitachi SH3 and SH4 has been contributed by Kazumoto Kojima
 | ||
|   and Yutaka Niibe.
 | ||
| 
 | ||
| * POSIX clocks and timers implemented by Kaz Kylheku and Ulrich Drepper.
 | ||
| 
 | ||
| * POSIX barriers implemented by Kaz Kylheku.
 | ||
| 
 | ||
| * POSIX spawn function family implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * POSIX spinlocks are now available.
 | ||
| 
 | ||
| * Timed wait functions for mutex, rwlock, and semaphores are implemented.
 | ||
| 
 | ||
| * the configure option --enable-kernel=X.Y.Z allows to strip out
 | ||
|   compatibility for kernel versions before X.Y.Z.  This is currently only
 | ||
|   implemented for Linux.
 | ||
| 
 | ||
| * the sockaddr_in6 structure changed.  The IPv6 working group added a new
 | ||
|   field sin6_scope_id.  This means that all programs using IPv6 should be
 | ||
|   recompiled.  Don't expect binary compatibility with previous glibc
 | ||
|   versions.
 | ||
| 
 | ||
| * various conversion modules for IBM character sets contributed by
 | ||
|   Masahide Washizawa.
 | ||
| 
 | ||
| * IA-64 port by Jes Sorensen and HJ Lu.
 | ||
| 
 | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | ||
| Compiling the GNU C Library for Linux/ia64
 | ||
| ******************************************
 | ||
| 
 | ||
|    Please refer to the file INSTALL in the same directory as you found
 | ||
| this file for general information about configuring and compiling
 | ||
| glibc.
 | ||
| 
 | ||
|    For general inquiries about glibc under Linux/ia64 please use the
 | ||
| following mailing list linux-ia64@linuxia64.org or one of the relevant
 | ||
| glibc mailing lists.
 | ||
| 
 | ||
| Recommended Tools for Compilation
 | ||
| =================================
 | ||
| 
 | ||
|    In order for glibc-2.2 to build correctly on the ia64 you need at
 | ||
| least the following versions of the GNU tools (the :
 | ||
| 
 | ||
|    * The Cygnus toolchain snapshot for the ia64 as of August 4
 | ||
|      including the provided set of patches.  It is however recommend
 | ||
|      you use the October 24 toolchain snapshot or a more recent version.
 | ||
| 
 | ||
|    OR alternatively you can try the following (the Cygnus toolchain is
 | ||
|    the recommended solution):
 | ||
| 
 | ||
|    * GCC and binutils, GAS and GNU LD out of CVS from
 | ||
|      sources.redhat.com as of August 28, 2000 or later.  The CVS tree
 | ||
|      may require special patches to work properly on the ia64.
 | ||
| 
 | ||
| Configuring and compiling GNU Libc for Linux/ia64
 | ||
| =================================================
 | ||
| 
 | ||
|    The library requires Linux kernel version 2.4.0-test4-000728 or
 | ||
| later to funtion properly. Besides that it support for debug libraries
 | ||
| is currently untested. Hence the following options
 | ||
| are required for configuring the library:
 | ||
| 
 | ||
|    --disable-debug --enable-kernel=2.4.0
 | ||
| 
 | ||
|    It is also important that you make sure the library picks up the
 | ||
| appropriate kernel header files, if you do not have recent enough
 | ||
| kernel headers in /usr/src/linux/include, you should use the
 | ||
| --with-headers=<path> option to specify the location.
 | ||
| 
 | ||
|    As an example I personally use the following options to configure
 | ||
| the library:
 | ||
| 
 | ||
|    --disable-debug
 | ||
|    --disable-cvs
 | ||
|    --enable-kernel=2.4.0
 | ||
|    --host=ia64-linux
 | ||
|    --enable-add-ons=yes
 | ||
|    --prefix=/usr
 | ||
|    --with-headers=/home/jes/linux/include
 | ||
| 
 | ||
| 
 | ||
| Good luck
 | ||
| 
 | ||
| Jes Sorensen <jes@linuxcare.com>,
 | ||
| November 14th, 2000
 | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | ||
| 
 | ||
| Version 2.1.3
 | ||
| 
 | ||
| * bug fixes
 | ||
| 
 | ||
| 
 | ||
| Version 2.1.2
 | ||
| 
 | ||
| * bug fixes
 | ||
| 
 | ||
| 
 | ||
| Version 2.1.1
 | ||
| 
 | ||
| * New ISO C 9x function _Exit, imaxabs, and imaxdiv are added.
 | ||
| 
 | ||
| * New xdr functions are added; some rpc functions are now 64bit clean.
 | ||
| 
 | ||
| * Fixed a number of bugs and memory leaks (especially in NIS+ code).
 | ||
| 
 | ||
| * Fixed known incompatibilities with glibc 2.0.
 | ||
| 
 | ||
| * New functions lock64, strchrnul, rawmemchr, getutmp and getutmpx.
 | ||
| 
 | ||
| * Optimized a number of functions (especially the ELF dynamic loader).
 | ||
| 
 | ||
| * Update timezone data files.
 | ||
| 
 | ||
| * lots of charmaps corrections
 | ||
| 
 | ||
| * some new locale definitions and charmaps
 | ||
| 
 | ||
| 
 | ||
| Version 2.1
 | ||
| 
 | ||
| * Richard Henderson corrected size of struct timeval on Linux/Alpha to
 | ||
|   conform to POSIX member type requirements.  Symbol versions have been
 | ||
|   adjusted as needed within the library, and for direct use by applications,
 | ||
|   but there is potential for problems if third-party libraries use
 | ||
|   struct timeval as part of their interface.  This does not present
 | ||
|   a problem for X and other "essential" system libraries.
 | ||
| 
 | ||
| * An additional locale model to support C++ Standard Library locale
 | ||
|   model and probably more was implemented by Ulrich Drepper.
 | ||
| 
 | ||
| * Eric Youngdale and Ulrich Drepper implemented versioning of objects on
 | ||
|   symbol level.
 | ||
| 
 | ||
| * Miles Bader provided the `argp' function family to support hierachical
 | ||
|   command line argument parsing, layered on top of getopt.
 | ||
| 
 | ||
| * strtod accepts new hexadecimal floating-point format from ISO C 9X.
 | ||
| 
 | ||
| * printf has two new specifiers %a and %A to print hexadecimal flaoting-point
 | ||
|   numbers.
 | ||
| 
 | ||
| * scanf recognizes the %a and %A format for scanning floating point numbers.
 | ||
| 
 | ||
| * the new headers <stdint.h> and <inttypes.h> from ISO C 9X provides
 | ||
|   information and interfaces for the available integer types.
 | ||
| 
 | ||
| * about 130 new math functions were added to implement the ISO C9x math
 | ||
|   library.
 | ||
| 
 | ||
| * the new header <complex.h> contains definitions of the complex math
 | ||
|   functions from ISO C 9X.
 | ||
| 
 | ||
| * the new header <tgmath.h> defines generic macros to use complex or
 | ||
|   real valued functions.
 | ||
| 
 | ||
| * Thorsten Kukuk provided an implementation for NIS+, securelevel 0, 1 and 2.
 | ||
| 
 | ||
| * Andreas Jaeger provided a test suite for the math library.
 | ||
| 
 | ||
| * Mark Kettenis implemented the utmpx interface and an utmp daemon.
 | ||
| 
 | ||
| * Ulrich Drepper added character set conversion functions (iconv).
 | ||
| 
 | ||
| * Optimized string functions have been added.
 | ||
| 
 | ||
| * The localedata addon is now part of glibc.
 | ||
| 
 | ||
| * An implementation of profiling shared libraries was added by Ulrich Drepper.
 | ||
| 
 | ||
| * Thorsten Kukuk and Ulrich Drepper provided an implementation for a caching
 | ||
|   daemon for NSS (nscd).
 | ||
| 
 | ||
|   Missing a better place here are some numbers on improvements.  Under
 | ||
|   Linux 2.1.125 un-tar-ing the kernel sources takes
 | ||
| 
 | ||
| 				  user	system	   wall
 | ||
| 
 | ||
|     using local files		12.19s	 6.88s	 22.91s
 | ||
| 
 | ||
|     using NIS			13.92s	 8.91s	 26.34s
 | ||
| 
 | ||
|     using NIS & nscd		10.37s	 7.34s	 25.30s
 | ||
| 
 | ||
|     using NIS+			27.57s	30.37s  640.46s
 | ||
| 
 | ||
|     using NIS+ & nscd           10.25s   7.83s   26.51s
 | ||
| 
 | ||
|     using NIS & old nscd [1]	13.83s	 8.32s	 29.60s
 | ||
| 
 | ||
|   Keep in mind that non-namelookup related operations dominate above times.
 | ||
|   It was just a common complain that using NIS+ unpacking the kernel is
 | ||
|   horribly slow.
 | ||
| 
 | ||
|   [1] The old nscd implementation is not available anymore since it was
 | ||
|   distributed with glibc up to version 2.0.98 and thus is now replaced.
 | ||
| 
 | ||
| * Tim Waugh provided an implementation of the POSIX.2 wordexp function family.
 | ||
| 
 | ||
| * Mark Kettenis provided a Hesiod NSS module.
 | ||
| 
 | ||
| * The ELF dynamic loader knows how to process dynamic string tokens ($ORIGIN
 | ||
|   and $PLATFORM) in RPATHs and similar strings (Ulrich Drepper).
 | ||
| 
 | ||
| * rcmd can now handle netgroups (Dick Streefland).
 | ||
| 
 | ||
| * A port to the ARM was contributed by Phil Blundell, Pat Beirne and Scott
 | ||
|   Bambrough.
 | ||
| 
 | ||
| * Support for the IPv6 protocol has been added to the socket API, as per the
 | ||
|   latest draft standards.
 | ||
| 
 | ||
| * Support for Linux 2.2 has been added.
 | ||
| 
 | ||
| * Interface changes relative to the latest 2.0.x release:
 | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | ||
| addseverity			NEW: Unix98
 | ||
| alphasort64			NEW: LFS
 | ||
| argp_err_exit_status		NEW: argp, GNU ext
 | ||
| argp_error			NEW: argp, GNU ext
 | ||
| argp_failure			NEW: argp, GNU ext
 | ||
| argp_help			NEW: argp, GNU ext
 | ||
| argp_parse			NEW: argp, GNU ext
 | ||
| argp_program_bug_address	NEW: argp, GNU ext
 | ||
| argp_program_version		NEW: argp, GNU ext
 | ||
| argp_program_version_hook	NEW: argp, GNU ext
 | ||
| argp_state_help			NEW: argp, GNU ext
 | ||
| argp_usage			NEW: argp, GNU ext
 | ||
| authdes_create			NEW: Secure RPC
 | ||
| authdes_getucred		NEW: Secure RPC
 | ||
| authdes_pk_create		NEW: Secure RPC
 | ||
| backtrace			NEW: GNU ext.
 | ||
| backtrace_symbols		NEW: GNU ext.
 | ||
| backtrace_symbols_fd		NEW: GNU ext.
 | ||
| cacos				NEW: ISO C 9x
 | ||
| cacosf				NEW: ISO C 9x
 | ||
| cacosh				NEW: ISO C 9x
 | ||
| cacoshf				NEW: ISO C 9x
 | ||
| cacoshl				NEW: ISO C 9x
 | ||
| cacosl				NEW: ISO C 9x
 | ||
| capget				NEW: kernel
 | ||
| capset				NEW: kernel
 | ||
| carg				NEW: ISO C 9x
 | ||
| cargf				NEW: ISO C 9x
 | ||
| cargl				NEW: ISO C 9x
 | ||
| casin				NEW: ISO C 9x
 | ||
| casinf				NEW: ISO C 9x
 | ||
| casinh				NEW: ISO C 9x
 | ||
| casinhf				NEW: ISO C 9x
 | ||
| casinhl				NEW: ISO C 9x
 | ||
| casinl				NEW: ISO C 9x
 | ||
| catan				NEW: ISO C 9x
 | ||
| catanf				NEW: ISO C 9x
 | ||
| catanh				NEW: ISO C 9x
 | ||
| catanhf				NEW: ISO C 9x
 | ||
| catanhl				NEW: ISO C 9x
 | ||
| catanl				NEW: ISO C 9x
 | ||
| cbc_crypt			NEW: Secure RPC
 | ||
| ccos				NEW: ISO C 9x
 | ||
| ccosf				NEW: ISO C 9x
 | ||
| ccosh				NEW: ISO C 9x
 | ||
| ccoshf				NEW: ISO C 9x
 | ||
| ccoshl				NEW: ISO C 9x
 | ||
| ccosl				NEW: ISO C 9x
 | ||
| cexp				NEW: ISO C 9x
 | ||
| cexpf				NEW: ISO C 9x
 | ||
| cexpl				NEW: ISO C 9x
 | ||
| cimag				NEW: ISO C 9x
 | ||
| cimagf				NEW: ISO C 9x
 | ||
| cimagl				NEW: ISO C 9x
 | ||
| clearerr_locked			REMOVED
 | ||
| clntunix_create			NEW: sunrpc ext
 | ||
| clog				NEW: ISO C 9x
 | ||
| clog10				NEW: ISO C 9x
 | ||
| clog10f				NEW: ISO C 9x
 | ||
| clog10l				NEW: ISO C 9x
 | ||
| clogf				NEW: ISO C 9x
 | ||
| clogl				NEW: ISO C 9x
 | ||
| conj				NEW: ISO C 9x
 | ||
| conjf				NEW: ISO C 9x
 | ||
| conjl				NEW: ISO C 9x
 | ||
| cpow				NEW: ISO C 9x
 | ||
| cpowf				NEW: ISO C 9x
 | ||
| cpowl				NEW: ISO C 9x
 | ||
| cproj				NEW: ISO C 9x
 | ||
| cprojf				NEW: ISO C 9x
 | ||
| cprojl				NEW: ISO C 9x
 | ||
| creal				NEW: ISO C 9x
 | ||
| crealf				NEW: ISO C 9x
 | ||
| creall				NEW: ISO C 9x
 | ||
| creat64				NEW: LFS
 | ||
| csin				NEW: ISO C 9x
 | ||
| csinf				NEW: ISO C 9x
 | ||
| csinh				NEW: ISO C 9x
 | ||
| csinhf				NEW: ISO C 9x
 | ||
| csinhl				NEW: ISO C 9x
 | ||
| csinl				NEW: ISO C 9x
 | ||
| csqrt				NEW: ISO C 9x
 | ||
| csqrtf				NEW: ISO C 9x
 | ||
| csqrtl				NEW: ISO C 9x
 | ||
| ctan				NEW: ISO C 9x
 | ||
| ctanf				NEW: ISO C 9x
 | ||
| ctanh				NEW: ISO C 9x
 | ||
| ctanhf				NEW: ISO C 9x
 | ||
| ctanhl				NEW: ISO C 9x
 | ||
| ctanl				NEW: ISO C 9x
 | ||
| des_setparity			NEW: Secure RPC
 | ||
| ecb_crypt			NEW: Secure RPC
 | ||
| endutxent			NEW: Unix98
 | ||
| exp10				NEW: ISO C 9x
 | ||
| exp10f				NEW: ISO C 9x
 | ||
| exp10l				NEW: ISO C 9x
 | ||
| exp2				NEW: ISO C 9x
 | ||
| exp2f				NEW: ISO C 9x
 | ||
| exp2l				NEW: ISO C 9x
 | ||
| fattach				NEW: STREAMS
 | ||
| fdetach				NEW: STREAMS
 | ||
| fdim				NEW: ISO C 9x
 | ||
| fdimf				NEW: ISO C 9x
 | ||
| fdiml				NEW: ISO C 9x
 | ||
| feclearexcept			NEW: ISO C 9x
 | ||
| fegetenv			NEW: ISO C 9x
 | ||
| fegetexceptflag			NEW: ISO C 9x
 | ||
| fegetround			NEW: ISO C 9x
 | ||
| feholdexcept			NEW: ISO C 9x
 | ||
| feof_locked			REMOVED
 | ||
| feraiseexcept			NEW: ISO C 9x
 | ||
| ferror_locked			REMOVED
 | ||
| fesetenv			NEW: ISO C 9x
 | ||
| fesetexceptflag			NEW: ISO C 9x
 | ||
| fesetround			NEW: ISO C 9x
 | ||
| fetestexcept			NEW: ISO C 9x
 | ||
| feupdateenv			NEW: ISO C 9x
 | ||
| fflush_locked			REMOVED
 | ||
| ffsl				NEW: GNU ext.
 | ||
| ffsll				NEW: GNU ext.
 | ||
| fgetpos64			NEW: LFS
 | ||
| fgets_unlocked			NEW: GNU ext.
 | ||
| fileno_locked			REMOVED
 | ||
| fma				NEW: ISO C 9x
 | ||
| fmaf				NEW: ISO C 9x
 | ||
| fmal				NEW: ISO C 9x
 | ||
| fmax				NEW: ISO C 9x
 | ||
| fmaxf				NEW: ISO C 9x
 | ||
| fmaxl				NEW: ISO C 9x
 | ||
| fmin				NEW: ISO C 9x
 | ||
| fminf				NEW: ISO C 9x
 | ||
| fminl				NEW: ISO C 9x
 | ||
| fmtmsg				NEW: Unix98
 | ||
| fopen64				NEW: LFS
 | ||
| fputc_locked			REMOVED
 | ||
| fputs_unlocked			NEW: GNU ext.
 | ||
| fread_unlocked			NEW: GNU ext.
 | ||
| freopen64			NEW: LFS
 | ||
| fseeko				NEW: Unix98
 | ||
| fsetpos64			NEW: LFS
 | ||
| fstatfs64			NEW: LFS
 | ||
| fstatvfs			NEW: Unix98
 | ||
| fstatvfs64			NEW: LFS
 | ||
| ftello				NEW: Unix98
 | ||
| ftello64			NEW: LFS
 | ||
| ftruncate64			NEW: LFS
 | ||
| ftw64				NEW: LFS
 | ||
| fwrite_unlocked			NEW: GNU ext.
 | ||
| gai_strerror			NEW: IPv6
 | ||
| gamma_r				REMOVED
 | ||
| gammaf_r			REMOVED
 | ||
| gammal_r			REMOVED
 | ||
| getchar_locked			REMOVED
 | ||
| getdate				NEW: Unix98
 | ||
| getdate_err			NEW: Unix98
 | ||
| getdate_r			NEW: GNU ext.
 | ||
| getmsg				NEW: STREAMS
 | ||
| getnameinfo			NEW: IPv6
 | ||
| getnetname			NEW: Secure RPC
 | ||
| getpmsg				NEW: STREAMS
 | ||
| getpt				NEW: Unix98 PTY
 | ||
| getrlimit64			NEW: LFS
 | ||
| getutxent			NEW: Unix98
 | ||
| getutxid			NEW: Unix98
 | ||
| getutxline			NEW: Unix98
 | ||
| glob64				NEW: GNU ext.
 | ||
| globfree64			NEW: GNU ext.
 | ||
| gnu_get_libc_release		NEW: GNU ext.
 | ||
| gnu_get_libc_version		NEW: GNU ext.
 | ||
| grantpt				NEW: Unix98 PTY
 | ||
| host2netname			NEW: Secure RPC
 | ||
| iconv				NEW: iconv
 | ||
| iconv_close			NEW: iconv
 | ||
| iconv_open			NEW: iconv
 | ||
| if_freenameindex		NEW: IPv6
 | ||
| if_indextoname			NEW: IPv6
 | ||
| if_nameindex			NEW: IPv6
 | ||
| if_nametoindex			NEW: IPv6
 | ||
| in6addr_any			NEW: IPv6
 | ||
| in6addr_loopback		NEW: IPv6
 | ||
| inet6_isipv4mapped		NEW: IPv6
 | ||
| isastream			NEW: STREAMS
 | ||
| iswblank			NEW: GNU ext.
 | ||
| key_decryptsession		NEW: Secure RPC
 | ||
| key_decryptsession_pk		NEW: Secure RPC
 | ||
| key_encryptsession		NEW: Secure RPC
 | ||
| key_encryptsession_pk		NEW: Secure RPC
 | ||
| key_gendes			NEW: Secure RPC
 | ||
| key_get_conv			NEW: Secure RPC
 | ||
| key_secretkey_is_set		NEW: Secure RPC
 | ||
| key_setnet			NEW: Secure RPC
 | ||
| key_setsecret			NEW: Secure RPC
 | ||
| llrint				NEW: ISO C 9x
 | ||
| llrintf				NEW: ISO C 9x
 | ||
| llrintl				NEW: ISO C 9x
 | ||
| llround				NEW: ISO C 9x
 | ||
| llroundf			NEW: ISO C 9x
 | ||
| llroundl			NEW: ISO C 9x
 | ||
| log2				NEW: ISO C 9x
 | ||
| log2f				NEW: ISO C 9x
 | ||
| log2l				NEW: ISO C 9x
 | ||
| lrint				NEW: ISO C 9x
 | ||
| lrintf				NEW: ISO C 9x
 | ||
| lrintl				NEW: ISO C 9x
 | ||
| lround				NEW: ISO C 9x
 | ||
| lroundf				NEW: ISO C 9x
 | ||
| lroundl				NEW: ISO C 9x
 | ||
| lseek64				NEW: LFS
 | ||
| makecontext			NEW: Unix98
 | ||
| mempcpy				NEW: GNU ext.
 | ||
| mmap64				NEW: LFS
 | ||
| moncontrol			REMOVED
 | ||
| modify_ldt			NEW: kernel
 | ||
| nan				NEW: ISO C 9x
 | ||
| nanf				NEW: ISO C 9x
 | ||
| nanl				NEW: ISO C 9x
 | ||
| nearbyint			NEW: ISO C 9x
 | ||
| nearbyintf			NEW: ISO C 9x
 | ||
| nearbyintl			NEW: ISO C 9x
 | ||
| netname2host			NEW: Secure RPC
 | ||
| netname2user			NEW: Secure RPC
 | ||
| nexttoward			NEW: ISO C 9x
 | ||
| nexttowardf			NEW: ISO C 9x
 | ||
| nexttowardl			NEW: ISO C 9x
 | ||
| nftw				NEW: Unix98
 | ||
| nftw64				NEW: LFS
 | ||
| open64				NEW: LFS
 | ||
| passwd2des			NEW: Secure RPC
 | ||
| pow10				NEW: GNU ext.
 | ||
| pow10f				NEW: GNU ext.
 | ||
| pow10l				NEW: GNU ext.
 | ||
| pread				NEW: Unix98
 | ||
| pread64				NEW: LFS
 | ||
| printf_size			NEW: GNU ext.
 | ||
| printf_size_info		NEW: GNU ext.
 | ||
| profil_counter			REMOVED
 | ||
| pthread_mutexattr_getkind_np	REPLACED
 | ||
| pthread_mutexattr_setkind_np	REPLACED
 | ||
| ptsname				NEW: Unix98 PTY
 | ||
| ptsname_r			NEW: Unix98 PTY
 | ||
| putc_locked			REMOVED
 | ||
| putchar_locked			REMOVED
 | ||
| putgrent			NEW: GNU ext.
 | ||
| putmsg				NEW: STREAMS
 | ||
| putpmsg				NEW: STREAMS
 | ||
| pututxline			NEW: Unix98
 | ||
| pwrite				NEW: Unix98
 | ||
| pwrite64			NEW: LFS
 | ||
| readdir64			NEW: LFS
 | ||
| readdir64_r			NEW: LFS
 | ||
| remquo				NEW: ISO C 9x
 | ||
| remquof				NEW: ISO C 9x
 | ||
| remquol				NEW: ISO C 9x
 | ||
| round				NEW: ISO C 9x
 | ||
| roundf				NEW: ISO C 9x
 | ||
| roundl				NEW: ISO C 9x
 | ||
| rtime				NEW: GNU ext.
 | ||
| scalbln				NEW: ISO C 9x
 | ||
| scalblnf			NEW: ISO C 9x
 | ||
| scalblnl			NEW: ISO C 9x
 | ||
| scandir64			NEW: LFS
 | ||
| sendfile			NEW: kernel
 | ||
| setcontext			NEW: Unix98
 | ||
| setrlimit64			NEW: LFS
 | ||
| setutxent			NEW: Unix98
 | ||
| sighold				NEW: Unix98
 | ||
| sigignore			NEW: Unix98
 | ||
| sigqueue			NEW: POSIX.1b
 | ||
| sigrelse			NEW: Unix98
 | ||
| sigset				NEW: POSIX.1b
 | ||
| sigtimedwait			NEW: POSIX.1b
 | ||
| sigwaitinfo			NEW: POSIX.1b
 | ||
| sincos				NEW: GNU ext.
 | ||
| sincosf				NEW: GNU ext.
 | ||
| sincosl				NEW: GNU ext.
 | ||
| statfs64			NEW: LFS
 | ||
| statvfs				NEW: Unix98
 | ||
| statvfs64			NEW: LFS
 | ||
| strcasestr			NEW: GNU ext.
 | ||
| strtoimax			NEW: ISO C 9x
 | ||
| strtoumax			NEW: ISO C 9x
 | ||
| strverscmp			NEW: GNU ext.
 | ||
| svcauthdes_stats		NEW: Secure RPC
 | ||
| svcunix_create			NEW: sunrpc etx
 | ||
| svcunixfd_create		NEW: sunrpc ext
 | ||
| swapcontext			NEW: Unix98
 | ||
| tcgetsid			NEW: Unix98 PTY
 | ||
| tdestroy			NEW: GNU ext.
 | ||
| tgamma				NEW: ISO C 9x
 | ||
| tgammaf				NEW: ISO C 9x
 | ||
| tgammal				NEW: ISO C 9x
 | ||
| tmpfile64			NEW: LFS
 | ||
| trunc				NEW: ISO C 9x
 | ||
| truncate64			NEW: LFS
 | ||
| truncf				NEW: ISO C 9x
 | ||
| truncl				NEW: ISO C 9x
 | ||
| umount2				NEW: kernel
 | ||
| unlockpt			NEW: Unix98 PTY
 | ||
| updwtmpx			NEW: Unix98
 | ||
| user2netname			NEW: Secure RPC
 | ||
| utmpxname			NEW: Unix98
 | ||
| versionsort			NEW: GNU ext.
 | ||
| versionsort64			NEW: GNU ext.
 | ||
| waitid				NEW: Unix98
 | ||
| wcscasecmp			NEW: GNU ext.
 | ||
| wcsncasecmp			NEW: GNU ext.
 | ||
| wcsnlen				NEW: GNU ext.
 | ||
| wcstoimax			NEW: ISO C 9x
 | ||
| wcstoll				NEW: ISO C 9x
 | ||
| wcstoull			NEW: ISO C 9x
 | ||
| wcstoumax			NEW: ISO C 9x
 | ||
| wcswcs				NEW: Unix98
 | ||
| wordexp				NEW: POSIX.2
 | ||
| wordfree			NEW: POSIX.2
 | ||
| write_profiling			REMOVED
 | ||
| xdecrypt			NEW: Secure RPC
 | ||
| xdr_authdes_cred		NEW: Secure RPC
 | ||
| xdr_authdes_verf		NEW: Secure RPC
 | ||
| xdr_cryptkeyarg			NEW: Secure RPC
 | ||
| xdr_cryptkeyarg2		NEW: Secure RPC
 | ||
| xdr_cryptkeyres			NEW: Secure RPC
 | ||
| xdr_getcredres			NEW: Secure RPC
 | ||
| xdr_key_netstarg		NEW: Secure RPC
 | ||
| xdr_key_netstres		NEW: Secure RPC
 | ||
| xdr_keybuf			NEW: Secure RPC
 | ||
| xdr_keystatus			NEW: Secure RPC
 | ||
| xdr_netnamestr			NEW: Secure RPC
 | ||
| xdr_sizeof			NEW: Secure RPC
 | ||
| xdr_unixcred			NEW: sunrpc ext
 | ||
| xencrypt			NEW: Secure RPC
 | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | ||
| 
 | ||
| Version 2.0.6
 | ||
| 
 | ||
| * more bug fixes
 | ||
| 
 | ||
| 
 | ||
| Version 2.0.5
 | ||
| 
 | ||
| * more bug fixes
 | ||
| 
 | ||
| * inet_ntoa is thread-safe
 | ||
| 
 | ||
| * updwtmp is moved from libutil to libc
 | ||
| 
 | ||
| * rewrite of cbrt function
 | ||
| 
 | ||
| * update of timezone data
 | ||
| 
 | ||
| Version 2.0.4
 | ||
| 
 | ||
| * more bug fixes
 | ||
| 
 | ||
| Version 2.0.3
 | ||
| 
 | ||
| * more bug fixes
 | ||
| 
 | ||
| Version 2.0.2
 | ||
| 
 | ||
| * more bug fixes
 | ||
| 
 | ||
| * add atoll function
 | ||
| 
 | ||
| * fix complex problems in Berkeley DB code
 | ||
| 
 | ||
| * fix math functions
 | ||
| 
 | ||
| Version 2.0.1
 | ||
| 
 | ||
| * fixed lots of header problems (especially Linux/GNU specific)
 | ||
| 
 | ||
| * dynamic loader preserves all registers
 | ||
| 
 | ||
| * Roland McGrath provided support for handling of auxiliary objects in
 | ||
|   the ELF dynamic loader.
 | ||
| 
 | ||
| * support for parallel builds is improved
 | ||
| 
 | ||
| Version 2.0
 | ||
| 
 | ||
| * GNU extensions are no longer declared by default.  To enable them you
 | ||
|   must define the macro `_GNU_SOURCE' in your program or compile with
 | ||
|   `-D_GNU_SOURCE'.
 | ||
| 
 | ||
| * The library has changed from using GNU ld symbol aliases to using weak
 | ||
|   symbols where available.  The ELF object file format supports weak
 | ||
|   symbols; GNU ld also supports weak symbols in the a.out format.  (There
 | ||
|   is also now support for other GNU ld extensions in ELF.  Use the
 | ||
|   `--with-elf' option to configure to indicate you have ELF, and
 | ||
|   `--with-gnu-ld' if using GNU ld.)  This change resulted in the deletion
 | ||
|   of many files which contained only symbol aliases, reducing the size of
 | ||
|   the source and the compiled library; many other files were renamed to
 | ||
|   less cryptic names previously occupied by the symbol alias files.
 | ||
|   There is a new header file <elf.h> for programs which operate on
 | ||
|   files in the ELF format.
 | ||
| 
 | ||
| * Converted to Autoconf version 2, so `configure' has more options.
 | ||
|   Run `configure --help' to see the details.
 | ||
| 
 | ||
| * The library can now be configured to build profiling, highly-optimized
 | ||
|   (but undebuggable), and/or shared libraries (ELF with GNU ld only).  The
 | ||
|   `--enable-profile', `--enable-omitfp', and `--enable-shared' options to
 | ||
|   `configure' enable building these extra libraries.  The shared library is
 | ||
|   built by default when using both ELF and GNU ld.  When shared libraries
 | ||
|   are enabled, the new library `-ldl' is available for arbitrary run-time
 | ||
|   loading of shared objects; its interface is defined in <dlfcn.h>.  The
 | ||
|   new header file <link.h> gives access to the internals of the run-time
 | ||
|   dynamic linker, `ld.so'.  The shell script `ldd' is similar to the
 | ||
|   application of same name on other systems and it provides information
 | ||
|   about dynamically linked binaries.
 | ||
| 
 | ||
| * The C library now provides the run-time support code for profiling
 | ||
|   executables compiled with `-pg'.  Programs can control the profiling code
 | ||
|   through the interface in <sys/gmon.h>.  The `gmon.out' files written by
 | ||
|   the GNU C library can be read only by GNU `gprof' (from GNU binutils);
 | ||
|   the support for this file format was contributed by David Mosberger-Tang.
 | ||
| 
 | ||
| * The math code has been replaced with a math library based on fdlibm from
 | ||
|   Sun, and modified by JT Conklin and Ulrich Drepper with i387 support, by
 | ||
|   Ian Taylor with `float' functions and by Ulrich Drepper with `long double'
 | ||
|   functions.  The math functions now reside in a separate library,  so
 | ||
|   programs using them will need to use `-lm' their linking commands.
 | ||
| 
 | ||
| * John C. Bowman contributed optimized ix87 assembler inline functions.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed support for an `/etc/nsswitch.conf'
 | ||
|   mechanism similar to that found in Solaris 2.  This is now used for the
 | ||
|   group, passwd, hosts, networks, services, protocols, rpc, ethers,
 | ||
|   shadow, netgroup, publickey, and alias databases.  The `nsswitch.conf'
 | ||
|   file controls what services are used for each individual database.  This
 | ||
|   works by loading shared libraries with names specified in `nsswitch.conf',
 | ||
|   so service modules can be changed or added at any time without even
 | ||
|   relinking any program.  Currently there are the file, db, and NIS based
 | ||
|   NSS services available.
 | ||
| 
 | ||
| * The new functions `strtoq' and `strtouq' parse integer values from
 | ||
|   strings, like `strtol' and `strtoul', but they return `long long int' and
 | ||
|   `unsigned long long int' values, respectively (64-bit quantities).
 | ||
| 
 | ||
| * The new functions `strtof' and `strtold' parse floating-point values from
 | ||
|   strings, like `strtod', but they return `float' and `long double' values,
 | ||
|   respectively (on some machines `double' and `long double' are the same).
 | ||
| 
 | ||
| * Ulrich Drepper has contributed new implementations of the floating-point
 | ||
|   printing and reading code used in the `printf' family of functions and
 | ||
|   `strtod', `strtof', and `strtold'.  These new functions are perfectly
 | ||
|   accurate, and much faster than the old ones.
 | ||
| 
 | ||
| * The implementation of the POSIX locale model was completely rewritten by
 | ||
|   Ulrich Drepper.  This includes the new programs `localedef' and `locale'
 | ||
|   to compile the POSIX locale definition.
 | ||
| 
 | ||
| * The former dummy implementations of the strcoll and strxfrm function are
 | ||
|   now replaced by fully functional code contributed by Ulrich Drepper.  The
 | ||
|   collation information comes from the POSIX locale definitions.
 | ||
| 
 | ||
| * The new header <langinfo.h> defines an interface for accessing
 | ||
|   various locale-dependent data (using the locale chosen with `setlocale').
 | ||
| 
 | ||
| * Ulrich Drepper has contributed a new suite of functions for operation on
 | ||
|   wide-character and multibyte-character strings, in <wchar.h>;
 | ||
|   and classification and case conversion of wide characters, in <wctype.h>.
 | ||
|   These new functions are conforming to the ISO C, Amendement 1 specification.
 | ||
| 
 | ||
| * There is now a second implementation of the standard I/O library available.
 | ||
|   It comes from GNU libg++ as was written by Per Bothner, heavily modified
 | ||
|   by Hongjiu Lu and made thread safe by Ulrich Drepper.
 | ||
| 
 | ||
| * You can now use positional parameter specifications in format strings
 | ||
|   for the `printf' and `scanf' families of functions.  For example,
 | ||
|   `printf ("Number %2$d, Mr %1$s\n", "Jones", 6);'' prints
 | ||
|   ``Number 6, Mr Jones''.  This is mainly useful when providing different
 | ||
|   format strings for different languages, whose grammars may dictate
 | ||
|   different orderings of the values being printed.  To support this
 | ||
|   feature, the interface for `register_printf_handler' has changed; see
 | ||
|   the header file <printf.h> for details.
 | ||
| 
 | ||
| * The `printf' and `scanf' families of functions now understand a new
 | ||
|   formatting flag for numeric conversions: the ' flag (e.g. %'d or %'f) says
 | ||
|   to group numbers as indicated by the locale; for `scanf' and friends, this
 | ||
|   says to accept as valid only a number with all the proper grouping
 | ||
|   separators in the right places.  In the default "C" locale, numbers are
 | ||
|   not grouped; but locales for specific countries will define the usual
 | ||
|   conventions (i.e. separate thousands with `,' in the US locale).
 | ||
| 
 | ||
| * The pgrp functions have been regularized, slightly incompatibly but much
 | ||
|   less confusingly.  The core functions are now `getpgid' and `setpgid',
 | ||
|   which take arguments for the PID to operate on; the POSIX.1 `getpgrp' (no
 | ||
|   argument) and BSD `setpgrp' (identical to `setpgid') functions are
 | ||
|   provided for compatibility.  There is no longer an incompatible `getpgrp'
 | ||
|   with an argument declared under _BSD_SOURCE; no BSD code uses it.
 | ||
| 
 | ||
| * The new header file <fts.h> and suite of functions simplify programs that
 | ||
|   operate on directory trees.  This code comes from 4.4 BSD.
 | ||
| 
 | ||
| * The resolver code has been updated from the BIND 4.9.5-P1 release.
 | ||
|   Parts of the code were heavily modified by Ulrich Drepper to fit in the
 | ||
|   NSS scheme used in glibc.
 | ||
| 
 | ||
| * There is a new malloc debugging hook `__memalign_hook'.
 | ||
| 
 | ||
| * There are new typedefs `ushort' for `unsigned short int' and `uint' for
 | ||
|   `unsigned int' in <sys/types.h>.  These are for compatibility only and
 | ||
|   their use is discouraged.
 | ||
| 
 | ||
| * The `-lmcheck' library to enable standard malloc debugging hooks is now
 | ||
|   done differently, so that it works even without GNU ld.
 | ||
| 
 | ||
| * New function `euidaccess' checks allowed access to a file like `access',
 | ||
|   but using the effective IDs instead of the real IDs.
 | ||
| 
 | ||
| * The time zone data files have been updated for the latest and greatest
 | ||
|   local time conventions of the countries of the world.
 | ||
| 
 | ||
| * The new function `dirfd' extracts the file descriptor used by a DIR stream;
 | ||
|   see <dirent.h>.
 | ||
| 
 | ||
| * The new functions `ecvt', `fcvt', and `gcvt' provide an obsolete interface
 | ||
|   for formatting floating-point numbers.  They are provided only for
 | ||
|   compatibility; new programs should use `sprintf' instead.  There are
 | ||
|   also equivalent function for the `long double' floating-point type and
 | ||
|   all functions also exist in a reentrant form.
 | ||
| 
 | ||
| * The new auxiliary library `-lutil' from 4.4 BSD contains various
 | ||
|   functions for maintaining the login-record files (primarily of use to
 | ||
|   system programs such as `login'), and convenient functions for
 | ||
|   allocating and initializing a pseudo-terminal (pty) device.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed new support for System V style
 | ||
|   shared memory and IPC on systems that support it.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed several miscellaneous new functions found
 | ||
|   in System V: The `hsearch' family of functions provide an effective
 | ||
|   implementation of hash tables; `a64l' and `l64a' provide a very simple
 | ||
|   binary to ASCII mapping; `drand48' and friends provide a 48-bit random
 | ||
|   number generator.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed new reentrant counterparts for the
 | ||
|   `random' and `hsearch' families of functions; `random_r', `hsearch_r', etc.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed new, highly-optimized versions of several
 | ||
|   string functions for the i486/Pentium family of processors.
 | ||
| 
 | ||
| * Ulrich Drepper has updated the Linux-specific code, based largely
 | ||
|   on work done in Hongjiu Lu's version of GNU libc for Linux.
 | ||
|   The GNU library now supports Linux versions 2.0.10 and later,
 | ||
|   using the ELF object file format (i[3456]86-*-linux).
 | ||
| 
 | ||
| * Andreas Schwab has ported the C library to Linux/m68k (m68k-*-linux).
 | ||
| 
 | ||
| * David Mosberger-Tang and Richard Henderson have ported the C library
 | ||
|   to Linux/Alpha (alpha-*-linux).  Richard Henderson contributed the
 | ||
|   dynamic linking support for ELF/Alpha.
 | ||
| 
 | ||
| * Richard Henderson contributed several Alpha optimized assembler function
 | ||
|   for arithmetic and string handling.
 | ||
| 
 | ||
| * Ulrich Drepper has contributed a new set of message catalog functions to
 | ||
|   support multiple languages using the <libintl.h> interface, for use with
 | ||
|   his new package GNU gettext.  Translation volunteers have contributed
 | ||
|   catalogs of the library's messages in Spanish, German, and Korean.
 | ||
| 
 | ||
| * For compatibility with XPG4, Ulrich Drepper has contributed the `gencat'
 | ||
|   program and the `catgets' function for reading the catalog files it
 | ||
|   creates.  (The <libintl.h> interface is preferred; we include the
 | ||
|   <nl_types.h> interface using `catgets' only for source compatibility with
 | ||
|   programs already written to use it.)
 | ||
| 
 | ||
| * New header file <values.h> gives SVID-compatible names for <limits.h>
 | ||
|   constants.
 | ||
| 
 | ||
| * Various new macros, declarations, and small header files for compatibility
 | ||
|   with 4.4 BSD.
 | ||
| 
 | ||
| * New function `group_member' is a convenient way to check if a process has
 | ||
|   a given effective group ID.
 | ||
| 
 | ||
| * When using GCC 2.7 and later, the socket functions are now declared in a
 | ||
|   special way so that passing an argument of type `struct sockaddr_in *',
 | ||
|   `struct sockaddr_ns *', or `struct sockaddr_un *' instead of the generic
 | ||
|   `struct sockaddr *' type, does not generate a type-clash warning.
 | ||
| 
 | ||
| * New function `error' declared in header file <error.h> is a convenient
 | ||
|   function for printing error messages and optionally exiting; this is the
 | ||
|   canonical function used in GNU programs.  The new functions `err', `warn',
 | ||
|   and friends in header file <err.h> are the canonical 4.4 BSD interface for
 | ||
|   doing the same thing.
 | ||
| 
 | ||
| * The <glob.h> interface has several new flags from 4.4 BSD that extend the
 | ||
|   POSIX.2 `glob' function to do ~ and {...} expansion.
 | ||
| 
 | ||
| * New function `unsetenv' complements `setenv' for compatibility with 4.4 BSD.
 | ||
|   `clearenv' which is used in POSIX.9 is also available.
 | ||
| 
 | ||
| * New function `getsid' returns session ID number on systems that support it.
 | ||
| 
 | ||
| * We have incorporated the 4.4 BSD `db' library (version 1.85).  New header
 | ||
|   files <db.h> and <mpool.h> provide a rich set of functions for several
 | ||
|   types of simple databases stored in memory and in files, and <ndbm.h> is
 | ||
|   an old `ndbm'-compatible interface using the `db' functions.  Link with
 | ||
|   `-ldb' to get these functions.
 | ||
| 
 | ||
| * New macro `strdupa' copies a string like `strdup', but uses local stack
 | ||
|   space from `alloca' instead of dynamic heap space from `malloc'.
 | ||
| 
 | ||
| * New function `strnlen' is like `strlen' but searches only a given maximum
 | ||
|   number of characters for the null terminator.  `stpncpy', `strndup' and
 | ||
|   `strndupa' are similar variants for the `stpcpy', `strdup' and `strdupa'
 | ||
|   function.
 | ||
| 
 | ||
| * New function `statfs' in header <sys/statfs.h>.
 | ||
| 
 | ||
| * The new <argz.h> and <envz.h> interfaces contributed by Miles Bader
 | ||
|   provide convenient functions for operating on blocks of null-terminated
 | ||
|   strings.
 | ||
| 
 | ||
| * A new suite of functions in <utmp.h> handle all the details of reading
 | ||
|   and writing the utmp file.
 | ||
| 
 | ||
| * An implementation of the NIS/YP(tm) based NSS service was contributed by
 | ||
|   Thorsten Kukuk.
 | ||
| 
 | ||
| * Paul Eggert and Ulrich Drepper modified the `strftime' function to be
 | ||
|   completely POSIX compliant and also implemented the extended functionality
 | ||
|   to handle alternate digit representation and alternate era date formats.
 | ||
| 
 | ||
| * Ulrich Drepper provided an implementation of the `strptime' function
 | ||
|   defined in XPG4.2 which transforms a string into a `struct tm' value.
 | ||
| 
 | ||
| * Paul Eggert provided the tzselect shell script as part of the timezone
 | ||
|   code.  The shell script makes it easy to select the correct timezone
 | ||
|   specification.
 | ||
| 
 | ||
| * The implementation of the malloc family of functions is completely replaced
 | ||
|   by a new implementation by Doug Lea with many improvements by Wolfram Gloger.
 | ||
|   The implementation uses the mmap function (if available) and it is
 | ||
|   optimized for the use in multi threaded programs.
 | ||
| 
 | ||
| * Ulrich Drepper contributed a MD5 "encryption" for the crypt family of
 | ||
|   functions.  This new functionality is usable by specifying a special
 | ||
|   salt string and it is compatible with implementation on *BSD systems.
 | ||
| 
 | ||
| * Lots of functions from the XPG4.2 standard were added by Ulrich Drepper:
 | ||
|   `getsubopt' to handle second level command line options, `bsd_signal'
 | ||
|   to access BSD style `signal' functionality, the obsolete `regexp' style
 | ||
|   expression matcher.
 | ||
| 
 | ||
| * the `lchown' function is available on system which support this
 | ||
|   functionality.
 | ||
| 
 | ||
| * The implementation of the shadow password handling function was contributed
 | ||
|   by Ulrich Drepper.
 | ||
| 
 | ||
| * David Mosberger-Tang changed the SunRPC implementation to be 64bit safe.
 | ||
| 
 | ||
| * POSIX.1g support was added.  The <sys/select.h> header is available,
 | ||
|   `isfdtype' and `pselect' are implemented.  Craig Metz contributed an
 | ||
|   implementation of `getaddrinfo'.
 | ||
| 
 | ||
| Version 1.09
 | ||
| 
 | ||
| * For cross-compilation you should now set `BUILD_CC' instead of `HOST_CC'.
 | ||
| 
 | ||
| * New header file <fstab.h> and new functions `getfsspec', `getfsent' and
 | ||
|   friends, for parsing /etc/fstab.  This code comes from 4.4 BSD.
 | ||
| 
 | ||
| * The new function `daemon' from 4.4 BSD is useful for server programs that
 | ||
|   want to put themselves in the background.
 | ||
| 
 | ||
| * Joel Sherrill has contributed support for several standalone boards that
 | ||
|   run without an operating system.
 | ||
| 
 | ||
| * `printf', `scanf' and friends now accept a `q' type modifier for long
 | ||
|   long int as well as `ll'.  Formats using these might be `%qu' or `%lld'.
 | ||
| 
 | ||
| * All of the code taken from BSD (notably most of the math and networking
 | ||
|   routines) has been updated from the BSD 4.4-Lite release.
 | ||
| 
 | ||
| * The resolver code has been updated from the BIND-4.9.3-BETA9 release.
 | ||
| 
 | ||
| * The new functions `getdomainname' and `setdomainname' fetch or change the
 | ||
|   YP/NIS domain name.  These are system calls which exist on systems which
 | ||
|   have YP (aka NIS).
 | ||
| 
 | ||
| * The time zone data files have been updated for the latest international
 | ||
|   conventions.
 | ||
| 
 | ||
| * The SunRPC programs `portmap' and `rpcinfo' are now installed in
 | ||
|   $(sbindir) (usually /usr/local/sbin) instead of $(bindir).
 | ||
| 
 | ||
| Version 1.08
 | ||
| 
 | ||
| * The C library now includes support for Sun RPC, from Sun's free
 | ||
|   RPCSRC-4.0 distribution.  The `portmap', `rpcinfo', and `rpcgen' programs
 | ||
|   are included.  (There is still no support for YP.)
 | ||
| 
 | ||
| * Tom Quinn has contributed a port of the C library to SGI machines running
 | ||
|   Irix 4 (mips-sgi-irix4).
 | ||
| 
 | ||
| * The new `lockf' function is a simplified interface to the locking
 | ||
|   facilities of `fcntl', included for compatibility.
 | ||
| 
 | ||
| * New time functions `timegm', `timelocal', and `dysize' for compatibility.
 | ||
| 
 | ||
| * New header file <sys/timeb.h> and new function `ftime' for compatibility.
 | ||
| 
 | ||
| * New header files <poll.h> and <sys/poll.h> and new function `poll' for
 | ||
|   compatibility.
 | ||
| 
 | ||
| * The error message printed by `assert' for a failed assertion now includes
 | ||
|   the name of the program (if using GNU ld) and the name of the calling
 | ||
|   function (with versions of GCC that support this).
 | ||
| 
 | ||
| * The `psignal' function is now declared in <signal.h>, not <stdio.h>.
 | ||
| 
 | ||
| * The library now includes the <sys/mman.h> header file and memory
 | ||
|   management functions `mmap', `munmap', `mprotect', `msync', and
 | ||
|   `madvise', on systems that support those facilities.
 | ||
| 
 | ||
| * The interface for `mcheck' has changed slightly: the function called to
 | ||
|   abort the program when an allocation inconsistency is detected now takes
 | ||
|   an argument that indicates the type of failure.  The new function
 | ||
|   `mprobe' lets you request a consistency check for a particular block at
 | ||
|   any time (checks are normally done only when you call `free' or `realloc'
 | ||
|   on a block).
 | ||
| 
 | ||
| * It is now possible to easily cross-compile the C library, building on one
 | ||
|   system a library to run on another machine and/or operating system.  All
 | ||
|   you need to do is set the variable `HOST_CC' in `configparms' to the
 | ||
|   native compiler for programs to run on the machine you are building on (a
 | ||
|   few generator programs are used on Unix systems); set `CC' to the
 | ||
|   cross-compiler.
 | ||
| 
 | ||
| * The new function `fexecve' (only implemented on the GNU system) executes
 | ||
|   a program file given a file descriptor already open on the file.
 | ||
| 
 | ||
| Version 1.07
 | ||
| 
 | ||
| * Brendan Kehoe has contributed most of a port to the DEC Alpha
 | ||
|   running OSF/1 (alpha-dec-osf1).  He says it is 75% complete.
 | ||
| 
 | ||
| * You can set the variable `libprefix' in `configparms' to specify a prefix
 | ||
|   to be prepended to installed library files; this makes it easy to install
 | ||
|   the GNU C library to be linked as `-lgnuc' or whatever.
 | ||
| 
 | ||
| * The new `stpncpy' is a cross between `stpcpy' and `strncpy': It
 | ||
|   copies a limited number of characters from a string, and returns the
 | ||
|   address of the last character written.
 | ||
| 
 | ||
| * You no longer need to check for whether the installed `stddef.h' is
 | ||
|   compatible with the GNU C library.  configure now checks for you.
 | ||
| 
 | ||
| * You can now define a per-stream `fileno' function to convert the
 | ||
|   stream's cookie into an integral file descriptor.
 | ||
| 
 | ||
| * ``malloc (0)'' no longer returns a null pointer.  Instead, it
 | ||
|   allocates zero bytes of storage, and returns a unique pointer which
 | ||
|   you can pass to `realloc' or `free'.  The behavior is undefined if
 | ||
|   you dereference this pointer.
 | ||
| 
 | ||
| * The C library now runs on Sony NEWS m68k machines running either
 | ||
|   NewsOS 3 or NewsOS 4.
 | ||
| 
 | ||
| * The new `syscall' function is a system-dependent primitive function
 | ||
|   for invoking system calls.  It has the canonical behavior on Unix
 | ||
|   systems, including unreliable return values for some calls (such as
 | ||
|   `pipe', `fork' and `getppid').
 | ||
| 
 | ||
| * The error code `EWOULDBLOCK' is now obsolete; it is always defined
 | ||
|   to `EAGAIN', which is the preferred name.  On systems whose kernels
 | ||
|   use two distinct codes, the C library now translates EWOULDBLOCK to
 | ||
|   EAGAIN in every system call function.
 | ||
| 
 | ||
| Version 1.06
 | ||
| 
 | ||
| * The GNU C Library Reference Manual is now distributed with the library.
 | ||
|   `make dvi' will produce a DVI file of the printed manual.
 | ||
|   `make info' will produce Info files that you can read on line using C-h i
 | ||
|   in Emacs or the `info' program.
 | ||
|   Please send comments on the manual to bug-glibc-manual@gnu.org.
 | ||
| 
 | ||
| * The library now supports SVR4 on i386s (i386-unknown-sysv4).
 | ||
| 
 | ||
| * Brendan Kehoe has contributed a port to Sun SPARCs running Solaris 2.
 | ||
| 
 | ||
| * Jason Merrill has contributed a port to the Sequent Symmetry running
 | ||
|   Dynix version 3 (i386-sequent-dynix).
 | ||
| 
 | ||
| * The library has been ported to i386s running SCO 3.2.4 (also known as SCO
 | ||
|   ODT 2.0; i386-unknown-sco3.2.4) or SCO 3.2 (i386-unknown-sco3.2).
 | ||
| 
 | ||
| * New function `memory_warnings' lets you arrange to get warnings when
 | ||
|   malloc is running out of memory to allocate, like Emacs gives you.
 | ||
| 
 | ||
| * The C library now contains the relocating allocator used in Emacs 19 for
 | ||
|   its editing buffers.  This allocator (ralloc) minimizes allocation
 | ||
|   overhead and fragmentation by moving allocated regions around whenever it
 | ||
|   needs to.  You always refer to a ralloc'd region with a "handle" (a
 | ||
|   pointer to a pointer--an object of type `void **').
 | ||
| 
 | ||
| * There is a new `printf' format: `%m' gives you the string corresponding
 | ||
|   to the error code in `errno'.
 | ||
| 
 | ||
| * In `scanf' formats, you can now use `%as' or `%a[' to do the normal `%s'
 | ||
|   or `%[' conversion, but instead of filling in a fixed-sized buffer you
 | ||
|   pass, the `a' modifier says to fill in a `char **' you pass with a
 | ||
|   malloc'd string.
 | ||
| 
 | ||
| * The `fnmatch' function supports the new flag bits `FNM_LEADING_DIR' and
 | ||
|   `FNM_CASEFOLD'.  `FNM_LEADING_DIR' lets a pattern like `foo*' match a
 | ||
|   name like `foo/bar'.  `FNM_CASEFOLD' says to ignore case in matching.
 | ||
| 
 | ||
| * `mkstemp' is a traditional Unix function to atomically create and open a
 | ||
|   uniquely-named temporary file.
 | ||
| 
 | ||
| Version 1.05
 | ||
| 
 | ||
| * The standard location for the file that says what the local timezone is
 | ||
|   has changed again.  It is now `/usr/local/etc/localtime' (or more
 | ||
|   precisely, `${prefix}/etc/localtime') rather than `/etc/localtime'.
 | ||
| 
 | ||
| * The distribution no longer contains any files with names longer than 14
 | ||
|   characters.
 | ||
| 
 | ||
| * `struct ttyent' has two new flag bits: TTY_TRUSTED and TTY_CONSOLE.
 | ||
|   These are set by the new `trusted' and `console' keywords in `/etc/ttys'.
 | ||
| 
 | ||
| * New functions `ttyslot' and `syslog' from 4.4 BSD.
 | ||
| 
 | ||
| Version 1.04
 | ||
| 
 | ||
| * The configuration process has changed quite a bit.  The `configure'
 | ||
|   script is now used just like the configuration scripts for other GNU
 | ||
|   packages.  The `sysdeps' directory hierarchy is much rearranged.
 | ||
|   The file `INSTALL' explains the new scheme in detail.
 | ||
| 
 | ||
| * The header files no longer need to be processed into ANSI C and
 | ||
|   traditional C versions.  There is just one set of files to install, and
 | ||
|   it will work with ANSI or old C compilers (including `gcc -traditional').
 | ||
| 
 | ||
| * Brendan Kehoe and Ian Lance Taylor have ported the library to the
 | ||
|   MIPS DECStation running Ultrix 4.
 | ||
| 
 | ||
| * The Sun 4 startup code (crt0) can now properly load SunOS 4 shared libraries.
 | ||
|   Tom Quinn contributed the initial code.  The GNU C library can NOT yet be
 | ||
|   made itself into a shared library.
 | ||
| 
 | ||
| * Yet further improved support for the i386, running 4.3 BSD-like systems
 | ||
|   (such as Mach 3 with the Unix single-server), or System V.
 | ||
| 
 | ||
| * New function `strncasecmp' to do case-insensitive string comparison
 | ||
|   with limited length.
 | ||
| 
 | ||
| * New function `strsep' is a reentrant alternative to `strtok'.
 | ||
| 
 | ||
| * New functions `scandir' and `alphasort' for searching directories.
 | ||
| 
 | ||
| * New function `setenv' is a better interface to `putenv'.
 | ||
| 
 | ||
| * Ian Lance Taylor has contributed an implementation of the SVID `ftw'
 | ||
|   function for traversing a directory tree.
 | ||
| 
 | ||
| * The GNU obstack package is now also part of the C library.
 | ||
|   The new function `open_obstack_stream' creates a stdio stream that
 | ||
|   writes onto an obstack; `obstack_printf' and `obstack_vprintf' do
 | ||
|   formatted output directly to an obstack.
 | ||
| 
 | ||
| * Miscellaneous new functions: reboot, nice, sigaltstack (4.4 BSD only),
 | ||
|   cfmakeraw, getusershell, getpass, swab, getttyent, seteuid, setegid.
 | ||
| 
 | ||
| * `FNM_FILE_NAME' is another name for `FNM_PATHNAME', used with `fnmatch'.
 | ||
| 
 | ||
| * The new functions `strfry' and `memfrob' do mysterious and wonderful
 | ||
|   things to your strings.
 | ||
| 
 | ||
| * There are some new test programs: test-fseek, testmb, and testrand.
 | ||
| 
 | ||
| * Some work has been done to begin porting the library to 4.4 BSD and Linux.
 | ||
|   These ports are not finished, but are a good starting place for really
 | ||
|   supporting those systems.
 | ||
| 
 | ||
| * `/etc/localtime' is now the standard location for the file that says what
 | ||
|   the local timezone is, rather than `/usr/local/lib/zoneinfo/localtime'.
 | ||
|   This follows the general principle that `/etc' is the place for all local
 | ||
|   configuration files.
 | ||
| 
 | ||
| * The C library header files now use `extern "C"' when used by the C++
 | ||
|   compiler, so the C library should now work with C++ code.
 | ||
| 
 | ||
| * The header file <bstring.h> is gone.  <string.h> now declares bcopy,
 | ||
|   bcmp, bzero, and ffs.  (Update: nowadays these functions are declared
 | ||
|   in <strings.h>.)
 | ||
| 
 | ||
| * Mike Haertel (of GNU e?grep and malloc fame) has written a new sorting
 | ||
|   function which uses the `merge sort' algorithm, and is said to be
 | ||
|   significantly faster than the old GNU `qsort' function.  Merge sort is
 | ||
|   now the standard `qsort' function.  The new algorithm can require a lot
 | ||
|   of temporary storage; so, the old sorting function is called when the
 | ||
|   required storage is not available.
 | ||
| 
 | ||
| * The C library now includes Michael Glad's Ultra Fast Crypt, which
 | ||
|   provides the Unix `crypt' function, plus some other entry points.
 | ||
| 
 | ||
| * The code and header files taken from 4.4 BSD have been updated with the
 | ||
|   latest files released from Berkeley.
 | ||
| 
 | ||
| ----------------------------------------------------------------------
 | ||
| Copyright information:
 | ||
| 
 | ||
| Copyright (C) 1992-1999,2000,2001,2002,2003,2004,2005,2006
 | ||
| 	Free Software Foundation, Inc.
 | ||
| 
 | ||
|    Permission is granted to anyone to make or distribute verbatim copies
 | ||
|    of this document as received, in any medium, provided that the
 | ||
|    copyright notice and this permission notice are preserved,
 | ||
|    thus giving the recipient permission to redistribute in turn.
 | ||
| 
 | ||
|    Permission is granted to distribute modified versions
 | ||
|    of this document, or of portions of it,
 | ||
|    under the above conditions, provided also that they
 | ||
|    carry prominent notices stating who last changed them.
 | ||
| 
 | ||
| Local variables:
 | ||
| version-control: never
 | ||
| End:
 |