Commit Graph

41 Commits

Author SHA1 Message Date
Roland McGrath
cf684340ce * ctype/ctype.h (__ctype_b, __ctype_toupper, __ctype_tolower):
Variable declarations removed.
	(__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Declare
	these functions to replace them.
	(__isctype, tolower, toupper, _tolower, _toupper): Use those accessor
	functions plus an indirection rather than the old global variables.
	* include/ctype.h (__isctype, tolower, _tolower, toupper, _toupper):
	Macros removed.
	(__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): New extern
	inline functions.
	* ctype/ctype-info.c: Revert last reversion back the other way.
	Define tsd vars CTYPE_B, CTYPE_TOLOWER, CTYPE_TOUPPER.
	Define real function versions of include/ctype.h inlines here.
	* ctype/Versions (libc: GLIBC_2.3): Add __ctype_b_loc,
	__ctype_tolower_loc, __ctype_toupper_loc.
	* locale/lc-ctype.c: Revert last reversion back the other way.
	(_nl_postload_ctype): If current thread uses the global locale,
	update its tsd vars.
	* locale/uselocale.c (__uselocale): Update tsd vars from new locale.
	* hurd/hurd/threadvar.h (enum __hurd_threadvar_index): Add CTYPE_B,
	CTYPE_TOLOWER, CTYPE_TOUPPER.

	* sysdeps/generic/bits/libc-tsd.h (__libc_tsd_address): New macro.
	* sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_address): Renamed
	from __libc_tsd_threadvar_location.
	(__libc_tsd_set, __libc_tsd_get): Update uses.
2002-09-02 07:09:08 +00:00
Roland McGrath
cc7375ce02 2002-08-26 Brian Youmans <3diff@gnu.org>
* crypt/crypt.c: Changed copying permission notice to Lesser GPL
        from Library GPL.
        * crypt/crypt_util.c: Likewise.
        * crypt/ufc.c: Likewise.
        * elf/dl-conflict.c: Likewise.
        * elf/dl-iteratephdr.c: Likewise.
        * iconv/iconvconfig.h: Likewise.
        * linuxthreads/Examples/ex10.c: Likewise.
        * linuxthreads/Examples/ex11.c: Likewise.
        * linuxthreads/Examples/ex13.c: Likewise.
        * linuxthreads/Examples/ex8.c: Likewise.
        * linuxthreads/Examples/ex9.c: Likewise.
        * linuxthreads/barrier.c: Likewise.
        * linuxthreads/events.c: Likewise.
        * linuxthreads/lockfile.c: Likewise.
        * linuxthreads/no-tsd.c: Likewise.
        * linuxthreads/pt-machine.c: Likewise.
        * linuxthreads/ptclock_gettime.c: Likewise.
        * linuxthreads/ptclock_settime.c: Likewise.
        * linuxthreads/rwlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/arm/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/arm/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/cris/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/cris/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/hppa/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/hppa/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/i686/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/i386/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/useldt.h: Likewise.
        * linuxthreads/sysdeps/ia64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/ia64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/m68k/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/m68k/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/mips/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/mips/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/powerpc/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/powerpc/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-tsd.h: Likewise.
        * linuxthreads/sysdeps/pthread/getcpuclockid.c: Likewise.
        * linuxthreads/sysdeps/pthread/posix-timer.h: Likewise.
        * linuxthreads/sysdeps/pthread/timer_create.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_delete.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_getoverr.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_gettime.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_routines.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_settime.c: Likewise.
        * linuxthreads/sysdeps/pthread/tst-timer.c: Likewise.
        * linuxthreads/sysdeps/s390/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/s390/s390-32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/s390/s390-64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sh/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sh/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/sparcv9/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/hppa/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
        * linuxthreads/tststack.c: Likewise.
        * linuxthreads/unload.c: Likewise.
        * linuxthreads/weaks.c: Likewise.
        * linuxthreads/wrapsyscall.c: Likewise.
        * malloc/arena.c: Likewise.
        * malloc/hooks.c: Likewise.
        * malloc/malloc.c: Likewise.
        * posix/glob/Makefile.ami: Likewise.
        * posix/glob/Makefile.in: Likewise.
        * stdlib/gmp-impl.h: Likewise.
        * stdlib/gmp.h: Likewise.
        * sysdeps/generic/dl-iteratephdr-static.c: Likewise.
        * sysdeps/generic/strnlen.c: Likewise.
        * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
        * sysdeps/mach/hurd/recvmsg.c: Likewise.
        * sysdeps/mach/hurd/sendmsg.c: Likewise.
        * sysdeps/mach/hurd/spawni.c: Likewise.
        * sysdeps/mach/powerpc/machine-sp.h: Likewise.
        * sysdeps/mach/powerpc/sysdep.h: Likewise.
        * sysdeps/mach/powerpc/thread_state.h: Likewise.
        * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
        * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: Likewise.
        * sysdeps/x86_64/gmp-mparam.h: Likewise.
2002-08-26 22:40:48 +00:00
Ulrich Drepper
ead001fdd6 Add _LIBC_TSD_KEY_LOCALE. 2002-08-04 03:17:32 +00:00
Roland McGrath
c2afe83352 * sysdeps/pthread/bits/libc-tsd.h: Include <tls.h>.
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
	which does the right thing when __thread support is available.
	* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
	Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
	`p_h_errno', `p_resp', and `p_res' members.
	* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_errnop' and `p_h_errnop' members.
	(__pthread_reset_main_thread): Likewise.
	(__pthread_initialize_manager): Likewise.
	* manager.c (__pthread_manager, pthread_handle_create): Likewise.
	* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_resp' member.
	(__pthread_reset_main_thread): Likewise.
	* manager.c (pthread_handle_create): Likewise.
	* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
	Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
	* errno.c [USE_TLS && HAVE___THREAD]
	(__h_errno_location, __res_state): Don't define these at all.

	* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
	(INSTALL_NEW_DTV, GET_DTV): Likewise.
	* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.

	* weaks.c: Don't include <errno.h> here.

