This gets rid of a lot of kludge and gets closer to other ports.
* hurd/Makefile (headers): Remove threadvar.h.
(inline-headers): Remove threadvar.h.
* hurd/Versions (GLIBC_2.0: Remove __hurd_sigthread_stack_base,
__hurd_sigthread_stack_end, __hurd_sigthread_variables,
__hurd_threadvar_max, __hurd_errno_location.
(HURD_CTHREADS_0.3): Add pthread_getattr_np, pthread_attr_getstack.
* hurd/hurd/signal.h: Do not include <hurd/threadvar.h>.
(_hurd_self_sigstate): Use THREAD_SELF to get _hurd_sigstate.
(_HURD_SIGNAL_H_EXTERN_INLINE): Use THREAD_SELF to get _hurd_sigstate,
unless TLS is not initialized yet, in which case we do not need a
critical section yet anyway.
* hurd/hurd/threadvar.h: Include <tls.h>, do not include
<machine-sp.h>.
(__hurd_sigthread_variables, __hurd_threadvar_max): Remove variables
declarations.
(__hurd_threadvar_index): Remove enum.
(_HURD_THREADVAR_H_EXTERN_INLINE): Remove macro.
(__hurd_threadvar_location_from_sp,__hurd_threadvar_location): Remove
inlines.
(__hurd_reply_port0): New variable declaration.
(__hurd_local_reply_port): New macro.
* hurd/hurdsig.c (__hurd_sigthread_variables): Remove variable.
(interrupted_reply_port_location): Add thread_t parameter. Use it
with THREAD_TCB to access thread-local variables.
(_hurdsig_abort_rpcs): Pass ss->thread to
interrupted_reply_port_location.
(_hurd_internal_post_signal): Likewise.
(_hurdsig_init): Use presence of cthread_fork instead of
__hurd_threadvar_stack_mask to start signal thread by hand.
Remove signal thread threadvar initialization.
* hurd/hurdstartup.c: Do not include <hurd/threadvar.h>
* hurd/sigunwind.c: Include <hurd/threadvar.h>
(_hurdsig_longjmp_from_handler): Use __hurd_local_reply_port instead
of threadvar.
* sysdeps/mach/hurd/Versions (libc.GLIBC_PRIVATE): Add
__libc_lock_self0.
(ld.GLIBC_2.0): Remove __hurd_sigthread_stack_base,
__hurd_sigthread_stack_end, __hurd_sigthread_variables.
(ld.GLIBC_PRIVATE): Add __libc_lock_self0.
* sysdeps/mach/hurd/cthreads.c: Add __libc_lock_self0.
* sysdeps/mach/hurd/dl-sysdep.c (errno, __hurd_sigthread_stack_base,
__hurd_sigthread_stack_end, __hurd_sigthread_variables, threadvars,
__hurd_threadvar_stack_offset, __hurd_threadvar_stack_mask): Do not
define variables.
* sysdeps/mach/hurd/errno-loc.c: Do not include <errno.h> and
<hurd/threadvar.h>.
[IS_IN(rtld)] (rtld_errno): New variable.
[IS_IN(rtld)] (__errno_location): New weak function.
[!IS_IN(rtld)]: Include "../../../csu/errno-loc.c".
* sysdeps/mach/hurd/errno.c: Remove file.
* sysdeps/mach/hurd/fork.c: Include <hurd/threadvar.h>
(__fork): Remove THREADVAR_SPACE macro and its use.
* sysdeps/mach/hurd/i386/init-first.c (__hurd_threadvar_max): Remove
variable.
(init): Do not initialize threadvar.
* sysdeps/mach/hurd/i386/libc.abilist (__hurd_threadvar_max): Remove
symbol.
* sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use
__hurd_local_reply_port instead of threadvar.
* sysdeps/mach/hurd/i386/tls.h (tcbhead_t): Add reply_port and
_hurd_sigstate fields.
(HURD_DESC_TLS, __LIBC_NO_TLS, THREAD_TCB): New macro.
* sysdeps/mach/hurd/i386/trampoline.c: Remove outdated comment.
* sysdeps/mach/hurd/libc-lock.h: Do not include <hurd/threadvar.h>.
(__libc_lock_owner_self): Use &__libc_lock_self0 and THREAD_SELF
instead of threadvar.
* sysdeps/mach/hurd/libc-tsd.h: Remove file.
* sysdeps/mach/hurd/mig-reply.c (GETPORT, reply_port): Remove macros.
(use_threadvar, global_reply_port): Remove variables.
(__hurd_reply_port0): New variable.
(__mig_get_reply_port): Use __hurd_local_reply_port and
__hurd_reply_port0 instead of threadvar.
(__mig_dealloc_reply_port): Likewise.
(__mig_init): Do not initialize threadvar.
* sysdeps/mach/hurd/profil.c: Fix comment.
Add net/ethernet.h net/if_arp.h net/if_ether.h net/if_ppp.h
net/route.h.
* hurd/report-wait.c (describe_number): Use __stpcpy to prepend
flavor to description only when flavor is not NULL.
* hurd/hurdsig.c (signal_allowed): Unlock _hurd_dtable_lock
mutex after SIGIO/SIGURG lookup loop.
ignore a signal that came from a machine exception, treat it as a
fatal core-dump signal instead.
Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
Change argument type from int to intptr_t.
* locale/global-locale.c (__libc_tsd_LOCALE_data): Conditionalize the
initializer on [! _HURD_THREADVAR_H] (bad kludge).
* sysdeps/mach/hurd/i386/init-first.c (init): Initialize
_HURD_THREADVAR_LOCALE slot to &_nl_global_locale.
* hurd/hurdsig.c (_hurdsig_init): Likewise. Zero other slots.
Reported by Jon Arney <jarney1@cox.net>.
2002-02-23 Roland McGrath <roland@frob.com>
* hurd/hurd/threadvar.h (__hurd_threadvar_location): Add __THROW to
declaration.
(__hurd_errno_location): Function removed.
* hurd/hurdsig.c (_hurdsig_init): Remove a useless line of code.
2001-07-07 Roland McGrath <roland@frob.com>
* hurd/hurdsig.c (_hurd_thread_sigstate): Use MACH_PORT_NULL, not 0.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-01-24 Mark Kettenis <kettenis@gnu.org>
* hurd/hurdsig.c (_hurdsig_getenv): Remove spurious innermost
declaration of value such that we actually return the value of the
environment variable.
2000-08-22 Mark Kettenis <kettenis@gnu.org>
* hurd/hurdsig.c: Rearrange headers a bit.
(_hurdsig_init): Block until _hurd_msgport_thread is initialized
when cthreads is being used.
* hurd/hurdsig.c (_hurdsig_init): If __hurd_threadvar_stack_mask is
nonzero, use cthread_fork to create the signal thread.
* hurd/msgportdemux.c (_hurd_msgport_receive): Initialize
_hurd_msgport_thread here (to self).
* sysdeps/mach/hurd/fork.c (__fork): When __hurd_sigthread_stack_end
is zero, instead compute child signal thread's starting SP from parent
signal thread's current SP and the threadvar_stack variables.
* hurd/Versions (GLIBC_2.1.3): Add cthread_fork, cthread_detach.
These are now referenced weakly by _hurdsig_init.
* hurd/report-wait.c (_S_msg_report_wait): Fix typo:
&_hurd_itimer_thread not &_hurd_msgport_thread.
1999-10-01 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdfchdir.c (_hurd_change_directory_port_from_fd): Rewrite
without HURD_DPORT_USE to clean up warnings.
* hurd/dtable.c (get_dtable_port): Likewise.
* hurd/hurdioctl.c (rectty_dtable): Renamed to install_ctty.
(install_ctty): Do the changing of the cttyid port cell here, inside
the critical section while we holding the dtable lock.
(_hurd_setcttyid, tiocsctty, tiocnotty): Use that instead of changing
the port cell and calling rectty_dtable.
(_hurd_locked_install_cttyid): New function, split out of install_ctty.
(install_ctty): Use it inside a critical section, with the lock held.
* sysdeps/mach/hurd/setsid.c (__setsid): Use
_hurd_locked_install_cttyid to effect the cttyid and dtable changes
after proc_setsid, having held the dtable lock throughout.
* hurd/dtable.c (ctty_new_pgrp): With the dtable lock held, check the
cttyid port for null and bail out early if so. The dtable lock
serializes us after any cttyid change and its associated dtable update.
* sysdeps/mach/_strerror.c: Include <libintl.h>.
1999-07-19 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdsig.c (_hurd_internal_post_signal): If a
hurd_signal_preemptor matches but its `preemptor' field is null, use
its `handler' field directly. This is to comply with behavior
documented in <hurd/sigpreempt.h>.
* hurd/hurdsig.c (_hurdsig_init): Take new args, INTARRAY and
INTARRAYSIZE. Initialize main thread's sigstate from INIT_SIG* ints.
* hurd/hurd/signal.h: Update _hurdsig_init decl.
* hurd/hurdinit.c (_hurd_proc_init): Take new args, INTARRAY and
INTARRAYSIZE, pass them down to _hurdsig_init.
* hurd/hurd.h: Update _hurd_proc_init decl.
1998-05-19 15:58 Ulrich Drepper <drepper@cygnus.com>
* elf/rtld.c (process_envvars): Fix typo. Don't handle
LD_PROFILE_OUTPUT in SUID binaries.
* intl/dcgettext.c: In SUID binaries don't let language part of
locale value contain path elements.
* intl/explodename.h: Define new function _nl_find_language.
* intl/loadinfo.h: Declare _nl_find_language.
* locale/findlocale.c (_nl_find_locale): Use _nl_find_locale to get
language part it drop the value is path element is contained.
* locale/setlocale.c: Fix typo.
1998-05-18 Philip Blundell <Philip.Blundell@pobox.com>
* sysdeps/unix/sysv/linux/arm/socket.S: Correct handling of arguments.
* sysdeps/arm/strlen.S: Support both big and little endian processors.
* sysdeps/arm/sysdep.h (ALIGNARG): ELF .align directive uses a
log, not a byte-count.
* sysdeps/unix/arm/sysdep.S (syscall_error): Use C_SYMBOL_NAME for
a.out compatibility.
1998-05-19 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/bsd/vax/vfork.S: Fix the "the the" problems.
* sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
* sysdeps/unix/bsd/hp/m68k/vfork.S: Likewise.
* posix/unistd.h: Likewise.
* math/math.h: Likewise.
* manual/users.texi (Manipulating the Database): Likewise.
* manual/signal.texi (Job Control Signals): Likewise.
* manual/message.texi (The gencat program): Likewise.
* manual/filesys.texi (Hard Links): Likewise.
* manual/math.texi (SVID Random): Likewise.
* manual/llio.texi (Waiting for I/O): Likewise.
* manual/io.texi (File Name Errors): Likewise.
* manual/conf.texi (String Parameters): Likewise.
* manual/arith.texi (Infinity): Likewise.
* malloc/malloc.c: Likewise.
* hurd/hurdsig.c (_hurd_internal_post_signal): Likewise.
* csu/Makefile: Likewise.
1997-07-06 23:36 Ulrich Drepper <drepper@cygnus.com>
* isomac.c (get_null_defines): Put NULL at end of list.
* hurd/Makefile: Remove special handling of sunrpc code.
* sysdeps/mach/hurd/Makefile: Likewise.
Compile CThreads code.
* sunrpc/rpc_main.c: Don't use MAXPATHLEN.
* sysdeps/mach/bits/libc-lock.h: Add definitions for key handling
functions.
* sysdeps/stub/bits/libc-lock.h: Likewise.
* sysdeps/mach/hurd/net/ethernet.h: New file.
* sysdeps/mach/hurd/net/if.h: New file.
* sysdeps/mach/hurd/net/if_arp.h: New file.
* sysdeps/mach/hurd/net/if_ether.h: New file.
* sysdeps/mach/hurd/net/if_ppp.h: New file.
* sysdeps/mach/hurd/net/route.h: New file.
Patches by Fila Kolodny <fila@ibi.com>.
* math/fenv-test.c: Add more tests.
Patch by Andreas Jaeger <aj@arthur.rhein-neckar.de>.
* sysdeps/wordsize-32/inttypes.h: Correct values for INTFAST_MIN,
INTFAST_MAX, and UINTFAST_MAX.
* sysdeps/wordsize-64/inttypes.h: Likewise.
Correct intmax_t definition.
1997-07-04 15:33 H.J. Lu <hjl@gnu.ai.mit.edu>
* elf/rtld.c (dl_main): Add '\n' to _dl_sysdep_fatal ().
1997-07-01 09:18 H.J. Lu <hjl@gnu.ai.mit.edu>
* libc.map: Add missing symbol.
1997-07-04 18:04 H.J. Lu <hjl@gnu.ai.mit.edu>
* stdlib/tst-strtol.c: Don't assume cpp takes ~0UL as long
in cc1. Cpp in gcc doesn't do it.
1997-07-01 21:15 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libio/libioP.h: Remove second definition of _IO_file_attach.
* sysdeps/i386/fpu/fraiseexcpt.c (feraiseexcept): Correct comments.
* sysdeps/sparc64/elf/start.S (_start): Update and reformat
copyright.
* manual/summary.awk: Likewise.
* misc/bits/stab.def: Likewise.
* posix/glob/Makefile.ami: Likewise.
* posix/glob/Makefile.in: Likewise.
* posix/glob/SMakefile: Likewise.
* sysdeps/gnu/errlist.awk: Likewise.
* sysdeps/mach/hurd/errnos.awk: Likewise.
* sysdeps/standalone/i386/force_cpu386/target.ld: Likewise.
* sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld: Likewise.
* sysdeps/unix/snarf-ioctls: Likewise.
* sysdeps/vax/setjmp.c: Likewise.
1997-07-05 11:56 Ulrich Drepper <drepper@cygnus.com>
* login/login.c (tty_name): Use newly allocated buffer.
Patch by Jaakko Hyvtti <jaakko.hyvatti@iki.fi>.
* time/asctime.c: Never translate week and month name according
to LC_TIME. Patch by Paul Eggert <eggert@twinsun.com>.
1997-07-03 22:50 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* locale/setlocale.c (setname): Do nothing when reusing the same
name.
1997-07-03 20:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libc.map: Add global variables of malloc.
1997-07-03 13:24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-version.c (find_needed): Look for needed objects also in
the dependency list of the current object. Added new parameter to
find its link map, caller changed.
1997-07-03 12:33 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/fraiseexcpt.c: Correct the FE_INEXACT and
FE_UNDERFLOW cases.
1997-07-01 13:36 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/link.h: Remove final comma from enumerator list, forbidden
by ISO C. Use __inline instead of inline.
1997-07-01 16:40 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* hurd/hurdsig.c: Include <hurd/id.h>.
(reauth_proc): Call proc_setowner appropriately too.
1997-07-01 09:18 H.J. Lu <hjl@gnu.ai.mit.edu>
* libc.map: Add missing symbol.
1997-06-30 12:12 Fila Kolodny <fila@ibi.com>
* sysdeps/mach/hurd/fchdir.c: Make fchdir a weak alias of __fchdir.
* sysdeps/mach/hurd/getpeername.c (getpeername): Remove spurious
declaration of addr.
1997-06-29 17:56 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/argp.texi (Argp Option Vectors): Fix use of @math to make
it work in TeX.
1997-06-27 21:25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig (+includes): Add include directory to include path.
* configure.in (sysnames): Don't add it here.
* Makefile (subdir-dirs): Define and add it to vpath for headers.
* Make-dist (all-headers): Look in include directory for
indirection headers. Filter out header names pointing outside the
source directory.
* Makefile (distribute): Remove ansidecl.h, add libc.map.
* Make-dist (+tsrcs): Add version scripts for extra libraries.
* Makerules (distinfo-vars): Add %-map for extra libraries.
* sysdeps/unix/sysv/linux/alpha/Dist: Rename sys/kernel_termios.h
to kernel_termios.h.
* sysdeps/unix/sysv/linux/powerpc/Dist: Remove ioctl-types.h,
termbits.h and sys/kernel_termios.h.
* sysdeps/mips/mips64/Dist: New file.
* sysdeps/unix/sysv/linux/Dist: Add stdio_lim.h.in.
1997-06-29 23:03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/test-fenv.c (feenv_nomask_test): New test for non masked
exceptions.
(feenv_mask_test): New test for masked exceptions
(feenv_tests): New function calls feenv_nomask_test and
feenv_mask_test.
(main): Call new tests.
(initial_tests): New test for initilisation.
1997-05-21 02:49 Ulrich Drepper <drepper@cygnus.com>
* gnu-versions.h (_GNU_OBSTACK_INTERFACE_VERSION): Set to 2 since
interface was changed with addition of _obstack_memory_used.
Suggested by Ian Taylor <ian@cygnus.com>.
* malloc/obstack.c: Include <config.h>. Include <stdlib.h> only
if __GNU_LIBRARY__ or HAVE_STDLIB_H is defined.
Reported by Ian Taylor <ian@cygnus.com>.
* dirent/Makefile (routines): Add versionsort.
* dirent/dirent.h: Add prototype for versionsort.
* dirent/versionsort.c: New file.
* manual/filesys.texi: Add documentation for versionsort.
* manual/string.texi: Add documentation for strverscmp.
* string/Makefile (routines): Add strverscmp.
(tests): Add tst-svc.
* string/string.h: Add prototype for strverscmp.
* string/strverscmp.c: New file.
* string/tst-svc.c: New file. Test for strverscmp.
* string/tst-svc.input: New file. Input data for tst-svc.
* string/tst-svc.expect: New file. Expected out from tst-svc.
* math/Makefile (calls): Add s_signbit.
* po/sv.po: Update.
* resolv/nss_dns/dns-host.c: Add casts to prevent warnings.
* sunrpc/pmap_rmt.c: Likewise.
* string/basename.c: Don't use ISO C definition style.
Include <config.h> is HAVE_CONFIG_H is defined.
* sunrpc/proto.h: Add `const' wherever possible.
* sunrpc/rpc_cout.c: Likewise.
* sunrpc/rpc_svcout.c: Likewise.
* sunrpc/xdr_mem.c: Likewise.
* sunrpc/xdr_rec.c: Likewise.
* sunrpc/xdr_stdio.c: Likewise.
* sunrpc/rpc_parse.c: Delete comma from end of enum definition.
* sunrpc/xdr.c: Little code cleanups.
* sunrpc/xdr_flaot.c: Likewise.
Patches by Matthew Wilcox <matthew.wilcox@chbs.mhs.ciba.com>.
* sysdeps/i386/fpu/__math.h (__finite): Fix typo.
* sysdeps/unix/sysv/linux/shmdt.c: Add cast to prevent warning.
* time/europe: Update from tzdata1997f.
* time/zic.c: Update from tzcode1997e.
1997-05-20 19:20 Miguel de Icaza <miguel@athena.nuclecu.unam.mx>
* sysdeps/sparc/setjmp.S: Flush windows.
Bug found by Richard Henderson.
1997-05-19 12:54 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* misc/efgcvt_r.c (fcvt_r, ecvt_r): Rewritten as to fit the specs.
1997-05-19 18:41 Thorsten Kukuk <kukuk@uni-paderborn.de>
* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_parse_spent): Use
atol instead of atoi.
1997-05-18 00:22 Philip Blundell <pjb27@cam.ac.uk>
* inet/Makefile (routines): Add if_index.
* sysdeps/unix/sysv/linux/if_index.c: New file.
* sysdeps/stub/if_index.c: New file.
* sysdeps/unix/sysv/linux/net/if.h: Add prototypes for routines in
if_index.c (required by IPv6 basic API).
* sysdeps/unix/sysv/linux/netinet/in.h: Add struct ipv6_pktinfo.
1997-05-17 23:29 Philip Blundell <pjb27@cam.ac.uk>
* sysdeps/unix/sysv/linux/netinet/in.h: Update IPv6 definitions
for new advanced API draft.
1997-05-13 21:33 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdio-common/printf_fp.c: Only use the field width for deciding
on padding when printing special values.
* stdio-common/printf_fphex.c: Likewise.
1997-05-15 13:14 Miles Bader <miles@gnu.ai.mit.edu>
Changes by Thomas Bushnell <thomas@gnu.ai.mit.edu>:
* hurd/hurdauth.c (_S_msg_add_auth): Implement correctly.
1997-05-12 14:50 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* hurd/hurdsig.c (_hurdsig_init): Double size of sigthread stack;
msg_add_auth was overflowing it.
1997-05-12 21:20 Richard Henderson <rth@tamu.edu>
* elf/dl-lookup.c (_dl_lookup_symbol_skip): Call _dl_signal_error
when we can't find the symbol.
1997-05-12 16:54 Ulrich Drepper <drepper@cygnus.com>
* posix/regex.c: Fix handling of 32-bit Windog environments.
Patch by Arnold Robbins <arnold@skeeve.atl.ga.us>.
1997-05-10 23:26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/syscalls.list: Add cacheflush.
1997-05-10 11:40 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/ldd.bash.in: Remove spurious quote character from version
message.
1997-05-10 08:49 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* locale/programs/locale.c (write_charmaps): Don't get stuck in a
loop if the file ends in a long line without newline.
* locale/programs/charmap.c (charmap_read): Likewise.
1997-05-12 03:47 Ulrich Drepper <drepper@cygnus.com>
* sunrpc/rpc/xdr.h: Include more headers to be self-contained.
* sunrpc/rpc/svc_auth.h: Likewise.
* sunrpc/rpc/svc.h: Likewise.
* sunrpc/rpc/rpc_msg.h: Likewise.
* sunrpc/rpc/pmap_rmt.h: Likewise.
* sunrpc/rpc/pmap_clnt.h: Likewise.
* sunrpc/rpc/clnt.h: Likewise.
* sunrpc/rpc/auth_unix.h: Likewise.
* sysdeps/generic/rpc/auth.h: Likewise.
Patches by Michael Deutschmann <ldeutsch@mail.netshop.net>.
1997-05-11 15:29 Philip Blundell <pjb27@cam.ac.uk>
* sysdeps/stub/sigaction.c (__sigaction): Correct typo.
* sysdeps/standalone/arm/errnos.h: New file.
* sysdeps/stub/sys/param.h: Add dummy definition of MAXSYMLINKS.
* sysdeps/unix/arm/fork.S: New file.
* sysdeps/unix/sysv/linux/arm/sysdep.h: New file.
* sysdeps/stub/tempname.c (__stdio_gen_tempname): Add missing
`streamptr' argument.
* sysdeps/stub/vdprintf.c: Remove second copy of file (!), include
<stdarg.h> to get va_list defined, return 0 not NULL.
* sysdeps/unix/sysv/linux/statfsbuf.h: Include <gnu/types.h>.
* sysdeps/unix/sysv/linux/arm/syscall.S: New file.
* sysdeps/stub/direntry.h (struct dirent): Add missing ';'.
* sysdeps/stub/seekdir.c (seekdir): Likewise.
* sysdeps/stub/dirfd.c (dirfd): Argument dirp is DIR*, not FILE*.
* sysdeps/standalone/dirstream.h: Define struct __dirstream
not DIR; <dirent.h> provides typedef.
* sysdeps/unix/sysv/linux/arm/clone.S: New file.
* sysdeps/unix/sysv/linux/arm/socket.S: New file.
* sysdeps/stub/sysconf.c (__sysconf): Fix typos.
1997-05-01 06:35 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/Dist: New file.
* sysdeps/powerpc/Makefile: New file.
* sysdeps/powerpc/fclrexcpt.c: New file.
* sysdeps/powerpc/fegetenv.c: New file.
* sysdeps/powerpc/fegetround.c: New file.
* sysdeps/powerpc/feholdexcpt.c: New file.
* sysdeps/powerpc/fenvbits.h: New file.
* sysdeps/powerpc/fenv_const.c: New file.
* sysdeps/powerpc/fenv_libc.h: New file.
* sysdeps/powerpc/fesetenv.c: New file.
* sysdeps/powerpc/fesetround.c: New file.
* sysdeps/powerpc/feupdateenv.c: New file.
* sysdeps/powerpc/fgetexcptflg.c: New file.
* sysdeps/powerpc/fraiseexcpt.c: New file.
* sysdeps/powerpc/fsetexcptflg.c: New file.
* sysdeps/powerpc/ftestexcept.c: New file.
* sysdeps/powerpc/mathbits.h: New file.
* sysdeps/powerpc/dl-machine.h: Wrap in #ifndef dl_machine_h;
define elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p,
ELF_MACHINE_RELOC_NOPLT; consequent changes to elf_machine_rela.
* sysdeps/powerpc/__math.h: Remove definition for hypot and __sgn.
* sysdep/powerpc/fpu_control.h: Correct IEEE default mode.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use .text, but
instead .section ".text".
1997-04-25 05:06 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/__longjmp.S: Use symbolic register numbering.
* sysdeps/powerpc/bsd-_setjmp.S: Likewise.
* sysdeps/powerpc/bsd-setjmp.S: Likewise.
* sysdeps/powerpc/setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/clone.S: Likewise.
* sysdeps/unix/sysv/linux/socket.S: Likewise.
* sysdeps/unix/sysv/linux/syscall.S: Likewise.
1997-04-20 04:37 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/strchr.s: New file.
* sysdeps/powerpc/strcmp.s: New (ugly) file.
* sysdeps/powerpc/memset.s: New file.
* string/tester.c: Include prototype and _GNU_SOURCE to make
standalone compilation possible. Give strcmp a better
test. Give memset a better test.
1997-04-05 06:34 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/strlen.s: Fixed bugs (how did it ever pass its
tests before?). Changed to symbolic register numbering as an
experiment.
* sysdeps/powerpc/ffs.c: Don't include bstring.h, it doesn't
exist.
* sysdeps/rs6000/ffs.c: Likewise.
1997-05-12 02:28 Ulrich Drepper <drepper@cygnus.com>
* time/sys/time.h: Make second argument of setitimer const.
Patch by Michael Deutschmann <ldeutsch@mail.netshop.net>.
* sysdeps/stub/setitimer.c: Likewise.
* sysdeps/mach/hurd/setitimer.c: Likewise.
Wed Dec 18 03:31:58 1996 Ulrich Drepper <drepper@cygnus.com>
* dirent/scandir.c: Undo change from Mon Dec 2 15:32:15 1996.
The stream is private and usages outside glibc don't care about
reentrancy.
* io/fts.c: Likewise.
* io/ftw.c: Likewise.
* sysdeps/posix/getcwd.c: Likewise.
* sysdeps/posix/ttyname.c: Likewise.
* sysdeps/posix/ttyname_r.c: Likewise.
* sysdeps/posix/glob.c: Likewise.
* libio/iovsprintf.c: Add cast to prevent warning.
* libio/iovsscanf.c: Likewise.
* libio/libioP.h: Define mmap to __mmap and munmap to __munmap
to keep namespace clean.
* new-malloc/malloc.c: Update to last version from Wolfram Gloger.
Add hooks and check functions from old GNU malloc.
* new-malloc/malloc.h: Likewise.
* nis/ypclnt.c: Remove prototype for xdr_free.
* snrpc/rpc/xdr.h: Add prototype for xdr_free.
* manual/nss.texi: Correct description of default values and don't
meantion NSS as an add-on.
* nss/grp-lookup.c: Provide default value as
"compat [NOTFOUND=return] files".
* nss/pwd-lookup.c: Likewise.
* nss/spwd-lookup.c: Likewise.
* nss/network-lookup.c: Correct default to
"dns [!UNAVAIL=return] files".
* nss/nsswitch.c: Change default-default value to "nis
[NOTFOUND=return] files" since compat is only available for group,
passwd, and shadow.
* stdlib/on_exit.c (on_exit): Rename to __on_exit and make old name
a weak alias.
* stdlib/stdlib.h: Add prototype for __on_exit.
* sysdeps/unix/sysv/linux/schedbits.h: Add prototype for __clone.
* time/Makefile: Undo change from Sun Dec 8 06:56:49 1996.
The new malloc now has mcheck.
* time/ap.c: Likewise.
* time/tzset.c (__tzset): Rename to __tzset_internal.
(tzset): Rename to __tzset. Make tzset a weak alias for __tzset.
* time/localtime.c: Use __tzset_internal not __tzset.
* time/strftime.c [_LIBC]: Define tzname as __tzname and tzset
as __tzset to prevent namespace pollution.
* wctype/iswctype.h (icwctype): Rename to __iswctype. Make iswctype
a weak alias of __iswctype.
* wctype/wctype.h: Add prototype for __iswctype.
(iswalnum, iswalpha, iswcntrl, iswdigit, iswlower, iswgraph,
iswprint, iswpunct, iswspace, iswupper, iswxdigit, iswblank):
Use __iswctype for the test, not iswctype.
1996-12-16 Paul Eggert <eggert@twinsun.com>
* hurd/hurd/sigpreempt.h
(struct hurd_signal_preemptor.preemptor, _hurdsig_preemptors),
hurd/hurd/signal.h (struct hurd_sigstate.preemptors),
hurd/hurdfault.c, hurd/hurdfault.h (_hurdsig_fault_preemptor),
hurd/hurdsig.c (_hurdsig_preempters):
Renamed to fix spelling from `preempter' to `preemptor'.
All uses changed.
1996-12-15 Paul Eggert <eggert@twinsun.com>
* ctime.c (ctime): Return asctime (localtime (t)), as the C
standard requires.
Tue Dec 17 02:05:48 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* sysdeps/mach/libc-lock.h (__libc_lock_trylock): Invert return
value because Mach/cthreads uses the opposite convention from
Posix/glibc.
Mon Dec 16 22:41:01 1996 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/fcloseall.c: Correct test of already_called.
Reported by Thomas Bushnell, n/BSG.
Mon Dec 16 14:52:07 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* mach/lock-intern.h (__mutex_try_lock): New function.
Sun Dec 15 16:33:44 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* termios/sys/ttydefaults.h (TTYDEF_OFLAG): Only use OXTABS if
defined, else XTABS.
(CEOL, CSTATUS): Use _POSIX_VDISABLE if defined.
Sun Dec 15 11:56:19 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/mremap.S: New file.
* sysdeps/unix/sysv/linux/m68k/Dist: Distribute it.
* sysdeps/unix/sysv/linux/m68k/Makefile (sysdep_routines): Add mremap.
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.
* hurd/hurdsig.c (write_corefile): If we can't create the core
file, still call crash_dump_task with a null FILE arg. Maybe it
won't actually need the file.
Tue Oct 8 13:58:31 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* hurd/ports-get.c (_hurd_ports_get): If the requested port is
null, don't attempt mach_port_mod_refs.
* hurd/hurdsig.c (_hurd_internal_post_signal): In case of handled
signal during critical section doing interruptible RPC, if
_hurdsig_abort_rpcs wants to change thread state, do thread_set_state
before thread_resume. If in critical section, pass 0 for SIGNO to
_hurdsig_abort_rpcs so rpc is interrupted regardless of SA_RESTART.