Commit Graph

7090 Commits

Author SHA1 Message Date
Ulrich Drepper acd42b7893 Update.
2002-11-28  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
	branch prediction buffers by using unpaired call/ret.
2002-11-28 08:32:24 +00:00
Ulrich Drepper d08bef807b Update.
2002-11-27  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
	first parameters constraint string.
	(ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
2002-11-28 05:23:05 +00:00
Ulrich Drepper 6291ee3c5f Update.
2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regcomp.c (parse_expression): Set the bit since the back
	reference is used in the regular expression.
	* posix/regex_internal.c (re_node_set_init_1): Make it clean in case
	of malloc failure.
	(re_node_set_init_copy): Likewise.
	* posix/regex_internal.h (state_array_t): New structure.
	(re_sub_match_last_t): Likewise.
	(re_sub_match_top_t): Likewise.
	(re_match_context_t): Add new members.
	(re_dfa_t): Likewise.
	* posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
	to check the matching is really correct, and retry if failed.
	Move the routin pruning the impossible nodes from here, ...
	(prune_impossible_nodes): To this function.
	(check_matching): Invoke check_subexp_matching_top, and replace
	redundant checking with transit_state_bkref invocation.
	(proceed_next_node): Replace strncmp with memcmp.  Reported by
	Paolo Bonzini  <bonzini@gnu.org>.
	(update_cur_sifted_state): Remove search_subexp invocation.
	(search_subexp): Remove this function.
	(check_dst_limits_calc_pos): Use search_cur_bkref_entry for
	optimization.
	(sift_states_bkref): Use search_cur_bkref_entry for optimization.
	Remove unused invocation of match_ctx_add_entry.
	(transit_state): Invoke check_subexp_matching_top.
	(check_subexp_matching_top): New function.
	(transit_state_bkref): Remove unused array.
	Merge transit_state_bkref_loop.
	(transit_state_bkref_loop): Use get_subexp instead of
	sift_states_backward.  Use search_cur_bkref_entry for optimization.
	Merge this function to transit_state_bkref.
	(get_subexp): New function.
	(get_subexp_sub): Likewise.
	(find_subexp_node): Likewise.
	(check_arrival): Likewise.
	(check_arrival_expand_ecl): Likewise.
	(check_arrival_expand_ecl_sub): Likewise.
	(expand_bkref_cache): Likewise.
	(match_ctx_init): Initialize new members.
	(match_ctx_clean): New function.
	(match_ctx_free): Release new members.
	(match_ctx_free_subtops): New function.
	(match_ctx_add_entry): Fix indent.
	(search_cur_bkref_entry): New function.
	(match_ctx_add_subtop): Likewise.
	(match_ctx_add_sublast): Likewise.
2002-11-27 23:00:16 +00:00
Roland McGrath 6938e63f71 * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
Grok AF_LINK if defined.
	From Momchil Velikov <velco@fadata.bg>.

	* sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
	brdaddr, or dstaddr, just set those pointers to null and don't fail.
	Reported by Momchil Velikov <velco@fadata.bg>.

	* sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
	is > sizeof IFR->ifa_addr, advance past the whole longer length.
	(__ifreq): Count up NIFS that way too.
	Reported by Momchil Velikov <velco@fadata.bg>.

	* sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2002-11-26 03:29:06 +00:00
Ulrich Drepper 9b1a4ec371 Update.
2002-11-25  Ulrich Drepper  <drepper@redhat.com>

	* iconv/Makefile (tests): Remove tst-iconv4.c
	* iconv/tst-iconv4.c: Moved to...
	* iconvdata/tst-iconv4.c: ...here.  New file.
	* iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2002-11-26 02:22:06 +00:00
Roland McGrath 832fd8e810 * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
and <fpu_control.h>.
2002-11-26 01:56:36 +00:00
Ulrich Drepper e195fbaf78 Update.
2002-11-24  Ulrich Drepper  <drepper@redhat.com>

	* elf/elf.h (EM_ST19): Fix typo.
2002-11-25 01:53:29 +00:00
Roland McGrath 983d597e9f * include/errno.h (__set_errno): Define as errno = val
unconditionally.
2002-11-25 00:14:23 +00:00
Roland McGrath bf2cc5fb02 * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
* sysdeps/posix/writev.c: Likewise.
	From Momchil Velikov <velco@fadata.bg>.

	* elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
	calling *GL(dl_error_catch_tsd) for a thread-local location.
	* elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
	(dl_main): Same for GL(dl_error_catch_tsd) initialization.
	* elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].

	* libio/iofflush.c: Add libc_hidden_def.
	* libio/iofwrite.c: Likewise.
	* sysdeps/generic/sigtimedwait.c: Likewise.
	* sysdeps/generic/sigwaitinfo.c: Likewise.
	* sysdeps/posix/sigwait.c: Likewise.
	Reported by Momchil Velikov <velco@fadata.bg>.

	* inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
	to match <arpa/inet.h> declaration.
	* inet/inet_netof.c (inet_netof): Likewise.
	* inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
	Reported by Momchil Velikov <velco@fadata.bg>.
2002-11-24 23:56:47 +00:00
Roland McGrath 13a571a747 * configure.in: Skip AUTOCONF check under --without-cvs.
* configure: Regenerated.

	* posix/Makefile (headers): Add bits/pthreadtypes.h.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
	* sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2002-11-24 23:11:32 +00:00
Andreas Schwab d7a5c7e70e * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
with six arguments.
2002-11-24 19:41:50 +00:00
Ulrich Drepper 93ed04cc6e Update.
2002-11-19  Jim Meyering  <jim@meyering.net>

	* time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
	as `static'.
	* time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2002-11-24 18:41:22 +00:00
Roland McGrath 56c71d451f * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
Just produce hex output for datum sizes.
2002-11-24 01:54:06 +00:00
Roland McGrath f069a1430a * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
Reported by Luca Barbieri <ldb@ldb.ods.org>.
2002-11-23 21:34:23 +00:00
Andreas Schwab 8faa165fda __unused3, and __unused4 fields. 2002-11-22 16:16:26 +00:00
Roland McGrath 4a32f19d57 * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
[__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
	and __unused3 fields.
	* sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
	[__WORDSIZE == 32]: Only PPC32 requires __unused1
	and __unused2 fields.
	* sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
	[__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
	__unused3,and __unused4 fields.
2002-11-22 05:23:51 +00:00
Roland McGrath a241310659 2002-11-20 Steven Munroe <sjmunroe@us.ibm.com>
* csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
	obtain lowest address for profiling in __monstartup call.
	* sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
	$(calls) $(calls:=f) $(long-c-$(long-double-fcts)).

2002-11-21  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
	__libc_multiple_libcs here.  Call __setfpucw.
2002-11-22 05:05:02 +00:00
Roland McGrath 54789f3816 * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
__libc_multiple_libcs here.  Call __setfpucw.

	* locale/localeinfo.h (struct locale_data): Revert last change.
2002-11-22 04:23:05 +00:00
Roland McGrath 1c120cb8e7 * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
From Ian Wienand <ianw@gelato.unsw.edu.au>.

	* sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
	__NR_pread64 if not defined.
	(__NR_pwrite): Define to __NR_pwrite64 if not defined.
	From Ian Wienand <ianw@gelato.unsw.edu.au>.
2002-11-22 01:27:01 +00:00
Ulrich Drepper 5982aa1049 Update.
* elf/Makefile (tests): Don't run test-arrayX tests for now.
2002-11-22 00:41:16 +00:00
Ulrich Drepper 755e51bee0 Update.
2002-11-21  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
	* sysdeps/unix/sysv/linux/i386/clone.S: Add support for
	CLONE_CHILD_*TID flags.
2002-11-22 00:09:11 +00:00
Andreas Jaeger 714a17c327 * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
We pass struct ucontext on x86-64.
	(GET_PC): Adjust.
	(GET_FRAME): Adjust.
	(GET_STACK): Adjust.
2002-11-21 11:09:39 +00:00
Roland McGrath ab9ba655e1 * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
conditionalize [! DO_VERSIONING] #error.
2002-11-21 04:10:59 +00:00
Roland McGrath 5d0bbaaf3a * scripts/abilist.awk: Grok function descriptor symbols.
* intl/tst-gettext.c (main): Check return values from setlocale.
	Add necessary unsetenv's to make LANG=existing-locale check work.

	* intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
	so aborted prior runs don't confuse things.

	* locale/localeinfo.h (struct locale_data: union locale_data_value):
	Use uintptr_t instead of unsigned int for `word' member.
	(_NL_CURRENT_WORD): Cast to uint32_t.

	* posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
	value.
2002-11-21 03:41:31 +00:00
Ulrich Drepper eec62f42bb Update.
* elf/tls-macros.h: Add IA-64 definitions.
	Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
2002-11-21 03:06:21 +00:00
Ulrich Drepper d84e7efa31 Update.
* iconv/Makefile (tests): Add tst-iconv4.
	* iconv/tst-iconv4.c: New file.
2002-11-21 00:23:18 +00:00
Ulrich Drepper eb9dc2a22d Update.
* iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
	__GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
	__GCONV_INCOMPLETE_INPUT.
	(ucs4le_internal_loop): Likewise.
	(ucs4le_internal_loop_unaligned): Likewise.
	* iconvdata/unicode.c (PREPARE_LOOP): Likewise.
	* iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
	* iconvdata/utf-32.c (PREPARE_LOOP): Likewise.

	* iconv/loop.c (LOOPFCT): First test for empty input then for full
	output buffer.
2002-11-20 23:42:04 +00:00
Ulrich Drepper 218d76e034 Update.
2002-11-20  Ulrich Drepper  <drepper@redhat.com>

	* inet/getnameinfo.c: Use extend_alloca where appropriate.
	* sysdeps/posix/getaddrinfo.c: Likewise.

	* include/alloca.h (extend_alloca): New define.  Based on stack
	direction it'll try to append to the previouls allocated buffer.

2002-11-07  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
	use the same service for AF_INET and AF_INET6.

2002-11-19  Ulrich Drepper  <drepper@redhat.com>

	* intl/localealias.c (read_alias_file): Use only about 400 bytes
	of stack space instead of 16k.