2002-08-01  Roland McGrath  <roland@redhat.com>

	* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
	TLS_INIT_TP.
	(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
	(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
	(TLS_INIT_TP): Use that.
2002-08-02 03:32:24 +00:00
Ulrich Drepper
c06a49c551 Update.
2001-08-27  Ulrich Drepper  <drepper@redhat.com>

	* misc/syslog.c (vsyslog): Try a bit harder to use syslogd.  If
	the connection went down after we first used it try to connect
	again and resend the message before printing to the console.
	Reported by Coserea Gh. Tudor <tudore@tudore.gecadsoftware.com>.

2001-08-27  Jakub Jelinek  <jakub@redhat.com>

	* string/tst-strlen.c (main): Test strnlen (, -1) too.
	* sysdeps/generic/strnlen.c (__strnlen): Fix for maxlens with top
	bit set.

2001-08-27  Ulrich Drepper  <drepper@redhat.com>

	* iconv/strtab.c (searchstring): Use correct length for
	comparison.
	(strtabadd): Account total size correct if new string has old string as
	substring.
2001-08-28 04:52:25 +00:00
Ulrich Drepper
82ad8034aa Update.
2001-08-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/pthread/bits/libc-lock.h (__libc_lock_t): Define
	non-opaque lock types also if _IO_MTSAFE_IO is defined.
2001-08-27 05:32:49 +00:00
Roland McGrath
edb6388469 * sysdeps/generic/bits/libc-lock.h: Same changes. 2001-08-24 03:25:40 +00:00
Roland McGrath
c12aa80156 * sysdeps/generic/ldsodefs.h (_dl_load_lock): Declare it here with
__libc_lock_define_recursive.
	* elf/dl-open.c: Don't declare it here any more.
	* elf/dl-close.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and
	__libc_lock_unlock_recursive.
	* elf/dl-close.c (_dl_close): Likewise
	* elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise
	* elf/dl-open.c (_dl_open): Likewise

	* sysdeps/generic/bits/libc-lock.h
	(__libc_lock_define_recursive): New macro.
	* sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it.
	(_IO_lock_lock): Use __libc_lock_lock_recursive.
	(_IO_lock_unlock): Use __libc_lock_unlock_recursive.
2001-08-23 06:03:42 +00:00
Ulrich Drepper
3afd949152 Update.
* libio/genops.c (_IO_list_all_stamp): New variable.
	(_IO_un_link): Bump _IO_list_all_stamp after removing from list.
	(_IO_link): Likewise for insertion.
	(flush_cleanup): New function.
	(_IO_flush_all): Get list_all_lock and all individual locks for the
	streams.  Detect and handle changes to the _IO_list_all list.
	(_IO_flush_all_linebuffered): Likewise.
	* sysdeps/generic/bits/stdio-lock.h: Define
	_IO_cleanup_region_start_noarg.
	* sysdeps/mach/hurd/bits/stdio-lock.c: Likewise.
2001-07-24 01:33:57 +00:00
Ulrich Drepper
f1e4a4a403 Update.
* sunrpc/Makefile (routines): Add rpc_thread.
	(CPPFLAGS): Add -D_RPC_THREAD_SAFE.
	* sunrpc/rpc_thread.c: New file.
	* sunrpc/Versions [libc] (GLIBC_2.2.3): Export __rpc_thread_destroy.
	* sunrpc/auth_none.c: Don't use global variables.  Access state in
	thread-local storage.
	* sunrpc/clnt_perr.c: Likewise.
	* sunrpc/clnt_raw.c: Likewise.
	* sunrpc/clnt_simp.c: Likewise.
	* sunrpc/key_call.c: Likewise.
	* sunrpc/rpc_common.c: Likewise.
	* sunrpc/svc.c: Likewise.
	* sunrpc/svc_raw.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/svcauth_des.c: Likewise.
	* hurd/hurd/threadvar.h (enum __hurd_threadvar_index): Add
	_HURD_THREADVAR_RPC_VARS.
	* sysdeps/generic/bits/libc-tsd.h: Mention _LIBC_TSD_KEY_RPC_VARS.
	* include/rpc/rpc.h: Define data structures for internal thread-local
	"global" variables.
	Based on patches by Eric Norum <eric.norum@usask.ca>.
2001-03-20 18:35:13 +00:00
Andreas Jaeger
7dcc4ea070 Adjust for last change.
2001-01-28  Andreas Jaeger  <aj@suse.de>

	* oldsemaphore.c (__old_sem_init): Adjust for last change.
	* sysdeps/pthread/bits/libc-lock.h: Likewise.
	* spinlock.c: Likewise.
2001-01-28 16:39:07 +00:00
Ulrich Drepper
f9b9f291b7 Update.
* conform/conformtest.pl: Define $mustprepend{"stdio.h"}.
	* libio/stdio.h: Always define __need___va_list.
2001-01-28 09:13:22 +00:00
Ulrich Drepper
5a9339d5bb Update.
* conform/conformtest.pl: Define $mustprepend{"signal.h"}.
	* conform/data/signal.h-data: Fix sigev_notify_function entry.
	Fix typo (SIGVALRM -> SIGVTALRM).
	* sysdeps/unix/sysv/linux/bits/siginfo.h: Define sigev_notify_attr
	with real type.
	* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/siginfo.h: Likewise.
2001-01-27 06:30:48 +00:00
Ulrich Drepper
b15cb49505 Update.
2000-10-14  Ulrich Drepper  <drepper@redhat.com>

	* math/libm-test.inc (frexp_test): Add L suffix also to parameters.
	(hypot_test): Likewise.

	* sysdeps/generic/printf_fphex.c: Compute width of decimal point
	string correctly.  Handle padding correctly.

	* sysdeps/ia64/fpu/printf_fphex.c: Use sizeof in _itowa parameters
	correctly.
	* sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise.
	* sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise.

2000-10-12  Alan Modra  <alan@linuxcare.com.au>

	* FAQ.in: Add --start-group and --end-group.

2000-10-12  Alan Modra  <alan@linuxcare.com.au>

	* malloc/memusage.c: Conditionalize stack usage calculation on
	stack direction.

2000-10-12  Alan Modra  <alan@linuxcare.com.au>

	* config.h.in: Add ASM_LINE_SEP.
	* configure.in: Add test for comment and line separators.
	* include/libc-symbols.h: Define and use ASM_LINE_SEP, and add tabs to
	placate some hppa assemblers.
	* sysdeps/hppa/sysdep.h: Likewise.
	* sysdeps/gnu/siglist.c: Insert \n and \t into inline asm.
	* sysdeps/unix/sysv/linux/errlist.c: Likewise.

2000-10-12  David Huggins-Daines  <dhd@linuxcare.com>

	* sysdeps/unix/sysv/linux/Makefile: Include <bits/initspin> in
	$(sysdep_headers).
	* sysdeps/unix/sysv/linux/bits/initspin.h: Dummy version for
	non-threaded platforms.

2000-10-12  David Huggins-Daines  <dhd@linuxcare.com>

	* configure.in: Add definitions for hppa.
	* elf/elf.h: Add PLABEL32 relocation for hppa ELF32, comments
	for IPLT and EPLT relocations.
	* shlib-versions: Version symbol definitions for hppa-linux.
	* sysdeps/unix/sysv/linux/configure.in: Define $arch_minimum_kernel
	for hppa.

2000-10-12  David Huggins-Daines  <dhd@linuxcare.com>

	* sysdeps/hppa/Makefile: New file.
	* sysdeps/hppa/Versions: New file.

	* sysdeps/hppa/setjmp.S: New file.
	* sysdeps/hppa/__longjmp.S: New file.
	* sysdeps/hppa/bits/setjmp.h: New file.
	* sysdeps/hppa/frame.h: New file.

	* sysdeps/hppa/add_n.s: Don't use %r19 (linkage table pointer).
	* sysdeps/hppa/sub_n.s: Likewise.
	* sysdeps/hppa/lshift.s: Likewise.
	* sysdeps/hppa/rshift.s: Likewise.
	* sysdeps/hppa/udiv_qrnnd.s: Likewise.
	* sysdeps/hppa/hppa1.1/addmul_1.s: Likewise.
	* sysdeps/hppa/hppa1.1/submul_1.s: Likewise.
	* sysdeps/hppa/hppa1.1/mul_1.s: Likewise.
	* sysdeps/hppa/hppa1.1/udiv_qrnnd.s: Likewise.

	* sysdeps/hppa/dl-machine.h: New file.
	* sysdeps/hppa/dl-fptr.c: New file (note that this is almost
	identical to the IA-64 one).
	* sysdeps/hppa/dl-lookupcfg.h: Likewise.
	* sysdeps/hppa/dl-symaddr.c: Likewise.

	* sysdeps/hppa/elf/initfini.c: New file.
	* sysdeps/hppa/elf/start.S: New file.

	* sysdeps/hppa/fpu/bits/fenv.h: New file.
	* sysdeps/hppa/fpu/fclrexcpt.c: New file.
	* sysdeps/hppa/fpu/fedisblxcpt.c: New file.
	* sysdeps/hppa/fpu/feenablxcpt.c: New file.
	* sysdeps/hppa/fpu/fegetenv.c: New file.
	* sysdeps/hppa/fpu/fegetexcept.c: New file.
	* sysdeps/hppa/fpu/fegetround.c: New file.
	* sysdeps/hppa/fpu/feholdexcpt.c: New file.
	* sysdeps/hppa/fpu/fesetenv.c: New file.
	* sysdeps/hppa/fpu/fesetround.c: New file.
	* sysdeps/hppa/fpu/feupdateenv.c: New file.
	* sysdeps/hppa/fpu/fegetexcptflg.c: New file.
	* sysdeps/hppa/fpu/fraiseexcpt.c: New file.
	* sysdeps/hppa/fpu/fsetexcptflg.c: New file.
	* sysdeps/hppa/fpu/ftestexcept.c: New file.

	* sysdeps/unix/sysv/linux/hppa/Makefile: New file.
	* sysdeps/unix/sysv/linux/hppa/Versions: New file.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: New file.
	* sysdeps/unix/sysv/linux/hppa/sysdep.c: New file.
	* sysdeps/unix/sysv/linux/hppa/sysdep.h: New file.

	* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: New file.
	* sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: New file.
	* sysdeps/unix/sysv/linux/hppa/bits/mman.h: New file.
	* sysdeps/unix/sysv/linux/hppa/bits/sigaction.h: New file.
	* sysdeps/unix/sysv/linux/hppa/bits/signum.h: New file.
	* sysdeps/unix/sysv/linux/hppa/brk.c: New file.
	* sysdeps/unix/sysv/linux/hppa/clone.S: New file.
	* sysdeps/unix/sysv/linux/hppa/socket.S: New file.
	* sysdeps/unix/sysv/linux/hppa/syscall.S: New file.
	* sysdeps/unix/sysv/linux/hppa/setrlimit.c: New file.
	* sysdeps/unix/sysv/linux/hppa/getrlimit.c: New file.
	* sysdeps/unix/sysv/linux/hppa/getrlimit64.c: New file.
	* sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h: New file.
	* sysdeps/unix/sysv/linux/hppa/kernel_stat.h: New file.
	* sysdeps/unix/sysv/linux/hppa/mmap.c: New file.
	* sysdeps/unix/sysv/linux/hppa/profil-counter.h: New file.
	* sysdeps/unix/sysv/linux/hppa/procfs.h: New file.
	* sysdeps/unix/sysv/linux/hppa/ucontext.h: New file.
	* sysdeps/unix/sysv/linux/hppa/umount.c: New file.

2000-10-12  Alan Modra  <alan@linuxcare.com.au>

	* sysdeps/hppa/hppa1.1/Implies: New file.
	* sysdeps/hppa/memusage.h: New file.
2000-10-15 06:50:42 +00:00
Ulrich Drepper
aebb1faa19 Update.
* libio/libio.h (_IO_flockfile, _IO_funlockfile): Fix typo in last
	patch (_mode -> _flags).
2000-09-01 17:49:19 +00:00
Ulrich Drepper
a8e58aa9ab Update.
[_IO_MTSAFE_IO] (_IO_flockfile, _IO_funlockfile): Add macros which
	test _IO_USER_LOCK flag first.
2000-09-01 09:09:56 +00:00
Greg McGary
66c5b9aace * sysdeps/pthread/bits/libc-lock.h: Remove BP_SYM from
pragmas.  Include bp-sym.h only if _LIBC.
2000-07-04  Greg McGary  <greg@mcgary.org>

	* sysdeps/pthread/bits/libc-lock.h: Remove BP_SYM from
	pragmas.  Include bp-sym.h only if _LIBC.
2000-07-04 18:44:25 +00:00
Ulrich Drepper
4ad1d0cfbf (charmap_read): Prepend the condition filename == NULL. 2000-07-04 00:22:32 +00:00
Greg McGary
ebdf53a7fc * elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM ().
* include/libc-symbols.h (weak_extern): Add extra level of expansion. 
(symbol_version, default_symbol_version): Factor redundant 
definitions out of conditional. 
* linuxthreads/sysdeps/pthread/bits/libc-lock.h: 
Wrap BP_SYM () around weak extern declarations of pthread 
functions that have pointers in their return+arg signatures.
2000-06-27  Greg McGary  <greg@mcgary.org>

	* elf/dl-open.c (_dl_sysdep_start): Wrap weak_extern decl in BP_SYM ().
	* include/libc-symbols.h (weak_extern): Add extra level of expansion.
	(symbol_version, default_symbol_version): Factor redundant
	definitions out of conditional.
	* linuxthreads/sysdeps/pthread/bits/libc-lock.h:
	Wrap BP_SYM () around weak extern declarations of pthread
	functions that have pointers in their return+arg signatures.
2000-06-27 17:05:42 +00:00
Ulrich Drepper
697568d1b4 Update.
2000-06-20  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/unix/sysv/linux/ia64/syscalls.list: New file.

2000-06-20  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/unix/sysv/linux/ia64/machine-gmon.h: New file.
	* sysdeps/unix/sysv/linux/ia64/profil-counter.h: New file.

2000-06-20  David Mosberger-Tang  <davidm@hpl.hp.com>

	* sysdeps/unix/sysv/linux/ia64/getpagesize.c: New file.

2000-06-20  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/unix/sysv/linux/ia64/sys/ucontext.h: Fix typo.
2000-06-21 04:35:29 +00:00
Ulrich Drepper
0f5504179a Update.
2000-05-23  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/fpu/bits/mathinline.h (__sincos, __sincosf,
	__sincosl): Guard with __USE_GNU.
2000-05-25 06:15:25 +00:00
Ulrich Drepper
a0edd63e7c Update.
2000-04-19  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/ld-ctype.c (ctype_output): Set size of the idx
	field to nelems * sizeof (uint32_t).
	* locale/programs/ld-address.c (address_output): Align word fields
	properly.
	* locale/programs/ld-monetary.c (monetary_output): Likewise.
	Don't restart idx pointers to idx end at the duo_int_curr_symbol
	field.
	Avoid giving arbitrary garbage in the crncystr field.
	Use sizeof(uint32_t) instead of 4 for len in uno_valid_from,
	uno_valid_to, duo_valid_from, duo_valid_to and conversion_rate
	fields.
	* locale/programs/ld-numeric.c (numeric_output): Likewise.
	Don't restart idx pointers to idx end at the decimal_point_wc field.
	* locale/programs/ld-time.c (time_output): week_1stday should be
	word, not byte.  Align it properly.

2000-04-19  H.J. Lu  <hjl@gnu.org>

	* csu/gmon-start.c (_start): Declared as "extern void".
	(etext): Likewise.

2000-04-18  Andreas Jaeger  <aj@suse.de>

	* manual/install.texi (Running make install): Don't mention utmpd
	anymore.

2000-04-18  Andreas Jaeger  <aj@suse.de>

	* linuxthreads/Versions: Use ld instead of ld.so.

	* elf/Makefile (ld-map): Use ld.map.

	* Versions.def: Use ld instead of ld.so.
	* elf/Versions: Likewise.
	* sysdeps/mach/hurd/Versions: Likewise.
2000-04-21 03:43:31 +00:00
Ulrich Drepper
d8d914df68 Update.
* sysdeps/pthread/pthread.h: Add prototypes for pthread_spin_init,
	pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
	and pthread_spin_unlock.
	* sysdeps/pthread/bits/pthreadtypes.h: Change struct _pthread_fastlock
	into pthread_spinlock_t.  Change all uses.
	* spinlock.c: Implement pthread_spin_lock.
	Rename __pthread_unlock to __pthread_spin_unlock and define weak
	alias for real name.
	Define pthread_spin_trylock, pthread_spin_init, and
	pthread_spin_destroy.
	Change all uses of _pthread_fastlock to pthread_spinlock_t.
	* spinlock.h: Rename __pthread_unlock to __pthread_spin_unlock.
	Change all uses of _pthread_fastlock to pthread_spinlock_t.
	* Versions [libpthread] (GLIBC_2.2): Add pthread_spin_init,
	pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
	and pthread_spin_unlock.
	* cancel.c: Use __pthread_spin_unlock instead of __pthread_unlock.
	Change all uses of _pthread_fastlock to pthread_spinlock_t.
	* condvar.c: Likewise.
	* internals.h: Likewise.
	* join.c: Likewise.
	* manager.c: Likewise.
	* mutex.c: Likewise.
	* pthread.c: Likewise.
	* rwlock.c: Likewise.
	* semaphore.c: Likewise.
	* signals.c: Likewise.
2000-04-13 05:57:21 +00:00
Andreas Jaeger
3d9ebedba1 Fix typo.
2000-03-02  Andreas Jaeger  <aj@suse.de>

	* sysdeps/pthread/bits/libc-lock.h: Fix typo.
	Reported by Sean Chen <sean.chen@turbolinux.com>.
2000-03-02 08:38:34 +00:00
Ulrich Drepper
0ed99ce46d Update.
2000-02-27  Ulrich Drepper  <drepper@redhat.com>

	* conform/conformtest.pl (@headers): Add wordexp.h, wctype.h, wchar.h,
	varargs.h, utmpx.h, utime.h, unistd.h, ulimit.h, ucontext.h, time.h,
	termios.h, tar.h, sys/wait.h, sys/uio.h, sys/types.h, sys/times.h,
	sys/timeb.h, sys/time.h, sys/statvfs.h, sys/stat.h, sys/shm.h,
	sys/sem.h, and sys/resource.h.
	Implement handling of allow-header.
	* conform/data/fcntl.h-data: Correct various bugs.
	* conform/data/fnmatch.h-data: Likewise.
	* conform/data/math.h-data: Likewise.
	* conform/data/ndbm.h-data: Likewise.
	* conform/data/nl_types.h-data: Likewise.
	* conform/data/poll.h-data: Likewise.
	* conform/data/pthread.h-data: Likewise.
	* conform/data/semaphore.h-data: Likewise.
	* conform/data/setjmp.h-data: Likewise.
	* conform/data/signal.h-data: Likewise.
	* conform/data/stdarg.h-data: Likewise.
	* conform/data/stddef.h-data: Likewise.
	* conform/data/stdio.h-data: Likewise.
	* conform/data/stdlib.h-data: Likewise.
	* conform/data/string.h-data: Likewise.
	* conform/data/strings.h-data: Likewise.
	* conform/data/stropts.h-data: Likewise.
	* conform/data/syslog.h-data: Likewise.
	* conform/data/sys/ipc.h-data: Likewise.
	* conform/data/sys/mman.h-data: Likewise.
	* conform/data/sys/msg.h-data: Likewise.
	* conform/data/tar.h-data: New file.
	* conform/data/termios.h-data: New file.
	* conform/data/time.h-data: New file.
	* conform/data/ucontext.h-data: New file.
	* conform/data/ulimit.h-data: New file.
	* conform/data/unistd.h-data: New file.
	* conform/data/utime.h-data: New file.
	* conform/data/utmpx.h-data: New file.
	* conform/data/varargs.h-data: New file.
	* conform/data/wchar.h-data: New file.
	* conform/data/wctype.h-data: New file.
	* conform/data/wordexp.h-data: New file.
	* conform/data/sys/resource.h-data: New file.
	* conform/data/sys/sem.h-data: New file.
	* conform/data/sys/shm.h-data: New file.
	* conform/data/sys/stat.h-data: New file.
	* conform/data/sys/statvfs.h-data: New file.
	* conform/data/sys/time.h-data: New file.
	* conform/data/sys/timeb.h-data: New file.
	* conform/data/sys/times.h-data: New file.
	* conform/data/sys/types.h-data: New file.
	* conform/data/sys/uio.h-data: New file.
	* conform/data/sys/wait.h-data: New file.

	* grp/grp.h (getgrent_r): Declare only if __USE_GNU.

	* include/sys/time.h (__itimes): Fix type of second parameter.

	* io/sys/stat.h (S_IFLNK): Define also if __USE_XOPEN.
	(S_ISVTX): Likewise.

	* io/sys/statvfs.h: Define fsblkcnt_t and fsfilcnt_t.

	* locale/langindo.h: Make ERA_YEAR, INT_CURR_SYMBOL, CURRENCY_SYMBOL,
	MON_DECIMAL_POINT, MON_THOUSANDS_SEP, MON_GROUPING, POSITIVE_SIGN,
	NEGATIVE_SIGN, INT_FRAC_DIGITS, FRAC_DIGITS, P_CS_PRECEDES,
	P_SEP_BY_SPACE, N_CS_PRECEDES, N_SEP_BY_SPACE, P_SIGN_POSN,
	N_SIGN_POSN, DECIMAL_POINT, THOUSANDS_SEP, GROUPING, YESEXPR,
	NOEXPR, YESSTR, and NOSTR only available if __USE_GNU.

	* math/bits/mathcalls.h: Don't declare tgamma and scalbn if only
	__USE_XOPEN.

	* posix/unistd.h: Don't define ptrdiff_t.
	(sbrk): Correct type of parameter.
	* sysdeps/generic/sbrk.c: Likewise.
	* sysdeps/mach/hurd/sbrk.c: Likewise.

	* posix/sys/types.h: Allow id_t, suseconds_t, fsblkcnt_t, and
	fsfilcnt_t being defined elsewhere.

	* resource/sys/resource.h: Define id_t.
	If __USE_XOPEN use int for type of first parameter if getrlimit,
	getrlimit64, setrlimit, setrlimit64, getrusage, getpriority, and
	setpriority.
	* sysdeps/generic/getpriority.c: Fix type of second parameter.
	* sysdeps/generic/setpriority.c: Likewise.
	* sysdeps/mach/hurd/getpriority.c: Likewise.
	* sysdeps/mach/hurd/setpriority.c: Likewise.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/unix/sysv/irix4/setpriority.c: Likewise.
	* sysdeps/unix/sysv/linux/getpriority.c: Likewise.

	* sysdeps/generic/utimes.c: Fix parameter of third parameter.
	* sysdeps/mach/hurd/utimes.c: Likewise.
	* sysdeps/posix/utimes.c: Likewise.

	* sysdeps/generic/bits/shm.h: Define shmatt_t type and use it in
	struct shmid_ds definition.
	* sysdeps/gnu/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.

	* sysvipc/sys/shm.h: Define time_t.

	* sysvipc/sys/sem.h (struct sembuf): Make sem_num field unsigned.

	* sysdeps/gnu/bits/sem.h: Rename anonymous type struct sem_queue and
	struct sem_undo to struct __sem_queue and struct __sem_undo resp.

	* time/time.h: Define suseconds_t if not already done.

	* sysdeps/unix/sysv/linux/bits/statvfs.h: Rename f_spare to __f_spare.
	* sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise.
	* sysdeps/unix/sysv/linux/statvfs64.c: Likewise.
	* sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.

	* intl/bindtextdom.c: Use rwlock to avoid surprising results in
	multithreaded applications.
	* intl/dcigettext.c: Likewise.
	* intl/textdomain.c: Likewise.
	* intl/*.c: Update copyright.
	* sysdeps/generic/bits/libc-lock.h: Define __libc_rwlock_* stubs.

2000-02-27  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/configure.in: Treat also "/usr/" as
	prefix especially.

2000-02-27  Ulrich Drepper  <drepper@redhat.com>

	* po/de.po: Update from translation team.
	* po/ko.po: Likewise.
2000-02-28 05:08:01 +00:00
Ulrich Drepper
ce75c139ac Update.
2000-01-12  Ulrich Drepper  <drepper@cygnus.com>

	* iconvdata/gconv-modules: Add aliases ISO-IR-199 and ISO-IR-203.
	Reported by Bruno Haible <haible@ilog.fr>.

2000-01-11  Andreas Schwab  <schwab@suse.de>

	* sysdeps/i386/fpu/libm-test-ulps: Adjust some epsilons.

2000-01-10  Thorsten Kukuk  <kukuk@suse.de>

	* nss/getent.c: Add ipv6 support for hosts.

2000-01-05  Philip Blundell  <pb@futuretv.com>

	* sysdeps/unix/sysv/linux/arm/Versions: Add getrlimit, setrlimit,
	getrlimit64, setrlimit64 for GLIBC_2.1.3.
	* sysdeps/unix/sysv/linux/arm/syscalls.list: Add oldgetrlimit,
	oldsetrlimit.
	* sysdeps/unix/sysv/linux/arm/oldsetrlimit64.c: New file.
	* sysdeps/unix/sysv/linux/arm/oldgetrlimit64.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/setrlimit64.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/getrlimit64.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/setrlimit.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/getrlimit.c: Likewise.

	* sysdeps/unix/sysv/linux/arm/Makefile [subdir=resource]
	(sysdep_routines): Add oldgetrlimit64, oldsetrlimit64.
	[subdir=misc] (sysdep_headers): Add sys/elf.h.

2000-01-09  Andreas Jaeger  <aj@suse.de>

	* manual/install.texi (Tools for Compilation): Update required
	compiler version.
	(Configuring and compiling): Restore old comments about
	configparms; modify to reflect current usage.

2000-01-09  Philip Blundell  <philb@gnu.org>

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Don't attempt name
	resolution if the hints included AI_NUMERICHOST.
2000-01-12 11:39:14 +00:00
Ulrich Drepper
d8cf93f489 Update.
1999-12-31  Andreas Jaeger  <aj@suse.de>

	* libio/strfile.h: Remove K&R compatibility.
	* locale/langinfo.h: Likewise.
	* locale/localeconv.c (localeconv): Likewise.
	* locale/programs/simple-hash.h: Likewise.
	* nis/nis_xdr.h: Likewise.
	* nis/rpcsvc/nislib.h: Likewise.
	* nis/rpcsvc/nis_callback.h: Likewise.
	* nis/rpcsvc/nis.h: Likewise.
	* nis/ypclnt.c: Likewise.
	* nscd/nscd_proto.h: Likewise.
	* nscd/nscd.c: Likewise.
	* sysdeps/generic/inttypes.h: Likewise.
	* sysdeps/gnu/utmpx.h: Likewise.

	* nis/nis_intern.h: Remove K&R compatibility; add missing ints.
	* sunrpc/rpcsvc/rusers.x: Likewise.

	* nis/rpcsvc/ypclnt.h: Remove K&R compatibility; reformat.

	* elf/dl-misc.c: Remove __libc_write prototype since it's already
	in include/unistd.h.
	* elf/dl-profile.c: Likewise.
	* elf/dl-load.c: Likewise for __libc_read.

	* elf/dl-profile.c: Remove __P.
	* elf/sprof.c: Likewise.
	* elf/sln.c: Likewise.
1999-12-31 18:51:25 +00:00
Ulrich Drepper
a9b5d2eeb1 Update.
1999-10-25  Thorsten Kukuk  <kukuk@suse.de>

	* md5-crypt/md5.h: Remove prototypes for public interface. md5 is
	used only internal.
	* md5-crypt/md5-crypt.c: Use internal names for md5 functions,
	remove weak alias for public names.
	* md5-crypt/md5.c: Remove weak aliase.

1999-10-25  Andreas Jaeger  <aj@suse.de>

	* math/README.libm-test: New file, documents libm-test.inc.

1999-10-25  Andreas Jaeger  <aj@suse.de>

	* math/gen-libm-test.pl: Only generate a new ulps file when -n is
	given.
	(print_ulps_file): Fix loops to not read @tests and @functions
	since those are not initialized with -n now.
	(parse_ulps): Set $results{..}{"kind"}.
1999-10-25 20:18:27 +00:00
Ulrich Drepper
89afc233db Update.
* sysdeps/pthread/bits/libc-lock.h (__libc_lock_define_initialized):
	Don't use initializer since it is all zeroes.
	(__libc_once_define): Likewise.
1999-04-28 21:58:40 +00:00
Ulrich Drepper
f8afba91cf Update.
* Versions.def: Add GLIBC_2.1.1 to libpthread.

	* iconvdata/Makefile (modules): Add KOI8-U.
	(distribute): Add koi8-u.c.
	(gen-8bit-gap-modules): Add koi8-u.
	* iconvdata/gconv-modules: Add KOI8-U entries.
	* iconvdata/koi8-u.c: New file.

1999-04-13  Thorsten Kukuk  <kukuk@suse.de>

	* sunrpc/auth_des.c: 64bit fixes, security fixes.
	* sunrpc/auth_none.c: Pretty print.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/authdes_prot.c: Likewise.
	* sunrpc/authuxprot.c: Likewise.
	* sunrpc/bindrsvprt.c: Likewise.
	* sunrpc/clnt_gen.c: Likewise.
	* sunrpc/rpc/xdr.h: Likewise.
	* sunrpc/rpc/auth_des.h: Add rpc_timeval struct.
	* sunrpc/rpc_cmsg.c: Don't use *long pointers.
	* sunrpc/rtime.c: Use new rpc_timeval.
	* sunrpc/svc_authux.c: Don't use *long pointers.
	* sunrpc/svcauth_des.c: Likewise + security fixes.
	* sunrpc/xdr_mem.c: Don't use *long pointers.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_sizeof.c: Likewise.
	* sunrpc/xdr_stdio.c: Likewise.

1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
1999-04-15 13:54:57 +00:00
Ulrich Drepper
118bad87bd Update.
1998-12-31  Ulrich Drepper  <drepper@cygnus.com>

	* iconvdata/Makefile: Use rpath $ORIGIN for modules which use any of
	the conversion libraries.

	* include/features.h: Mention latest extensions in _POSIX_C_SOURCE
	description.

	* libio/genops.c (list_all_lock): New variable.
	(_IO_un_link, _IO_link_in): Acquire lock before modifying _IO_list_all.
	[PR libc/911].

	* sysdeps/i386/i686/strtok.s: Add missing cld.

	* sysdeps/i386/i686/mempcpy.S: New file.

1998-12-30  Geoff Keating  <geoffk@ozemail.com.au>

	Suppress parentheses warnings:
	* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
	(DL_FIND_ARG_COMPONENTS): here,
	* sysdeps/powerpc/dl-machine.c: here,
	* sysdeps/powerpc/fclrexcpt.c (feclearexcept): here,
	* sysdeps/powerpc/fesetround.c (fesetround): here,
	* sysdeps/powerpc/feupdateenv.c (feupdateenv): here,
	* sysdeps/powerpc/fraiseexcpt.c (feraiseexcept): here,
	* sysdeps/powerpc/fsetexcptflg.c (fesetexceptflag): here,
	* sysdeps/powerpc/s_rint.c (__rint): here,
	* sysdeps/powerpc/s_rintf.c (__rintf): here,
	* sysdeps/powerpc/w_sqrt.c (__sqrt): here,
	* sysdeps/powerpc/w_sqrtf.c (__sqrtf): and here.

1998-12-30  Geoff Keating  <geoffk@ozemail.com.au>

	* wcsmbs/wcstold.c [__NO_LONG_DOUBLE_MATH]: Include wchar.h.
	* wcsmbs/wcstold_l.c [__NO_LONG_DOUBLE_MATH]: Likewise.  Also define
	appropropriate prototypes, correct procedure names.

1998-12-30  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/generic/crypt-entry.c: Prototype __crypt_r, suppress
	warning.
	(__crypt_r): Add __restrict.
	* sysdeps/generic/crypt.h: Remove internal routine.  Add __restrict.

1998-12-31  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/longlong.h: Add missing #else in SPARC definitions.

1998-12-30  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	Patches by Ralf Baechle <ralf@gnu.org>:
	* sysdeps/unix/sysv/linux/mips/sgidefs.h: Removed.
	* sysdeps/unix/sysv/linux/mips/sys/asm.h:  Removed.
	* sysdeps/unix/sysv/linux/mips/sys/regdef.h:  Removed.
	* sysdeps/unix/sysv/linux/mips/sys/fpregdef.h:  Removed.
	* sysdeps/unix/sysv/linux/mips/regdef.h:  Removed.
	* sysdeps/unix/sysv/linux/mips/fpregdef.h: Removed.

	* sysdeps/unix/sysv/linux/mips/Makefile: Remove delete files.
	* sysdeps/unix/sysv/linux/mips/Dist: Remove deleted files.

	* sysdeps/mips/sys/fpregdef.h: New files, enhanced versions of deleted
	linux specific files.
	* sysdeps/mips/sys/asm.h: Likewise.
	* sysdeps/mips/sgidefs.h: Likewise.
	* sysdeps/mips/fpregdef.h: Likewise.
	* sysdeps/mips/regdef.h: Likewise.

	* sysdeps/mips/Makefile: Add new headers.
	* sysdeps/mips/Dist: Add new files.

	* sysdeps/mips/fpu_control.h (_FPU_DEFAULT): Change value.

1998-12-28  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* iconvdata/Makefile: Remove variable assignments and rules that
	are now auto-generated.  Include $(objpfx)iconv-rules instead.
	Btw, that removes a few typos.
	(charmaps): New variable.
	($(objpfx)iconv-rules): New target.
	(gen-8bit-modules): Renamed from sed-generated-headers, remove .h
	suffixes.
	(gen-8bit-gap-modules): Renamed from awk-generated-headers, remove
	.h suffixes.
	(gen-special-modules): New variable.
	(generated-modules): New variable.
	(headers): Use it.
	(before-compile): Likewise.
	(generated): Likewise, and add iconv-rules.
	* iconvdata/euc-cn.c: Renamed from euccn.c.
	* iconvdata/euc-jp.c: Renamed from eucjp.c.
	* iconvdata/euc-kr.c: Renamed from euckr.c.
	* iconvdata/euc-tw.c: Renamed from euctw.c.
	* iconvdata/iso_6937.c: Renamed from iso6937.c.
	* iconvdata/iso_6937-2.c: Renamed from iso6937-2.c.
	* iconvdata/t.61.c: Renamed from t61.c.
	* iconvdata/Makefile (distribute): Adjusted for those renames.
	Remove $(objpfx) from names.

1998-12-28  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* sysdeps/generic/hp-timing.h: Fix comment.
	* sysdeps/generic/dl-hash.h: Likewise.
	* sysdeps/i386/i686/hp-timing.h: Likewise.

1998-12-28  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* posix/fnmatch.c (fnmatch): Always pass unsigned char values to
	FOLD macro.

1998-12-28  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* nss/db-Makefile ($(VAR_DB)/shadow.db): Fix last change.

1998-12-29  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Sync with
	current Linux 2.1.132 kernel sources.

1998-12-28  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	Patches by Ralf Baechle <ralf@gnu.org> for Linux/MIPS:
	* sysdeps/unix/sysv/linux/mips/syscalls.list: Add ipc, change
	pread/pwrite and llseek calls.

	* sysdeps/unix/sysv/linux/mips/sysdep.S: New file.

1998-12-29  Wolfram Gloger  <wmglo@dent.med.uni-muenchen.de>

	* malloc/thread-m.h [_LIBC] : Fix for NO_THREADS case.
1998-12-31 18:19:19 +00:00
Ulrich Drepper
348ed5157b Update.
1998-11-30  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* nscd/nscd_getpw_r.c: Include nscd_proto.h for prototypes.

	* sysdeps/generic/errno-loc.c: Include <errno.h> for prototype,
	undefine errno to get variable.

	* sysdeps/unix/sysv/linux/i386/setfsuid.c: Include <sys/fsuid.h>
	instead of <unistd.h> for prototype.
	* sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.

1998-11-30  Ulrich Drepper  <drepper@cygnus.com>

	* misc/err.h: Correct comments and use protected attribute keywords.
	Reported by Joseph Myers <jsm28@cam.ac.uk>.

1998-11-29  Roland McGrath  <roland@baalperazim.frob.com>

	* malloc/thread-m.h [_LIBC]: Include <bits/libc-tsd.h>, and
	remove tsd stuff from pthreads/cthreads libc sections.
	Use __libc_tsd_define for MALLOC key.
	[_LIBC] (tsd_key_t, tsd_key_create): Define to a zero-size type and a
	no-op, respectively.
	[_LIBC] (tsd_setspecific, tsd_getspecific): Use __libc_tsd_get/set.

	* elf/dl-error.c: Include <bits/libc-tsd.h>.
	Use __libc_tsd_define for DL_ERROR key.
	(tsd_setspecific, tsd_getspecific): Rewritten using __libc_tsd_get/set.

	* sysdeps/mach/hurd/bits/libc-tsd.h: New file.
	* sysdeps/generic/bits/libc-tsd.h: New file.
	* Makefile (distribute): Add bits/libc-tsd.h.

1998-10-12  Roland McGrath  <roland@baalperazim.frob.com>

	* elf/dl-error.c: Remove kludge to check for ld.so load address.
	There is no need if weak undefined symbols are not used in ld.so;
	see linuxthreads/ChangeLog for changes to files
	linuxthreads/sysdeps/pthread/bits/libc-lock.h and
	linuxthreads/sysdeps/pthread/bits/libc-tsd.h.

1998-11-30  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/i386/bits/string.h (__memset_cc): Fix typo (s->__s).

	* sysdeps/i386/i486/bits/string.h: Add prototypes for all new
	inline functions.
	* sysdeps/i386/bits/string.h: Likewise.

1998-11-30  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Remove ipc_kludge.

1998-11-30  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* db2/progs/db_load/db_load.c (main): Avoid -Wparentheses warning.
1998-11-30 14:21:53 +00:00
Ulrich Drepper
97dac76c11 Update.
1998-11-18  Ulrich Drepper  <drepper@cygnus.com>

	* Makefile (CFLAGS-mutex.c): Define as -D__NO_WEAK_PTHREAD_ALIASES.
	(CFLAGS-specific.c): Likewise.
	(CFLAGS-pthread.c): Likewise.
	(CFLAGS-ptfork.c): Likewise.
	(CFLAGS-cancel.c): Likewise.
	* sysdeps/pthread/bits/libc-lock.h: Don't mark __pthread_* functions
	as weak references if __NO_WEAK_PTHREAD_ALIASES is defined.

	* mutex.c (pthread_mutex_init): Define as strong symbol.
	(pthread_mutex_destroy): Likewise.
	(pthread_mutex_trylock): Likewise.
	(pthread_mutex_lock): Likewise.
	(pthread_mutex_unlock): Likewise.
	(pthread_mutexattr_init): Likewise.
	(pthread_mutexattr_destroy): Likewise.
	(pthread_once): Likewise.
	* ptfork.c (pthread_atfork): Likewise.
	* specific.c (pthread_key_create): Likewise.
	(pthread_setspecific): Likewise.
	(pthread_getspecific): Likewise.
1998-11-18 17:02:37 +00:00
Ulrich Drepper
c70ca1fa69 Update.
* sysdeps/unix/sysv/linux/powerpc/pread.c: Do not use the i386 version.
	Instead call the system call wrapper function using an 64bit argument.
	* sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
1998-10-27 14:19:07 +00:00
Ulrich Drepper
be93561004 Update.
1998-09-06 09:00  Ulrich Drepper  <drepper@cygnus.com>

	* version.h (VERSION): Bump to 2.0.96.

	Rewrite runtime linker to be truly thread-safe.  There is now no
	global variable specifying the scope.  We create all needed
	scopes at the time the link maps are created.
	* elf/Versions [GLIBC_2.1]: Add _dl_loaded and _dl_main_searchlist.
	* elf/link.h: Add struct r_scope_elem and use this for l_searchlist,
	l_symbolic_searchlist, l_scope, and l_local_scope elements in
	struct link_map.
	* elf/dl-close.c: Rewritten accordingly.
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/dlfcn.h: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/dlvsym.c: Likewise.
	* elf/ldsodefs.h: Likewise.
	* elf/rtld.c: Likewise.
	* iconv/gconv_dl.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1998-09-06 09:16:53 +00:00
Ulrich Drepper
6c202c6870 Update.
1998-07-24  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/glob.c (glob): Fix problems with handle tilde.
	Reported by Brian Wellington <bwelling@anomaly.munge.com>.

	* elf/elf.h: Really define Elf64_Verdef, Elf64_Verdaux, Elf64_Verneed,
	and Elf64_Vernaux.

1998-07-24  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* configure.in: Recognize pgcc as compiler.
	Reported by sauron@angband.ee.ualberta.ca.

1998-07-02  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nscd/dbg_log.c: Make sure, that debug message is really written.
	* nscd/nscd.c: Don't use daemon(), set signal handler after fork.

	SVID more for gamma(x) with x integer <= 0.
1998-07-24 12:58:36 +00:00
Ulrich Drepper
c764b9a728 Update.
1998-07-14 19:39  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/vfscanf.c (ungetc): Use _IO_sputbackc, not _IO_ungetc.
	[_USE_IN_LIBIO] (encode_error): Free cancelation handler.
	(conv_error): Likewise.
	(input_error): Likewise.
	(memory_error): Likewise.

1998-07-12  Mark Kettenis  <kettenis@phys.uva.nl>

	* sysdeps/mach/hurd/dl-sysdep.c: Bring in sync with generic
	implementation.  Include <entry.h>.  Replace references to symbol
	_start with macro ENTRY_POINT.
	(__libc_uid): Remove.
	(__libc_multiple_libcs): New variable.
	(__libc_stack_end): New variable.
	(_dl_hwcap_mask): New variable.
	(_dl_important_hwcaps): New function.
	(_dl_show_auxv): Mark internal.
1998-07-14 19:43:02 +00:00
Ulrich Drepper
e918a7feeb Update.
1998-07-09 13:34  Ulrich Drepper  <drepper@cygnus.com>

	* grp/grp.h: Define gid_t also for __USE_XOPEN.
	* io/fcntl.h: Include <sys/stat.h> also for __USE_XOPEN.
	* io/utime.h: Define time_t also for __USE_XOPEN.
	* io/sys/stat.h: Define time_t also for __USE_XOPEN.
	Define *_t types except for pid_t also for __USE_XOPEN.
	Define S_* macros also for __USE_XOPEN.
	* locale/langinfo.h: Define CODESET, CRNCYSTR, RADIXCHAR, and
	THOUSEP also for __USE_XOPEN.
	* math/math.c: Define M_* macros also for __USE_XOPEN.
	* math/bits/mathcalls.h: Declare hypot also for __USE_XOPEN.
	* posix/fnmatch.h: Define FNM_NOSYS and for if _XOPEN_SOURCE is
	defined.
	* posix/glob.h: Likewise for GLOB_NOSYS.
	* posix/regex.h: Likewise for REG_NOSYS.
	* posix/wordexp.h: Likewise for WRDE_NOSYS.
	* posix/unistd.h: Define *_t types also for __USE_XOPEN.
	* posix/sys/wait.h: Define pid_t for __USE_XOPEN.
	* pwd/pwd.h: Define gid_t and pid_t also for __USE_XOPEN.
	* signal/signal.h: Define pid_t also fir __USE_XOPEN.
	* sysdeps/unix/sysv/linux/bits/fcntl.h: Define _RSYNC and O_DSYNC also
	for __USE_POSIX199309.
	* sysdeps/unix/sysv/linux/bits/termios.h: Define the various B*
	constants also for __USE_XOPEN.
	* wcsmbs/wchar.h: For XPG4 include wctype.h.

	* intl/dcgettext.c (find_msg): Initialize act to prevent warning.
	* locale/setlocale.c (new_composite_name): Likewise for last_len.

	* libio/stdio.h: Don't declare fclose_unlocked.

	* sysdeps/posix/fpathconf.c: Handle _PC_FILESIZEBITS.

1998-07-08  Mark Kettenis  <kettenis@phys.uva.nl>

	* stdio/stdio.h: Add prototypes for fflush_unlocked,
	getc_unlocked, getchar_unlocked, putc_unlocked, putchar_unlocked,
	fgets_unlocked, fread_unlocked, fwrite_unlocked,
	clearerr_unlocked, feof_unlocked, ferror_unlocked,
	fileno_unlocked, flockfile, ftrylockfile, funlockfile.
	[__USE_XOPEN && !__USE_GNU] Declare optarg, optind, opterr.  Add
	prototype for getopt.
	* stdio/clearerr.c (clearerr_unlocked): Weak alias for clearerr.
	* stdio/feof.c (feof_unlocked): Weak alias for feof.
	* stdio/ferror.c (ferror_unlocked): Weak alias for ferror.
	* stdio/fflush.c (fflush_unlocked): Weak alias for fflush.
	* stdio/fgets.c (fgets_unlocked): Weak alias for fgets.
	* stdio/fileno.c (fileno_unlocked): Weak alias for fileno.
	* stdio/fputc.c (fputc_unlocked): Weak alias for fputc.
	* stdio/fread.c (fread_unlocked): Weak alias for fread.
	* stdio/fwrite.c (fwrite_unlocked): Weak alias for fwrite.
	* stdio/getc.c (getchar_unlocked): Weak alias for getc.
	* stdio/getchar.c (getchar_unlocked): Weak alias for getchar.
	* stdio/putc.c (putc_unlocked): Weak alias for putc.
	* stdio/putchar.c (putchar_unlocked): Weak alias for putchar.
	* stdio/Versions [GLIBC_2.1]: Add clearerr_unlocked,
	feof_unlocked, ferror_unlocked, fflush_unlocked, fgets_unlocked,
	fileno_unlocked, fputc_unlocked, fread_unlocked, fwrite_unlocked,
	getc_unlocked, getchar_unlocked, putc_unlocked and
	putchar_unlocked.

	* libio/Versions: Move flockfile, ftrylockfile and funlockfile
	from here ...
	* stdio-common/Versions: ... to here.

1998-07-09  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* Makerules (versioning): Correct typo.
1998-07-09 13:58:47 +00:00
Ulrich Drepper
4959e310bf Update.
1998-06-30 11:47  Ulrich Drepper  <drepper@cygnus.com>

	* include/aio.h: New file.
	* posix/Makefile (distribute): Add bits/pthreadtypes.h.
	(tests): Build and run annexc program.
	* posix/annexc.c: New file.
	* posix/bits/posix1_lim.h: Add several more _POSIX_* limits.
	* rt/aio.h: Remove __need_timespec_t.  We can include the whole time.h.
	* rt/aio_misc.c: Include limits.h.
	* rt/aio_notify.c: Include errno.h.
	* sysdeps/unix/sysv/linux/alpha/bits/types.h: Include pthreadtypes.h.
	Define size_t.
	* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/errno.h: Define ENOTSUP though the
	kernel doesn't do this.
	* sysdeps/unix/sysv/linux/bits/fcntl.h: Define O_LARGEFILE only if
	__USE_LARGEFILE64 is defined.
	* sysdeps/unix/sysv/linux/bits/pthreadtypes.h: New file.  Empty.
	* sysdeps/unix/sysv/linux/bits/sched.h: Define __sched_param struct
	if requested.
	* sysdeps/unix/sysv/linux/bits/siginifo.h: Protect non-standard names.

	* stdlib/isomac.c: Avoid include_next warning.
1998-06-30 12:09:42 +00:00
Ulrich Drepper
c0fb8a563c Update.
1998-06-07 13:32  Ulrich Drepper  <drepper@cygnus.com>

	* libc.map: Add _dl_profile.
	* elf/dl-reloc.c (_dl_relocate_object): Take extra argument, pass
	this to ELF_DYNAMIC_RELOCATE.
	Always allocate array for relocation result if LD_PROFILE is defined.
	* elf/ldsodefs.h: Adjust prototypes.
	* elf/dl-open.c (_dl_open): Call relocation function with extra
	argument.
	* elf/rtld.c: Likewise.
	* elf/dl-profile.c (_dl_mcount): Don't mark as internal function.
	Correct loop condition.
	* elf/dynamic-link.h: Don't examine _dl_profile variable, pass
	consider_profile to runtime setup function.
	* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Use
	_dl_runtime_profile for all shared objects if LD_PROFILE is defined.

	* elf/dl-support.c: Define __libc_stack_end.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/libc-start.c: Store last stack address in
	__libc_stack_end.
	* sysdeps/i386/dl-machine.h (_dl_start_user): Store stack address.
	* sysdeps/i386/elf/start.s: Call __libc_start_main with extra argument.

	* elf/elf.h: Include <features.h>, not <sys/cdefs.h>.
	Include <stdint.h>, not <inttypes.h>.

	* elf/sprof.c: Implement flat profiling.

	* libio/fgetc.c: Call _IO_cleanup_region_end with 0 and call
	_IO_funlockfile explicitly.
	* libio/fileops.c: Likewise.
	* libio/fputc.c: Likewise.
	* libio/freopen.c: Likewise.
	* libio/freopen64.c: Likewise.
	* libio/fseek.c: Likewise.
	* libio/fseeko.c: Likewise.
	* libio/fseeko64.c: Likewise.
	* libio/ftello.c: Likewise.
	* libio/ftello64.c: Likewise.
	* libio/getc.c: Likewise.
	* libio/getchar.c: Likewise.
	* libio/iofclose.c: Likewise.
	* libio/iofflush.c: Likewise.
	* libio/iofgetpos.c: Likewise.
	* libio/iofgetpos64.c: Likewise.
	* libio/iofgets.c: Likewise.
	* libio/iofputs.c: Likewise.
	* libio/iofread.c: Likewise.
	* libio/iofsetpos.c: Likewise.
	* libio/iofsetpos64.c: Likewise.
	* libio/ioftell.c: Likewise.
	* libio/iofwrite.c: Likewise.
	* libio/iogetdelim.c: Likewise.
	* libio/iogets.c: Likewise.
	* libio/ioputs.c: Likewise.
	* libio/ioseekoff.c: Likewise.
	* libio/ioseekpos.c: Likewise.
	* libio/iosetbuffer.c: Likewise.
	* libio/iosetvbuf.c: Likewise.
	* libio/ioungetc.c: Likewise.
	* libio/iovsprintf.c: Likewise.
	* libio/iovsscanf.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldiofclose.c: Likewise.
	* libio/peekc.c: Likewise.
	* libio/putc.c: Likewise.
	* libio/putchar.c: Likewise.
	* libio/rewind.c: Likewise.

	* malloc/mtrace.c: Pretty print.

	* misc/mntent.h (struct mentent): Make string elements const char *.

	* nis/nis_printf.c: Optimize I/O a little bit.

	* signal/Makefile (distribute): Add sigset-cvt-mask.h.
	* sysdeps/generic/sigset-cvt-mask.h: New file.
	* sysdeps/unix/sysv/linux/sigset-cvt-mask.h: New file.
	* sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: New file.
	* sysdeps/posix/sigvec.c: Rewrite the use definitions from
	sigset-cvt-mask.h to do the dirty work.
	Patches by Joe Keane.

	* sysdeps/posix/mkstemp.c: Save one precious byte of rodata.

	* sysdeps/unix/sysv/linux/i386/sysdep.h: Rewrite PSEUDO etc to make
	syscall_error label in case of PIC anonymous.
	* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S: Adapt for this change.
	* sysdeps/unix/sysv/linux/i386/mmap.S: Adapt for this change.
	* sysdeps/unix/sysv/linux/i386/s_pread64.S: Adapt for this change.
	* sysdeps/unix/sysv/linux/i386/s_pwrite64.S: Adapt for this change.
	* sysdeps/unix/sysv/linux/i386/socket.S: Adapt for this change.
	* sysdeps/unix/sysv/linux/i386/syscall.S: Adapt for this change.
1998-06-07 14:06:56 +00:00
Ulrich Drepper
5afdca0087 LinuxThreads library.
1998-03-11 00:42  Wolfram Gloger  <wmglo@dent.med.uni-muenchen.de>
	* linuxthreads/manager.c: Enable resetting of the thread
	scheduling policy to SCHED_OTHER when the parent thread
	has a different one.
1998-02-01 13:51  Ulrich Drepper  <drepper@cygnus.com>
	* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
	_POSIX_ASYNCHRONOUS_IO.
	* sysdeps/pthread/pthread.h: Define bits for Unix98 variants of
	mutexes.
	* mutex.c: Implement new mutex types.
	* internals.h: Include <signal.h>.
	* libpthread.map: Add __erno_location and __h_errno_location.
	* errno.c: Return pointer to variable actually in use.  This might
	not be the one in the thread structure.
	* internals.h (struct _pthread_descr_struct): Add new fields p_errnop
	and p_h_errnop.
	* manager.c (__pthread_manager): Set p_errnop and p_h_errnop member
	of manager thread structure.
	(pthread_handle_create): Set p_errnop and p_h_errnop members for new
	thread.
	* pthread.c: Adapt initializer for thread structures.
	(__pthread_initial_thread): Set p_errnop and p_h_errnop member.
	(__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of
	current thread to global variables.
1998-01-31 17:27  Ulrich Drepper  <drepper@cygnus.com>
	* rwlock.c: New file.
	* Makefile (libpthread-routines): Add rwlock.
	* sysdeps/pthread/pthread.h: Define data structures and declare
	functions.
	* libpthread.map: Add new functions.
1997-12-18 13:50  Philip Blundell  <pb@nexus.co.uk>
	* sysdeps/arm/pt-machine.h: New file; add ARM support.
	* sysdeps/arm/Implies: likewise.
	* README: Document it.
1997-12-13  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* signals.c: Remove unneeded initializer for sigwaited, saving a
1997-04-11 01:18  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* semaphore.c (sem_init): Set sem_spinlock only if available.
1997-12-04 01:48  Ulrich Drepper  <drepper@cygnus.com>
	* mutex.c: Implement PTHREAD_MUTEX_CHECKERROR.
	* sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR.
	* Makefile: Update from LinuxThreads 0.7.
	* internals.h. Likewise.
	* manager.c: Likewise.
	* mutex.c: Likewise.
	* pthread.c: Likewise.
	* signals.c: Likewise.
	* specific.c: Likewise.
	* Examples/ex3.c: Likewise.
1997-11-20 18:13  Ulrich Drepper  <drepper@cygnus.com>
	* pthread.c (__pthread_reset_main_thread): Close pipe only if still
	open.
1997-10-29 05:38  Ulrich Drepper  <drepper@cygnus.com>

	* wrapsyscall.c: Add socket functions which are also cancelation
	points.

1997-10-19 21:40  Wolfram Gloger  <wg@wolfram.dent.med.uni-muenchen.de>

	* specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get):
	New functions for fast thread specific data within libc.

	* internals.h: Add new array p_libc_specific to struct
	_pthread_descr_struct.

	* sysdeps/pthread/bits/libc-lock.h: Declare new functions.

1997-10-13 05:39  Ulrich Drepper  <drepper@cygnus.com>

	* semaphore.h: Add __BEGIN_DECLS/__END_DECLS.
	Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>.

1997-08-29 03:05  Ulrich Drepper  <drepper@cygnus.com>

	* internals.h (struct _pthread_descr_struct): Add definitions for
	two-level specific key handling.
	* manager.c (pthread_handle_create): Initialize specific memory array.
	* specific.c: Implement two-level key handling.
	* weaks.c: Don't provide dummy key handling.
	* sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define).
	Add definition of __libc_key_t.
	* sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX
	as 1024.
	Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and
	PTHREAD_DESTRUCTOR_ITERATIONS.

	* manager.c (pthread_handle_create): Compare mmap result with
	MAP_FAILED.

	* ptfork.c: Rename to __pthread_atfork and make old name a weak alias.
	* sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork.

1997-08-22 19:04  Richard Henderson  <rth@cygnus.com>

	sysdeps/sparc -> sysdeps/sparc/sparc32
	sysdeps/sparc64 -> sysdeps/sparc/sparc64

	* internals.h: Change definition of THREAD_SELF to be an expression,
	not a statement that did a return.
	* sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly.
	* sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF):
	Follow Solaris and use a "system reserved" register (%g6) to hold
	the thread descriptor.
	* sysdeps/sparc/sparc64/pt-machine.h: Likewise.

1997-08-03 00:09  Ulrich Drepper  <drepper@cygnus.com>

	* mutex.c: Correct pthread_once.  Patch by Xavier Leroy.
	* sysdeps/pthread/pthread.h: Add prototype for __pthread_once.
	* sysdeps/pthread/bits/pthread.h: Add macros for __libc_once.

	* semaphore.c: Include spinlock.h only when needed.

	* specific.c (__pthread_setsepcific, __pthread_getspecific): Reject
	keys for entries not in use.

	* weaks.c: Implement key handling functions for real.

1997-06-29  01:04  Richard Henderson  <richard@gnu.ai.mit.edu>

	Initial sparc64-linux support:
	* linuxthreads/sysdeps/sparc64/Implies: New file.
	* linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise.

1997-06-29 00:48  Ulrich Drepper  <drepper@cygnus.com>

	* semaphore.c: Include spinlock.h at correct place.
	Patch by HJ Lu.

1997-06-13 10:06  Richard Henderson  <rth@tamu.edu>

	The Great Bit File Move:
	* sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h.
	* sysdeps/powerpc/semaphorebits.h: Likewise.
	* sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise.
	* sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise.
	* sysdeps/pthread/libc-lock.h: -> bits/
	* sysdeps/pthread/stdio-lock.h: Likewise.
	* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
	* semaphore.h: Likewise.
	* sysdeps/pthread/pthread.h: Likewise.

	* lockfile.c: <foo.h> -> <bits/foo.h>.
	* semaphore.h: Likewise.

	* Makefile: (headers): foo.h -> bits/foo.h.
	* sysdeps/pthread/Makefile: Likewise.

1997-04-11 01:18  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* semaphore.c (sem_init): Set sem_spinlock only if available.

	* sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix
	asm constraints.

1997-04-09 03:00  Ulrich Drepper  <drepper@cygnus.com>

	Update from LinuxThreads 0.6.

	* attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max
	and __sched_get_priority_min instead of names without `__'.

	* manager.c: Rewrite large parts to implement opaque pthread_t.

	* cancel.c: Adapt for opaque pthread_t type.
	* condvar.c: Likewise.
	* errno.c: Likewise.
	* join.c: Likewise.
	* mutex.c: Likewise.
	* pthread.c: Likewise.
	* signals.c: Likewise.
	* specific.c: Likewise.
	* restart.h: Likewise.
	* queue.h: Likewise.
	* Examples/ex3.c: Likewise.
	* Examples/ex4.c: Likewise.
	* sysdeps/pthread/pthread.h: Likewise.

	* pthread.c: Accumulate time for all threads in thread manager.

	* semaphore.c: Implement fallback implementation for architectures
	sometimes missing compare-exchange operations.

	* cancel.c (pthread_cancel): Validate handle argument.
	* join.c (pthread_join): Likewise.
	(pthread_detach): Likewise.
	* signals.c (pthread_kill): Likewise.

	* spinlock.h (acquire): Use __sched_yield not sched_yield.

	* queue.h (enqueue): Enqueue thread according to priority.

	* internals.c (struct pthread_start_args): New struct for passing
	args to cloning function.
	(struct _pthread): Rename to _pthread_descr_struct and adapt for
	opaque pthread_t.

	* Examples/Makefile (clean): Pass -f option to rm.

	* sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction
	and define TEST_FOR_COMPARE_AND_SWAP.
	* sysdeps/i386/i486/pt-machine.h: Removed.

	* sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase
	to 1024.

1997-04-04 16:38  Ulrich Drepper  <drepper@cygnus.com>

	* restart.h (suspend): Clear p_signal before suspending.
	(suspend_with_cancellation): Likewise.
	Patch by Xavier Leroy <Xavier.Leroy@inria.fr>.

	* weaks.c: Make __pthread_key_create return 1.
	* sysdeps/pthread/libc-lock.h: Define __libc_key_create,
	__libc_getspecific, __libc_setspecific, and __libc_key_t.
	* sysdeps/pthread/stdio-lock.h: Don't care for implementation not
	using libio.

1997-03-19 15:13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* sysdeps/sparc/pt-machine (RELEASE): Fix.

1997-03-01 07:55  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/Implies: Added.
	* sysdeps/powerpc/pt-machine.h: Added.
	* sysdeps/powerpc/semaphorebits.h: Added.

1997-01-22 01:22  Ulrich Drepper  <drepper@cygnus.com>

	* linuxtheads/pthread.c (__pthread_initial_thread): Correct
	initializer.
	(__pthread_manager_thread): Likewise.
	Reported by Andreas Jaeger.

1997-01-18 22:15  Richard Henderson  <rth@tamu.edu>

	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.

	* linuxthreads/manager.c (__pthread_manager): Put thread vitals
	in the thread struct instead of as arguments through clone.
	(pthread_start_thread): Look for them there.
	* linuxthreads/internals.h (struct _pthread): Add p_initial_fn,
	p_initial_fn_arg, p_initial_mask.  Fix __pthread_manager proto.
	* linuxthreads/pthread.c (pthread_initialize_manager): Revise
	clone invocation.
1998-03-11 12:42:25 +00:00