1998-07-02 21:51 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig: Define list of subdirs as all-subdirs and make subdirs
a copy.
* Makefile: Add rules to generate map files.
(distribute): Remove libc.map, add Versions.def and versions.awk.
* Makerules: Change rules to find map files on common-objpfx.
* elf/Makefile: Likewise.
* md5-crypt/Makefile: Likewise.
* nis/Makefile (libnsl-map): Remove.
* Versions.def: New file.
* versions.awk: New file.
* argp/Versions: New file.
* assert/Versions: New file.
* catgets/Versions: New file.
* csu/Versions: New file.
* ctype/Versions: New file.
* db/Versions: New file.
* debug/Versions: New file.
* dirent/Versions: New file.
* elf/Versions: New file.
* gmon/Versions: New file.
* grp/Versions: New file.
* hesiod/Versions: New file.
* hurd/Versions: New file.
* iconv/Versions: New file.
* inet/Versions: New file.
* intl/Versions: New file.
* io/Versions: New file.
* libio/Versions: New file.
* linuxthreads/Versions: New file.
* locale/Versions: New file.
* login/Versions: New file.
* malloc/Versions: New file.
* math/Versions: New file.
* md5-crypt/Versions: New file.
* misc/Versions: New file.
* nis/Versions: New file.
* nss/Versions: New file.
* posix/Versions: New file.
* pwd/Versions: New file.
* resolv/Versions: New file.
* resource/Versions: New file.
* rt/Versions: New file.
* setjmp/Versions: New file.
* shadow/Versions: New file.
* signal/Versions: New file.
* socket/Versions: New file.
* stdio/Versions: New file.
* stdio-common/Versions: New file.
* stdlib/Versions: New file.
* streams/Versions: New file.
* string/Versions: New file.
* sunrpc/Versions: New file.
* sysdeps/alpha/Versions: New file.
* sysdeps/alpha/fpu/Versions: New file.
* sysdeps/i386/Versions: New file.
* sysdeps/sparc/Versions: New file.
* sysdeps/unix/sysv/Versions: New file.
* sysdeps/unix/sysv/linux/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/Versions: New file.
* sysdeps/unix/sysv/linux/i386/Versions: New file.
* sysdeps/unix/sysv/linux/mips/Versions: New file.
* sysvipc/Versions: New file.
* termios/Versions: New file.
* time/Versions: New file.
* wcsmbs/Versions: New file.
* wctype/Versions: New file.
* libc.map: Removed.
* db/libdb.map: Removed.
* elf/libdl.map: Removed.
* hesiod/libnss_hesiod.map: Removed.
* hurd/libhurduser.map: Removed.
* hurd/libmachuser.map: Removed.
* linuxthreads/libpthread.map: Removed.
* locale/libBrokenLocale.map: Removed.
* login/libutil.map: Removed.
* math/libm.map: Removed.
* md5-crypt/libcrypt.map: Removed.
* nis/libnsl.map: Removed.
* nis/libnsl_compat.map: Removed.
* nis/libnss_nis.map: Removed.
* nis/libnss_nisplus.map: Removed.
* nss/libnss_db.map: Removed.
* nss/libnss_files.map: Removed.
* resolv/libnss_dns.map: Removed.
* resolv/libresolv.map: Removed.
* rt/librt.map: Removed.
* elf/dl-load.c (fillin_rpath): Fix test for trusted directory.
Fix typos.
* elf/rtld.c (process_dl_debug): Recognize 'all'.
(process_envvars): LD_BIND_NOW must be followed by y, Y, or 1.
* sysdeps/generic/elf/backtracesyms.c: Allocate string memory of
correct size.
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Fix typo
in comment.
1997-11-04 Ulrich Drepper <drepper@cygnus.com>
* manual/filesys.texi: Correct description of return value for
readdir_r.
* sysdeps/unix/readdir_r.c (__readdir_r): Return value of errno
not -1 in error case.
* sysdeps/generic/readdir_r.c (__readdir_r): Return ENOSYS not -1.
Reported by Jim Meyering <meyering@eng.ascend.com>.
1997-11-02 Paul Eggert <eggert@twinsun.com>
* strftime.c: Use host's underlying strftime to access
locale-specific info. This is useful e.g. when building GNU
Emacs under Solaris 2.6.
(weekday_name, month_name): Omit if HAVE_STRFTIME.
(my_strftime): New macro, which names the strftime function that
this source file produces.
(strftime): #undef if emacs is defined; this works around Emacs 20.2's
method of compiling with -Dstrftime=emacs_strftime.
Also, declare as a function returning size_t, for similar reasons.
(my_strftime): If HAVE_STRFTIME, use underlying strftime to handle
locale-dependent formats like %a and %Ec.
1997-11-02 Paul Eggert <eggert@twinsun.com>
* strftime.c (memcpy_lowcase, memcpy_uppcase, strftime):
Ensure that args to islower and isupper are valid unsigned
chars, even if char is signed.
1997-11-04 Ulrich Drepper <drepper@cygnus.com>
* assert/Makefile (headers): Add assert.h, necessary after patch
to Makefiles.
* ctype/Makefile (headers): Likewise.
* pwd/Makefile (headers): Likewise.
* grp/Makefile (headers): Likewise.
Patch by NIIBE Yutaka <gniibe@mri.co.jp>.
1997-11-04 03:08 Ulrich Drepper <drepper@cygnus.com>
* glibcbug.in: Add information about configured target.
Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.
* elf/dl-lookup.c (_dl_lookup_versioned_symbol): Be prepared for
empty string as `reference_name' parameter.
* elf/rtld.c: Don't set real program name in l_name of main object.
* manual/creature.texi: Apply Paul Eggert's patch for better
_POSIX_C_SOURCE description.
* stdlib/strfmon.c: Fix numerous bugs in formatting.
* time/strptime.c [%Y]: Treat all years, not only those which fit
in time_t.
[%Oy]: Really store value.
Patches by Paul Eggert.
* wcsmbs/wchar.h: Fix documentation bugs. Declare wcsdup only
is __USE_GNU.
1997-11-03 02:48 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/bits/errno.h: Remove all error definitions. This
is only meant as a stub.
1997-10-31 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/standalone/bits/errno.h: Copied from
sysdeps/generic/bits/errno.h and added all know error codes that
are used in glibc.
1997-11-03 02:23 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/make_siglist.c: Add comment to clarify use and
make sure the correct _NSIG value is used.
Patch by Klaus Espenlaub <kespenla@student.informatik.uni-ulm.de>.
1997-11-03 00:20 Ulrich Drepper <drepper@cygnus.com>
* intl/localealias.c (read_alias_file): Correct handling of line
reader which sometimes skipped complete lines (PR 205).
Optimize a bit by using mempcpy.
1997-11-02 16:59 Philipp Thomas <kthomas@gwdg.de>
* intl/localealias.c (read_alias_file): Correctly set map[].value
instead of overwriting map[].alias
1997-11-02 15:32 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add _IO_flockfile and _IO_funlockfile.
Suggested by H.J. Lu <hjl@lucon.org>.
1997-11-02 15:17 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-error.c (_dl_signal_error): Use _strerror_internal instead
of strerror.
* assert/assert-perr.c: Use _strerror_internal directly instead of
__strerror_r.
Suggested by Joe Keane <jgk@jgk.org>.
1997-11-01 16:46 Zack Weinberg <zack@rabi.phys.columbia.edu>
* configure.in: Check for gcc-2.7.2 -pipe bug and hack around it
(PR 245).
1997-11-01 Paul Eggert <eggert@twinsun.com>
* time/strptime.c (strptime_internal): Fix bug: %Oy forgot to
assign tm_year. Do not restrict %Y to years less than 2037 even
on 32-bit time_t hosts, as strptime returns an int tm_year, not a
time_t, and it's possible for programs to use the year without
having to use time_t.
non-directories in the list (PR 203).
Mon Jan 20 03:02:50 1997 Ulrich Drepper <drepper@cygnus.com>
* Make-dist: Update and reformat copyright.
* Makeconfig: Likewise.
* assert/Makefile: Likewise.
* bare/Makefile: Likewise.
* ctype/Makefile: Likewise.
* dirent/Makefile: Likewise.
* gmon/Makefile: Likewise.
* gnulib/Makefile: Likewise.
* grp/Makefile: Likewise.
* hurd/Makefile: Likewise.
* intl/Makefile: Likewise.
* mach/Makefile: Likewise.
* malloc/Makefile: Likewise.
* manual/Makefile: Likewise.
* math/Makefile: Likewise.
* po/Makefile: Likewise.
* pwd/Makefile: Likewise.
* resource/Makefile: Likewise.
* setjmp/Makefile: Likewise.
* socket/Makefile: Likewise.
* string/Makefile: Likewise.
* sunrpc/Makefile: Likewise.
* sysdeps/alpha/Makefile: Likewise.
* sysdeps/gnu/Makefile: Likewise.
* sysdeps/m68k/fpu/switch/Makefile: Likewise.
* sysdeps/m68k/fpu/switch/68881-sw.h: Likewise.
* sysdeps/m68k/fpu/switch/switch.c: Likewise.
* sysdeps/mach/Makefile: Likewise.
* sysdeps/hurd/Makefile: Likewise.
* sysdeps/sparc/Makefile: Likewise.
* sysdeps/standalone/i960/nindy960/Makefile: Likewise.
* sysdeps/standalone/m68k/m68020/mvme136/Makefile: Likewise.
* sysdeps/unix/common/Makefile: Likewise.
* sysdeps/unix/sysv/Makefile: Likewise.
* sysdeps/unix/sysv/irix4/Makefile: Likewise.
* sysdeps/unix/sysv/sco3.2/Makefile: Likewise.
* sysdeps/unix/sysv/sysv4/Makefile: Likewise.
* sysdeps/vax/Makefile: Likewise.
* sysvipc/Makefile: Likewise.
* wcsmbs/Makefile: Likewise.
* wctype/Makefile: Likewise.
* elf/rtld.c (dl_main): Objects in LD_PRELOAD environment variable
are separated according to Sun docs by white space not colon.
* locale/C-time.c (_nl_C_LC_TIME): Use empty string to initialize
fields which are not defined for the C locale.
* sysdeps/m68k/fpu/switch/Makefile: Don't use ansidecl.h in constructed
files.
* sysdeps/m68k/fpu/switch/68881-sw.h: Likewise.
* sysdeps/m68k/fpu/switch/switch.c: Likewise.
Sun Jan 19 19:43:31 1997 Andreas Jaeger <aj@arthur.pfalz.de>
* time/strptime.c: Provide prototype for strptime_internal.
Sun Jan 19 23:46:27 1997 Ulrich Drepper <drepper@cygnus.com>
* glibcbug.in: We don't guarantee confidential handling. Set
field to always contain `no'.
Sun Jan 19 21:28:01 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* intl/explodename.c: Include sys/types.h.
* intl/l10nflist.c: Likewise.
Sat Jan 18 22:15:26 1997 Richard Henderson <rth@tamu.edu>
* config.make.in (install_root): New variable to make it easy to
install glibc somewhere other than /.
* shlib-versions: alpha-*-linux-* libc=6.1.
Since sigset_t no longer fits in a register, we can't pass in the
thread's initial mask so easily. Take this opportunity to simplify
the clone implementation by only accepting a single void* argument.
* sysdeps/unix/sysv/linux/alpha/clone.S: Only take one argument.
* sysdeps/unix/sysv/linux/i386/clone.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/clone.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/clone.S: Likewise.
* sysdeps/unix/sysv/linux/schedbits.h: Update clone prototypes.
* sysdeps/unix/sysv/linux/alpha/ioctl-types.h: Remove.
Default Linux version should be sufficient.
* sysdeps/unix/sysv/linux/alpha/sigprocmask.c: The osf_sigprocmask
system call wants the sigset dereferenced.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add entries for
__syscall_ustat and __syscall_xmknod.
* sysdeps/unix/sysv/linux/alpha/xmknod.c: Include sys/sysmacros.h.
* sysdeps/unix/sysv/linux/sigset.h: Use longs instead of ints.
* sysdeps/unix/sysv/linux/tcsetattr.c: Fix pointer dereferences.
* sysdeps/unix/sysv/linux/alpha/sigsuspend.c: Add comment about
dependency to kernel type.
* sysdeps/unix/sysv/linux/alpha/termbits.h: Correct comment.
Sun Nov 10 02:37:15 1996 Ulrich Drepper <drepper@cygnus.com>
* inet/gethstent_r.c: Update copyright.
* nss/getXXbyYY_r.c: Likewise.
* nss/nsswitch.c: Likewise.
* nss/getXXent_r.c: Likewise.
* nss/nss_files/files-XXX.c: Likewise.
* nss/nss_files/files-netgroup.c: Likewise.
* nss/nss_files/files-parse.c: Likewise.
* nss/getXXent_r.c: Change implementation. It's not necessary to
call all setXXent functions. Just find first available and
when necessary let getXXent_r call the others.
* nss/nss_files/files-XXX.c: Make really reentrant. Now calls
of getXXent and getXXbyYY can be mixed. The cursor for traversing
the database with getXXent will be remembered.
* stdlib/test-canon.c (cwd): Change size to PATH_MAX.
Sat Nov 9 15:34:48 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Dist: Add sys/mtio.h.
* sysdeps/unix/sysv/linux/sys/mtio.h: New file.
* signal/signal.h [__USE_BSD]: Add prototype for siggetmask.
Fri Nov 8 13:29:30 1996 Ulrich Drepper <drepper@cygnus.com>
* ctype/ctype.h (__isascii): Don't test for seventh bit not to be
set. Instead for none beside the first seven bits to be set.
X/Open allows the argument to be an `int' value.
Reported by Alain Williams <addw@phcomp.co.uk>.
(toascii, isascii): Define macro also when __USE_XOPEN.
* sysdeps/posix/fpathconf.c: Use fstatfs to compute NAME_MAX, not
PATH_MAX.
Thu Nov 7 03:04:29 1996 Ulrich Drepper <drepper@cygnus.com>
* nss/getXXXent_r.c (SETFUNC_NAME): Reset `nip' after loop to
NULL so that GETFUNC will see first entry.
(ENDFUNC_NAME): Likewise.
Rewrite Netgroups implementation to avoid global data.
* inet/netgroup.h: Add definition of name_list and struct
__netgrent.
Add prototypes for internal netgroup functions.
* nss/nss_files/files-netgroup.c (_nss_files_setnetgrent): Take
extra argument and use the included data instead of global vars.
(_nss_files_endnetgrent): Likewise.
(_nss_netgroup_parseline): Change to be static and use data
included in the RESULT structure.
* inet/getnetgrent_r.c (startp): Move into setup function.
(known_groups, needed_groups): new part of the __netgrent sruct.
(freememory): Take extra argument and use included data.
(__internal_endnetgrent): Likewise.
(internal_setnetgrent): Renamed to __internal_setnetgrent_reuse
and take extra argument.
(__internal_setnetgrent): New function. Call
__internal_setnetgrent_reuse after calling free_memory.
(setnetgrent): Only call __internal_setnetgrent.
(__getnetgrent_r): Split into two functions. __getnetgrent_r
calls __internal_getnetgrent after locking.
(innetgr): Use dynamic data only. I.e., innetgr now is fully
reentrant.
Thu Nov 7 00:15:14 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/stub/setenv.c: Correct typo: unseenv -> unsetenv.
Reported by Joshua Cowan <jcowan@jcowan.reslife.okstate.edu>.
Wed Nov 6 13:13:37 1996 Ulrich Drepper <drepper@cygnus.com>
* manual/creature.texi: Document that _GNU_SOURCE is no longer the
default when no *_SOURCE macro is given.
Reported by Karsten Weiss <karsten@addx.au.s.shuttle.de>.
* NOTES: remade from manual/creature.texi.
* manual/libc.texinfo: Add back line about GPL translation which
somehow got lost.
* Make-dist (dist.tar): Depend on README being updated.
* rellns-sh: Correct thinko in removing leading /.
Reported by Andreas Jaeger <aj@arthur.pfalz.de>.
* pwd/fgetpwent_r.c: Recognize lines containing only names starting
with `+' or `-' in parser.
* grp/fgetgrent_r.c: Likewise.
* shadow/sgetspent_r.c: Likewise.
* nss/nss_files/files-spwd.c: Don't accept entries starting with
`+' or `-'.
* sysdeps/stub/lchown.c: New file.
Wed Nov 6 04:30:26 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/syscalls.list: Add weak alias llseek for
_llseek syscall. Reported by Andy Sewell <puck@pookhill.demon.co.uk>.
* string/argz.h: Don't protect by __USE_GNU.
Tue Nov 5 23:38:28 1996 Ulrich Drepper <drepper@cygnus.com>
* Lots of files: Update and reformat copyright.
* Makefile (headers): Add xopen_lim.h.
* catgets/nl_types.h: Move __BEGIN_DECLS before definition of nl_catd.
* grp/grp.h: Define setgrent, getgrent, endgrent, and getgrent_r
if __USE_XOPEN_EXTENDED is defined.
* pwd/pwd.h: Define setpwent, getpwent, endpwent, and getpwent_r
if __USE_XOPEN_EXTENDED is defined.
* io/Makefile (routines): Add lchown.
* io/sys/poll.h: Add definition of POLLWRNORM.
* io/sys/stat.h: Declare lstat, fchmod, mknod when
__USE_XOPEN_EXTENDED is defined.
* libio/Makefile (routines): Add obprintf.
* libio/obprintf.c: New file.
* libio/iolibio.h: Add prototypes for _IO_obstack_vprintf and
_IO_obstack_printf.
* libio/libio.h: Fix typo.
* libio/stdio.h: Declare tempnam if __USE_XOPEN_EXTENDED is defined.
Add prototypes for obstack_vprintf and obstack_printf.
* manual/creature.texi: Describe _XOPEN_SOURCE macro.
* manual/intro.texi: Add reference to NSS chapter.
* manual/libc.texinfo: Update UPDATED.
Comment out `@printindex cp'. It works again.
* manual/memory.texi: Add description for obstack_ptr_grow,
obstack_int_grow, obstack_ptr_grow_fast, and obstack_int_grow_fast.
* manual/nss.texi: Add a few @cindex entries and change NSS_STATUS_*
index entries to @vindex.
* manual/users.texi: Correct @cindex entry for Netgroup.
* math/mathcalls.h: Use __USE_XOPEN and __USE_XOPEN_EXTENDED to
make declarations visible for X/Open sources.
* misc/search.h: Declare insque/remque only is __USE_SVID or
__USE_XOPEN_EXTENDED is defined.
* misc/sys/uio.h (readv, writev): Change return value from int to
ssize_t.
* posix/Makefile (headers): Add re_comp.h.
* posix/re_comp.h: New file. XPG interface to regex functions.
* posix/getconf.c: Add all names from XPG4.2.
* posix/posix1_lim.h: Increase minimum values for _POSIX_CHILD_MAX
and _POSIX_OPEN_MAX to minimums from XPG4.2.
* sysdeps/generic/confname.h: Add all _SC_* names from XPG4.2.
* sysdeps/posix/sysconf.c: Handle new _SC_* values.
* sysdeps/stub/sysconf.c: Likewise.
* posix/unistd.h: Add declaration of ualarm and lchown. Declare
usleep, fchown, fchdir, nice, getpgid, setsid, getsid, setreuid,
setregid, vfork, ttyslot, symlink, readlink, gethostid, truncate,
ftruncate, getdtablesize, brk, sbrk, lockf when
__USE_XOPEN_EXTENDED is defined.
* posix/sys/wait.h: Declare wait3 if __USE_XOPEN_EXTENDED is defined.
* shadow/shadow.h: Define SHADOW using _PATH_SHADOW.
* sysdeps/generic/paths.h: Define _PATH_SHADOW.
* sysdeps/unix/sysv/linux/paths.h: Likewise.
* signal/signal.h: Declare killpg, sigstack and sigaltstack when
__USE_XOPEN_EXTENDED is defined.
* stdio/stdio.h: Declare tempnam when __USE_XOPEN is defined.
* stdlib/stdlib.h: Make rand48 functions available when __USE_XOPEN
is defined.
Likewise for valloc, putenv, realpath, [efg]cvt*, and getsubopt
functions.
* string/string.h: Make memccpy, strdup, bcmp, bcopy, bzero, index,
and rindex available when __USE_XOPEN_EXTENDED is defined.
* sysdeps/mach/getpagesize.c: De-ANSI-fy. Change return type to int.
* sysdeps/posix/getpagesize.c: Likewise.
* sysdeps/stub/getpagesize.c: Likewise.
* sysdeps/unix/getpagesize.c: Likewise.
* time/africa: Update from tzdata1996l.
* time/asia: Likewise.
* time/australia: Likewise.
* time/europe: Likewise.
* time/northamerica: Likewise.
* time/pacificnew: Likewise.
* time/southamerica: Likewise.
* time/tzfile.h: Update from tzcode1996m.
* time/time.h: Declare strptime if __USE_XOPEN.
Declare daylight and timezone also if __USE_XOPEN.
* time/sys/time.h: Remove declaration of ualarm.
* wctype/wctype.h: Just reference ISO C standard.
Tue Nov 5 01:26:32 1996 Richard Henderson <rth@tamu.edu>
* crypt/Makefile: Add crypt routines to libc as well iff
$(crypt-in-libc) is set. Do this for temporary binary compatibility
on existing Linux/Alpha installations.
* stdlib/div.c, sysdeps/generic/div.c: Move file to .../generic/.
* stdlib/ldiv.c, sysdeps/generic/ldiv.c: Likewise.
* stdlib/lldiv.c, sysdeps/generic/lldiv.c: Likewise.
* sysdeps/alpha/Makefile (divrem): Add divlu, dviqu, remlu, and
remqu.
* sysdeps/alpha/div.S: New file.
* sysdeps/alpha/ldiv.S: New file.
* sysdeps/alpha/lldiv.S: New file.
* sysdeps/alpha/divrem.h: Merge signed and unsigned division.
Take pointers from Linus and tighten the inner loops a bit.
* sysdeps/alpha/divl.S: Change defines for merged routines.
* sysdeps/alpha/divq.S: Likewise.
* sysdeps/alpha/reml.S: Likewise.
* sysdeps/alpha/remq.S: Likewise.
* sysdeps/alpha/divlu.S: Remove file.
* sysdeps/alpha/divqu.S: Likewise.
* sysdeps/alpha/remlu.S: Likewise.
* sysdeps/alpha/remqu.S: Likewise.
* sysdeps/alpha/bsd-_setjmp.S: If PROF, call _mcount.
* sysdeps/alpha/bsd-setjmp.S: Likewise.
* sysdeps/alpha/bzero.S: Likewise.
* sysdeps/alpha/ffs.S: Likewise.
* sysdeps/alpha/htonl.S: Likewise.
* sysdeps/alpha/htons.S: Likewise.
* sysdeps/alpha/memchr.S: Likewise.
* sysdeps/alpha/memset.S: Likewise.
* sysdeps/alpha/s_copysign.S: Likewise.
* sysdeps/alpha/s_fabs.S: Likewise.
* sysdeps/alpha/setjmp.S: Likewise.
* sysdeps/alpha/stpcpy.S: Likewise.
* sysdeps/alpha/stpncpy.S: Likewise.
* sysdeps/alpha/strcat.S: Likewise.
* sysdeps/alpha/strchr.S: Likewise.
* sysdeps/alpha/strcpy.S: Likewise.
* sysdeps/alpha/strlen.S: Likewise.
* sysdeps/alpha/strncat.S: Likewise.
* sysdeps/alpha/strncpy.S: Likewise.
* sysdeps/alpha/strrchr.S: Likewise.
* sysdeps/alpha/udiv_qrnnd.S: Likewise. Fix private labels.
Convert two small jumps to use conditional moves.
* sysdeps/unix/alpha/sysdep.h: Compress all __STDC__ nastiness.
(PSEUDO): If PROF, call _mcount.
* sysdeps/unix/sysv/linux/alpha/brk.S: If PROF, call _mcount.
* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/llseek.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
* sysdeps/alpha/memcpy.S: New file. Odd layout because it should
eventually contain memmove as well.
* sysdeps/alpha/strcmp.S: New file.
* sysdeps/alpha/strncmp.S: New file.
* sysdeps/alpha/w_sqrt.S: New file.
Tue Nov 5 18:06:06 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/mach/hurd/ttyname_r.c: Use `size_t' for len variable.
Tue Nov 5 12:09:29 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdep/generic/sysdep.h: Define END only if not yet defined.
* sysdep/unix/sysdep.h: Define PSEUDO_END only if not yet defined.
Reported by Thomas Bushnell, n/BSG.
Mon Nov 4 22:46:53 1996 Ulrich Drepper <drepper@cygnus.com>
* manual/users.texi (Netgroup Data): Remove { } around @cindex.
Mon Nov 4 19:07:05 1996 Ulrich Drepper <drepper@cygnus.com>
* malloc/calloc.c: Check for overflow before trying to allocate
memory. Proposed by Neil Matthews <nm@adv.sbc.sony.co.jp>.
Fri Nov 1 18:18:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/llio.texi (Operating Modes): Add missing arguments to
@deftypevr in O_NONBLOCK description.
* manual/time.texi (Time Zone Functions): Enclose type name in
braces in description of tzname. FIXME: this does not yet work
correctly in info.
Sun Nov 3 17:29:06 1996 Ulrich Drepper <drepper@cygnus.com>
* features.h: Add X/Open macros.
* posix/unistd.h: Define X/Open macros.
* sysdeps/generic/confname.h: Add _SC_XOPEN_XCU_VERSION,
_SC_XOPEN_UNIX, _SC_XOPEN_CRYPT, _SC_XOPEN_ENH_I18N,
_SC_XOPEN_SHM, _SC_2_CHAR_TERM, _SC_2_C_VERSION, and _SC_2_UPE.
* sysdeps/posix/sysconf.c: Handle new constants.
* sysdeps/stub/sysconf.c: Likewise.
* sysdeps/unix/sysv/linux/posix_opt.h: Add definition of _XOPEN_SHM.
* catgets/catgets.c (catopen): Set errno to ENOMEM when
we run out of memory.
(catgets): Set errno to EBADF when catalog handle is invalid.
Set errno to ENOMSG when translation is not available.
(catclose): Set errno to EBADF when catalog handle is invalid.
* ctype/ctype.h: Declare isascii and toascii when __USE_XOPEN.
Likewise for _toupper and _tolower.
* manual/arith.texi: Document strtoq, strtoll, strtouq, strtoull,
strtof, and strtold.
* manual/math.texi: Document HUGE_VALf and HUGE_VALl.
* manual/stdio.h: Document ' flag for numeric formats of scanf.
* manual/users.texi: Document that cuserid shouldn't be used.
* misc/Makefile (routines): Add dirname.
(headers): Add libgen.h.
(tests): Add tst-dirname.
* misc/dirname.c: New file.
* misc/libgen.h: New file.
* misc/tst-dirname.c: New file.
* misc/search.h: Parameter of hcreate must be of type size_t.
* misc/hsearch.c: Likewise.
* misc/hsearch_r.c: Likewise for hcreate_r.
* misc/search.h: Parameters of insque and remque must be `void *'.
* misc/insremque.c: Likewise.
* posix/unistd.h: Move declarations of mktemp and mkstemp to...
* stdlib/stdlib.h: ...here.
* posix/unistd.h [__USE_XOPEN]: Add prototypes for crypt, setkey,
encrypt, and swab.
* stdio-common/printf-parse.h (struct printf_spec): Add pa_wchar
and pa_wstring.
(parse_one_spec): Remove Linux compatibility code.
Recognize %C and %S formats.
* stdio-common/printf.h: Add PA_WCHAR and PA_WSTRING.
* stdio-common/vfprintf.c: Add implementation of %C and %S format.
* stdio-common/vfscanf.c: Likewise for scanf.
* stdlib/l64a.c: Return value for 0 must be the empty string.
* stdlib/stdlib.h: Declare reentrant function from rand49 family
only if __USE_REENTRANT.
Declare rand48 functions also if __USE_XOPEN.
* stdlib/strtol.c: Return 0 and set errno to EINVAL when BASE is
not a legal value.
Return 0 and set errno to EINVAL when strou* sees negativ number.
* stdlib/tst-strtol.c: De-ANSI-fy.
Change expected results for test of unsigned function and negative
input.
* string/stratcliff.c: Prevent warnings.
* string.h: Move declaration of swab to <unistd.h>.
* string/swab.c: De-ANSI-fy.
* sysdeps/posix/cuserid.c: Implement using getpwuid_r.
* sysdeps/posix/mkstemp.c: Include <stdlib.h> for prototype.
* sysdeps/posix/mktemp.c: Likewise.
* sysdeps/stub/mkstemp.c: Likewise.
* sysdeps/stub/mktemp.c: Likewise.
* sysvipc/sys/ipc.h: Prototypes of ftok have to be of types `const
char *' and `int'.
* sysvipc/ftok.c: Likewise. Make sure only lower 8 bits of
PROJ_ID are used.
Sun Nov 3 03:21:28 1996 Heiko Schroeder <Heiko.Schroeder@post.rwth-aachen.de>
* locale/programs/ld-numeric.c (numeric_output): Compute idx[0]
correctly.
Sat Nov 2 17:44:32 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/posix/cuserid.c: Use reentrant functions.
* manual/users.texi: Tell that cuserid is marked to be withdrawn in
XPG4.2.
Sat Nov 2 14:26:37 1996 Ulrich Drepper <drepper@cygnus.com>
Linus said he will make sure no system call will return a value
in -1 ... -4095 as a valid result.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Correct test for error.
* sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/syscall.S: Likewise.
Sat Nov 2 16:54:49 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/stub/lockfile.c [!USE_IN_LIBIO]: Define weak alias for
__funlockfile, not a circular alias.
Define __IO_ftrylockfile if USE_IN_LIBIO and __ftrylockfile if not,
not vice versa.
* sysdeps/unix/sysv/linux/i386/sysdep.S (__errno_location): Make
it a weak symbol.
* sysdeps/unix/sysv/linux/m68k/sysdep.S (__errno_location): Likewise.
Likewise.
* crypt/Makefile (rpath-link): Extend search path to current directory.
Thu Oct 31 00:01:39 1996 Ulrich Drepper <drepper@cygnus.com>
* signal/Makefile (routines): Add sigwait.
* signal/signal.h: Add prototype for sigwait.
* sysdeps/posix/sigwait.c: New file. Implementation of sigwait
function from POSIX.1c.
* sysdeps/stub/sigwait.c: New file. Stub version of sigwait.
Wed Oct 30 02:01:17 1996 Richard Henderson <rth@tamu.edu>
* sunrpc/xdr_float.c (xdr_float): Handle sizeof(float)!=sizeof(long),
but don't bother going farther than sizeof(float)==sizeof(int).
(xdr_double): Handle little-endian machines! Handle sizeof(double)
!= 2*sizeof(long), though again don't bother with more than int.
Thu Oct 29 16:09:42 1996 Craig Metz <cmetz@inner.net>
* sysdeps/posix/getaddrinfo.c: Use buffer limits for inet_ntop
function.
Tue Oct 29 12:37:22 1996 Ulrich Drepper <drepper@cygnus.com>
* Makerules: Create symbolic links for linking in $(libdir).
(make-link): Use absolute path for destination if this is not in
the same directory.
* elf/rtld.c (dl_main): When verifying don't check the name of
the dynamic linker.
* shlib-versions: Change entries for Hurd specific libs from
*-*-gnu* to *-*-gnu?* so that i586-pc-linux-gnu does not match
these entries.
* assert/assert.h: Reformat copyright.
Change reference to ANSI into reference to ISO C.
* ctype/ctype.h: Likewise.
* errno.h: Likewise.
* limits.h: Likewise.
* math/math.h: Likewise.
* setjmp/setjmp.h: Likewise.
* stdio/stdio.h: Likewise.
* libio/stdio.h: Likewise.
* stdlib/stdlib.h: Likewise.
* string/string.h: Likewise.
* time/time.h: Likewise.
* string/argz.h: Use __const is definitions.
* elf/dlfcn.h: Use __const and __P. Reformat copyright.
* misc/err.h: Likewise.
* wctype/wctype.h (wctrans_t): Use __const instead of const.
* Makeconfig ($(common-objpfx)soversions.mk): Generate list of
sonames for versioned libraries.
* Makefile: Remove code to generate libc-version.h.
Generate gnu/lib-names.h with info from soversions.mk.
* features.h: Define __GLIBC__ and __GLIBC_MINOR__.
* dirent/tst-seekdir.c: Initialize save3.
* grp/testgrp.c: Initialize my_group.
* grp/fgetgrent_r.c: Change interface to follow POSIX.1c.
* grp/grp.h: Likewise.
* nss/getXXbyYY.c: Likewise.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent.c: Likewise.
* nss/getXXent_r.c: Likewise.
* pwd/fgetpwent_r.c: Likewise.
* pwd/pwd.h: Likewise.
* shadow/fgetspent_r.c: Likewise.
* shadow/sgetspent.c: Likewise.
* shadow/sgetspent_r.c: Likewise.
* grp/fgetgrent.c: Adapt for change in interface of fgetgrent_r.
* pwd/fgetpwent.c: Likewise, for fgetpwent_r.c.
* shadow/fgetspent.c: Likewise, for fgetpwent_r.c.
* resolv/netdb.h: Adapt prototypes for reentrant functions to
follow POSIX.1c.
* sunrpc/rpc/netdb.h: Likewise,
* shadow/shadow.h: Likewise.
* inet/getnetgrent_r.c: Follow change in pwd/grp function interface.
* sysdeps/unix/getlogin_r.c: Return ERANGE when buffer is too small.
* inet/herrno.c: Don't define __h_errno. Only h_errno otherwise the
ELF aliasing creates strange situations.
* sysdeps/unix/sysv/linux/errnos.H: Define __set_errno as inline
function.
* sysdeps/unix/sysv/linux/i386/sysdep.S: Don't define __errno.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* libio/libio.h: Don't declare _IO_flockfile and _IO_funlockfile
weak.
* locale/programs/charmap.c: Add casts to prevent warnings.
* locale/programs/linereader.h: Likewise.
* locale/programs/ld-collate.c: Likewise.
* locale/programs/stringtrans.c: Likewise.
Change types for various variables to prevent warnings.
* locale/programs/ld-ctype.c: Likewise.
* locale/programs/linereader.h (lr_ungetc): Likewise.
* locale/programs/charset.h (struct charset): Use `unsigned int'
as type for width_default.
* posix/regex.c: Change type of `this_reg' variables.
* stdio-common/Makefile: Use -Wno-format for tstdiomisc.c.
* stdio-common/bug5.c: De-ANSI-fy. Use correct types for
variables.
* stdio-common/printf_fp.c: Initialize to_shift.
* stdio-common/test_rdwr.c: Add cast.
* stdio-common/vfprintf.c: Add casts and use correct types to
prevent warnings.
* stdio-common/vfscanf.c: Initialize str and strptr.
* sysdeps/libm-ieee754/e_jnf.c: Use correct types to prevent warnings.
* sysdeps/libm-ieee754/e_pow.c: Likewise.
* sysdeps/libm-ieee754/e_powf.c: Likewise.
* sysdeps/libm-ieee754/e_rem_pio2f.c: Likewise.
* time/test-tz.c: Likewise.
* manual/creature.texi: Document _REENTRANT and _THREAD_SAFE.
* manual/libc.texinfo: Prevent makeinfo failure by avoiding
libc.cp index. This must be fixed.
* manual/nss.texi: Adapt for correct POSIX.1c interface of
reentrant functions.
* manual/users.texi: Document netgroup functions.
* po/es.po: Updated.
* po/fr.po: Updated.
* posix/fnmatch.c: Change to match libit version.
* posix/unistd.h: Change prototype for ttyname_r to match POSIX.1c.
* sysdep/posix/ttyname_r.c: Likewise.
* stdlib/atexit.h (__new_exitfn): Add internal locking.
* stdlib/exit.c: De-ANSI-fy. Handle new ef_us value for flavor.
* stdlib/exit.h: De-ANSI-fy. Define new ef_us value for flavor.
* stdlib/random.c (__srandom): Add internal locking.
(__initstate): Likewise.
(__setstate): Likewise.
(__random): Likewise.
Mon Oct 28 22:28:37 1996 NIIBE Yutaka <gniibe@mri.co.jp>
* sysdeps/generic/crypt-entry.c (crypt_r): Use __set_errno.
(crypt): Likewise.
* resolv/gethnamaddr.c (gethostbyname2): Likewise.
* sysdeps/generic/uname.c: Likewise.
* sysdeps/posix/rename.c: Likewise.
* sysdeps/stub/setrlimit.c: Likewise.
* nss/nss_db/db-netgrp.c (_nss_db_setnetgrent): Fix typo.
Sun Oct 27 11:12:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* locale/programs/ld-collate.c (collate_order_elem): Fix format
string.
(collate_element_to): Cast field width argument to `int' for
format string.
(collate_symbol): Likewise.
(collate_order_elem): Likewise.
(collate_weight_bsymbol): Likewise.
(collate_simple_weight): Likewise.
* locale/programs/ld-time.c (STRARR_ELEM): Fix format string.
* locale/programs/ld-ctype.c (ctype_class_newP): Add missing
argument for format string.
(ctype_map_newP): Likewise.
(set_class_defaults): Fix format string.
* locale/programs/localedef.c (construct_output_path): Putting an
explicit \0 into the format string does not work, use %c.
Sat Oct 26 20:38:36 1996 Richard Henderson <rth@tamu.edu>
* Makerules: Install all shared libraries in $(slibdir).
* login/Makefile: Build libutil.so in others pass after
libc.so is created.
* misc/mntent.h: Include <paths.h> for _PATH_MNTTAB & _PATH_MOUNTED.
* string/stratcliff.c: Allocate 3 pages instead of one, then use
mprotect so that we know that the adjacent pages are inaccessible.
* resource/sys/resource.h: Move all structures and enums to ...
* sysdeps/generic/resourcebits.h: ... here ...
* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: ... and here.
* sysdeps/unix/sysv/linux/alpha/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/i386/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/m68k/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/mips/resourcebits.h: Remove.
* sysdeps/unix/sysv/linux/resourcebits.h: New file. Use kernel
header for RLIMIT_* definitions. The members of struct rlimit
are longs.
Thu Oct 24 17:43:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* MakeTAGS (sysdep-dirs): Fix typo.
Wed Oct 23 03:45:22 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile (headers): Don't mention libc-version.h.
(install-others): ...but here.
* time/strptime.c: Recognize %s, %u, %g, and %G format.
nothing is found. This guarantees all subsequent calls behave
* sysdeps/unix/sysv/linux/syscalls.list: Change function name for
* io/getwd.c (getwd) [! PATH_MAX]: Don't assume that the user's
buffer is any longer than the amount necessary to hold the
filename; the Hurd getcwd uses the *entire* contents of the
buffer, however long it is specified to be.
* posix/getconf.c: De-ANSI-fy. Recognize POSIX.2 constant names.
since these do not depend on the platform.
* libc-symbols.h (lint): Macro removed. The sunrpc code does some
really stupid things #ifdef lint.
* sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter): Fix
struct member name: sc_eip -> eip.
* time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h
include.
Mon Apr 29 02:48:26 1996 Ulrich Drepper <drepper@cygnus.com>
* ctype/ctype-info.c: (__ctype_width): New variable.
(__ctype_names): Initialize correctly without offset.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c: Change copyright.
* locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct
endianess for initialization value.
* locale/lc-ctype.c (current): Add parameter for offset.
(__ctype32_b, __ctype_width): Add initialization for these
variables.
* locale/programs/charmap.c: Finish support for WIDTH information.
(new_width): New function.
* locale/programs/charset.h (width_rule): new data structure.
(charset_t): Add elements for width information.
* locale/programs/ld-ctype.c (locale_ctype_t): Add element
for width information.
(allocate_arrays): Add new argument for charset.
(ctype_finish): Make sure all characters named in charset
width table are known to name table.
(ctype_output): Correct handling of class and map name
information and write out width information.
(find_idx): Prepare for being called with NULL pointer as
TABLE argument. This means only allocate name entry.
(allocate_arrays): Correct handling of array element -1.
Because EOF == -1 the value of element 127 must *not* be
mirrored here.
Fill width information from charset tables.
* locale/programs/localedef.c (main): Correct loop over all
categories after change of order from Thu Mar 28 14:22:51 1996.
Add new charset argument to call of `write_all_categories'.
* locale/programs/locales.h (ctype_finish, ctype_output): New
charset argument.
* locale/programs/locfile.c (write_all_categories): Call
`ctype_output' with additional argument charset.
* posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
and _POSIX_PRIO_IO definitions.
* posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX
and CHARCLASS_NAME_MAX.
* posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
and _POSIX_PRIO_IO.
* stdlib/grouping.h: Prepare for use in wide string functions.
* stdlib/stdlib.h: Correct prototypes for __strto*_internal
functions.
* stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'.
* stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'.
* string/strcoll.c: Extend for use as `wcscoll'.
* string/strxfrm.c: Extend for use as `wcsxfrm'.
* sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO,
_PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX.
* sysdeps/generic/stpncpy.c: Correct return value.
* sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO,
_PC_ASYNC_IO, and _PC_PRIO_IO.
* sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS,
_SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
_SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC,
_SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
_SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES,
_SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX.
* sysdeps/stub/sysconf.c: Ditto.
* sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
* sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h.
* sysdeps/unix/sysv/linux/Makefile [subdir == misc]
(sysdep_routines): Add s_sysctl and sysctl.
* sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap.
* sysdeps/unix/sysv/linux/sys/socket.h: New file. Wrapper
around kernel header.
* sysdeps/unix/sysv/linux/sys/sysctl.h: New file. Define
interface to `sysctl' function.
* sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl.
* sysdeps/unix/sysv/linux/sysconf.c: Add handling of
_SC_CHARCLASS_NAME_MAX.
* sysdeps/unix/sysv/linux/sysctl.c: new file. Implement caller
of _sysctl system call.
* sysvipc/Makefile (routines): Add ftok.
* sysvipc/ftok.c: use variable `proj_id' not `id'. Patch by
David Mosberger-Tang.
* wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol,
wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
wcsxfrm, wcwidth, and wcswidth.
* wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol,
wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
wcsxfrm, wcwidth, and wcswidth.
Declare internal interfaces for wcsto* functions.
[OPTIMIZE]: Define inline functions for wcsto* functions to
call internal interface functions.
* wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files. Implement non-
standard function equivalent to stpcpy/stpncpy.
* wcsmbs/wcscoll.c: Implement `wcscoll' function by using
`strcoll' implementation.
* wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of
wchar_t.
* wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod'
implementation.
* wcsmbs/wcstof.c: Same for `wcstof'.
* wcsmbs/wcstold.c: Same for `strtold'.
* wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol'
implementation.
* wcsmbs/wcstoq.c: Same for `wcstoq'.
* wcsmbs/wcstoul.c: Same for `wcstoul'.
* wcsmbs/wcstouq.c: Same for `wcstouq'.
* wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open
CAE.
* wcsmbs/wcwidth.c: Ditto for `wcwidth'.
* wcsmbs/wcwidth.h: Common function for definitions of above two
functions.
* wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using
`strxfrm implementation.
* wctype/wctype.c: Remove case for `wctype_t' being 16 bit type.
* wctype/wctype.h (wint_t): Protect against multiple definition.
(wctype_t): Always define as `unsigned long int'.
* wctype.h: New file. Wrapper around wctype/wctype.h.
* hurd/hurdstartup.c (_hurd_split_args): Function removed.
(_hurd_startup): Use argz functions.
* hurd/hurdexec.c: Use argz functions.
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
into just CLASS. Add standard/optional flag to all items.
* locale/localeinfo.h (_NL_CURRENT_DEFINE): Fix typo.
* ctype/ctype.h [__BYTE_ORDER == __LITTLE_ENDIAN] (_ISbit):
Rearrange defn to satisfy compiler.
* locale/localeinfo.h: Declare _nl_current.
* posix/glob/configure.bat: Fixes from DJ.
* time/backward, time/europe, time/northamerica, time/pacificnew,
time/zdump.c, time/zic.c, time/tzfile.h, time/private.h,
time/ialloc.c: Code and data updated from ADO's 95b.
* time/emkdir.c: File removed.
* time/Makefile (distribute, extra-objs, zic): Omit it.
* time/localtime.c: Deansideclized. Never #define __tzname et al
to non-__ names.
* locale/lc-ctype.c (__ctype_tolower, __ctype_toupper): Use int *
instead of short int *.
* ctype/ctype-info.c: Likewise.
* ctype/ctype.h: Likewise.
* locale/langinfo.h (_NL_CTYPE_CLASS): Use this (just one) instead
of EB and EL versions.
* locale/localeinfo.h: Rewritten for new locale system, using
locale data files and with <langinfo.h> interface.
* locale/setlocale.c: Rewritten to use locale data files.
* langinfo.h: New file.
* locale/langinfo.h: New file.
* locale/nl_langinfo.c: New file.
* locale/loadlocale.c: New file.
* locale/lc-ctype.c: New file.
* locale/lc-messages.c: New file.
* locale/lc-monetary.c: New file.
* locale/lc-numeric.c: New file.
* locale/lc-time.c: New file.
* locale/categories.def: New file.
* locale/Makefile (headers): Remove localeinfo.h.
(distribute): New variable; put localeinfo.h here, and categories.def.
(routines): Add loadlocale.
(categories): New variable.
(aux): Use that to get C-category and lc-category.
* ctype/ctype.h (_IS*): Use independent bits for all but _ISalnum.
* locale/C-ctype.c, locale/C-messages.c: New files.
* locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c:
Default "C" locale data updated for new locale system.
* locale/C-collate.c: File removed.
* locale/C-ctype_ct.c: File removed.
* locale/C-ctype_mb.c: File removed.
* locale/C-response.c: File removed.
* locale/localeconv.c: Use _NL_CURRENT macro to access locale data.
* stdio/printf_fp.c, stdio/vfprintf.c, stdio/vfscanf.c,
stdlib/strtod.c, time/asctime.c, time/strftime.c:
Include ../locale/localeinfo.h and use _NL_CURRENT macro to access
locale data.
* time/localtime.c: Don't include <localeinfo.h>.
* time/tzset.c: Don't use locale items for default TZ value or
"GMT" string (use "UTC").
* stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Only call the function if
WIDTH>0; update DONE.
* malloc/malloc.c (morecore): Fix last change to calculate by
blocks instead of bytes.