2002-11-20 19:48:07 +00:00
Roland McGrath 7f1b7f038d * malloc/arena.c
(ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
	nothing if not initialized.  Bug report from Marcus Brinkmann
	<Marcus.Brinkmann@ruhr-uni-bochum.de>.
2002-11-20 09:41:01 +00:00
Roland McGrath f0ddeeb5c0 * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
sched_setaffinity.
2002-11-20 01:05:35 +00:00
Roland McGrath 8d4d283346 * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
`-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
	test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
	* configure: Regenerated.
2002-11-19 22:15:00 +00:00
Ulrich Drepper 3c857306f5 Update.
2002-11-19  Ulrich Drepper  <drepper@redhat.com>

	* include/dlfcn.h: __libc_dlopen is now a macro calling
	__libc_dlopen_mode with the extra parameter RTLD_LAZY.
	(__libc_dlopen_mode): New prototype.
	* elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
	new parameter.  Store new parameter in mode field of structure passed
	to do_dlopen.
	(struct do_dlopen_args): Add new field mode.
	(do_dlopen): Pass mode from parameter structure to _dl_open.

	* sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
	Define mcontext_t as a sigcontext.
	* manual/crypt.texi (Cryptographic Functions): Mention that
	the MD5 one-way algorithm is compatible with BSD's.
2002-11-19 19:30:55 +00:00
Roland McGrath 2674f2a35b * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
(F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
	* sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
2002-11-19 09:27:04 +00:00
Roland McGrath 0bf5c0507e * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
* sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
	Set -mdisable-fpregs for this file.

2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>

	* sysdeps/unix/sysv/linux/configure.in:
	Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
	from gcc-3.0 era for backwards compatibility.
	* sysdeps/unix/sysv/linux/configure: Regenerate.

        * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
        Define mcontext_t as a sigcontext.

	* dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
	Free memory in `last_result' if it was used.

	* resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
	all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
	Do the parsing inline instead of copying strings and calling
	inet_network, and properly skip all alias names not matching the form.
2002-11-19 06:41:14 +00:00
Roland McGrath c27af28ef2 * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
* manual/pattern.texi (Wordexp Example): Fix sample code.

2002-11-14  Paul Eggert  <eggert@twinsun.com>
2002-11-18 20:33:23 +00:00
Ulrich Drepper a185f478f0 Update.
2002-11-17  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
	childs stack which will be loaded into the %esi register.

	* resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
	overflow when skipping the question part and when unpacking aliases.
2002-11-18 07:41:51 +00:00
Roland McGrath 9b57c1c1e4 2002-11-14 Paul Eggert <eggert@twionsun.com>
* resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
        overflow when skipping the question part and when unpacking
        aliases.
2002-11-18 04:10:15 +00:00
Roland McGrath 502328b258 * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
	Instead add $(calls:s_%=m_%) to get m_* versions of them all.
2002-11-15 23:50:05 +00:00
Roland McGrath 92712dee68 * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
* sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.

2002-11-15  Roland McGrath  <roland@redhat.com>

	* math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
	from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
	(+make-include-of-dep): New canned sequence.

	* stdlib/canonicalize.c (__realpath): Check for malloc failure.
	From Dmitry V. Levin <ldv@altlinux.org>.
2002-11-15 22:51:30 +00:00
Roland McGrath 53da80ab88 * sysdeps/generic/errno.c (__libc_errno): Remove alias.
* inet/herrno.c (__libc_h_errno): Likewise.
	* resolv/res_libc.c (__libc_res): Likewise.
	[USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
	(__res_state) [! USE___THREAD]: Don't define as weak.
	* csu/Versions: Revert last change.
	* resolv/Versions: Revert last change.

	* Makerules ($(common-objpfx)%.make): New pattern rule.
	* tls.make.c: New file.
	* Makefile (distribute): Add it.
2002-11-15 03:37:24 +00:00
Roland McGrath d8b8842b04 * sysdeps/generic/errno.c [! USE___THREAD]
[HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
	with compat_symbol so they are not link-time visible.
	[! USE___THREAD] (__libc_errno): New alias for errno.
	* csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
	Add __libc_errno here.
	* inet/herrno.c [USE___THREAD]: Use this conditional
	in place of [USE_TLS && HAVE___THREAD].
	[! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
	(h_errno, _h_errno): Declare these with compat_symbol so they are not
	link-time visible.
	[! USE___THREAD] (__libc_h_errno): New alias for h_errno.
	* resolv/res_libc.c [! USE___THREAD]
	[HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
	(_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
	(__libc_res): Define as alias for _res.
	* resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
	Add __libc_h_errno and __libc_res here.

2002-11-14  Jakub Jelinek  <jakub@redhat.com>

	* csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
	* resolv/Versions (h_errno, _res): Likewise.

2002-11-14  Roland McGrath  <roland@redhat.com>
2002-11-14 21:23:12 +00:00
Roland McGrath 6c0b2972dc * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
(%.symlist): Likewise.
2002-11-14 20:26:56 +00:00
Roland McGrath c9e032d55f [$(subdir) = elf] (tests): Depend on libc.symlist.
(generated, common-generated): Add those files.
2002-11-14 04:19:34 +00:00
Roland McGrath 6e3d59bc05 * scripts/abilist.awk: New file.
* Makefile (distribute): Add it.
	* Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
	(tests): Depend on .symlist file for each $(install-lib.so-versioned).
	[! subdir] (tests): Depend on libc.symlist.
	(generated): Add those files.
	* aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
	* configure: Regenerated.
	* config.make.in (OBJDUMP): New variable, substituted by configure.

	* malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
	(mallochook, reallochook): Set them up.
	(checkhdr): Check HDR->magic2 value.
	(freehook): Reset HDR->magic2.
	(memalignhook): New static function.
	(old_memalign_hook): New static variable.
	(mcheck, reallochook): Set __memalign_hook to memalignhook.
2002-11-14 03:59:56 +00:00
Roland McGrath cdedcc7943 * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
for the new TCB.
2002-11-14 00:48:38 +00:00
Andreas Jaeger ba441d2c89 Update.
2002-11-13  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
	attribute.
	* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2002-11-13 09:31:08 +00:00
Roland McGrath be1960c6fd 2002-11-11 Paul Eggert <eggert@twinsun.com>
* manual/crypt.texi (Cryptographic Functions): Mention that
        the MD5 one-way algorithm is compatible with BSD's.
2002-11-13 04:51:00 +00:00
Roland McGrath 1843975c42 * posix/regex_internal.c (re_string_skip_chars): Also return the last
wide character.
	(re_string_reconstruct): Calculate the context by itself when the
	offset points out of the valid range.
	(re_string_context_at): Use wide character when MB_CUR_MAX > 1.
	* posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
	(IS_WIDE_WORD_CHAR): New macro.
	(IS_WIDE_NEWLINE): New macro.
2002-11-13 04:00:16 +00:00
Roland McGrath 43317e8e78 * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
(_G_IO_NO_BACKWARD_COMPAT): Define it.
2002-11-12 22:02:38 +00:00
Andreas Jaeger 6e14793db0 Update.
* sysdeps/x86_64/strchr.S: Don't use one register for two
	purposes, this fixes a bug noticed by test-strchr.c.
2002-11-12 21:43:26 +00:00
Andreas Jaeger 44df0cea62 Update.
2002-11-12  Andreas Jaeger  <aj@suse.de>

	* sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
	correctly.
2002-11-12 17:58:02 +00:00
Roland McGrath 7ceef50ec9 * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
instead of <pt-machine.h>.
	[_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
	testandset.
	From Ian Wienand <ianw@gelato.unsw.edu.au>.
2002-11-12 08:31:50 +00:00
Roland McGrath 1ab9366daa * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
Call fputs instead of fwprintf (simpler to follow in debugger).
2002-11-11 06:55:22 +00:00
Roland McGrath 4483f2c0f8 * crypt/md5-crypt.c: Doc fix. 2002-11-11 02:43:35 +00:00
Roland McGrath adee0e1f17 * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
the beginning of generated target commands.

	* csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
	dependencies for these in case implicit rule search skipped the
	nonexistent source directory.
	* sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
	files with $(object-suffixes) as targets too.
	* Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
	and a target for it using $(make-target-directory).

	* Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.

	* sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
	* sysdeps/generic/bits/pthreadtypes.h: ... here.
2002-11-11 02:34:36 +00:00
Roland McGrath 8bbd8b0ba2 * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
l_start == 0 and l_len == 1 as we do l_len == 0.
2002-11-10 23:29:38 +00:00
Roland McGrath da43dd4f99 * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
* sysdeps/generic/bits/pthreadtypes.h: ... here.
2002-11-10 23:22:51 +00:00
Ulrich Drepper 7fa0e18061 Update.
2002-11-10  Ulrich Drepper  <drepper@redhat.com>

	* po/da.po: Update from translation team.

	* sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
	error in range calculation.
2002-11-10 23:17:14 +00:00
Roland McGrath daf4e2bcb4 * config.make.in (includedir): New variable, substituted by configure.
Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
	* Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
2002-11-10 22:19:28 +00:00
Andreas Jaeger 09b4d75f76 Update.
* sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
	REG_OLDMASK and REG_CR2 to synch with kernel header.
	(NGREG): Increase.
2002-11-10 11:10:49 +00:00
Andreas Jaeger 2deea0788f Update.
2002-11-10  Andreas Jaeger  <aj@suse.de>

	* nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
	aliasing problem.
	* nss/getXXbyYY_r.c (INTERNAL): Likewise.
	* nss/getnssent_r.c (__nss_getent_r): Likewise.
	(__nss_setent): Likewise.
	(__nss_getent_r): Likewise.
	* inet/getnetgrent_r.c (innetgr): Likewise.
	(__internal_setnetgrent_reuse): Likewise.
	(internal_getnetgrent_r): Likewise.
	* inet/ether_hton.c (ether_hostton): Likewise.
	* inet/ether_ntoh.c (ether_ntohost): Likewise.
	* sunrpc/netname.c (netname2user): Likewise.
	* sunrpc/publickey.c (getpublickey): Likewise.
	(getsecretkey): Likewise.
2002-11-10 11:06:51 +00:00
Roland McGrath 55c303acb8 2002-11-09 Marcus Brinkmann <marcus@gnu.org>
* sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
        error in range calculation.
2002-11-09 23:10:46 +00:00
Roland McGrath 9372c95824 * string/test-strspn.c (do_test): Ensure zero termination.
* string/test-strpbrk.c (do_test): Likewise.
	* string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
	* string/test-strncpy.c (stupid_strncpy): Likewise.
	* string/test-stpncpy.c (stupid_stpncpy): Likewise.

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

	* string/test-string.h (test_init): Fill BUF1 and BUF2 with
	nonzero characters.

2002-09-22  H.J. Lu  <hjl@gnu.org>

	* sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
	from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
	only if __NR_mmap2 is defined.

	* sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
	* sysdeps/unix/sysv/linux/mmap64.c: ... here.
	* sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
	* sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
2002-11-09 00:36:21 +00:00
Roland McGrath 2b49744308 * posix/bug-regex13.c (tests): Add new test. 2002-11-08 22:39:08 +00:00
Roland McGrath e8c1660f7b * string/test-strchr.c (stupid_strchr): New function.
(do_random_tests): Make sure the string is zero terminated.
	* string/test-strpbrk.c (stupid_strpbrk): New function.
	(do_random_tests): Make sure the string is zero terminated.
	* string/test-strcmp.c (stupid_strcmp): New function.
	(do_random_tests): Make sure the strings are zero terminated.
	* string/test-strspn.c (stupid_strspn): New function.
	(simple_strspn): Rename rej argument to acc.
	(do_random_tests): Make sure the string is zero terminated.
	* string/test-strcspn.c (stupid_strcspn): New function.
	* string/test-strncpy.c (stupid_strncpy): New function.
	* string/test-stpncpy.c (stupid_stpncpy): New function.
	* string/test-strncmp.c (stupid_strncmp): New function.
	(do_random_tests): Make sure the strings are zero terminated.
	* string/test-string.h (impl_t): Change test into long.
	(IMPL): Add __attribute__((aligned (sizeof (void *)))).
2002-11-08 22:10:01 +00:00
Roland McGrath e0bc9a8d13 * sysdeps/ia64/elf/configure.in: Add TLS check.
From Ian Wienand <ianw@cse.unsw.edu.au>.
	* sysdeps/ia64/elf/configure: Regenerated.

2002-11-07  Roland McGrath  <roland@redhat.com>

	* libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
	place of _IO_new_do_write.
	[_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
	#undef before versioned_symbol use.

	* string/test-string.h (test_init): Fill BUF1 and BUF2 with nonzero
	characters.
2002-11-08 17:11:02 +00:00
Roland McGrath c6481412ff * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
* configure: Regenerated.
	* config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
	* sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
	(RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
	_dl_fini via gp-relative relocations.
	* sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.

	* elf/tls-macros.h: Add alpha versions.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
	* sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
	* sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
	* sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
	* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/gettimeofday.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/rt_sigaction.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.

	* sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
	Kill argument registers across the inline syscall.

	* sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.

	* linuxthreads/sysdeps/alpha/tls.h: New file.
	* sysdeps/alpha/dl-tls.h: New file.
2002-11-08 02:20:41 +00:00
Roland McGrath dfe4c900cb * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
(gmon_initializer): New function.
	(.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
	__gmon_start__ here.  Call it from gmon_initializer() instead.

2002-03-12  H.J. Lu  <hjl@gnu.org>

	* elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
	tst-array2, and tst-array3.
	[$(have-initfini-array) = yes] (tests-static): Add tst-array3.
	[$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
	($(objpfx)tst-array1.out): New target.
	($(objpfx)tst-array2): Likewise.
	($(objpfx)tst-array2.out): Likewise.
	($(objpfx)tst-array3.out): Likewise.
	* elf/tst-array1.c: New file.
	* elf/tst-array1.exp: Likewise.
	* elf/tst-array2.c: Likewise.
	* elf/tst-array2dep.c: Likewise.
	* elf/tst-array2.exp: Likewise.
	* elf/tst-array3.c: Likewise.
2002-11-07 22:28:16 +00:00
Roland McGrath 1d8a0fd965 * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
Don't add L->l_addr to array entry values.
2002-11-07 20:47:27 +00:00
Roland McGrath 58ef9ef7bc * string/test-string.h: New file.
* string/test-strlen.c: New file.
	* string/test-string.h: New file.
	* string/test-strcmp.c: New file.
	* string/test-strchr.c: New file.
	* string/test-strrchr.c: New file.
	* string/test-strcpy.c: New file.
	* string/test-stpcpy.c: New file.
	* string/test-strncpy.c: New file.
	* string/test-stpncpy.c: New file.
	* string/test-strpbrk.c: New file.
	* string/test-strcspn.c: New file.
	* string/test-strspn.c: New file.
	* string/test-strcat.c: New file.
	* string/test-strncmp.c: New file.
	* string/test-memchr.c: New file.
	* string/test-memcmp.c: New file.
	* string/test-memset.c: New file.
	* string/test-memcpy.c: New file.
	* string/test-mempcpy.c: New file.
	* string/test-memmove.c: New file.
	* string/Makefile (strop-tests): New variable.
	(tests): Add strop-tests.
	(distribute): Add test-string.h.
2002-11-07 19:15:01 +00:00
Roland McGrath cbf900b430 * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
* sysdeps/unix/sysv/linux/mips/configure: Likewise.
2002-11-06 22:14:54 +00:00
Ulrich Drepper 15a7d175bc Update.
2002-11-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regcomp.c: Use tabs instead of spaces.
	* posix/regexec.c: Likewise.
	* posix/regex_internal.h: Likewise.

	* posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
2002-11-06 20:36:47 +00:00
Ulrich Drepper 1b2c262835 Update.
2002-11-06  Jakub Jelinek  <jakub@redhat.com>

	* posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
	here.
	(regcomp): Don't set can_be_null here.
	(re_comp): Clear whole re_comp_buf with the exception of fastmap.
	(re_compile_internal): Clear can_be_null, set regs_allocated.

	* posix/regcomp.c (re_set_fastmap): New function.
	(re_compile_fastmap_iter): Use it.  Remove redundant type ==
	COMPLEX_BRACKET check.
	* posix/regexec.c (re_search_internal): Optimize searching with
	fastmap.  Call re_string_reconstruct even if match_first is
	smaller than raw_mbs_idx.

2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regcomp (free_dfa_content): Use free_state.
	* posix/regex_internal.c (re_string_realloc_buffers): Don't edit
	pointers in case that realloc failed.
	(re_node_set_merge): Likewise.
	(register_state): Likewise.
	(create_newstate_common): Invoke memory release functions in case of
	error conditions.
	(create_ci_newstate): Likewise.
	(create_cd_newstate): Likewise.
	(free_state): New function.
	* posix/regexec.c (re_search_internal): Invoke memory release
	functions in case of error conditions.
	(sift_states_backward): Likewise.
	(merge_state_array): Likewise.
	(add_epsilon_src_nodes): Likewise.
	(sub_epsilon_src_nodes): Likewise.
	(search_subexp): Likewise.
	(sift_states_bkref): Likewise.
	(transit_state_sb): Likewise.
	(transit_state_mb): Likewise.
	(transit_state_bkref_loop): Likewise.
	(group_nodes_into_DFAstates): Likewise.
	(push_fail_stack): Don't edit pointers in case that realloc failed.
	(extend_buffers): Likewise.
	(match_ctx_add_entry): Likewise.
2002-11-06 19:57:50 +00:00
Roland McGrath c4dd0bacad * configure.in: Add checks on as and ld for binutils 2.13 or later.
* configure: Regenerated.
2002-11-06 08:54:06 +00:00
Ulrich Drepper 71ccd3308c Update.
2002-11-06  Ulrich Drepper  <drepper@redhat.com>

	* posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
	If re_compile_internal failed free fastmap buffer.
	(free_dfa_content): Broken out of regfree function.  Frees all dfa
	related data.
	(regfree): Add free_dfa_content.
	(re_compile_internal): If any of the called functions fails free
	all dfa related memory.
2002-11-06 08:34:35 +00:00
Ulrich Drepper d97426b7d7 Update.
2002-11-05  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
	warnings from the kernel headers.
2002-11-06 06:12:13 +00:00
Ulrich Drepper a2d80f9ade Update.
* elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
	which happens at the beginning so that we can unload modules in
	__libc_freeres.
2002-11-06 04:49:03 +00:00
Roland McGrath be280d0eaf * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
From Johannes Stezenbach <js@convergence.de>.
2002-11-06 03:19:51 +00:00
Roland McGrath df5391ff90 * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
#errlist-compat magic comment to give 123 as size.
	(libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
	(libc: GLIBC_2.2): ... here.
	(libc: GLIBC_2.3): Likewise.
2002-11-06 02:53:58 +00:00
Ulrich Drepper 5185907455 Update.
2002-11-05  Ulrich Drepper  <drepper@redhat.com>

	* iconv/gconv_dl.c (do_release_all): Call __libc_dlclose as many
	times as we opened the module.
2002-11-06 01:59:46 +00:00
Roland McGrath e791bd95a5 * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
under [__USE_MISC || _ASM].

	* elf/elf.h: Remove the obsolete SH TLS relocations.
2002-11-06 00:08:36 +00:00
Ulrich Drepper 0c2ee21ca6 Update.
2002-11-05  Ulrich Drepper  <drepper@redhat.com>

	* posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
	s_pwrite64, s_ftruncate, s_truncate): Re-add.
2002-11-05 21:06:51 +00:00
Ulrich Drepper 5bfed16d69 Update.
2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
	__NR_pread64 and __NR_pwrite64.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
	and __NR_pwrite64.
	Revert change to use INLINE_SYSCALL.
	* sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
	INLINE_SYSCALL.
	* sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
	Update clobber list and add a comment about the syscall ABI.
2002-11-05 19:58:06 +00:00
Ulrich Drepper f6e50e66ad Update.
2002-11-05  Jakub Jelinek  <jakub@redhat.com>

	* iconv/gconv_dl.c (free_mem): Clear loaded.
	* locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
	cleanup if any.

	* sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
2002-11-05 19:21:56 +00:00
Ulrich Drepper 52a16e5801 Update.
2002-11-05  Ulrich Drepper  <drepper@redhat.com>

	* libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
	as old code without locking.  _IO_seekoff calls this function after
	locking the stream.
	* libio/ioseekpos.c: Likewise for _IO_seekpos.
	* libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
	prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
	prototypes.
	* libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
	of _IO_seekoff_internal.
	(_IO_rewind): Likewise.
	* libio/ioftell.c: Likewise.
	* libio/ftello.c: Likewise.
	* libio/ftello64.c: Likewise.
	* libio/iofgetpos.c: Likewise.
	* libio/iofgetpos64.c: Likewise.
	* libio/oldiofgetpos.c: Likewise.
	* libio/oldiofgetpos64.c: Likewise.
	* libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
	_IO_seekpos_internal.
	* libio/iofsetpos64.c: Likewise.
	* libio/oldiofsetpos.c: Likewise.
	* libio/oldiofsetpos64.c: Likewise.

	* libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
	_wide_data->_IO_read_end if adjustment can be made in the current
	buffer.
2002-11-05 08:43:05 +00:00
Roland McGrath 0f0d786f5f * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
	s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
	sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
	Remove these, no longer used.

2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
	s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
	s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
	s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
	s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
	s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
	syscall stubs.

	* sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
	* sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
	and __NR_pread.
	* sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
	and __NR_pwrite.
	* sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.

2002-11-03  Roland McGrath  <roland@redhat.com>

	* sysdeps/generic/ldsodefs.h (struct rtld_global): New member
	`_dl_tls_static_used'.
	* sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
	(__libc_setup_tls): Initialize it.  Let the initial value of
	_dl_tls_static_size indicate some surplus space in the computed value.
	* elf/dl-open.c (_dl_tls_static_size): New variable.
	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
	_dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
	* elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
	(CHECK_STATIC_TLS): Use it.
	* elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
	closed objects occupied a trailing contiguous chunk of static TLS area.

2002-10-18  Bruno Haible  <bruno@clisp.org>

	* charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
2002-11-05 03:03:24 +00:00
Ulrich Drepper 2f0f157e1c Update.
* sysdeps/unix/sysv/linux/fexecve.c: New file.
2002-11-04 19:53:25 +00:00
Ulrich Drepper c7e56cbea2 Update.
* libio/bug-wfflush.c (do_test): Using fseek is not allowed when
	wide oriented streams are used.
2002-11-04 10:33:19 +00:00
Ulrich Drepper 226e9fda25 Update.
* nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
	service hasn't been used [PR libc/4744].
2002-11-04 10:20:14 +00:00
Ulrich Drepper 125183201f Update.
* include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
	Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
2002-11-04 09:36:53 +00:00
Ulrich Drepper 8e96ae1a08 Update.
2002-11-04  Ulrich Drepper  <drepper@redhat.com>

	* manual/examples/dir.c: Don't include <stddef.h>.
	* manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
	Reported by Frdric Delanoy <delanoy_f@yahoo.com>.

2002-11-02  H.J. Lu  <hjl@gnu.org>

	* stdio-common/reg-printf.c: Include <stddef.h>.
2002-11-04 09:18:22 +00:00
Ulrich Drepper 80f6f981b9 Update.
* sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
2002-11-04 07:14:09 +00:00
Ulrich Drepper a3fecd80f7 Update.
* po/ca.po: Update from translation team.
	* po/es.po: Likewise.
2002-11-04 07:01:23 +00:00
Ulrich Drepper dc80d3cf0e Update.
2002-11-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
	is defined write out memory map.
	* sysdeps/unix/sysv/linux/segfault.c: New file.
2002-11-03 08:52:36 +00:00
Roland McGrath c213fe9c7d * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
pointers that can alias.
	Reported by Daniel Jacobowitz <drow@mvista.com>.
2002-11-03 03:47:57 +00:00
Roland McGrath cd180b205f * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
2002-11-02  Roland McGrath  <roland@redhat.com>
2002-11-03 01:21:26 +00:00
Roland McGrath 05dab910b0 * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
description to be clearer and to say that *RESULT is set to ENTRY.

2002-10-30  Jakub Jelinek  <jakub@redhat.com>

	* posix/regexec.c (build_trtable): Alloca or malloc dests_node and
	dests_ch arrays together.  Alloca or malloc dest_states,
	dest_states_word and dest_states_nl arrays together.  Free memory on
	error exit.

2002-10-29  Daniel Jacobowitz  <drow@mvista.com>

	* crypt/crypt_util.c (__init_des_r): Initialize current_salt
	and current_saltbits.

2002-11-02  Roland McGrath  <roland@redhat.com>
2002-11-03 00:59:09 +00:00
Roland McGrath 379c9e03af * stdio-common/reg-printf.c: Include <stdlib.h>. 2002-11-03 00:16:49 +00:00
Roland McGrath fc633b17ce * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
caller to EXTRA instead of execve.
2002-11-02 23:13:20 +00:00
Roland McGrath cfbc71d7dd * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
in place of [!(USE_TLS && HAVE___THREAD)].
	(__errno_location) [! USE___THREAD]: Define as strong, not weak.
2002-11-02 01:53:44 +00:00
Roland McGrath bde40c2f9a * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
New macros.
	* sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.

	* soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
	without defining FP_ROUNDMODE.
2002-11-01 21:49:33 +00:00
Roland McGrath 15deb6b3b4 * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
(__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
	declare_symbol.
	* sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
	(OLD_SIGLIST_SIZE): Define.
	* sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
	(OLD_SIGLIST_SIZE): Define.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
2002-11-01 20:48:37 +00:00
Roland McGrath c88fccbef1 * sysdeps/ia64/strncpy.S: Fix recovery code. 2002-11-01 20:46:53 +00:00
Roland McGrath c877418f2e * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
New macros.
	* elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
	text_set_element.
	* elf/dl-libc.c (free_mem): Likewise.
	* iconv/gconv_conf.c (free_mem): Likewise.
	* iconv/gconv_db.c (free_mem): Likewise.
	* iconv/gconv_dl.c (free_mem): Likewise.
	* iconv/gconv_cache.c (free_mem): Likewise.
	* intl/finddomain.c (free_mem): Likewise.
	* intl/dcigettext.c (free_mem): Likewise.
	* locale/setlocale.c (free_mem): Likewise.
	* misc/fstab.c (fstab_free): Likewise.
	* nss/nsswitch.c (free_mem): Likewise.
	* posix/regcomp.c (free_mem): Likewise.
	* resolv/gai_misc.c (free_res): Likewise.
	* stdlib/fmtmsg.c (free_mem): Likewise.
	* sunrpc/clnt_perr.c (free_mem): Likewise.
	* sysdeps/generic/setenv.c (free_mem): Likewise.
	* sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
	* sysdeps/pthread/aio_misc.c (free_res): Likewise.
	* time/tzset.c (free_mem): Likewise.
	* malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
	* locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
	* malloc/set-freeres.c (__libc_freeres): Likewise.

	* login/getutent.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutent): Allocate buffer the first time it is run.
	* login/getutid.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutid): Allocate buffer the first time it is run.
	* login/getutline.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutline): Allocate buffer the first time it is run.
	* malloc/mtrace.c (malloc_trace_buffer): Change into char *.
	(mtrace): Allocate malloc_trace_buffer.
	* resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
	* resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
	* string/strerror.c: Include libintl.h and errno.h.
	(buf): New variable.
	(strerror): Only allocate buffer if actually needed (unknown error).
	* time/tzfile.c (transitions): Add libc_freeres_ptr.
	(freeres): Remove.

2002-10-25  Jakub Jelinek  <jakub@redhat.com>

	* include/libc-symbols.h (libc_freeres_ptr): New macro.
	* malloc/set-freeres.c (__libc_freeres_ptrs): Define using
	symbol_set_define.
	(__libc_freeres): Free all pointers in that section.
	* Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
	commands when creating .lds script.
	(LDSEDCMD-c.so): New variable.
	* inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rcmd_af): Use strdup to allocate ahostbuf.
	* inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rexec_af): Use strdup to allocate ahostbuf.
	* stdio-common/reg-printf.c (printf_funcs): Remove.
	(__printf_arginfo_table): Change into printf_arginfo_function **.
	Add libc_freeres_ptr.
	(__register_printf_function): Allocate __printf_arginfo_table
	and __printf_function_table the first time it is called.
	* stdio-common/printf-parse.h (__printf_arginfo_table): Change into
	printf_arginfo_function **.
	(parse_one_spec): Add __builtin_expect.
	* grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
	(string_space, map): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
	(buffer): Add libc_freeres_ptr.
	(free_mem): Remove for _LIBC.
	* nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* nss/getXXent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
	(free_mem): Remove.
	* shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
	libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
	libc_freeres_ptr.
	(free_mem): Remove.

2002-10-30  Jakub Jelinek  <jakub@redhat.com>

	* malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
	instead of duplicating the whole function in libc.
2002-11-01 20:44:15 +00:00
Roland McGrath aa9937f78c * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
2002-11-01 04:12:30 +00:00
Andreas Jaeger 846f07632c * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
32bit-predefine when creating .new32 list and -U for each
	32bit-predefine when creating .new64 list.
	* sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
2002-10-30 18:25:37 +00:00
Andreas Schwab 880c5bb965 * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
"testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
2002-10-29 12:15:08 +00:00
Roland McGrath 980fb9a7d8 * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
* sysdeps/unix/sysv/linux/configure: Regenerated.
2002-10-26 01:06:33 +00:00
Roland McGrath b5b9cfc425 * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
_dl_starting_up decl.
2002-10-26 01:04:06 +00:00
Roland McGrath b0ab77c813 * sysdeps/unix/sysv/linux/configure.in: Don't check
/lib/modules/`uname -r`/build/include for kernel headers if
	cross compiling.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
2002-10-25 23:38:23 +00:00
Roland McGrath 6bb8cf4f8c . 2002-10-25 19:45:33 +00:00
Roland McGrath 57c1c9ed7c * math/math.h (M_LOG2El): Correct the value.
From Stephen L Moshier <steve@moshier.net>.
2002-10-25 19:45:27 +00:00
Roland McGrath 5580f1544d * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
conditional from __libc_multiple_libcs access.  Remove kludge for weak
	symbol access with old compilers we no longer support.
	* sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
	* sysdeps/generic/libc-start.c (__libc_start_main): Likewise.

2002-10-24  Roland McGrath  <roland@redhat.com>

	* sysdeps/generic/ldsodefs.h (struct rtld_global): New member
	`_dl_tls_static_used'.
	(TLS_STATIC_MIN): New macro.
	* sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
	(__libc_setup_tls): Initialize it.
	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Likewise.
	* elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
	(CHECK_STATIC_TLS): Use it.
	* elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
	closed objects occupied a trailing contiguous chunk of static TLS area.

2002-10-25  Roland McGrath  <roland@redhat.com>
2002-10-25 19:41:31 +00:00
Roland McGrath c61ce8de62 * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
implement SV_RESETHAND by translating it to SA_RESETHAND.
2002-10-25 19:15:57 +00:00
Ulrich Drepper 584364156b Update.
2002-10-23  Alexandre Oliva  <aoliva@redhat.com>

	* elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
	type on ELF64 platforms.
2002-10-25 07:54:26 +00:00
Ulrich Drepper 14fa2b09c6 Update.
* elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
2002-10-24 23:33:28 +00:00
Ulrich Drepper b587c71a3d Update.
2002-10-24  Ulrich Drepper  <drepper@redhat.com>

	* elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
2002-10-24 23:06:13 +00:00
Roland McGrath 5bbcba0db5 * elf/dl-misc.c: Include <sysdep.h>.
(_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.

	* sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
	* sysdeps/unix/sysv/linux/init-first.c: Not here.
	* sysdeps/powerpc/elf/libc-start.c: Or here.
	* sysdeps/unix/sysv/aix/libc-start.c: Or here.
	* sysdeps/unix/sysv/aix/start-libc.c: Or here.
	* sysdeps/unix/sysv/aix/init-first.c: Or here.
	* sysdeps/generic/libc-start.c: Or here.
	* sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
	access with [! SHARED].
	* sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
2002-10-24 19:14:59 +00:00
Roland McGrath 369b849f1a * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
	(INLINE_SYSCALL): Use that.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
	INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
	(INLINE_SYSCALL): Use that.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
	INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
	(INLINE_SYSCALL): Use that.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
	dl-sysdep.h.
	(SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
	(__INTERNAL_SYSCALL_STRING): Define.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
	dl-sysdep.h.
	(SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
	(__INTERNAL_SYSCALL_STRING): Define.
	* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
	__SYSCALL_STRING to inline_syscall*.
	(INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
	New macros.
	(inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
	inline_syscall4, inline_syscall5, inline_syscall6): Add string
	argument.

2002-10-24  Roland McGrath  <roland@redhat.com>

	* libio/bug-wfflush.c: New file.
	* libio/Makefile (tests): Add bug-wfflush.
2002-10-24 18:49:00 +00:00
Roland McGrath 90d5987081 * stdio-common/tst-fphex.c: New file.
* stdio-common/Makefile (tests): Add tst-fphex.
	* sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
	of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
	chars always before the value digits.
	Reported by James Antill <james.antill@redhat.com>.
2002-10-24 01:15:37 +00:00
Roland McGrath 240e87c230 * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
(free_mem): New function.
	* posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
	if not cross compiling.
	(generated): Add bug-regex14-mem and bug-regex14.mtrace.
	(bug-regex14-ENV): Set.
	(bug-regex14-mem): New target.
	* posix/bug-regex14.c: New file.

	* elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
	target, so we don't touch it when the link fails.
2002-10-24 00:22:27 +00:00
Roland McGrath 3efdabe762 * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
Check for the result overflowing off_t and fail with EOVERFLOW.
	* libio/ioftell.c (_IO_ftell): Likewise.
	* libio/iofgetpos.c (_IO_new_fgetpos): Likewise.

	* login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
	use a temporary timeval on the stack for gettimeofday and copy it.
	* login/logout.c (logout): Likewise.
	Reported by Steven Munroe <sjmunroe@us.ibm.com>.

	* sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
	Use __SWORD_TYPE instead of int for member types.
	(struct statfs64): Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
	* sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
	* sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.

	* sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
	* sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
	(ST_NODIRATIME): Restore fixed value of 2048.
	* sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.

	Rearranged <bits/types.h> definitions to reduce duplication.
	* sysdeps/generic/bits/types.h: Rewritten, using macros from
	<bits/wordsize.h> and new header <bits/typesizes.h>.
	* posix/Makefile (headers): Add bits/typesizes.h here.
	* sysdeps/generic/bits/typesizes.h: New file.
	* sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
	* sysdeps/mach/hurd/bits/typesizes.h: New file.
	* sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
	* posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
	<bits/pthreadtypes.h> here, not in <bits/types.h>.
	* signal/signal.h: Likewise.

	* streams/stropts.h: Include <bits/xtitypes.h>.
	* streams/Makefile (headers): Add bits/xtitypes.h here.
	* sysdeps/generic/bits/xtitypes.h: New file.
	* sysdeps/s390/bits/xtitypes.h: New file.
	* sysdeps/ia64/bits/xtitypes.h: New file.
	* sysdeps/x86_64/bits/xtitypes.h: New file.

	* sysvipc/Makefile (headers): Add bits/ipctypes.h here.
	* sysdeps/generic/bits/ipctypes.h: New file.
	* sysdeps/mips/bits/ipctypes.h: New file.
	* sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
	* sysdeps/gnu/bits/msq.h: Likewise.
	* sysvipc/sys/ipc.h: Likewise.

2002-10-22  Roland McGrath  <roland@redhat.com>

	* sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): New member
	`_dl_tls_static_used'.
	(TLS_STATIC_MIN): New macro.
	* elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
	(CHECK_STATIC_TLS): Use it.
2002-10-23 23:50:19 +00:00
Ulrich Drepper 4bf21f2c71 Update.
2002-10-22  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-load.c (struct filebuf): For buf element to have the
	alignment of ElfXX_Ehdr since this is what will be stored in it.

2002-10-19  Art Haas  <ahaas@neosoft.com>
2002-10-23 06:19:14 +00:00
Roland McGrath bd6daf3b19 * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
into pointer to locrec_offset.
	(add_locale_to_archive): Adjust callers.  Free normalized_name right
	before returning, not immediately after add_locale, pass it to
	add_alias if not NULL instead of name.  Rename second normalized_name
	occurence to nnormalized_codeset_name.

2002-10-21  Andreas Schwab  <schwab@suse.de>

	* sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
	caller to EXTRA instead of execve, since the latter has a
	higher-priority implementation in linuxthreads.
2002-10-22 16:11:43 +00:00
Roland McGrath 3a0742f9ac * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
caller to EXTRA instead of execve, since the latter has a
	higher-priority implementation in linuxthreads.
2002-10-22 16:07:15 +00:00
Roland McGrath 5e922099c6 * locale/programs/locarchive.c (enlarge_archive): Make sure
string_size is always a multiple of 4.
	Reported by Andreas Schwab <schwab@suse.de>.
2002-10-22 15:50:12 +00:00
Roland McGrath 8265947da0 * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
slotinfo list's len member to the proper size, not just 1.
	Initialize static_map.l_tls_initimage.

	* elf/dl-open.c (dl_open_worker): Fix loop searching for
	dtv_slotinfo_list element containing new modules' l_tls_modid.

	* elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
	* elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
	* elf/Makefile (tests): Add tst-tls9.
	(tests-static): Add tst-tls9-static.
	(tst-tls9-static-ENV): New variable.
	($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.

	* elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
	modids used by partially loaded modules being closed can't be known.
2002-10-22 06:22:53 +00:00
Ulrich Drepper 82bbb29edd Update.
2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/Makefile: Add a test case for the bug reported by Aharon
	Robbins <arnold@skeeve.com>.
	* posix/bug-regex13.c: New file.
	* posix/regcomp.c (peek_token_bracket): Skip the byte already read.

2002-10-21  Ulrich Drepper  <drepper@redhat.com>

	* csu/gmon-start.c: Pretty printing.

	* configure.in: Replace obsolete AC_OUTPUT syntax with
	AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
	* aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
	* configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
	* sysdeps/alpha/elf/configure.in: Likewise.
	* sysdeps/i386/elf/configure.in: Likewise.
	* sysdeps/mach/hurd/configure.in: Likewise.
	* sysdeps/x86_64/elf/configure.in: Likewise.
	* sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
	* sysdeps/generic/configure.in: Likewise.
	* sysdeps/i386/elf/configure.in: Likewise.
	* sysdeps/ia64/elf/configure.in: Likewise.
	* sysdeps/mach/configure.in: Likewise.
	* sysdeps/mach/hurd/configure.in: Likewise.
	* sysdeps/unix/configure.in: Likewise.
	* sysdeps/unix/common/configure.in: Likewise.
	* sysdeps/unix/sysv/aix/configure.in: Likewise.
	* sysdeps/unix/sysv/linux/configure.in: Likewise.
	* sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
	* sysdeps/x86_64/elf/configure.in: Likewise.
2002-10-21 18:19:01 +00:00
Roland McGrath 6b7f618334 2002-10-19 Art Haas <ahaas@neosoft.com>
* configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
	add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
	add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
	* configure: Regenerated.
2002-10-20 00:21:33 +00:00
Roland McGrath a1ceed7aa2 * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
and then set $subdirs directly, because the new Autoconf breaks
	compatibility in every way imaginable and insists on whining
	about usage that worked since the dawn of time.
	* configure: Regenerated.
2002-10-19 20:51:15 +00:00
Roland McGrath f4b07664fb * configure: Regenerated (using Autoconf 2.54).
* sysdeps/alpha/elf/configure: Likewise.
	* sysdeps/generic/configure: Likewise.
	* sysdeps/i386/elf/configure: Likewise.
	* sysdeps/ia64/elf/configure: Likewise.
	* sysdeps/mach/hurd/configure: Likewise.
	* sysdeps/mach/configure: Likewise.
	* sysdeps/unix/configure: Likewise.
	* sysdeps/unix/common/configure: Likewise.
	* sysdeps/unix/sysv/aix/configure: Likewise.
	* sysdeps/unix/sysv/linux/configure: Likewise.
	* sysdeps/unix/sysv/linux/mips/configure: Likewise.
	* sysdeps/x86_64/elf/configure: Likewise.

	* config.make.in: Nix completely-soft nonsense.
	* configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
	of machine directories instead of fpu subdirectory.
	* sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
	* sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
	* sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
	* sysdeps/powerpc/nofpu/sim-full.c: ... here.
	* sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
	* sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
	* sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
	* sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
	* sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
	* sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
	* sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
	* sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
	* sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
	* sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
	* sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
	* sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
	* sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
	* sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
	* sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
	* sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
	* sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
	* sysdeps/powerpc/nofpu/fegetenv.c: ... here.
	* sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
	* sysdeps/powerpc/nofpu/fesetenv.c: ... here.
	* sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
	* sysdeps/powerpc/nofpu/fegetround.c: ... here.
	* sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
	* sysdeps/powerpc/nofpu/fesetround.c: ... here.
	* sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
	* sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
	* sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
	* sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
	* sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
	* sysdeps/powerpc/nofpu/fenv_const.c: ... here.
	* sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
	* sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
	* sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
	* sysdeps/powerpc/nofpu/soft-supp.h: ... here.
	* sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
	* sysdeps/powerpc/nofpu/Versions: ... here, new file.

2002-10-19  Bruno Haible  <bruno@clisp.org>

	* sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.

2002-10-18  Roland McGrath  <roland@redhat.com>

	* io/Makefile (routines): Add lchmod.
	* io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
	* sysdeps/generic/lchmod.c: New file.
	* sysdeps/mach/hurd/lchmod.c: New file.
	* io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
2002-10-19 20:07:18 +00:00
Roland McGrath 0b4ee387e5 * configure.in: Remove remaining AC_FD_CC macros, and replace
AC_FD_MSG with AS_MESSAGE_FD.
2002-10-19 00:23:55 +00:00
Roland McGrath 82f3f07d7a * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
typos: VALUE -> FINALADDR.
2002-10-18 22:37:42 +00:00
Roland McGrath c118d63419 * configure.in: Replace obsolete AC_OUTPUT syntax with
AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
2002-10-18 22:17:48 +00:00
Roland McGrath 45fba3dfbb * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
(inline_syscall_clobbers, inline_syscall0, inline_syscall1)
	(inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
	(inline_syscall6): Move these macros ...
	* sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.

        * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
	_AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
2002-10-18 22:16:45 +00:00
Roland McGrath 0cfeb093c1 * configure.in (libc_link_dests, libc_link_sources): Remove these
variables and the AC_LINK_FILES call.

	* sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
	change to put new symbols here instead of in GLIBC_2.2.
	* sysdeps/powerpc/Subdirs: Move this file ...
	* sysdeps/powerpc/soft-fp/Subdirs: ... here.
2002-10-18 20:55:03 +00:00
Roland McGrath 3fc6935a15 * sysdeps/generic/bits/time.h: Replaced with contents of the
sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
	files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
	and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
	macros is ok even for architectures that don't now implement them.
	* sysdeps/mach/hurd/bits/time.h: File removed.
	* sysdeps/unix/sysv/linux/bits/time.h: File removed.
	* sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
2002-10-18 20:36:01 +00:00
Roland McGrath c2f55635da * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
* sysdeps/alpha/elf/configure.in: Likewise.
        * sysdeps/i386/elf/configure.in: Likewise.
        * sysdeps/mach/hurd/configure.in: Likewise.
        * sysdeps/x86_64/elf/configure.in: Likewise.
2002-10-18 20:28:09 +00:00
Roland McGrath 5d77b1da2b * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax. 2002-10-18 20:08:31 +00:00
Roland McGrath e21c057f16 2002-10-18 Jeff Bailey <jbailey@gnu.org>
* sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
        * sysdeps/generic/configure.in: Likewise.
        * sysdeps/i386/elf/configure.in: Likewise.
        * sysdeps/ia64/elf/configure.in: Likewise.
        * sysdeps/mach/configure.in: Likewise.
        * sysdeps/mach/hurd/configure.in: Likewise.
        * sysdeps/unix/configure.in: Likewise.
        * sysdeps/unix/common/configure.in: Likewise.
        * sysdeps/unix/sysv/aix/configure.in: Likewise.
        * sysdeps/unix/sysv/linux/configure.in: Likewise.
        * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
        * sysdeps/x86_64/elf/configure.in: Likewise.
2002-10-18 19:38:06 +00:00
Roland McGrath 52a0d149c9 * aclocal.m4: Use just the bits from AS_INIT that are needed for the
GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
	that it's obvious when extra autoconf machinery is being dragged in.
2002-10-18 19:18:49 +00:00
Roland McGrath 667bea233a * configure.in: Remove bogus echo included in
2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
	* configure: Regenerated.
2002-10-18 19:09:06 +00:00
Roland McGrath 69c708edbc * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
(statfs_filesize_max): New function.
	* sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
	JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
	ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
	* sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
	statfs_filesize_max.
	* sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
	* sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
2002-10-18 19:03:55 +00:00
Ulrich Drepper 8dd8681f4a Update.
* sysdeps/powerpc/soft-fp/soft-supp.h: New file.
2002-10-18 05:05:55 +00:00
Roland McGrath 2d37ce0f61 * configure.in (MIG): Just AC_SUBST it here.
* configure: Regenerated.
	* sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
	Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
	* sysdeps/mach/configure: Regenerated.

	* aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
	and AC_PROVIDE([_AS_CR_PREPARE]).
2002-10-18 01:49:07 +00:00
Roland McGrath b9cb349fb4 * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).

	* elf/dl-support.c: Move _dl_tls_* variables to ...
	* sysdeps/generic/libc-tls.c: ... here.

	* elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
	allow IDX to be one past the current last slotinfo entry.
	(_dl_close): Pass IMAP->l_init_called for that parameter.
2002-10-18 01:13:06 +00:00
Ulrich Drepper 3a12e572f7 Update.
2002-10-07  Andreas Schwab  <schwab@suse.de>

	* aclocal.m4: Fix for autoconf 2.53.
	* configure.in: Likewise.  Require autoconf 2.53.
2002-10-17 23:48:55 +00:00
Ulrich Drepper 1a8aaf919d Update.
2002-10-08  Richard Henderson  <rth@redhat.com>

	* soft-fp/op-4.h: Handle carry correctly in
	__FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
	__FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
	* soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.

2002-10-08  Aldy Hernandez  <aldyh@redhat.com>

	* configure.in: Compute completely-soft.
	* config.make.in: Make completely-soft available to sub-makes.
	* sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
	gcc-double-routines.  Add sim-full.c.  Add fenv_const and
	fe_nomask to libm-support.
	* sysdeps/powerpc/soft-fp/sim-full.c: New file.
	* sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
	* sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
	* sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
	* sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
	* sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
	* sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
	* sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
	* sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
	* sysdeps/powerpc/soft-fp/fegetenv.c: New file.
	* sysdeps/powerpc/soft-fp/fesetenv.c: New file.
	* sysdeps/powerpc/soft-fp/fegetround.c: New file.
	* sysdeps/powerpc/soft-fp/fesetround.c: New file.
	* sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
	* sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
	* sysdeps/powerpc/soft-fp/fenv_const.c: New file.
	* sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
	* sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
	symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
	__sim_round_mode.
	* sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
	* sysdeps/powerpc/soft-float/sfp-machine.h: Define
	FP_HANDLE_EXCEPTIONS.
	Define FP_ROUNDMODE.
	Redefine FP_* macros to correspond to the FE_* bit positions.
	Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
	Define externs for __sim_exceptions, __sim_disabled_exceptions,
	__sim_round_mode, __simulate_exceptions.
	* sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
	* sysdeps/powerpc/bits/fenv.h: ...to here.

2002-10-06  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
	Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
	Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
	R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
	__builtin_expect.
2002-10-17 23:16:26 +00:00
Roland McGrath 9bc70575ab * configure.in: Grok --without-__thread and disable HAVE___THREAD.
* configure: Regenerated.
2002-10-17 22:07:42 +00:00
Ulrich Drepper 0420d8885a Update.
2002-10-15  Jakub Jelinek  <jakub@redhat.com>

	* include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
	__libc_res_nsend): New prototypes.
	* resolv/res_query.c (QUERYSIZE): Define.
	(__libc_res_nquery): Renamed from res_nquery.  Added answerp
	argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
	fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
	res_nsend, pass answerp.
	(res_nquery): Changed into wrapper around __libc_res_nquery.
	(__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
	argument.  Call __libc_res_nquerydomain and __libc_res_nquery
	instead of the non-__libc_ variants, pass them answerp.
	(res_nsearch): Changed into wrapper around __libc_res_nsearch.
	(__libc_res_nquerydomain): Renamed from res_nquerydomain.
	Added answerp argument.  Call __libc_res_nquery instead of
	res_nquery, pass answerp.
	(res_nquerydomain): Changed into wrapper around
	__libc_res_nquerydomain.
	* resolv/res_send.c: Include sys/ioctl.h.
	(MAXPACKET): Define.
	(send_vc): Change arguments.  Reallocate answer buffer if it is
	too small.
	(send_dg): Likewise.
	(__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
	Reallocate answer buffer if it is too small and hooks are in use.
	Adjust calls to send_vc and send_dg.
	(res_nsend): Changed into wrapper around __libc_res_nsend.
	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
	just 1K answer buffer on the stack, use __libc_res_nsearch instead
	of res_nsearch.
	(_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
	* resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
	(_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
	* resolv/gethnamaddr.c (gethostbyname2): Likewise.
	(gethostbyaddr): Similarly with __libc_res_nquery.
	* resolv/Versions (libresolv): Export __libc_res_nquery and
	__libc_res_nsearch at GLIBC_PRIVATE.
2002-10-17 21:51:21 +00:00
Roland McGrath cc1d894161 before performing the reloc, not after. 2002-10-17 19:51:49 +00:00
Roland McGrath bc5bc2de6c * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
before performing the reloc, not before.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
2002-10-17 19:44:20 +00:00
Ulrich Drepper 2e2dc1a558 Update.
2002-10-17  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
	* locale/programs/linereader.c (lr_open): Likewise.
	* locale/programs/charmap-dir.c (charmap_open): Likewise.
	* locale/programs/locarchive.c (add_locale_to_archive): Likewise.
2002-10-17 18:04:06 +00:00
Ulrich Drepper 5be7fe9ce9 Update.
2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/bug-regex11.c: Add a test case for the bug reported by
	Paolo Bonzini <bonzini@gnu.org>.
	* posix/regexec.c (sift_states_bkref): Use correct destination of
	the back reference.
2002-10-17 17:16:53 +00:00
Roland McGrath 2430d57a13 * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
* elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
	to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
	* sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
	Call it after performing TPOFF relocs.
	* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
	* elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).

	* elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
	when closing a partially-initialized object.

	* elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
	instead of _dl_fatal_printf when we see PT_TLS.
2002-10-17 12:10:17 +00:00
Roland McGrath d29724f870 * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
instead of $(libof-$<).
2002-10-17 09:16:52 +00:00
Roland McGrath 0a951d0e31 * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
instead of += to append, to be sure $(lib) gets expanded at defn time.
	(libof-$(cpp-src)): New variable, define this instead.
	* extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
	(lib): Don't use override.
	(CPPFLAGS-$(lib)): New variable, put -D's here.
	* Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
	Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
	LIB found by $(libof-*) for basename, target, or source.
	* Makerules (CPPFLAGS-nonlib): New variable.
	* nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
	* locale/Makefile (lib): Likewise.
	* sunrpc/Makefile (lib): Likewise.

	* sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
	* sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
	* sysdeps/unix/sysv/linux/pathconf.h: New file.
	(statfs_link_max): New function, guts from fpathconf.c.
	* sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
	* sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
	* sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
	to use the linux/pathconf.c code by #include rather than duplication.
	* sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.

2002-10-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
	Use __libc_errno only for libc itself.
2002-10-16 22:09:55 +00:00
Andreas Jaeger e72bba28cc Update.
2002-10-16  Andreas Jaeger  <aj@suse.de>

	* sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
2002-10-16 10:09:14 +00:00
Ulrich Drepper ac2dc59886 Update.
2002-10-16  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
	Use __libc_errno only for libc itself.
2002-10-16 08:57:50 +00:00
Ulrich Drepper 885bc0246b Update.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
	Define for 2.4+ kernels.

	* sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
	are known to have the vfork syscall.  Don't confuse the CPUs
	branch prediction unit by jumping to the return address.
2002-10-16 04:42:33 +00:00
Roland McGrath e3ea7124d7 typo
and call __libc_utmp_jump_table functions directly, instead of using
2002-10-16 03:09:12 +00:00
Roland McGrath abe7b661ff Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/Makefile
	($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
	sparc/Makefile to produce a bi-arch file as needed.
	That's now parameterized by the variable $(64bit-predefine).
	Use LC_ALL=C for `comm' commands in that rule.
	No longer conditional on [$(no_syscall_list_h)].
	* sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
	(64bit-predefine): New variable.
	* sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/Makefile: New file.
	* sysdeps/unix/sysv/linux/powerpc/Makefile
	(64bit-predefine): New variable.

2002-10-15  Roland McGrath  <roland@redhat.com>

	* sysdeps/unix/sysv/linux/Makefile
	($(objpfx)syscall-%.h $(objpfx)syscall-%.d)

	* login/utmp-private.h: Declare __libc_utmp_lock.
	* sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
	call __libc_utmp_jump_table functions directly, instead of using
	__setutent et al.

	* sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
	* sysdeps/unix/sysv/linux/configure: Regenerated.
2002-10-16 03:03:00 +00:00
Roland McGrath c55dca8d85 * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
(struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
	Use int32_t for ll_time.
	(struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
	Use int32_t instead of long int for ut_session.
	Use an anonymous struct with 32-bit fields for ut_tv.
	* sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
	(struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
	here as in utmp.h for `struct utmp'.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.

	* sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
	of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
	All the following files were identical or equivalent to it.
	* sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.

	* sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
	instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
	Other than the previously incorrect sign of msg_iovlen, this is a
	no-op on 32-bit platforms.  On 64-bit platforms it makes this header
	match their layouts as well, so the following are now identical to it.
	* sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
	* sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
2002-10-16 01:03:05 +00:00
Ulrich Drepper 7d1ed880a3 Update.
2002-10-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
	support for reiserfs and xfs.

	* sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
	XFS link count.
	* sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
	and XFS_LINK_MAX.
	Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
2002-10-16 00:38:29 +00:00
Roland McGrath 97d3e6d8af * include/libc-symbols.h (attribute_tls_model_ie): Define.
* include/errno.h (errno): Define to __libc_errno in libc.so.
	Add attribute_tls_model_ie.
	* include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
	Add attribute_tls_model_ie.
	* include/resolv.h (_res): Define to __libc_res in libc.so.  Add
	attribute_tls_model_ie.
	* inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
	(h_errno): Define.
	* resolv/res_libc.c (__libc_res): Add hidden alias to _res.
	(_res): Define.
	* sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
	attribute_tls_model_ie.
	* sysdeps/generic/errno-loc.c (errno): Only undefine if not using
	__thread.
	* sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
	__libc_errno in USE___THREAD case.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
	Likewise.
	* configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
	__attribute__((tls_model (""))).
	* configure: Rebuilt.
	* config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
2002-10-15 22:51:03 +00:00
Ulrich Drepper 146a03db89 Update.
2002-10-15  Ulrich Drepper  <drepper@redhat.com>

	* timezone/asia: Update from tzdata2002d.
	* timezone/australasia: Likewise.
	* timezone/iso3166.tab: Likewise.
	* timezone/southamerica: Likewise.
	* timezone/zone-tab: Likewise.
2002-10-15 18:27:23 +00:00
Roland McGrath 9cbc282304 * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
Adjust TCB pointer before calling free, so we get the whole block.

2002-10-14  Roland McGrath  <roland@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sigaction.c
	[HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
	extern using attribute_hidden instead of static, avoids warning.
2002-10-15 08:38:53 +00:00
Andreas Jaeger a89e49fd24 Update.
2002-10-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
	* sysdeps/unix/sysv/linux/configure: Rebuilt.
2002-10-15 07:37:36 +00:00
Ulrich Drepper 53dd081507 Update.
2002-10-14  Ulrich Drepper  <drepper@redhat.com>

	* po/sv.po: Update from translation team.
2002-10-14 20:04:25 +00:00
Ulrich Drepper 89b91a9265 Update.
2002-10-12  H.J. Lu  <hjl@gnu.org>

	* sunrpc/thrsvc.c (PROCQUIT): New.
	(struct rpc_arg): New.
	(dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
	(test_one_call): Take struct rpc_arg * instead of CLIENT *c.
	(thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
	(main): Modified for struct rpc_arg *.

2002-10-14  Ulrich Drepper  <drepper@redhat.com>

	* dirent/scandir.c: Rearrange code a bit to reduce binary size.

2002-10-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
	(SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
	in ld.so even if __thread is supported.

2002-10-13  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
	Add hack to prevent the compiler from clobbering the signal context.
	* sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
	Likewise.
	* sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
	Likewise.
2002-10-14 18:10:15 +00:00
Andreas Jaeger 4083e0ec25 * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
Guido Guenther <agx@sigxcpu.org>.
2002-10-14 08:59:13 +00:00
Ulrich Drepper d369b3bda2 Update.
2002-10-14  Ulrich Drepper  <drepper@redhat.com>

	* po/sk.po: Update from translation team.
2002-10-14 08:29:45 +00:00
Roland McGrath 27af537248 * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
dynamic string tag.
	* elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
	DL_DST_LIB based on $(slibdir).
2002-10-14 01:06:59 +00:00
Roland McGrath 747bf98ea9 * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
* sysdeps/mach/hurd/getresuid.c: New file.
	* sysdeps/mach/hurd/getresgid.c: New file.
	* sysdeps/mach/hurd/setresuid.c: New file.
	* sysdeps/mach/hurd/setresgid.c: New file.

	* posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
	setresgid): Declare them.
	* NEWS: Mention it.
	* include/unistd.h
	(__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
	add libc_hidden_proto.
	* posix/Versions (libc: GLIBC_2.3.2): New set.  Add
	getresuid, getresgid, setresuid, setresgid here.
	* Versions.def (libc): Define GLIBC_2.3.2 set.
	* sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
	Add libc_hidden_def.
	* sysdeps/generic/getresgid.c (__getresgid): Likewise.
	* sysdeps/generic/setresgid.c: New file.
	* sysdeps/generic/setresuid.c: New file.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add getresuid and getresgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
	(sysdep_routines): Don't add setresuid and setresgid here.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* posix/Makefile (routines): Add them all here instead.
	* sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
	__getresuid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
	__getresgid.  Add libc_hidden_def for that, and weak alias to old name.
	* sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
	__setresgid.  Add libc_hidden_def for that, and weak alias to old name.
	[! __NR_setresuid]: Include generic file.
	* sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
	Caller is - now, not EXTRA.
	* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
	(setresuid, setresgid, getresuid, getresgid): Likewise.
	* sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
	Add these calls here.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.

	* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
	(sysdep_routines): Add setfsuid and setfsgid here.
	* sysdeps/unix/sysv/linux/arm/Makefile: Not here.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.

	* hurd/errno.c: Renamed to ...
	* hurd/errno-loc.c: ... this.
	* hurd/Makefile (routines): errno -> errno-loc
2002-10-14 01:03:16 +00:00
Ulrich Drepper 1cb224d220 Update.
* po/de.po: Update from translation team.
2002-10-13 17:02:27 +00:00
Ulrich Drepper 88ee92edc4 Update.
2002-10-13  Ulrich Drepper  <drepper@redhat.com>

	* MakeTAGS: Add -E flag to xgettext runs.
2002-10-13 08:42:30 +00:00
Ulrich Drepper e5b3c9c68a Update.
* po/fr.po: Update from translation team.
2002-10-13 02:06:44 +00:00
Ulrich Drepper 4846648111 Update.
2002-10-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
	Optimize a bit for use in glibc.
2002-10-12 20:24:52 +00:00
Roland McGrath 75b04e6c0b * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
2002-10-12 18:45:29 +00:00
Ulrich Drepper 5b2c50af0b Update.
2002-10-12  Ulrich Drepper  <drepper@redhat.com>

	* po/sv.po: Update from translation team.
2002-10-12 16:30:18 +00:00
Ulrich Drepper 485d775dd5 Update.
2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
	OP_CONTEXT_NODE.
	(regfree): Likewise.
	(create_initial_state): Likewise.
	(analyze): Remove the substitutions which became useless.
	(calc_first): Likewise.
	(calc_epsdest): Use edests of OP_BACK_REF in case that it has
	epsilon destination.
	(duplicate_node_closure): New function.
	(duplicate_node): Remove the handling OP_CONTEXT_NODE.
	(calc_inveclosure): Likewise.
	(calc_eclosure): Likewise.
	(calc_eclosure_iter): Invoke duplicate_node_closure instead of
	direct invocation of duplicate_node.
	(parse): Don't use comma operator in the return to avoid compiler
	warning.
	(parse_reg_exp): Likewise.
	(parse_branch): Likewise.
	(parse_expression): Likewise.
	(parse_sub_exp): Likewise.
	(parse_dup_op): Likewise.
	* posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
	which became useless.
	(create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
	(create_cd_newstate): Likewise.
	* posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
	(re_token_t): Likewise.
	(re_dfa_t): Likewise.
	(re_node_set_remove): New macro.
	* posix/regexec.c (check_matching): Remove the handling
	OP_CONTEXT_NODE.
	(check_halt_node_context): Likewise.
	(proceed_next_node): Likewise.
	(pop_fail_stack): Fix the memory leak.
	(set_regs): Likewise.
	(free_fail_stack_return): New function.
	(sift_states_backward): Fix the memory leak.  Remove the handling
	OP_CONTEXT_NODE.
	(update_cur_sifted_state): Append some if clause to avoid redundant
	call.
	(sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
	back reference.
	(check_dst_limits): Remove the handling OP_CONTEXT_NODE.
	(check_subexp_limits): Likewise.
	(search_subexp): Likewise.
	(sift_states_bkref): Likewise.
	(transit_state_mb): Likewise.
	(transit_state_bkref_loop): Likewise.
	(transit_state_bkref_loop): Likewise.
	(group_nodes_into_DFAstates): Likewise.
	(check_node_accept): Likewise.
	(sift_ctx_init): Add initializing.

2002-10-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
	__builtin_expect.
2002-10-12 08:34:26 +00:00
Ulrich Drepper cc12f2a442 Update.
* elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
	duplicated variable c.

	* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
	if possible.
	Add hack to prevent the compiler from clobbering the signal context.
2002-10-12 06:34:56 +00:00
Ulrich Drepper f44476711d Update.
* sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use
	INTERNAL_SYSCALL is possible.

	* sysdeps/unix/sysv/linux/i386/sysdep.h
	(INTERNAL_SYSCALL_ERROR_P): New define.
	(INTERNAL_SYSCALL_ERRNO): Likewise.
2002-10-12 00:49:44 +00:00
Ulrich Drepper eb9f749186 Update.
2002-10-11  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
	Add hack to prevent the compiler from clobbering the signal
	context.
2002-10-11 19:00:09 +00:00
Roland McGrath 5232c93914 * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
Fix typos.
2002-10-11 12:54:53 +00:00
Roland McGrath f04125597e * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
* sysdeps/sh/dl-lookupcfg.h: File removed.
	* sysdeps/i386/dl-lookupcfg.h: File removed.
2002-10-11 12:19:55 +00:00
Roland McGrath 1077a5f2d3 * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
missing labels and ; from last change.
2002-10-11 12:03:29 +00:00
Roland McGrath 3021e36d98 * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
number literals, so they are doubles instead of ints.
2002-10-11 10:55:33 +00:00
Roland McGrath ce460d04a5 * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
changed from [USE_TLS && HAVE___THREAD].

	* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
	Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
	* sysdeps/x86_64/dl-machine.h
	(elf_machine_type_class, elf_machine_rela): Likewise.
	* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
	Likewise.

	* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
	* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
	(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].

	* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
	instead of ___tls_get_addr.
	(___tls_get_addr_internal): Add attribute_hidden to decl.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
	_dl_error_catch_tsd.
	* elf/rtld.c (startup_error_tsd): New function.
	(dl_main): Point _dl_error_catch_tsd at that.
	* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
	use new function pointer instead.
	* elf/dl-tsd.c: New file.
	* elf/Makefile (routines): Add it.

2002-10-07  Roland McGrath  <roland@redhat.com>

	* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
	writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
	take _dl_load_lock around calling __writev.

	* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
	(INLINE_SYSCALL): Use that.

	* sysdeps/generic/dl-sysdep.h: New file.
	* sysdeps/mach/hurd/dl-sysdep.h: New file.
	* sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
	* include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
	[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
	access it directly.
	* elf/dl-minimal.c (__errno_location): Removed.
	* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use GOTOFF access for errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use PC-relative access for errno.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* include/tls.h: New file.
	(USE___THREAD): New macro.
	Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
	libc or libpthread.
	* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
	changed from [USE_TLS && HAVE___THREAD].
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.
	* include/errno.h: Likewise.
	* include/netdb.h: Likewise.
	* include/resolv.h: Likewise.

	* sysdeps/generic/errno.c: New file.
	* csu/Makefile (aux): New variable, list errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
	* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
	* sysdeps/unix/alpha/sysdep.S: Likewise.
	* sysdeps/generic/start.c: Likewise.
	* sysdeps/unix/start.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.

	* manual/search.texi (Tree Search Function, Hash Search Function):
	Mention search.h clearly.

2002-10-05  Roland McGrath  <roland@redhat.com>

	* elf/dl-fxstat64.c: File removed.
	* elf/dl-xstat64.c: File removed.
	* elf/Makefile (rtld-routines): Remove them.
	* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
	Instead, use strong_alias instead of versioned_symbol in the
	!SHLIB_COMPAT case.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.

	* include/shlib-compat.h
	(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
	[! NOT_IN_libc] (IS_IN_libc): Define it.
	* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
	* elf/Makefile (CPPFLAGS-.os): Likewise.

	* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
	Return the status instead of calling exit.

	* Makeconfig (CFLAGS): Prepend -std=gnu99.
	* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
	Remove superfluous rm command, whose @ plus make bugs hid
	all these commands from the make output.

	* include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
	* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
	Use that file's contents instead of literal echo's for the prologue.
	* include/features.h: Include <gnu/stubs.h> unconditionally.
	* include/gnu/stubs.h: New file.

2002-09-30  Roland McGrath  <roland@redhat.com>

	* elf/rtld-Rules: New file.
	* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
	$(objpfx)rtld-libc.a): New targets.
	(generated): Add them.
	(reloc-link): Remove -o $@ from the variable.
	($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
	(distribute): Add rtld-Rules.
	(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
	(common-mostlyclean, common-clean): Clean up rtld-* files.
	* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
2002-10-11 10:52:20 +00:00
Ulrich Drepper 894282753f Update.
* sysdeps/unix/sysv/linux/execve.c: Don't try calling
	__pthread_kill_other_threads_np.

	* sysdeps/ia64/memset.S: Likewise.
	* sysdeps/ia64/memcpy.S: Likewise.
2002-10-11 10:01:36 +00:00
Roland McGrath 2a4f7d66b9 * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.

	* elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
	proper set of no-op insn prefixes.

	* elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
2002-10-11 09:18:04 +00:00
Ulrich Drepper ef43f9d40d Update.
2002-10-11  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
2002-10-11 07:58:32 +00:00
Roland McGrath 679e4c434f * locale/newlocale.c (__newlocale): If setting all categories to "C",
just return &_nl_C_locobj instead of copying it.
	* locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
	* locale/duplocale.c (__duplocale): Likewise.

2002-10-07  Roland McGrath  <roland@frob.com>

	* config.h.in (HAVE_I386_SET_GDT): New #undef.
	* sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
	* sysdeps/mach/configure: Regenerated.

2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
	Add all necessary register outputs for syscall-clobbered registers.

2002-10-02  David Mosberger  <davidm@hpl.hp.com>

	* sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
	Itanium 2 (and Itanium).
	Fix unwind directives and make it fit in 80 columns.
	* sysdeps/ia64/memset.S: Ditto.
	* sysdeps/ia64/memcpy.S: Ditto.
	Move jump table to .rodata section.

2002-10-03  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
	clobbers to asm.
2002-10-11 07:22:18 +00:00
Andreas Jaeger 19f342efe6 * sysdeps/x86_64/_mcount.S: Restore correct registers. 2002-10-10 12:20:26 +00:00
Ulrich Drepper ae352b440f Update.
2002-10-10  Ulrich Drepper  <drepper@redhat.com>

	* posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
2002-10-10 07:27:56 +00:00
Ulrich Drepper 209a8ca3fc Update.
* sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
	_dl_allocate_tls_init.  Add rtld_hidden_proto.
	* sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
	rtld_hidden_def.
	* elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
2002-10-10 06:47:09 +00:00
Ulrich Drepper d0883b4894 Update.
* Make-dist: Add back one of the tar invocations removed before.

	* stdlib/Makefile (distribute): Add allocalim.h.
2002-10-10 00:42:24 +00:00
Ulrich Drepper 3459388894 Update.
* version.h (VERSION): Bump to 2.3.1.

	Patch by Stefan Jones <stefan.jones@multigig.com>.
2002-10-09 23:39:33 +00:00
Ulrich Drepper 89c167606d Update.
* sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
	(__libc_tsd_address): Use correct variable name.
	Patch by sStefan Jones <tefan.jones@multigig.com>.
2002-10-09 18:21:41 +00:00
Ulrich Drepper d3c79d4ae7 Update.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
	Reported by edwardsg@sgi.com [PR libc/4678].
2002-10-09 09:58:30 +00:00