Commit Graph

187 Commits

Author SHA1 Message Date
Ulrich Drepper
be4b5a9555 Update.
* elf/dl-lookup.c: Only define or handle _dl_num_relocations for the
	SHARED version.
	* elf/dl-reloc.c: Likewise for _dl_num_cache_relocations.
2002-01-29 23:20:28 +00:00
Ulrich Drepper
32e6df3621 Update.
2001-12-11  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile (dl-routines): Add conflict.
	(rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove.
	(ld.so): Add _begin local symbol.
	* elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM):
	Define.
	* elf/dl-deps.c (_dl_build_local_scope): New.
	(_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes
	of all libraries.
	* elf/do-rel.h (VALIDX): Define.
	(elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do
	lazy binding for RELA.  If DT_GNU_PRELINKED, DT_RELACOUNT relocations
	can be skipped.
	* elf/dl-conflict.c: New file.
	* elf/dl-lookup.c (_dl_debug_bindings): New.
	(_dl_lookup_symbol): Use _dl_debug_bindings.  Reference_name is always
	non-NULL.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined,
	define to ElfW(Rel).
	* elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic
	tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI
	ranges.
	Don't adjust address dynamic tags if l_addr is 0.
	* elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables.
	(_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked.
	(VALIDX, ADDRIDX): Define.
	(_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end.
	(dl_main): Print library list for LD_TRACE_PRELINKING.
	If prelinking information can be used, skip relocating libraries and
	call _dl_resolve_conflicts instead.
	(process_envvars): Handle LD_TRACE_PRELINKING envvar.
	* elf/dl-load.c (_dl_map_object): Don't create fake libs
	if LD_TRACE_PRELINKING.
	* include/link.h (struct link_map) [l_info]: Add DT_VALNUM
	+ DT_ADDRNUM.
	* sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration.
	(DL_DEBUG_PRELINK): Define.
	(_dl_resolve_conflicts): Add prototype.

	* sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize
	.plt for prelinked libraries where prelinking info cannot be used.
	(elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict
	section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map.
	* sysdeps/arm/bits/link.h: New file.
	* sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original
	content of .got[1].
	(ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
	(ELF_MACHINE_PLT_REL): Define.
	(elf_machine_rela, elf_machine_rela_relative): New.
	(elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
	* sysdeps/i386/bits/link.h: New file.
	* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original
	content of .got[1].
	(ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
	(ELF_MACHINE_PLT_REL): Define.
	(elf_machine_rela, elf_machine_rela_relative): New.
	(elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
	* sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating
	conflicts, skip finaladdr computation.  Use RESOLVE_CONFLICT_FIND_MAP
	to find out map for R_PPC_JMP_SLOT relocs.
	* sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define.
	(OPCODE_BA): Define.
	(elf_machine_runtime_setup): Reinitialize .plt for prelinked
	libraries where prelinking info cannot be used.
	(sparc_fixup_plt): Renamed from elf_machine_fixup_plt.
	(elf_machine_fixup_plt): Call sparc_fixup_plt.
	(elf_machine_rela): Set value to 0 if relocating conflicts.
	Call sparc_fixup_plt for R_SPARC_JMP_SLOT.
	* sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define.
	(sparc64_fixup_plt): Fix a typo.
	(elf_machine_rela): Set value to 0 if relocating conflicts.
	Handle R_SPARC_JMP_SLOT relocs when relocating conflicts.
	(elf_machine_runtime_setup): Reinitialize .plt for prelinked
	libraries where prelinking info cannot be used.
	* sysdeps/sh/bits/link.h: New file.
	* sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original
	content of .got[1].
	(elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
	* sysdeps/s390/s390-32/bits/link.h: New file.
	* sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup):
	Save original content of .got[1].
	(elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
	* sysdeps/s390/s390-64/bits/link.h: New file.
	* sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup):
	Save original content of .got[1].
	(elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
	* sysdeps/x86_64/bits/link.h: New file.
	* sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup):
	Save original content of .got[1].
	(elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead
	of adjusting it if prelinked and prelinking cannot be used.
2001-12-12 00:21:26 +00:00
Ulrich Drepper
84aafa9199 Update.
2001-09-07  Tom Rix  <trix@redhat.com>

	* sysdeps/unix/sysv/aix/sysv_termio.h: New file.

2001-08-26  Tom Rix  <trix@redhat.com>

	* sysdeps/unix/sysv/aix/Makefile (aix-syscalls.o): More linker
	command line options.
	* sysdeps/unix/sysv/aix/start.s: New file, rework of start.c
	* sysdeps/unix/sysv/aix/start.c: Removed.
	* sysdeps/unix/sysv/aix/start-libc.c: New file.
	* sysdeps/unix/sysv/aix/init-first.c: New file.
	* sysdeps/unix/sysv/aix/fcntl.c: Alias __libc_fcntl to __fcntl.

2001-09-08  Ben Collins  <bcollins@debian.org>

	* sysdeps/arm/dl-machine.h: Fix usage of new _dl_signal_error() format.
	* sysdeps/generic/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-fptr.c: Likewise.
	* sysdeps/ia64/dl-fptr.c: Likewise.
	* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-machine.c: Likewise.

2001-09-07  Ben Collins  <bcollins@debian.org>

	* sysdeps/sparc/sparc32/dl-machine.h: Fix typo.

	* sysdeps/hppa/dl-lookupcfg.h: Forward declare struct link_map.

	* elf/dl-lookup.c (add_dependency): Bump l_opencount of all
	dependencies if necessary.
2001-09-08 17:45:32 +00:00
Ulrich Drepper
c4bb124a75 Update.
2001-09-08  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): If object has no r_list (i.e., wasn't
	loaded directly) determine length if l_initfini list by iterating
	over its elements.  Minor optimizations.
	* elf/dl-deps.c (_dl_map_object_deps): Always add own map to l_initfini
	for dependency objects.
	If object was already loaded check whether any of the dependencies
	is already on the relocation dependency list.  If yes, remove the
	latter.  Minor optimizations.
	* elf/dl-lookup.c (add_dependency): Add check for self reference of
	maps here.  Search l_initfini list only if the object was loaded
	directly and not only as a dependency.
	(_dl_lookup_symbol): Add relocation dependency also if object
	is not in global scope.  Remove test for self-reference here.
	(_dl_lookup_versioned_symbol): Likewise.
	* elf/dl-object (_dl_new_object): Cleanup.  Initialize dont_free
	element of first name record.
	* elf/loadtest.c: Add some more test to recognize early if an object
	wasn't unloaded.
	* elf/Makefile: Add rules to build and run reldep5.
	* elf/reldep5.c: New file.
	* elf/reldepmod5.c: New file.
	* elf/reldepmod6.c: New file.

	* elf/reldep2.c: Fix typo.

	* elf/dl-object.c (_dl_new_object): Initialize l_scope and l_scope_max.
2001-09-08 16:27:08 +00:00
Ulrich Drepper
407fe3bbb3 Update.
2001-09-04  Ulrich Drepper  <drepper@redhat.com>

	Correct very misleading message for error in failed runtime relocation.
	* elf/dl-error.c (_dl_signal_error): Take extra parameter to describe
	place of the error.
	(_dl_signal_cerror): Likewise.
	* sysdeps/generic/ldsodefs.h: Adjust prototypes.
	* elf/dl-close.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-version.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
2001-09-05 03:42:43 +00:00
Ulrich Drepper
cf5a372ec1 Update.
2001-08-26  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-reloc.c (RESOLVE_MAP, RESOLVE): Use elf_machine_type_class
	instead of elf_machine_lookup_noexec_p and elf_machine_lookup_noplt_p.
	Pass type_class to _dl_lookup_*.
	* elf/dl-lookup.c (_dl_lookup_symbol): Take type_clas parameter now.
	Pass around just type_class instead of noexec, noplt pair.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_symbol_skip): Pass around just type_class instead of
	noexec, noplt pair.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	(_dl_do_lookup, _dl_do_lookup_versioned): Likewise.
	* elf/do-lookup.h (do_lookup): Likewise.
	* include/link.h (struct link_map): Replace noexec and noplt fields
	in l_lookup_cache with type_class field.
	* sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_PLT,
	ELF_RTYPE_CLASS_COPY): Define.
	Adjust prototypes for _dl_lookup_symbol and
	_dl_lookup_versioned_symbol.
	* sysdeps/alpha/dl-machine.h (elf_machine_lookup_noplt_p,
	elf_machine_lookup_noexec_p): Remove.
	(elf_machine_type_class): Define.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/cris/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
2001-08-26 22:28:16 +00:00
Ulrich Drepper
680254fe22 Update.
* include/link.h (struct link_map): Add l_lookup_cache element.
	* elf/dl-reloc.c (RESOLVE): Add symbol caching here.
	(RESOLVE_MAP): Likewise.
	(_dl_relocate_object): Remove cache initialization.
	* elf/dl-lookup.c: Rip out cache handling code.
	* sysdeps/generic/ldsodefs.h: Remove lookup_cache struct and variable
	declarations.

	* elf/dl-lookup.c (_dl_lookup_symbol): Reorder some conditions and
	remove some __builtin_expect.
	(_dl_lookup_versioned_symbol): Likewise.

	R_386_RELATIVE handling for ld.so startup.  Reduce RTLD_BOOTSTRAP
	case to almost no code.
2001-08-26 10:50:26 +00:00
Ulrich Drepper
c90b5d2838 (_dl_lookup_symbol): If we use the cache we don't have to compute the hash value and initialize current_value. Move reference_name variable to where it is needed. (_dl_lookup_versioned_symbol): Likewise. 2001-08-25 06:15:27 +00:00
Ulrich Drepper
647eb037f3 Update.
2001-08-23  Jakub Jelinek  <jakub@redhat.com>

	* elf/ldconfig.c (search_dir): Remove stale symlinks.

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

	* elf/dl-lookup.c (lookup_cache, lookup_cache_versioned): New.
	(_dl_lookup_symbol): Lookup relocations in cache and store successfull
	lookups in cache.
	(_dl_lookup_versioned_symbol): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object): Initialize cache for
	relocation lookup.
	* elf/rtld.c (print_statistics): Output _dl_num_cache_relocations.
	* sysdeps/generic/ldsodefs.h (struct lookup_cache): New definition.
	(lookup_cache, lookup_cache_versioned): Add declarations.

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

	* stdlib/tst-random.c (main): Swap parameters in fail call.
	Patch by Pete Bevin <pete@petebevin.com>.

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

	* sysdeps/generic/inttypes.h: Use __gwchar_t instead of __wchar_t.

	* malloc/obstack.c: Indent preprocessor directives.
	Patch by Jim Meyering <meyering@ascend.com>.
2001-08-23 23:36:47 +00:00
Roland McGrath
c12aa80156 * sysdeps/generic/ldsodefs.h (_dl_load_lock): Declare it here with
__libc_lock_define_recursive.
	* elf/dl-open.c: Don't declare it here any more.
	* elf/dl-close.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and
	__libc_lock_unlock_recursive.
	* elf/dl-close.c (_dl_close): Likewise
	* elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise
	* elf/dl-open.c (_dl_open): Likewise

	* sysdeps/generic/bits/libc-lock.h
	(__libc_lock_define_recursive): New macro.
	* sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it.
	(_IO_lock_lock): Use __libc_lock_lock_recursive.
	(_IO_lock_unlock): Use __libc_lock_unlock_recursive.
2001-08-23 06:03:42 +00:00
Andreas Jaeger
41bdb6e20c Update to LGPL v2.1.
2001-07-06  Paul Eggert  <eggert@twinsun.com>

	* manual/argp.texi: Remove ignored LGPL copyright notice; it's
	not appropriate for documentation anyway.
	* manual/libc-texinfo.sh: "Library General Public License" ->
	"Lesser General Public License".

2001-07-06  Andreas Jaeger  <aj@suse.de>

	* All files under GPL/LGPL version 2: Place under LGPL version
	2.1.
2001-07-06 04:58:11 +00:00
Ulrich Drepper
80d9c5f0b1 Update.
2001-05-18  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-lookup.c (PROTECTED): Remove defines.
	(add_dependency): Mark it with internal_function.
	(_dl_do_lookup, _dl_do_lookup_versioned): New functions.
	(_dl_lookup_symbol, _dl_lookup_symbol_skip,
	_dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip): Use
	it if we don't want do_lookup* inlined.

2001-05-18  Jakub Jelinek  <jakub@redhat.com>

	* include/link.h (struct r_scope_elem): Remove r_duplist and
	r_nduplist fields.
	* elf/dl-load.c (_dl_map_object_from_fd): Don't initialize them.
	* elf/dl-lookup.c (_dl_lookup_symbol_skip): Look in r_list, not
	r_duplist.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-deps.c (struct list): Remove dup field, rename unique to next.
	(_dl_map_object_deps): Don't compute duplicate list.

	* elf/dl-symbol.c: Removed.
	* elf/Makefile (routines): Remove dl-symbol.

2001-05-22  Ulrich Drepper  <drepper@redhat.com>

	* po/el.po: Update from translation team.
	* po/sv.po: Likewise.
2001-05-22 23:42:35 +00:00
Ulrich Drepper
35fc382add Update.
* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-machine.h: Likewise.
	* sysdeps/s390/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
2001-02-28 06:36:10 +00:00
Ulrich Drepper
62dcee574f Replace _dl_debug_* variables with _dl_debug_mask. 2001-02-27 09:34:31 +00:00
Ulrich Drepper
e30f2b9828 Update.
* elf/dl-lookup.c (add_dependency): Fix test to check whether
	dependency already exists.
	* elf/Makefile: Add testobj1 and testobj2 as dependencies of testobj6.
	* elf/loadtest.c (main): Add test at the end that everything is
	unloaded.

	* elf/dl-open.c (dl_open_worker): Fix typo in comment.
2000-10-25 04:00:08 +00:00
Andreas Jaeger
7bbaa3b260 (add_dependency): Remove unused variable j. 2000-10-24 11:17:45 +00:00
Ulrich Drepper
42c4f32a44 Update.
2000-10-24  Ulrich Drepper  <drepper@redhat.com>

	Complete revamp of the reference counter handling.
	* include/link.h (struct link_map): Add l_idx field.
	* elf/dl-close.c: Handle decrementing of reference counters more
	correctly. If necessary decrement reference counters of dependencies
	of dependencies.
	* elf/dl-lookup.c (add_dependency): Only increment reference counter
	of the object itself and not also its dependencies.
	* elf/dl-open.c: Increment reference counters here.
	* elf/dl-deps.c: Remove reference counter handling here.
	* elf/dl-load.c: Likewise.
	* elf/rtld.c: Adjust for _dl_map_deps not handling reference counters.

	* elf/loadtest.c: Print loaded objects at the beginning.
2000-10-24 07:36:55 +00:00
Ulrich Drepper
8699e7b1da Update.
* elf/dl-close.c: Decrement opencount for all dependencies which can
	be removed even if the object is not yet unloaded.
	* elf/dl-deps.c (_dl_map_object_deps): If dependency is already in
	the list decrement opencount of all dependencies.
	* elf/dl-load.c (_dl_map_object_from_fd): Increment object of object
	and all dependencies.
	(_dl_map_object): Likewise.
	* elf/dl-lookup.c (add_dependency): Likewise.

	* elf/loadtest.c: Add debug when with more output.
2000-10-21 06:02:49 +00:00
Ulrich Drepper
ea4d748699 (_dl_lookup_symbol_skip): Fix a typo. 2000-09-15 17:06:43 +00:00
Ulrich Drepper
2b7238dda8 Update.
2000-08-26  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (distribute): Add unloadmod.c, reldepmod1.c,
	reldepmod2.c, reldepmod3.c, and reldepmod4.c.
	(tests): Add unload, reldep, reldep2, and reldep3.
	(modules-names): Add unloadmod, reldepmod1, reldepmod2, reldepmod3,
	and reldepmod4.
	Add rules to build and run unload, reldep, reldep2, and reldep3.
	* elf/dl-lookup.c (_dl_lookup_symbol): Add new parameter explicit.
	Don't create relocation dependency if it is nonzero.
	(_dl_lookup_symbol_skip): Remove relocation dependency stuff.  This
	can never happen here.
	(_dl_lookup_versioned_symbol): Add new parameter explicit.
	Don't create relocation dependency if it is nonzero.
	(_dl_lookup_versioned_symbol_skip): Remove relocation dependency
	stuff.  This can never happen here.
	* sysdeps/generic/ldsodefs.h: Change prototypes.
	* elf/dl-reloc.c (RESOLVE_MAP): Pass 0 in explicit parameter to
	_dl_lookup_up and _dl_lookup_versioned_symbol.
	(RESOLV): Likewise.
	* elf/dl-runtime.c (fixup): Likewise.
	(profile_fixup): Likewise.
	* elf/dl-libc.c (do_dlsym): Pass 1 in explicit parameter to
	_dl_lookup_symbol.
	* elf/dl-symbol.c (_dl_symbol_value): Likewise.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-sym.c (_dl_sym): Pass 1 in explicit parameter to
	_dl_lookup_symbol if handle is not RTLD_DEFAULT.  Always compute
	and pass down the caller map.
	(_dl_vsym): Likewise.
	* elf/reldep.c: New file.
	* elf/reldep2.c: New file.
	* elf/reldep3.c: New file.
	* elf/reldepmod1.c: New file.
	* elf/reldepmod2.c: New file.
	* elf/reldepmod3.c: New file.
	* elf/reldepmod4.c: New file.
	* elf/unload.c: New file.
	* elf/unloadmod.c: New file.

	* elf/do-lookup.h: Remove unused undef_name parameter.
	* elf/dl-lookup.c: Adjust callers.
2000-08-26 23:41:19 +00:00
Ulrich Drepper
8e17ea5817 Update.
2000-06-09  Ulrich Drepper  <drepper@redhat.com>

	Rewrite error message handling.
	* elf/dl-deps.c (_dl_map_object_deps): Pass new parameter to
	_dl_catch_error.
	* elf/dl-error (struct catch): Add objname member.
	(_dl_signal_error): Take new parameter with object name.  When
	passing message on simply store object name and duplicate error
	message.
	(_dl_catch_error): Take new parameter.  Store object name in the
	place pointed to.
	* include/dlfcn.h: Adjust _dl_catch_error prototype.
	* sysdeps/generic/ldsodefs.h: Adjust _dl_signal_error prototype.
	* elf/dl-libc.c (dlerror_run): Pass new parameter to _dl_catch_error.
	* elf/dl-open.c (_dl_open): Likewise.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-close.c: Mark error messages with N_().
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/dl-lookup.c: Add comments about problems with error message
	translations.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-version.c: Likewise.
2000-06-10 04:01:36 +00:00
Ulrich Drepper
b0982c4ad3 Update.
* include/elf.h: Include also <dl-dtprocnum.h>.
	* elf/dl-deps.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-rel.h: Likewise.
	* elf/dynamic-link.h: Likewise.
	* elf/link.h: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/dl-dtprocnum.h: New file.
	* sysdeps/ia64/dl-dtprocnum.h: New file.
	* sysdeps/mips/dl-dtprocnum.h: New file.
	* sysdeps/sparc/dl-dtprocnum.h: New file.
2000-06-08 04:48:56 +00:00
Ulrich Drepper
6aa29abe9f Update.
2000-05-21  H.J. Lu  <hjl@gnu.org>

	* elf/do-lookup.h (do_lookup_versioned): Replace reloc_type parameter
	with noexec and noplt parameter.
	(do_lookup): Likewise.

	* elf/dl-lookup.c (_dl_lookup_symbol): Change for new parameters of
	do_lookup.  Support STV_PROTECTED.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.

	* elf/dl-reloc.c (RESOLVE): Check STB_LOCAL instead of ST_VISIBILITY.

	* elf/dl-runtime.c (profile_fixup): Fix a typo in comment.
2000-05-22 16:33:19 +00:00
Andreas Jaeger
f7d07c10a6 2000-05-08 Jakub Jelinek <jakub@redhat.com>
* elf/dl-lookup.c (add_dependency): Reallocate l_reldeps in
	sizeof(struct link_map *) chunks, not in bytes.
2000-05-08 12:59:12 +00:00
Ulrich Drepper
c0282c0642 Update.
2000-05-05  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-load.c (_dl_map_object_from_fd): Little of computation of
	parameter to mprotect and for variable assignments.

2000-05-03  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/generic/ldsodefs.h (LOOKUP_VALUE_ADDRESS): Check the
	validity of map before dereferencing it.

	* elf/dl-reloc.c (RESOLVE_MAP): Define.

2000-05-02  Jes Sorensen  <jes@linuxcare.com>

	* elf/dl-runtime.c (fixup): Add the value returned in the symbol
	lookup to the arguments to elf_machine_fixup_plt().

	* sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add Link_map
	of the symbol being resolved to input argument list and make the
	function return the pointer to the reloc.

	* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): Change
	return valuie to lookup_t and return the value.
	* sysdeps/arm/dl-machine.h (elf_machine_fixup_plt): Likewise.
	* sysdeps/generic/dl-machine.h (elf_machine_fixup_plt): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_fixup_plt): Likewise.
	* sysdeps/m68k/dl-machine.h (elf_machine_fixup_plt): Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_fixup_plt): Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Likewise.

	* sysdeps/powerpc/dl-machine.h (elf_machine_fixup_plt): Likewise.
	Make it an inline function returning value after calling
	__elf_machine_fixup_plt().

	* elf/dl-sym.c (_dl_vsym): Use DL_SYMBOL_ADDRESS() to obtain the
	symbol address.

	* elf/dl-symbol.c (_dl_symbol_value): Use LOOKUP_VALUE_ADDRESS to
	obtain the symbol address.

	* sysdeps/generic/ldsodefs.h: Add generic DL_SYMBOL_ADDRESS() macro
	depending on the definition of ELF_FUNCTION_PTR_IS_SPECIAL.

	* sysdeps/ia64/dl-machine.h: Add DL_SYMBOL_ADDRESS() macro calling
	_dl_symbol_address() - this way DL_SYMBOL_ADDRESS() turns into an
	inline on non ia64.

2000-04-28  Jes Sorensen  <jes@linuxcare.com>

	* elf/dl-runtime.c (fixup): Use the portable macros to get the
	symbol address of an object.

	* elf/dl-runtime.c (fixup-profile): Use the portable macros to get
	the symbol address of an object.

	* elf/dl-libc.c (struct do_dlsym_args): Change loadbase to a lookup_t.
	* elf/dl-lookup.c (_dl_lookup_symbol): Likewise.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.

2000-04-27  Jes Sorensen  <jes@linuxcare.com>

	* elf/rtld.c (_dl_start): Get the function pointer return address
	via _dl_start_address for architectures that need a function
	pointer descriptor rather than just a pointer (ia64).

	* sysdeps/generic/dl-lookupcfg.h: New file.
	* sysdeps/ia64/dl-lookupcfg.h: New file.
	* sysdeps/ia64/dl-machine.h: New file.
	* sysdeps/ia64/dl-symaddr.c: New file.
	* sysdeps/ia64/dl-fptr.c: New file.

	* elf/elf.h: Add IA-64 specific definitions.
2000-05-05 07:15:29 +00:00
Ulrich Drepper
466a0ec998 Update.
* elf/dl-reloc.c (_dl_relocat_object): Add more __builtin_expect.
	* elf/dl-lookup.c: Add more __builtin_expect.
	* elf/dl-init.c (_dl_init): Add more __builtin_expect.
	* elf/dl-fini.c (_dl_fini): Add more __builtin_expect.
	* elf/dl-deps.c (_dl_map_object_deps): Add more __builtin_expect.
	* elf/dl-close.c (_dl_close): Add more __builtin_expect.
	* elf/rtld.c (_dl_start_final): Add more __builtin_expect.
2000-04-17 15:41:59 +00:00
Ulrich Drepper
e3265f5bc5 Update.
2000-04-17  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-lookup.c (add_dependency): Correct __builtin_expect use.
2000-04-17 07:09:10 +00:00
Ulrich Drepper
cf197e41e7 Update.
2000-04-02  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-fini.c (_dl_fini): Increment j counter after swapping in
	element at this position.

	* elf/Versions [ld.so] (GLIBC_2.2): Export _dl_load_lock.
	* elf/link.h (struct link_map): Add l_reldepsmax, l_reldepsact, and
	l_reldeps elements.
	* elf/dl-lookup.c (add_dependency): New function.
	(_dl_lookup_symbol): Use it whenever symbol was found in a global,
	dynamically loaded object.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-open.c: Don't define _dl_load_lock here...
	* elf/rtld.c: ...but here...
	* elf/dl-support.c: ...and here.
	* elf/dl-close.c (_dl_close): Close also dependent objects introduce
	through relocation.
	* elf/dl-fini.c (_dl_fini): Also take dependencies introduced through
	relocations.
	* dlfcn/Makefile (glrefmain.out): Test is not expected to fail
	anymore.
	* dlfcn/glrefmain.c: Add one more debug message.

	* Makeconfig (preprocess-versions): Don't add $(CPPFLAGS) to compiler
	command line.
	* Makerules (sysd-versions): Use ( ) instead of { }.

	* elf/dl-load.c: Use __builtin_expect to signal that compiler should
	optimize for the non-debugging case.
	* elf/dl-lookup.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
2000-04-03 03:51:04 +00:00
Ulrich Drepper
a42195dbe4 Update.
2000-03-23  Andreas Jaeger  <aj@suse.de>

	* elf/dl-addr.c: Adjust include paths for ldsodefs location
	change.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-minimal.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-preinit.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-profstub.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/sprof.c: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/dl-origin.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* sysdeps/generic/elf/backtracesyms.c: Likewise.
	* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
	* sysdeps/powerpc/dl-machine.c: Likewise.
	* sysdeps/powerpc/elf/libc-start.c: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.

	* elf/ldsodefs.h: Move file to ...
	* sysdeps/generic/ldsodefs.h: ... here.

	* sysdeps/generic/ldsodefs.h: Add definition for D_PTR.
	
	* sysdeps/mips/elf/ldsodefs.h: New file.

	* elf/dl-version.c (match_symbol): Use D_PTR to access relocated
	entries in l_info.
	(_dl_check_map_versions): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object): Likewise.
	* elf/dl-load.c (_dl_init_paths): Likewise.
	(_dl_map_object): Likewise.
	* elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Likewise.
	(elf_get_dynamic_info): Likewise.
	* elf/do-lookup.h (FCT): Likewise.
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise.
	* elf/dl-deps.c (_dl_map_object_deps): Likewise.
	* elf/dl-addr.c (_dl_addr): Likewise.
	* elf/dl-runtime.c (profile_fixup): Likewise.
	(fixup): Likewise.
	* elf/dl-init.c (_dl_init_next): Likewise.
	* sysdeps/generic/dl-machine.h (elf_machine_runtime_setup): Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h
	(DISTINGUISH_LIB_VERSIONS): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Likewise.
	(elf_machine_rel): Likewise.

	* elf/dynamic-link.h (elf_get_dynamic_info): Only change l_info
	for writable dynamic section.
2000-03-23 20:31:46 +00:00
Ulrich Drepper
7730a3b9d4 Pretty print. 1999-08-01 18:04:40 +00:00
Ulrich Drepper
a1eca9f329 Update.
1999-07-25  Jakub Jelinek  <jj@ultra.linux.cz>

	* elf/link.h (struct link_map): Use Elf_Symndx instead of ElfXX_Symndx.
	* elf/dl-lookup.c (_dl_setup_hash): Likewise.
	* elf/dl-load.c (_dl_map_object): Likewise.
	* elf/do-lookup.h (do_lookup*): Likewise.
	* sysdeps/generic/bits/elfclass.h: Define Elf_Symndx as uint32_t.
	* sysdeps/unix/sysv/linux/alpha/bits/elfclass.h: Define Elf_symndx
	as uint64_t.
	* elf/elf.h: Remove Elf32_Symndx and Elf64_Symndx.
1999-07-27 05:53:25 +00:00
Ulrich Drepper
06535ae948 Update.
* posix/unistd.h: Move declaration of __libc_enable_secure to...
	* include/unistd.h: ...here.

	* elf/dl-open.c (dl_open_worker): If DST is used in SUID program punt.
	* elf/dl-deps.c (expand_dst): Likewise.

	* elf/dynamic-link.h: Set DT_SYMBOLIC, DT_TEXTREL, and DT_BIND_NOW
	based on DT_FLAGS value.

	* elf/do-lookup.h: Remove reference_name parameter, add undef_map.
	Add test for symbols marked STV_HIDDEN.
	* elf/dl-lookup.c (_dl_lookup_symbol): Remove reference_name parameter,
	add undef_map.  Compute reference_name locally.  Update call to
	do_lookup.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-libc.c: Update call to _dl_lookup_*symbol.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/ldsodefs.h: Adjust prototypes.

	* elf/dl-reloc.c (RESOLV): Add test for STV_PROTECTED flag set and
	handle appropriately.  Add comment about DT_TEXTREL.
	* elf/dl-runtime.c: Likewise.
1999-07-23 22:58:50 +00:00
Ulrich Drepper
263456bdd4 Update.
1999-06-07  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/unix/sysv/linux/if_index.c: Use SIGIOCGIFINDEX and fix
	another SIOGIFNAME typo.

1999-06-07  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-lookup.c: Remove duplicated assert.h inclusion.

	* sysdeps/generic/printf_fphex.c (__printf_fphex): Optimize a little
	bit.

1999-06-05  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* sysdeps/generic/printf_fphex.c (__printf_fphex): Don't ignore
	the precision if the mantissa is zero.

1999-06-05  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* manual/lang.texi (Floating Point Parameters): GCC already
	supports long double for a long time.

1999-06-05  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* math/libm-test.c (j0_test, j1_test, jn_test, y0_test, y1_test,
	yn_test): Increase some epsilons.
1999-06-07 15:57:26 +00:00
Ulrich Drepper
9a8fcca0b3 Update.
* sysdeps/unix/sysv/linux/kernel-features.h: Define
	__ASSUME_SIOCGIFNAME for kernel >= 2.1.50.
	* sysdeps/unix/sysv/linux/if_index.c: Correct typo (SIOGIFNAME ->
	SIOCGIFNAME) and use __ASSUME_SIOCGIFNAME.

	* sysdeps/libm-ieee754/w_j0.c: Remove __ from symbol definitions.
	* sysdeps/libm-ieee754/w_j0f.c: Likewise.
	* sysdeps/libm-ieee754/w_j0l.c: Likewise.
	* sysdeps/libm-ieee754/w_j1.c: Likewise.
	* sysdeps/libm-ieee754/w_j1f.c: Likewise.
	* sysdeps/libm-ieee754/w_j1l.c: Likewise.
	* sysdeps/libm-ieee754/w_jn.c: Likewise.
	* sysdeps/libm-ieee754/w_jnf.c: Likewise.
	* sysdeps/libm-ieee754/w_jnl.c: Likewise.

	* stdio-common.c: Correct typos.

	* math/libm-test.c (jn_test): Adjust delta.
	(y1_test): Likewise.
	(yn_test): Likewise.

	* elf/do-lookup.h: It should never happen that if we expect a versioned
	symbol from a file the file has no version table.  This should have
	been checked in dl-version.c.
	* elf/dl-lookup.c: Include assert.h.
1999-06-07 00:02:14 +00:00
Ulrich Drepper
3f933dc2ef Update.
1999-02-23  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* elf/dl-error.c (_dl_signal_cerror): New function.
	(_dl_signal_error): Don't call receiver function.
	* elf/dl-lookup.c (_dl_lookup_symbol): Call _dl_signal_cerror
	instead of _dl_signal_error when reporting references to undefined
	symbols or versions.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-version.c (match_symbol): Likewise.

	* elf/ldsodefs.h: Declare _dl_signal_cerror.

	* misc/getttyent.c (getttyent): Release lock on stream later to
	also protect global variable zapchar.
1999-02-22 18:05:04 +00:00
Ulrich Drepper
2f6164e233 Update.
* elf/dl-lookup.c (_dl_lookup_symbol_skip): Before first do_lookup
	call test whether there is any scope left.
	(_dl_lookup_versioned_symbol_skip): Likewise.
1999-02-20 22:05:45 +00:00
Ulrich Drepper
a0e3f6f49c Update.
* elf/Makefile (distribute): Add do-lookup.h.
	* elf/do-lookup.h: New file.  Split out from dl-lookup.c.
	* elf/dl-lookup.c: Move do_lookup function in separate file and
	include the file twice, for handling versioning and without it.
1999-02-20 21:12:26 +00:00
Ulrich Drepper
f420344cef Update.
* elf/dynamic-link.h (elf_get_dynamic_info): Take new argument with
	load address.  Relocate d_ptr in DT_DTRTAB, DT_SYMTAB, DT_RELA, DT_REL,
	DT_JMPREL, DT_PLTGOT, and DT_VERSYM l_info entry.
	(_ELF_DYNAMIC_DO_RELOC): Take extra argument which specifies whether
	rel and rela relocations can both happen and skip one test if this
	is not possible.
	(ELF_DYNAMIC_DO_RELA, ELF_DYNAMIC_DO_REL): Call _ELF_DYNAMIC_DO_RELOC
	appropriately.
	* elf/dl-addr.c (_dl_addr): DT_SYMTAB and DT_STRTAB entries are
	already relocated.
	* elf/dl-deps.c (_dl_map_object_deps): DT_STRTAB entry is already
	relocated.
	* elf/dl-load.c (_dl_init_paths): DT_STRTAB entry is already relocated.
	(_dl_map_object_from_fd): Call elf_get_dynamic_info with new argument.
	(_dl_map_object): DT_STRTAB entry is already relocated.
	* elf/dl-lookup.c (do_lookup): DT_STRTAB and DT_SYMTAB entries are
	already relocated.
	* elf/dl-reloc.c (_dl_relocate_object): DT_STRTAB entry is already
	relocated.
	* elf/dl-runtime.c (fixup): DT_SYMTAB, DT_STRTAB, DT_JMPREL, and
	DT_VERSYM entries are already relocated.
	(profile_fixup): Likewise.
	* elf/dl-version.c: Rename VERSTAG macro into VERSYMIDX.  Replace
	all users.
	(match_symbol): DT_STRTAB entry is already relocated.
	(_dl_check_map_versions): Likewise.  Also fo DT_VERSYM.
	* elf/do-rel.h (elf_dynamic_do_rel): reladdr is now assumed to be
	relocated already.  DT_SYMTAB and DT_VERSYM entries are also relocated.
	* elf/rtld.c (_dl_start): Pass extra argument to elf_get_dynamic_info.
	(find_needed): DT_STRTAB entry is already relocated.
	(dl_main): Pass extra argument to elf_get_dynamic_info.
	DT_STRTAB entry is already relocated.
	* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): DT_JMPREL and
	DT_PLTGOT entries are already relocated.
	(elf_machine_rela): Likewise for DT_SYMTAB.
	* sysdeps/arm/dl-machine.h (elf_machine_rel): DT_STRTAB is already
	relocated.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/powerpc/dl-machine.c (__process_machine_rela): Likewise.
	* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Likewise.
	(elf_machine_got_rel): Likewise for DT_SYMTAB and DT_STRTAB.

	* grp/initgroups.c (initgroups): If function in current module was
	successful don't stop but continue to process to get all the groups.
1999-02-20 15:02:24 +00:00
Ulrich Drepper
48f6496e3f Update.
1999-02-07  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-lookup.c: Increment _dl_num_relocations in the four entry
	point functions, not do_lookup since the later can be called more
	than once.
1999-02-07 21:21:33 +00:00
Ulrich Drepper
8352b484cf (_dl_num_relocations): New variable. (do_lookup): Increment _dl_num_relocations for every call. 1998-12-27 17:15:12 +00:00
Ulrich Drepper
65c64a0b4a Update.
* elf/dl-lookup.c (do_lookup): If looking up an unversioned symbol
	but the object file only contains versioned definitions than
	accept the definition if there is exactly one even if the version
	number is not the default version.  This helps dlsym() to find
	newly introduced symbols.
1998-12-23 15:38:56 +00:00
Ulrich Drepper
be93561004 Update.
1998-09-06 09:00  Ulrich Drepper  <drepper@cygnus.com>

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

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

	* elf/ldsodesf.h: New file.
	* elf/Makefile (distribute): Add ldsodefs.h.
	* elf/link.h: Separate internal information in exter header.
	* elf/rtld.c: Include elf/ldsodefs.h not link.h.
	* elf/dl-minimal.c: Likewise.
	* sysdeps/generic/dl-sysdep.c: Likewise.
	* elf/sprof.c: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/dlvsym.c: Likewise.
	* elf/dlerror.c: Likewise.
	* elf/dladdr.c: Likewise.
	* elf/dlclose.c: Likewise.
	* elf/dlopen.c: Likewise.
	* elf/dl-addr.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/dl-version.c: Likewise.
	* sysdeps/generic/dl-cache.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* iconv/gconv_dl.c: Likewise.
	* nss/nsswitch.c: Likewise.
1998-03-24 00:39:45 +00:00
Ulrich Drepper
3d76e77847 Update.
1998-03-11  Ulrich Drepper  <drepper@cygnus.com>

	* nss/nss_db/db-XXX.c (lookup): Copy data to safe place before
	parsing it.
1998-03-11 11:09:56 +00:00
Ulrich Drepper
bc526b60ee Update.
1998-03-11  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Use
	_dl_debug_message.

1998-03-12  Matthias Urlichs  <smurf@noris.de>

	* elf/dl-misc.c: Default for debug output should be stderr.
	* elf/dl-misc.c: Spurious garbage bytes after the PID in debug output.
	* elf/dl-lookup.c: reference_name may be NULL or empty.

1998-03-11 10:30  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* aclocal.m4 (LIBC_PROG_FOO_GNU): Fix order of redirection.

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

	* sysdeps/unix/sysv/linux/Dist: Add scsi/scsi.h.

	* sysdeps/unix/sysv/linux/scsi/sg.h: Include features.h.

1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/scsi/scsi.h: New file.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Install it.

1998-03-11 10:30  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1998-03-11 09:54:55 +00:00
Ulrich Drepper
8193034b1d Update.
1998-03-10 17:54  Ulrich Drepper  <drepper@cygnus.com>

	* libc.map: Add _dl_debug_message.
	* elf/dl-misc.c: Make _dl_debug_message a function.  Print the PID
	before every line.
	* elf/fini.c: Correctly use new _dl_debug_message function.
	* elf/init.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* sysdeps/unix/sysv/linux/libc-start.c: Likewise.
	* elf/dl-load.c: Likewise.  Add more debugging prints.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/dl-support.c: Add variables for debugging.
	* elf/rtld.c: Likewise.  Recognize new debug options.
	* elf/link.h: Declare new variables.

	* elf/dl-deps.c (_dl_map_object_deps): Little optimizations.

	* sysdeps/unix/sysv/linux/sys/quota.h: Extract information from
	kernel headers.  Patch by a sun <asun@saul7.u.washington.edu>.

1998-03-11 00:16  Tim Waugh  <tim@cyberelk.demon.co.uk>

	* posix/wordexp-test.c (command_line_test): New function to allow
	testing of specific cases from the command-line.

1998-03-10  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-init.c (_dl_init_next): Print nicer messages.
	* elf/dl-fini.c (_dl_fini): Likewise.
	* sysdeps/unix/sysv/linux/libc-start.c (__libc_start_main): Likewise.
1998-03-10 18:04:16 +00:00
Ulrich Drepper
db0b91a906 Update.
1998-03-10  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-lookup.c (_dl_lookup_versioned_symbol): Print version
	symbol in debug message.
	(_dl_lookup_versioned_symbol_skip): Likewise.

	* sysdeps/unix/readdir_r.c: Zero out *result on EOF.
	* manual/filesys/texi: Document this.
	0600.  Reported by Greg Alexander <galexand@sietch.bloomington.in.us>.
1998-03-10 12:04:08 +00:00
Ulrich Drepper
de100ca78f Update.
1998-03-10 00:10  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-lookup.c (do_lookup): Remove list and n parameter and add
	instead scope.  If debugging display information about symbol
	resolving.
	(_dl_lookup_symbol): Call do_lookup with correct parameters.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-support.c: Define _dl_debug_symbols.
	* elf/link.h: Add declaration for _dl_debug_symbols.
	* elf/rtld.c: Define _dl_debug_symbols.
	(process_dl_debug): Recognize symbols option.
1998-03-10 00:16:33 +00:00
Ulrich Drepper
0c367d923b Update.
1998-03-09 18:21  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-support.c (_dl_debug_bindings): Add definition.
	* elf/rtld.c (_dl_debug_bindings): Add definition.
	(process_dl_debug): Recognize bindings option.  Update help message.
	* elf/link.h (struct link_map): Add l_versyms member.
	(_dl_debug_bindings): Add declaration.
	* elf/version.c (_dl_check_map_versions): Initialize l_versyms.
	* elf/dl-object.c (_dl_new_object): Don't initialize l_rpath_dirs
	and l_reloc_result.
	* elf/dl-lookup.c (do_lookup): Define verstab from l_versyms.
	(sym_val): Remove a member, add m as link_map.
	(do_lookup): Return result appropriately.
	(_dl_lookup_symbol): If _dl_debug_bindings is defined print message.
	Call do_lookup correctly.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
1998-03-09 18:30:58 +00:00
Ulrich Drepper
3db52d94e2 Update.
1998-03-08 14:58  Ulrich Drepper  <drepper@cygnus.com>

	* Makeconfig (nisobjdir): Set to path to nis directory.
	(rpath-link): Add nisobjdir.
	Patch by Sven Verdoolaege <skimo@kotnet.org>.

	* elf/Makefile: Pretty print.
	* elf/dl-lookup.c: Include unistd.h.
	* elf/dl-runtime.c: Likewise.

	* localedata/Makefile (test-srcs): Add tst-rpmatch.
	(distribute): Add tst-rpmatch.sh.
	(tests): Add tst-rpmatch to dependency list and run tst-rpmatch.sh.

	New tests for rpmatch function by
	Jochen Hein <jochen.hein@delphi.central.de>.
	* localedata/tst-rpmatch.c: New file.
	* localedata/tst-rpmatch.sh: New file.

	* localedata/locales/de_DE: Correct yesexpr and noexpr.
	* localedata/locales/de_AT: Likewise.

	* posix/getopt.c: Update contact address.
	* posix/getopt1.c: Pretty print.

	* sysdeps/generic/libc-start.c: Do most of the initialization now
	here instead of in start.S.
	* sysdeps/unix/sysv/linux/libc-start.c: Likewise.
	* sysdeps/i386/elf/start.S: Remove most of the initialization code.

	* sysdeps/unix/sysv/linux/i386/profil-counter.h: No need for
	profil_counter to be public.

1998-03-08 13:06  Tim Waugh  <tim@cyberelk.demon.co.uk>

	* posix/wordexp.c (parse_arith): Now works for negative numbers too.
	(parse_param): Coded parameter length expansion (${#var}).
	(parse_param): Handling for "=", "+", "-", and the ":" versions added.
	(parse_param): Cleaned up (fixed) error handling.

	* posix/wordexp-test.c: IFS now includes non-whitespace character
	(comma).  Added more tests.
1998-03-08 15:26:29 +00:00
Ulrich Drepper
7dea968e78 Update.
1998-03-06 17:04  Ulrich Drepper  <drepper@cygnus.com>

	* libc.map: Add _dl_debug_impcalls, _dl_debug_fd, _dl_sysdep_output,
	__libc_start_main.
	* csu/Makefile (routines): Add libc-start.
	* elf/dl-error.c: Remove declaration of _dl_argv.  Include <unitsd.h>.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-version.c: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* elf/link.h: Declare _dl_argv, _dl_debug_fd.
	Declare _dl_sysdep_output.  Make _dl_sysdep_fatal, _dl_sysdep_error and
	_dl_sysdep_message macros which use _dl_sysdep_output.
	* elf/dl-fini.c: Write out which destructor is called while debugging.
	* elf/dl-init.c: Likewise for constructor.
	* elf/dl-load.c: Use _dl_debug_message instead of _dl_sysdep_message.
	* elf/dl-misc.c: Remove _dl_sysdep_fatal, _dl_sysdep_error and
	_dl_sysdep_message.  Add _dl_sysdep_output.
	* elf/rtld.c: Recognize LD_DEBUG_OUTPUT.  Set _dl_debug_fd if
	this file can be opened.
	For LD_DEBUG=libs also set _dl_debug_impcalls.
	* sysdeps/generic/dl-cache.c: Include unistd.h.
	* sysdeps/generic/libc-start.c: New file.
	* sysdeps/i386/elf/start.S: Don't call main directly, call
	* sysdeps/unix/sysv/linux/libc-start.c: New file.
	__libc_start_main instead.

	* elf/Makefile ($(objpfx)ld.so): Add $(load-map-file) as dependency.
1998-03-06 17:21:43 +00:00
Ulrich Drepper
da8324650d Update.
1998-02-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/dl-load.c (add_name_to_object): Don't translate strings.
	* elf/dl-minimal.c (_strerror_internal): Define it here to avoid
	pulling in the whole error list.
	(__dcgettext, dcgettext): Removed.
	* libc.map: Export _strerror_internal.

1998-02-18 10:50  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/fpu/t_exp.c: New file.

1998-02-18  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* nis/libnss_nisplus.map: NIS+ support is new in glibc 2.1, add
	everything with version GLIBC_2.1.
	* hesiod/libnss_hesiod.map: Likewise.

1998-02-18  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* manual/arith.texi (Old-style number conversion): This node is a
	section, not a subsection.

1998-02-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/dl-lookup.c (make_string): Use __stpcpy instead of stpcpy.

1998-02-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/rtld.c (dl_main): Make sure that the library search paths
	have been initialized before the first call to _dl_map_object.

1998-02-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Makerules (common-generated): Add libc_pic.os.

1998-02-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/rtld.c (dl_main): Use PT_PHDR to figure out the load address
	of the executable.

1998-02-18 10:28  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1998-02-18 11:00:24 +00:00
Ulrich Drepper
6973fc0127 Update.
1997-11-18 02:31  Ulrich Drepper  <drepper@cygnus.com>

	* iconv/Makefile: New file.
	* iconv/gconv.c: New file.
	* iconv/gconv.h: New file.
	* iconv/gconv_builtin.c: New file.
	* iconv/gconv_builtin.h: New file.
	* iconv/gconv_close.c: New file.
	* iconv/gconv_conf.c: New file.
	* iconv/gconv_db.c: New file.
	* iconv/gconv_dl.c: New file.
	* iconv/gconv_open.c: New file.
	* iconv/gconv_simple.c: New file.
	* iconv/iconv.c: New file.
	* iconv/iconv.h: New file.
	* iconv/iconv_close.c: New file.
	* iconv/iconv_open.c: New file.
	* include/gconv.h: New file.

	* Makeconfig: Define gconvdir.
	* Makefile (subdirs): Add iconv.

	* string/bits/string2.h: Add optimization for strtok_r.

	* sysdeps/generic/_G_config.h: Define __need_NULL to get definition
	for NULL.
	Reported by H.J. Lu <hjl@gnu.ai.mit.edu>.
	* configure.in: Correct test for bash2.
	* locale/Makefile (CFLAGS-charmap.c): Add -Wno-char-subscripts.
	(CFLAGS-locfile.c): Likewise.
	Suggested by Zack Weinberg <zack@rabi.phys.columbia.edu>.
	* misc/hsearch_r.c (hsearch_r): Avoid undefinitely search for
	non-existing entry if the table is full.
	* posix/regex.h: Pretty print.
	* stdio-common/printf_fp.c: Don't define NDEBUG if already defined.
	* sysdeps/posix/ctermid.c: Simplify a bit.
	* sysdeps/unix/sysv/linux/net/if.h: Pretty print.
1997-11-17  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* sysdeps/unix/sysv/linux/sys/quota.h: Add include for
	<sys/types.h> instead of <asm/types.h>.
1997-11-16  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* math/libm-test.c (asin_test): Add epsilon for asin (0.5).
1997-11-16 17:09  H.J. Lu  <hjl@gnu.ai.mit.edu>
	* libc.map (_IO_stdin_, _IO_stdout_, _IO_stderr_, _IO_fopen,
	fopen, freopen, _IO_fclose, fclose): Added to GLIBC_2.0.
	(_IO_stdin_, _IO_stdout_, _IO_stderr_): Removed from GLIBC_2.1.
	(_IO_2_1_stdin_, _IO_2_1_stdout_, _IO_2_1_stderr_, _IO_fclose,
	fclose): Added to GLIBC_2.1.
	* libio/Makefile (routines, shared-only-routines): Add
	oldiofclose.  Remove oldfreopen.
	* libio/freopen.c (freopen): When PIC is defined, call
	_IO_old_freopen () for old stdio.
	* libio/iofclose.c (_IO_new_fclose): Renamed from _IO_fclose.
	(_IO_fclose, fclose): Use _IO_new_fclose as default version
	for GLIBC_2.1.
	* libio/iolibio.h (_IO_old_freopen): Use _IO_old_file_close_it
	instead of _IO_file_close_it.
	* libio/libio.h (_IO_stdin_, _IO_stdout_, _IO_stderr_): Changed
	to _IO_2_1_stdxxx_.
	(_IO_stdin, _IO_stdout, _IO_stderr): Declare as extern if _LIBC
	* libio/libioP.h (_IO_old_do_flush): New.
	* libio/oldfileops.c (_IO_old_file_close_it,
	_IO_old_file_finish, _IO_old_file_overflow, _IO_old_file_sync):
	Call _IO_old_do_flush () instead of _IO_do_flush ().
	(_IO_old_file_xsputn): Call _IO_old_do_write () instead of
	_IO_do_write ().
	* libio/oldiofopen.c (_IO_old_fopen): Call _IO_old_file_init ()
	instead of _IO_file_init ().
	Bind old symbols to version GLIBC_2.0.
	* libio/oldstdfiles.c (DEF_STDFILE): Don't use symbol_version.
	(_IO_old_stdin_, _IO_old_stdout_, _IO_old_stderr_): Changed to
	_IO_stdxxx_.
	(_IO_check_libio): New function in .init.
	* libio/oldiofclose.c: New file.
	* libio/stdfiles.c (_IO_new_stdin_, _IO_new_stdout_,
	_IO_new_stderr_): Changed to _IO_2_1_stdxxx_.
	(DEF_STDFILE): Don't use default_symbol_version.
	* libio/stdio.c (stdin, stdout, stderr): Set to
	_IO_2_1_stdxxx_._
	(_IO_stdin, _IO_stdout, _IO_stderr): New, strong alias of
	stdxxx.
	* csu/Makefile (distribute): Add init.c.
	(extra-objs): Add init.o for ELF.
	(start-installed-name): Add $(objpfx)init.o.
	* csu/init.c: New file.
1997-11-12 08:02  H.J. Lu  <hjl@gnu.ai.mit.edu>
	* elf/dl-lookup.c (do_lookup): Don't use the hidden base
	definition as the default.
1997-08-27  Klaus Espenlaub  <kespenla@hydra.informatik.uni-ulm.de>
	* erand48_r.c (__erand48_r): Implement for 32 bit short int.
1997-11-15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* elf/genrtldtbl.awk: Replace gensub for compatibility with gawk2
	(PR 351).
1997-11-16 21:01  Philip Blundell  <Philip.Blundell@pobox.com>
	* sysdeps/arm/sysdep.h: Use __APCS_32__ to decide whether or not
	to preserve condition codes on function call.
1997-11-13  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* sysdeps/generic/s_exp2l.c: Change exp2l to __ieee754_exp2l.
1997-11-14  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* math/libm-test.c (asin_test): Add epsilon for float.
	(tan_test): Add epsilon for float.
	(log1p_test): Add epsilon for float.
	(inverse_functions): Add epsilons.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers) [socket]: Add
	net/if_packet.h.
	* sysdeps/unix/sysv/linux/Dist: Add net/if_packet.h.
1997-11-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* md5-crypt/Makefile (extra-objs): Make recursively expanded
	variable, since $(object-suffixes) is not defined yet.
1997-11-11  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* db2/Makefile (distribute): db185/db185_int.src ->
	db185/db185_int.h.
1997-11-11  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* misc/tst-fdset.c: Don't require the value of FD_ISSET to be
	exactly one.
1997-11-11  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* sysdeps/generic/e_acoshl.c: Fix stub_warning: use the user level
	* sysdeps/generic/e_acosl.c: Likewise.
	* sysdeps/generic/e_asinl.c: Likewise.
	* sysdeps/generic/e_atan2l.c: Likewise.
	* sysdeps/generic/e_expl.c: Likewise.
	* sysdeps/generic/e_fmodl.c: Likewise.
	* sysdeps/generic/e_j0l.c: Likewise.
	* sysdeps/generic/e_j1l.c: Likewise.
	* sysdeps/generic/e_jnl.c: Likewise.
	* sysdeps/generic/e_lgammal_r.c: Likewise.
	* sysdeps/generic/e_log10l.c: Likewise.
	* sysdeps/generic/e_logl.c: Likewise.
	* sysdeps/generic/e_powl.c: Likewise.
	* sysdeps/generic/e_sqrtl.c: Likewise.
	* sysdeps/generic/e_exp2l.c: Likewise.

1997-11-11  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Make-dist (+sysdep-names): Remove extra paren.
	* Makefile (distribute): Add stub-tag.h.
	* elf/Makefile (distribute): Add atomicity.h.
	* stdlib/Makefile (headers): Add ucontext.h and sys/ucontext.h.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers)
	[$(subdir)=socket]: Add net/if_packet.h.
	* sysdeps/alpha/Dist: Remove setjmp_aux.c.
	* sysdeps/unix/sysv/linux/Dist: Add s_pread64.c, s_pwrite64.c,
	net/if_packet.h, scsi/sg.h.
1997-11-13  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* Makefile (install): Quote $(CC) expansion.
1997-11-14  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* sysdeps/unix/sysv/linux/getcwd.c (__getcwd): Added caching of
	working /proc cwd and no restrictions on path length.  Following
	some ideas from Andi Kleen <ak@muc.de> (PR 350).
1997-11-14 19:14  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>
	* nis/nss_compat/compat-grp.c: Remove buggy assert call.
1997-11-14 22:23  Ulrich Drepper  <drepper@cygnus.com>
	* sysdeps/libm-i387/s_fdim.S: New file.
	* sysdeps/libm-i387/s_fdimf.S: New file.
	* sysdeps/libm-i387/s_fdiml.S: New file.
	* sysdeps/libm-i387/i686/s_fdim.S: New file.
	* sysdeps/libm-i387/i686/s_fdimf.S: New file.
	* sysdeps/libm-i387/i686/s_fdiml.S: New file.
1997-11-12  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
	* string/bits/string2.h (strstr): Avoid warning if HAYSTACK is a
	pointer to unsigned char.
1997-11-13  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* sysdeps/libm-ieee754/s_llrintf.c (__llrintf): Fix function.
	* sysdeps/libm-ieee754/s_lrintf.c (__lrintf): Fix function.
	* sysdeps/libm-ieee754/s_lrint.c (__lrint): Fix function.
1997-11-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
	* sysdeps/libm-ieee754/s_ilogbf.c: Correct return values for
	ilogb(0/NaN).
	* sysdeps/libm-ieee754/s_ilogbl.c: Likewise.
	* sysdeps/libm-ieee754/s_ilogb.c: Likewise.

1997-11-14 05:44  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/libm-i387/s_fmin.S: New file.
	* sysdeps/libm-i387/s_fminf.S: New file.
	* sysdeps/libm-i387/s_fminl.S: New file.
	* sysdeps/libm-i387/s_fmax.S: New file.
	* sysdeps/libm-i387/s_fmaxf.S: New file.
	* sysdeps/libm-i387/s_fmaxl.S: New file.
	* sysdeps/libm-i387/i686/s_fmin.S: New file.
	* sysdeps/libm-i387/i686/s_fminf.S: New file.
	* sysdeps/libm-i387/i686/s_fminl.S: New file.
	* sysdeps/libm-i387/i686/s_fmax.S: New file.
	* sysdeps/libm-i387/i686/s_fmaxf.S: New file.
	* sysdeps/libm-i387/i686/s_fmaxl.S: New file.

1997-11-14 03:06  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/accept.S: Add __libc_accept as alias.
	* sysdeps/unix/sysv/linux/send.S: Likewise.
	* sysdeps/unix/sysv/linux/recv.S: Likewise.
	* sysdeps/unix/sysv/linux/connect.S: Likewise.
	Reported by Christopher Wiles <wileyc@ai.cs.fujitsu.co.jp>.
See ChangeLog.7 for earlier changes.
1997-11-18 02:50:07 +00:00
Ulrich Drepper
86187531d3 Update.
1997-11-06 00:06  Ulrich Drepper  <drepper@cygnus.com>

	* argp/argp-help.c: Optimize a bit by using mempcpy.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* inet/rcmd.c: Likewise.
	* io/ftw.c: Likewise.
	* libio/fileops.c: Likewise.
	* libio/genops.c: Likewise.
	* libio/obprintf.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* posix/execvp.c: Likewise.
	* posix/getopt.c: Likewise.
	* posix/glob.c: Likewise.
	* posix/wordexp.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdlib/canonicalize.c: Likewise.
	* stdlib/msort.c: Likewise.
	* string/argz-replace.c: Likewise.
	* sysdeps/generic/putenv.c: Likewise.
	* sysdeps/generic/setenv.c: Likewise.
	* sysdeps/posix/getcwd.c: Likewise.
	* sysdeps/posix/ttyname.c: Likewise.
	* sysdeps/posix/writev.c: Likewise.
	* time/strftime.c: Likewise.
	* time/tzfile.c: Likewise.

	* login/utmp_daemon.c: Use memcpy instead of strcpy where possible.
	* sunrpc/svcauth_des.c: Likewise.
	* sysdeps/unix/sysv/linux/gethostname.c: Likewise.

	* misc/tsearch.c: Use memcpy return value if possible.
	* posix/regex.c: Likewise.
	* sysdeps/unix/readdir_r.c: Likewise.
	* wcsmbc/wcsdup.c: Likewise.

	* nss/digits_dots.c: Little optimization.

	* inet/ruserpass.c (ruserpass): Optimize by using stpcpy.
	(struct toktab): Make tokstr field a const char *.

	* elf/dl-profile.c: Fix typo.

	* inet/ether_ntoh.c: Don't use relative #include path.
	* inet/gethstbynm.c: Likewise.
	* resolv/inet_pton.c: Likewise.
	* shadow/sgetspent_r.c: Likewise.

	* libio/oldfileops.c (_IO_old_file_jumps): Use correct sync and write
	callbacks.  Patch by NIIBE Yutaka <gniibe@mri.co.jp>.

	* posix/confstr.c: Correct string for _CS_LFS_CFLAGS.
	Handle _CS_XBS5_* constants.
	* posix/unistd.h: Add comment describing _XBS5_* constants.
	* sysdeps/generic/bits/confname.h: Add _CS_XBS5_* constants.

	* posix/regex.c: Indent preprocessor code.

	* posix/wordexp.c: Using _itoa_word instead of sprintf.

	* stdlib/canonicalize.c: Avoid unnecessary copying.  Handle NULL
	and "" arguments correctly according to SUS.
	* stdlib/test-canon.c: Test "" and NULL argument handling.

	* sysdeps/posix/writev.c: Correct condition to leave the loop.

1997-11-05 18:13  Ulrich Drepper  <drepper@cygnus.com>

	* nss/getXXbyYY.c: Set buffer to NULL if realloc fails so that possible
	next call starts with malloc again.
	Proposed by Joe Keane <jgk@jgk.org>.

1997-11-04 23:57  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in: Correct gcc -pipe test.
	Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.

	* posix/glob.c: Cleanups.  Patch by H.J. Lu <hjl@lucon.org>.

1997-11-04  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* manual/creature.texi (Feature Test Macros): Add _POSIX_C_SOURCE
	definition.
1997-11-06 00:02:46 +00:00
Ulrich Drepper
1618c59038 Update.
1997-11-04  Ulrich Drepper  <drepper@cygnus.com>

	* manual/filesys.texi: Correct description of return value for
	readdir_r.
	* sysdeps/unix/readdir_r.c (__readdir_r): Return value of errno
	not -1 in error case.
	* sysdeps/generic/readdir_r.c (__readdir_r): Return ENOSYS not -1.
	Reported by Jim Meyering <meyering@eng.ascend.com>.

1997-11-02  Paul Eggert  <eggert@twinsun.com>

	* strftime.c: Use host's underlying strftime to access
	locale-specific info.  This is useful e.g. when building GNU
	Emacs under Solaris 2.6.
	(weekday_name, month_name): Omit if HAVE_STRFTIME.
	(my_strftime): New macro, which names the strftime function that
	this source file produces.
	(strftime): #undef if emacs is defined; this works around Emacs 20.2's
	method of compiling with -Dstrftime=emacs_strftime.
	Also, declare as a function returning size_t, for similar reasons.
	(my_strftime): If HAVE_STRFTIME, use underlying strftime to handle
	locale-dependent formats like %a and %Ec.

1997-11-02  Paul Eggert  <eggert@twinsun.com>

	* strftime.c (memcpy_lowcase, memcpy_uppcase, strftime):
	Ensure that args to islower and isupper are valid unsigned
	chars, even if char is signed.

1997-11-04  Ulrich Drepper  <drepper@cygnus.com>

	* assert/Makefile (headers): Add assert.h, necessary after patch
	to Makefiles.
	* ctype/Makefile (headers): Likewise.
	* pwd/Makefile (headers): Likewise.
	* grp/Makefile (headers): Likewise.
	Patch by NIIBE Yutaka <gniibe@mri.co.jp>.

1997-11-04 03:08  Ulrich Drepper  <drepper@cygnus.com>

	* glibcbug.in: Add information about configured target.
	Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.

	* elf/dl-lookup.c (_dl_lookup_versioned_symbol): Be prepared for
	empty string as `reference_name' parameter.
	* elf/rtld.c: Don't set real program name in l_name of main object.

	* manual/creature.texi: Apply Paul Eggert's patch for better
	_POSIX_C_SOURCE description.

	* stdlib/strfmon.c: Fix numerous bugs in formatting.

	* time/strptime.c [%Y]: Treat all years, not only those which fit
	in time_t.
	[%Oy]: Really store value.
	Patches by Paul Eggert.

	* wcsmbs/wchar.h: Fix documentation bugs.  Declare wcsdup only
	is __USE_GNU.

1997-11-03 02:48  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/bits/errno.h: Remove all error definitions.  This
	is only meant as a stub.

1997-10-31  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/standalone/bits/errno.h: Copied from
	sysdeps/generic/bits/errno.h and added all know error codes that
	are used in glibc.

1997-11-03 02:23  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/make_siglist.c: Add comment to clarify use and
	make sure the correct _NSIG value is used.
	Patch by Klaus Espenlaub <kespenla@student.informatik.uni-ulm.de>.

1997-11-03 00:20  Ulrich Drepper  <drepper@cygnus.com>

	* intl/localealias.c (read_alias_file): Correct handling of line
	reader which sometimes skipped complete lines (PR 205).
	Optimize a bit by using mempcpy.

1997-11-02 16:59  Philipp Thomas  <kthomas@gwdg.de>

	* intl/localealias.c (read_alias_file): Correctly set map[].value
	instead of overwriting map[].alias

1997-11-02 15:32  Ulrich Drepper  <drepper@cygnus.com>

	* libc.map: Add _IO_flockfile and _IO_funlockfile.
	Suggested by H.J. Lu <hjl@lucon.org>.

1997-11-02 15:17  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-error.c (_dl_signal_error): Use _strerror_internal instead
	of strerror.
	* assert/assert-perr.c: Use _strerror_internal directly instead of
	__strerror_r.
	Suggested by Joe Keane <jgk@jgk.org>.

1997-11-01 16:46  Zack Weinberg  <zack@rabi.phys.columbia.edu>

	* configure.in: Check for gcc-2.7.2 -pipe bug and hack around it
	(PR 245).

1997-11-01  Paul Eggert  <eggert@twinsun.com>

	* time/strptime.c (strptime_internal): Fix bug: %Oy forgot to
	assign tm_year.  Do not restrict %Y to years less than 2037 even
	on 32-bit time_t hosts, as strptime returns an int tm_year, not a
	time_t, and it's possible for programs to use the year without
	having to use time_t.

	non-directories in the list (PR 203).
1997-11-04 03:00:40 +00:00
Ulrich Drepper
af6f39063b Update.
1997-10-26 18:12  Ulrich Drepper  <drepper@cygnus.com>

	* libio/genops.c: Partial undo of last patch.
	* libio/stdfiles.c: Likewise.
	* libio/iofdopen.c: Use _IO_FILE_complete, not _IO_file_plus.
	* libio/iopopen.c: Likewise.
	* libio/iovdprintf.c: Likewise.
	* libio/libio.h: Remove duplicated `;'.
	* libio/stdio.c: Remove misleading comment.
	* libio/stdio.h: Declare standard streams as variables.

	* login/Makefile (distribute): Add README.utmpd.
	* login/README.utmpd: New file.
	Provided by Mark M. Kettenis <kettenis@phys.uva.nl>.

	* manual/job.texi: Document tcgetsid.
	* manual/pattern.texi: Document globfree.
	* manual/terminal.texi: Document B38400 ... B460800.

	* posix/confstr.c: Print "-D_FILE_OFFSET_SIZE=64" for _CS_LFS_CFLAGS.

	* posix/unistd.h: Add explanation of _POSIX_* constants.

	* posix/unists.h: Add prototypes for __pread, __pread64, __pwrite
	and __pwrite64.
	* sysdeps/generic/pread.c: Define as __pread and make pread weak alias.
	* sysdeps/generic/pread64.c: Likewise.
	* sysdeps/generic/pwrite.c: Likewise.
	* sysdeps/generic/pwrite64.c: Likewise.
	* sysdeps/posix/pread.c: Likewise.
	* sysdeps/posix/pwrite.c: Likewise.
	* sysdeps/posix/pread64.c: New file.
	* sysdeps/posix/pwrite64.c: Likewise.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir)=posix] (sysdep_routines):
	Add s_pread64 and s_pwrite64.
	* sysdeps/unix/sysv/linux/pread.c: New file.
	* sysdeps/unix/sysv/linux/pread64.c: New file.
	* sysdeps/unix/sysv/linux/pwrite.c: New file.
	* sysdeps/unix/sysv/linux/pwrite64.c: New file.
	* sysdeps/unix/sysv/linux/s_pread64.c: New file.
	* sysdeps/unix/sysv/linux/s_pwrite64.c: New file.
	* sysdeps/unix/sysv/linux/syscalls.list: Add pread and pwrite.
	* sysdeps/unix/sysv/linux/alpha/pread64.c: New (empty) file.
	* sysdeps/unix/sysv/linux/alpha/pwrite64.c: New (empty) file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: New (empty) file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: New (empty) file.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Add pread and pwrite
	with weak aliases for *64 functions.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.

	* string/bits/string2.h: Add casts to allow void * arguments.

	* sysdeps/i386/i486/bits/string.h: Define index and rindex only if
	__USE_BSD or __USE_XOPEN_EXTENDED.

	* sysdeps/unix/sysv/linux/bits/socket.h: Add SCM_RIGHTS and other
	SCM_* constants from kernel header.

	* termios/termios.h: Add prototype for tcgetsid.

1997-10-26 13:26  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* sunrpc/clnt_perr.c: Add trailing '\0' to strings.

	* sunrpc/get_myaddr.c: Include rpc/clnt.h for prototypes.

	* sunrpc/pmap_clnt.c: Use get_myaddress from header file.

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

	* configure.in: Punt if any directory mentioned in the
	enable-add-on parameter does not exist.

1997-10-25 19:25  Ulrich Drepper  <drepper@cygnus.com>

	* termios/Makefile (routines): Add tcgetsid.
	* termios/tcgetsid.c: New file.
	Provided by Mark M. Kettenis <kettenis@phys.uva.nl>.

1997-10-25 18:56  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/stdlib.h: Remove mblen optimization.
	* stdlib/mblen.c: Rewrite to make sure global state is not changed.
	Reported by anderson@metrolink.com.

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

	* malloc/thread-m.h [_LIBC]:  Use new __libc_internal_tsd_{set,get}
	interface for thread-specific data.

1997-10-25 06:51  Ulrich Drepper  <drepper@cygnus.com>

	* elf/dl-addr.c: Use braces for correct logical grouping.
	Patch by Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>.

1997-10-18 09:15  Geoff Keating  <geoffk@ozemail.com.au>

	* io/ftwtest-sh: Sometimes /tmp is a symlink to somewhere more
	convenient; that caused this test to break.

	* sysdeps/powerpc/dl-machine.h: Fix typo.

	* sysdeps/powerpc/bits/fenv.h: Don't use floating-point registers
	when -msoft-float is in effect, because this causes compilation to
	stop.
	* sysdeps/powerpc/bits/mathinlines.h: Likewise.

	* rpm/template: Add description, use RPM flags rather than the ones
	used to build the spec.  Build in a temporary directory, not /.

	* elf/dl-lookup.c: Don't include _itoa.h, it's not used.
	* elf/dl-minimal.c: Use _itoa_word rather than _itoa.  It seems that
	_itoa is the only routine that ld.so uses that requires something
	from libgcc.a on powerpc, so it would be best to avoid it in ld.so.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/_strerror.c: Likewise.
	* stdio-common/_itoa.c: Split out digits strings.
	* stdio-common/itoa-digits.c: New file.
	* stdio-common/Makefile: Add itoa-digits.

1997-10-21  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* manual/filesys.texi (Scanning Directory Content): Document error
	case more.

	* dirent/scandir.c (scandir): Ignore errors from select function.
	Suggested by urbanw@cs.umu.se (closes PR libc/316).

1997-10-25 06:18  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Corrections.
	Patch by Erik Troan <ewt@redhat.com>.

1997-10-25 04:00  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Favour exact
	matching of version function if both the general (1) and
	glibc-specific (3) entry are present.

1997-10-22 18:47  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* sunrpc/rpc/clnt.h: Add get_myaddress prototype.

	* nis/libnsl.map: Fix typo.

	* nis/nis_call.c: Fix memory leak.

1997-10-22 19:29  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/memcmp.c: Define __P if not defined before.
	Patch by Jim Meyering <meyering@eng.ascend.com>.

1997-10-21 22:09  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/sys/prctl.h: New file by Richard Gooch
	<rgooch@atnf.csiro.au>.

1997-10-21 21:50  Ulrich Drepper  <drepper@cygnus.com>

	* misc/syslog.c (vsyslog): Open console with O_NOCTTY.
	Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.

1997-10-21 18:07  Ulrich Drepper  <drepper@cygnus.com>

	* posix/wordexp.c: Improve handling of $... expressions.
	Patch by Tim Waugh <tim@cyberelk.demon.co.uk>.

1997-10-21 16:12  Ulrich Drepper  <drepper@cygnus.com>

	* manual/string.texi: Correct return values of bcopy and bzero.
	Patch by Matthew Wilcox <willy@odie.barnet.ac.uk>.

1997-10-18 15:03  Philip Blundell  <Philip.Blundell@pobox.com>

	* sysdeps/unix/sysv/linux/bits/socket.h: Correct types of some
	elements in struct msghdr and struct cmsghdr, to keep in step with
	the kernel.

1997-10-17 22:29  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/sparc/sparc32/init-first.h: Fix another
	bug in startup code.
	Patch by Eric Delaunay <delaunay@lix.polytechnique.fr>.

1997-10-16 20:17  Richard Henderson  <rth@cygnus.com>

	* sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Dump args to the
	stack and give the kernel a pointer.  Use the sysdep.h macros.

1997-10-17 04:07  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/sparc/sparc32/elf/start.S: Calculate argv correctly.
	Patch by Eric Delaunay <delaunay@lix.polytechnique.fr>.

1997-10-16  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/libm-ieee754/s_nextafterxf.c [!__STDC__]: Correct typo.

1997-10-16 14:50  Ulrich Drepper  <drepper@cygnus.com>

	* manual/pattern.texi: Document globfree.

1997-10-15 21:11  Philip Blundell  <Philip.Blundell@pobox.com>

	* sysdeps/unix/sysv/linux/net/if_packet.h: New file.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
	net/if_packet.h.

	* sysdeps/unix/sysv/linux/net/if_arp.h (ARPHRD_ASH): New type, for
	64Mbps ASH.
	(ARPHRD_ETHER): This is used for 100Mbps networks too.

1997-10-15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* Makerules (install): Use full pathnames for linker script.
	This is to work around a limitation in `ld' while no better solution
	is possible.

1997-10-15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* malloc/malloc.c (mmap_chunk): Put inline before static in
	function definition to avoid compiler warning.
	(malloc_extend): Likewise.

	* sysdeps/generic/des_impl.c: Include "des.h" to avoid warning.

1997-10-15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* NEWS: Fix @gnu.ai.mit.edu -> @gnu.org.
	* README.template: Likewise.
	* db/makedb.c: Likewise.
	* elf/ldd.bash.in: Likewise.
	* elf/ldd.sh.in: Likewise.
	* intl/locale.alias: Likewise.
	* login/programs/utmpd.c: Likewise.
	* libio/stdfiles.c [!_IO_MTSAFE] (DEF_STDFILE): Fix parameter list.

1997-10-14  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Rules: Remove all empty.* files.
	(shared-only-routines): Correct implementation.

1997-10-14  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/libm-ieee754/s_lrintl.c: Make compilable.
	* sysdeps/libm-ieee754/s_llrintl.c: Likewise.  Optimized.

1997-10-14  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/ldd.bash.in: Only prepend ./ if the file contains no slash
	at all.
	* elf/ldd.sh.in: Likewise.

1997-10-14  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/m68k/sys/ucontext.h: New file.

1997-10-13  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/m68k/fpu/s_scalbln.c: New (empty) file.
	* sysdeps/m68k/fpu/s_scalblnf.c: New (empty) file.
	* sysdeps/m68k/fpu/s_scalblnl.c: New (empty) file.

	* sysdeps/m68k/fpu/s_scalbn.c: Add scalbln alias.
	* sysdeps/m68k/fpu/s_scalbnf.c: Adapted.
	* sysdeps/m68k/fpu/s_scalbnl.c: Adapted.

	* sysdeps/m68k/fpu/s_lrint.c: Add standard skeleton stuff.
	* sysdeps/m68k/fpu/s_lrintf.c: New file.
	* sysdeps/m68k/fpu/s_lrintl.c: New file.

	* sysdeps/m68k/fpu/bits/mathinline.h: Add fma and scalbln.  Update
	lrint and scalbn.
	(__m81_inline) [__cplusplus]: Define to __inline.

	* math/bits/mathcalls.h: Remove whitespace before second argument
	of __MATHDECL.  Add note explaining this.

1997-10-13  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* manual/arith.texi (Absolute Value): Spelling fix.

1997-10-13  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* malloc/obstack.h (obstack_empty_p) [!__GNUC__]: Properly
	parenthesize the macro parameter.

	* Rules: Remove rules to magically install <subdir>.h headers.
1997-10-26 20:13:00 +00:00
Ulrich Drepper
f41c80910d Update.
1997-08-24 12:24  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in (INSTALL): Quote `$'.

	* libc.map: Add __xpg_basename.

	* csu/Makefile (initfini.s): Disable optimization.

	* elf/dl-deps.c: Implement handling of DL_FILTER.

	* elf/dl-load.c (_dl_init_paths): Add error check.

	* intl/finddomain.c (_nl_find_domain): Correct comment.
	* intl/localealias.c: Include <bits/libc-lock.h> not <libc-lock.h>.

	* libio/stdio.h: Make {,v}snprintf available if __USE_BSD.
	Change extern inline functions to work correctly in C++.

	* locale/iso-4217.def: Update for more recent ISO 4217 version.

	* locale/loadlocale.c (_nl_load_locale): Add cast.

	* manual/message.texi: Finish gettext section.

	* posix/getopt_init.c: Don't use relative #include path.
	(__getopt_clean_environment): Change function to take pointer to
	environment as argument.  Optimize generation of test string a bit.
	* sysdeps/unix/sysv/linux/init-first.c: Call __getopt_clean_environment
	with additional argument.

	* poisx/glob.c: Add prototype for next_brace_sub.

	* sysdeps/generic/dl-sysdep.c: Recognize AT_BASE value on auxiliary
	vector.

	* sysdeps/i386/dl-machine.h (elf_machine_load_address): Rewrite
	to not generate relocation entry.  Suggested by Richard Henderson.
	(ELF_MACHINE_BEFORE_RTLD_RELOC): Removed.
	(elf_machine_runtime_setup): Add .aligns.

	* sysdeps/i386/fpu/fraiseexcpt.c: Add volatile to asms.

	* sysdeps/i386/fpu/bits/mathinline.h: Partially undo change of
	1997-08-14 03:14.  gcc 2.7.2* is really broken in some aspects.

	* sysdeps/standalone/i386/i386.h: Clean up asm statements a bit.
	* sysdeps/standalone/i960/i960ca.h: Likewise.

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

	* elf/rtld.c (_dl_start): Init _dl_rtld_map.l_opencount due to
	undocumented test addition in _dl_map_object.

	Support ET_EXEC versions of ld.so, for debugging at least:

	* elf/dl-load.c (_dl_map_object): Add_name_to_object could get
	called despite the DT_SONAME != NULL test, segfaulting.  Simplify
	the code here as well.
	* elf/dl-lookup.c (do_lookup): Skip objects with no symtab.
	(_dl_setup_hash): Likewise for hash tables.
	* elf/dl-version.c (_dl_check_map_versions): Likewise for strtabs.
	* elf/rtld.c (_dl_start): Likewise for rpath.
	(_dl_rtld_libname2): New variable.
	(dl_main): Use it to add an soname for ourselves when we don't have
	one of our own.  Base it on the target's .interp.
	(dl_main): Again, skip printing of objects that don't have strtabs.

	Sparc 32 merge:

	* elf/dl-runtime.c (ELF_FIXUP_RETURN_VALUE): Provide default value.
	(fixup): Simplify code.  Use ELF_FIXUP_RETURN_VALUE.
	(profile_fixup): Likewise, though this still needs fixing for
	Sparc32 and PPC.
	* sysdeps/powerpc/dl-machine.h: Transmute ELF_FIXUP_RETURNS_ADDRESS
	to ELF_FIXUP_RETURN_VALUE.

	* sysdeps/sparc/sparc32/dl-machine.h: Implement lazy relocation.
	Fix up _dl_start_user to handle _dl_skip_args properly.
	Use _dl_hwcap to determine if "flush" is available/needed.

	* sysdeps/sparc/configure.in: Remove.  It doesn't actually do
	anything anymore, and what it did do is done somewhere else.
	* sysdeps/sparc/configure: Likewise.

	* sysdeps/sparc/fpu/bits/mathdef.h (FP_ILOGB0, FP_ILOGBNAN): New.

	* sysdeps/sparc/fpu/fraiseexcpt.c: Rearrange for smaller code.

	* sysdeps/sparc/sparc32/Makefile: Fix sparc->sparc/sparc32 bits
	in divrem expansions.

	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (END, LOC): New
	definitions for assembly syntax differences.

	* sysdeps/sparc/sparc32/__longjmp.S: %g6,%g7 are reserved to the
	"system".  Use %g2,%g3 instead.  Use new local label macro.
	* sysdeps/sparc/sparc32/add_n.S: Use <sysdep.h> and ENTRY, END,
	and LOC for proper assembly headers/footers.
	* sysdeps/sparc/sparc32/addmul_1.S: Likewise.
	* sysdeps/sparc/sparc32/alloca.S: Likewise.
	* sysdeps/sparc/sparc32/dotmul.S: Likewise.
	* sysdeps/sparc/sparc32/lshift.S: Likewise.
	* sysdeps/sparc/sparc32/mul_1.S: Likewise.
	* sysdeps/sparc/sparc32/rshift.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv8/addmul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv8/mul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv8/submul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv8/udiv_qrnnd.S: Likewise.
	* sysdeps/sparc/sparc32/sub_n.S: Likewise.
	* sysdeps/sparc/sparc32/submul_1.S: Likewise.
	* sysdeps/sparc/sparc32/udiv_qrnnd.S: Likewise.
	* sysdeps/sparc/sparc32/umul.S: Likewise.
	* sysdeps/sparc/sparc32/divrem.m4: Likewise.
	* sysdeps/sparc/sparc32/rem.S: Regenerate.
	* sysdeps/sparc/sparc32/sdiv.S: Regenerate.
	* sysdeps/sparc/sparc32/udiv.S: Regenerate.
	* sysdeps/sparc/sparc32/urem.S: Regenerate.

	* sysdeps/sparc/sparc32/sparcv8/dotmul.S: New file.
	* sysdeps/sparc/sparc32/sparcv8/rem.S: New file.
	* sysdeps/sparc/sparc32/sparcv8/sdiv.S: New file.
	* sysdeps/sparc/sparc32/sparcv8/udiv.S: New file.
	* sysdeps/sparc/sparc32/sparcv8/umul.S: New file.
	* sysdeps/sparc/sparc32/sparcv8/urem.S: New file.

	* sysdeps/sparc/sparc32/bsd-_setjmp.S: Dike out.
	* sysdeps/sparc/sparc32/bsd-setjmp.S: Likewise.
	* sysdeps/sparc/sparc32/setjmp.S: Add _setjmp and setjmp entry points.

	* sysdeps/unix/sysv/linux/sparc/sparc32/__sigtrampoline.S:
	Clean up PIC code.

	* sysdeps/sparc/sparc32/elf/start.S: New file, slightly modified
	from the sparc64 version.
	* sysdeps/sparc/sparc32/elf/start.c: Removed.

	* sysdeps/unix/sysv/linux/sparc/sparc32/init-first.h: Rewrite in
	assembly based on the sparc64 version.

	* sysdeps/sparc/sparc32/fpu/bits/fenv.h: Duh.  Use proper syntax
	for manipulating %fsr.
	* sysdeps/sparc/sparc32/fpu/fpu_control.h: Make IEEE conformance
	be the default.

	* elf/elf.h (HWCAP_SPARC_*): New definitions.
	* elf/rtld.c (_dl_hwcap): New variable.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Record AT_HWCAP.

	* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: New file.
	Attempt to get hold of the page size based on what we might have
	been told at startup time in _dl_pagesize.  This will be obsolete
	when I finish the kernel hooks for a proper sysconf(), stay tuned.

	Sparc 64 merge:

	* sysdeps/sparc/sparc64/dl-machine.h (ELF_FIXUP_RETURN_VALUE): New.
	Figure out the right thing to return based on the .plt format.

	* sysdeps/sparc/sparc64/fpu/fpu_control.h: Update comment.

	* sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h (__dev_t):
	Should have been 64-bits wide.

	* sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: sll->sllx,
	optimize for branch delay slot usage.

1997-08-22  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* csu/Makefile ($(objpfx)crt%.o): Fix a missing *.so -> *.os
	change.

1997-08-20  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* math/libm-test.c (identities): Change epsilon.

	* sysdeps/i386/fpu/bits/mathinline.h: Correct arguments to fabs,
	fabsf, fabsl, __fabsl.

	* sysdeps/libm-i387/e_remainderl.S: Pop extra value from FPU stack.
	* sysdeps/libm-ieee754/s_csinhl.c: Include <fenv.h>.
1997-08-24 10:55:18 +00:00
Ulrich Drepper
f9a73ae19a Update.
1997-06-26 02:06  Ulrich Drepper  <drepper@cygnus.com>

	* Makerules ($(common-objpfx)libc.so): Use $(load-map-file) in
	dependency, not $(libc-map).

	* sysdeps/posix/mk-stdiolim.c: Pretty print.

1997-06-25 15:54  Fila Kolodny  <fila@ibi.com>

	* sysdeps/posix/Makefile ($(common-objpfx)bits/stdio_lim.h): Don't
	conditionalize this on whether we are cross-compiling.

1997-06-21 15:47  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* elf/dl-lookup.c (do_lookup): Use default definition
	for a default versioned symbol.

	* elf/dl-version.c (_dl_check_map_versions): Set the hidden field.

	* elf/dlvsym.c (__dlvsym): Set the hidden field to 1.

	* elf/link.h (r_found_version): Add the hidden field.

	* math/test-matherr.c: New file.

	* math/Makefile (tests): Add test-matherr.
	(libm-support): Put back s_matherr.
	(static-only-routines, aux): Remove s_matherr.
1997-06-26 00:09:27 +00:00
Ulrich Drepper
5107cf1d7d Update.
1997-06-21 02:48  Ulrich Drepper  <drepper@cygnus.com>

	* config.h.in: Add DO_STATIC_NSS.
	* config.make.in: Add build-static-nss.

	* elf/eval.c: Use __getdelim instead of __getline.

	* locale/programs/locale.c: Correct comment.

	* manual/libc.texinfo: Update copyright and date.
	Remove A4 option.

	* sysdeps/libm-ieee754/k_standard.c: Always return HUGE_VAL
	for gamma overflow.
	* sysdeps/libm-ieee754/w_gamma.c: Handle SVID and ISO C behaviour.
	* sysdeps/libm-ieee754/w_gammaf.c: Likewise.
	* sysdeps/libm-ieee754/w_gammalp.c: Likewise.

	* po/ko.po: Update.

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

	The Great Bit File Move:
	* configure.in (AC_INIT): Look in include/ for features.h.
	(sysnames): Add include as the final search directory.
	(AC_OUTPUT): Create a bits directory in the build directory.
	* Makeconfig (CPPFLAGS): Look in include/ for libc-symbols.h.
	* Makefile: Make sure the target directory exists when installing
	<gnu/stubs.h> and <gnu/lib-names.h>.
	* csu/Makefile: Use $(compile.S) and $(compile.c) instead of
	invoking $(CC) directly, as the former have the full include path.

	* ansidecl.h: Removed.

	* aliases.h: Moved to include/.
	* alloca.h: Likewise.
	* argp.h: Likewise.
	* argz.h: Likewise.
	* arpa/ftp.h: Likewise.
	* arpa/inet.h: Likewise.
	* arpa/nameser.h: Likewise.
	* arpa/telnet.h: Likewise.
	* arpa/tftp.h: Likewise.
	* assert.h: Likewise.
	* ctype.h: Likewise.
	* db.h: Likewise.
	* dirent.h: Likewise.
	* dlfcn.h: Likewise.
	* elf.h: Likewise.
	* endian.h: Likewise.
	* envz.h: Likewise.
	* err.h: Likewise.
	* errno.h: Likewise.
	* error.h: Likewise.
	* fcntl.h: Likewise.
	* features.h: Likewise.
	* fnmatch.h: Likewise.
	* ftw.h: Likewise.
	* getopt.h: Likewise.
	* glob.h: Likewise.
	* gnu-versions.h: Likewise.
	* grp.h: Likewise.
	* langinfo.h: Likewise.
	* libc-symbols.h: Likewise.
	* libgen.h: Likewise.
	* libintl.h: Likewise.
	* limits.h: Likewise.
	* linewrap.h: Likewise.
	* link.h: Likewise.
	* locale.h: Likewise.
	* malloc.h: Likewise.
	* math.h: Likewise.
	* mathcalls.h: Likewise.
	* mcheck.h: Likewise.
	* memory.h: Likewise.
	* netdb.h: Likewise.
	* netgroup.h: Likewise.
	* netinet/ether.h: Likewise.
	* netinet/in.h: Likewise.
	* nlist.h: Likewise.
	* nss.h: Likewise.
	* nsswitch.h: Likewise.
	* obstack.h: Likewise.
	* poll.h: Likewise.
	* posix1_lim.h: Likewise.
	* posix2_lim.h: Likewise.
	* printf.h: Likewise.
	* protocols/routed.h: Likewise.
	* protocols/rwhod.h: Likewise.
	* protocols/talkd.h: Likewise.
	* protocols/timed.h: Likewise.
	* pwd.h: Likewise.
	* regex.h: Likewise.
	* resolv.h: Likewise.
	* rpc/auth_unix.h: Likewise.
	* rpc/clnt.h: Likewise.
	* rpc/netdb.h: Likewise.
	* rpc/pmap_clnt.h: Likewise.
	* rpc/pmap_prot.h: Likewise.
	* rpc/pmap_rmt.h: Likewise.
	* rpc/rpc.h: Likewise.
	* rpc/rpc_msg.h: Likewise.
	* rpc/svc.h: Likewise.
	* rpc/svc_auth.h: Likewise.
	* rpc/types.h: Likewise.
	* rpc/xdr.h: Likewise.
	* sched.h: Likewise.
	* search.h: Likewise.
	* set-hooks.h: Likewise.
	* setjmp.h: Likewise.
	* sgtty.h: Likewise.
	* shadow.h: Likewise.
	* signal.h: Likewise.
	* stab.def: Likewise.
	* stab.h: Likewise.
	* stdio.h: Likewise.
	* stdlib.h: Likewise.
	* string.h: Likewise.
	* strings.h: Likewise.
	* sys/bitypes.h: Likewise.
	* sys/cdefs.h: Likewise.
	* sys/dir.h: Likewise.
	* sys/errno.h: Likewise.
	* sys/fcntl.h: Likewise.
	* sys/file.h: Likewise.
	* sys/gmon.h: Likewise.
	* sys/ioctl.h: Likewise.
	* sys/ipc.h: Likewise.
	* sys/msg.h: Likewise.
	* sys/poll.h: Likewise.
	* sys/queue.h: Likewise.
	* sys/resource.h: Likewise.
	* sys/select.h: Likewise.
	* sys/sem.h: Likewise.
	* sys/shm.h: Likewise.
	* sys/signal.h: Likewise.
	* sys/socket.h: Likewise.
	* sys/stat.h: Likewise.
	* sys/statfs.h: Likewise.
	* sys/syslog.h: Likewise.
	* sys/termios.h: Likewise.
	* sys/time.h: Likewise.
	* sys/timeb.h: Likewise.
	* sys/times.h: Likewise.
	* sys/types.h: Likewise.
	* sys/uio.h: Likewise.
	* sys/un.h: Likewise.
	* sys/unistd.h: Likewise.
	* sys/utsname.h: Likewise.
	* sys/vlimit.h: Likewise.
	* sys/vtimes.h: Likewise.
	* sys/wait.h: Likewise.
	* syscall.h: Likewise.
	* syslog.h: Likewise.
	* tar.h: Likewise.
	* termios.h: Likewise.
	* time.h: Likewise.
	* ttyent.h: Likewise.
	* unistd.h: Likewise.
	* utime.h: Likewise.
	* utmp.h: Likewise.
	* values.h: Likewise.
	* wchar.h: Likewise.
	* wctype.h: Likewise.
	* wordexp.h: Likewise.
	* xlocale.h: Likewise.
	* xopen_lim.h: Likewise.

	* linuxthreads/sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h.
	* linuxthreads/sysdeps/powerpc/semaphorebits.h: Likewise.
	* linuxthreads/sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise.
	* linuxthreads/sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise.
	* linuxthreads/sysdeps/pthread/libc-lock.h: -> bits/
	* sysdeps/mach/libc-lock.h: Likewise.
	* sysdeps/stub/libc-lock.h: Likewise.
	* linuxthreads/sysdeps/pthread/stdio-lock.h: Likewise.
	* linuxthreads/sysdeps/unix/sysv/linux/local_lim.h: Likewise.
	* sysdeps/mach/hurd/local_lim.h: Likewise.
	* sysdeps/stub/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
	* sysdeps/unix/sysv/local_lim.h: Likewise.
	* sysdeps/unix/sysv/sco3.2/local_lim.h: Likewise.
	* linuxthreads/sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
	* sysdeps/mach/hurd/posix_opt.h: Likewise.
	* sysdeps/stub/posix_opt.h: Likewise.
	* sysdeps/unix/bsd/posix_opt.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/posix_opt.h: Likewise.
	* sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
	* math/cmathcalls.h: -> bits/
	* math/mathcalls.h: Likewise.
	* misc/stab.def: -> bits/
	* posix/posix1_lim.h: -> bits/
	* posix/posix2_lim.h: Likewise.
	* sysdeps/alpha/__math.h: -> .../fpu/bits/mathinline.h
	* sysdeps/i386/fpu/__math.h: Likewise.
	* sysdeps/m68k/fpu/__math.h: Likewise.
	* sysdeps/m68k/fpu/switch/__math.h: Likewise.
	* sysdeps/powerpc/__math.h: Likewise.
	* sysdeps/stub/__math.h: Likewise.
	* sysdeps/alpha/bytesex.h: -> .../bits/endian.h
	* sysdeps/arm/bytesex.h: Likewise.
	* sysdeps/i386/bytesex.h: Likewise.
	* sysdeps/m68k/bytesex.h: Likewise.
	* sysdeps/mips/bytesex.h: Likewise.
	* sysdeps/mips/dec/bytesex.h: Likewise.
	* sysdeps/mips/mipsel/bytesex.h: Likewise.
	* sysdeps/mips/p40/bytesex.h: Likewise.
	* sysdeps/sparc/bytesex.h: Likewise.
	* sysdeps/stub/bytesex.h: Likewise.
	* sysdeps/alpha/fpu/fenvbits.h: -> .../bits/fenv.h
	* sysdeps/i386/fpu/fenvbits.h: Likewise.
	* sysdeps/m68k/fpu/fenvbits.h: Likewise.
	* sysdeps/powerpc/fenvbits.h: Likewise.
	* sysdeps/stub/fenvbits.h: Likewise.
	* sysdeps/alpha/jmp_buf.h: -> .../bits/setenv.h
	* sysdeps/arm/jmp_buf.h: Likewise.
	* sysdeps/i386/jmp_buf.h: Likewise.
	* sysdeps/m68k/jmp_buf.h: Likewise.
	* sysdeps/mips/jmp_buf.h: Likewise.
	* sysdeps/sparc/jmp_buf.h: Likewise.
	* sysdeps/powerpc/jmp_buf.h: Likewise.
	* sysdeps/stub/jmp_buf.h: Likewise.
	* sysdeps/vax/jmp_buf.h: Likewise.
	* sysdeps/generic/confname.h: -> bits/
	* sysdeps/unix/sysv/irix4/confname.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/confname.h: Likewise.
	* sysdeps/generic/gnu/types.h: -> ../bits/types.h
	* sysdeps/unix/sysv/linux/alpha/gnu/types.h: Likewise.
	* sysdeps/unix/sysv/linux/gnu/types.h: Likewise.
	* sysdeps/generic/ioctl-types.h: -> bits/
	* sysdeps/unix/sysv/linux/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/ioctl-types.h: Likewise.
	* sysdeps/generic/iovec.h: -> .../bits/uio.h
	* sysdeps/unix/sysv/linux/iovec.h: Likewise.
	* sysdeps/generic/mathbits.h: -> .../bits/mathdef.h
	* sysdeps/i386/fpu/mathbits.h: Likewise.
	* sysdeps/m68k/fpu/mathbits.h: Likewise.
	* sysdeps/powerpc/mathbits.h: Likewise.
	* sysdeps/generic/resourcebits.h: -> .../bits/resource.h
	* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Likewise.
	* sysdeps/unix/sysv/linux/resourcebits.h: Likewise.
	* sysdeps/generic/schedbits.h: -> .../bits/sched.h
	* sysdeps/unix/sysv/linux/schedbits.h: Likewise.
	* sysdeps/generic/selectbits.h: -> .../bits/select.h
	* sysdeps/i386/selectbits.h: Likewise.
	* sysdeps/generic/sigaction.h: -> bits/
	* sysdeps/unix/bsd/osf/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/sigaction.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sigaction.h: Likewise.
	* sysdeps/unix/sysv/minix/sigaction.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/sigaction.h: Likewise.
	* sysdeps/unix/sysv/sysv4/sigaction.h: Likewise.
	* sysdeps/generic/sigset.h: -> bits/
	* sysdeps/unix/sysv/linux/sigset.h: Likewise.
	* sysdeps/unix/sysv/sysv4/sigset.h: Likewise.
	* sysdeps/generic/sockaddrcom.h: -> .../bits/sockaddr.h
	* sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: Likewise.
	* sysdeps/generic/socketbits.h: -> .../bits/socket.h
	* sysdeps/unix/sysv/linux/socketbits.h: Likewise.
	* sysdeps/generic/statfsbuf.h: -> .../bits/statfs.h
	* sysdeps/unix/sysv/linux/statfsbuf.h: Likewise.
	* sysdeps/generic/termbits.h: -> .../bits/termios.h
	* sysdeps/unix/bsd/sun/sunos4/termbits.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/termbits.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/termbits.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/termbits.h: Likewise.
	* sysdeps/unix/sysv/linux/termbits.h: Likewise.
	* sysdeps/generic/ustatbits.h: -> .../bits/ustat.h
	* sysdeps/unix/sysv/linux/ustatbits.h: Likewise.
	* sysdeps/generic/utmpbits.h: -> .../bits/utmp.h
	* sysdeps/gnu/utmpbits.h: Likewise.
	* sysdeps/unix/sysv/utmpbits.h: Likewise.
	* sysdeps/generic/utsnamelen.h: -> .../bits/utsname.h
	* sysdeps/unix/bsd/sun/sunos4/utsnamelen.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/utsnamelen.h: Likewise.
	* sysdeps/unix/sysv/linux/utsnamelen.h: Likewise.
	* sysdeps/unix/sysv/sysv4/utsnamelen.h: Likewise.
	* sysdeps/unix/sysv/utsnamelen.h: Likewise.
	* sysdeps/generic/waitstatus.h: -> bits/
	* sysdeps/i386/huge_val.h: -> bits/
	* sysdeps/ieee754/huge_val.h: Likewise.
	* sysdeps/m68k/huge_val.h: Likewise.
	* sysdeps/stub/huge_val.h: Likewise.
	* sysdeps/vax/huge_val.h: Likewise.
	* sysdeps/ieee754/nan.h: Likewise.
	* sysdeps/stub/nan.h: Likewise.
	* sysdeps/mach/hurd/alpha/sigcontext.h: -> bits/
	* sysdeps/mach/hurd/hppa/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/i386/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/mips/sigcontext.h: Likewise.
	* sysdeps/stub/sigcontext.h: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sigcontext.h: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sigcontext.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/sigcontext.h: Likewise.
	* sysdeps/unix/sysv/linux/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/errnos.h: -> .../bits/errno.h
	* sysdeps/standalone/arm/errnos.h: Likewise.
	* sysdeps/stub/errnos.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/errnos.h: Likewise.
	* sysdeps/unix/sysv/linux/errnos.h: Likewise.
	* sysdeps/mach/hurd/fcntlbits.h: -> .../bits/fcntl.h
	* sysdeps/stub/fcntlbits.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/fcntlbits.h: Likewise.
	* sysdeps/unix/bsd/fcntlbits.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/fcntlbits.h: Likewise.
	* sysdeps/unix/common/fcntlbits.h: Likewise.
	* sysdeps/unix/sysv/fcntlbits.h: Likewise.
	* sysdeps/unix/sysv/irix4/fcntlbits.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/fcntlbits.h: Likewise.
	* sysdeps/unix/sysv/linux/fcntlbits.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/fcntlbits.h: Likewise.
	* sysdeps/mach/hurd/ioctls.h: -> bits/
	* sysdeps/stub/ioctls.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/ioctls.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/ioctls.h: Likewise.
	* sysdeps/mach/hurd/statbuf.h: -> .../bits/stat.h
	* sysdeps/stub/statbuf.h: Likewise.
	* sysdeps/unix/bsd/osf/alpha/statbuf.h: Likewise.
	* sysdeps/unix/bsd/statbuf.h: Likewise.
	* sysdeps/unix/sysv/irix4/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/statbuf.h: Likewise.
	* sysdeps/unix/sysv/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/i386/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/statbuf.h: Likewise.
	* sysdeps/standalone/stdio_lim.h: -> bits/
	* sysdeps/stub/stdio_lim.h: Likewise.
	* sysdeps/stub/direntry.h: -> ../bits/dirent.h
	* sysdeps/unix/bsd/bsd4.4/direntry.h: Likewise.
	* sysdeps/unix/bsd/direntry.h: Likewise.
	* sysdeps/unix/common/direntry.h: Likewise.
	* sysdeps/unix/sysv/direntry.h: Likewise.
	* sysdeps/unix/sysv/linux/direntry.h: Likewise.
	* sysdeps/stub/elfclass.h: -> bits/
	* sysdeps/wordsize-32/elfclass.h: Likewise.
	* sysdeps/wordsize-64/elfclass.h: Likewise.
	* sysdeps/stub/signum.h: -> bits/
	* sysdeps/unix/bsd/signum.h: Likewise.
	* sysdeps/unix/bsd/sun/signum.h: Likewise.
	* sysdeps/unix/sysv/irix4/signum.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/signum.h: Likewise.
	* sysdeps/unix/sysv/linux/signum.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/signum.h: Likewise.
	* sysdeps/unix/sysv/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/signum.h: Likewise.
	* sysdeps/stub/sys/ipc_buf.h: -> .../bits/ipc.h
	* sysdeps/unix/sysv/linux/alpha/sys/ipc_buf.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/ipc_buf.h: Likewise.
	* sysdeps/stub/sys/msq_buf.h: -> .../bits/msq.h
	* sysdeps/unix/sysv/linux/sys/msq_buf.h: Likewise.
	* sysdeps/stub/sys/sem_buf.h: -> .../bits/sem.h
	* sysdeps/unix/sysv/linux/sys/sem_buf.h: Likewise.
	* sysdeps/stub/sys/shm_buf.h: -> .../bits/shm.h
	* sysdeps/unix/sysv/linux/sys/shm_buf.h: Likewise.
	* sysdeps/stub/timebits.h: -> .../bits/time.h
	* sysdeps/unix/sysv/linux/alpha/timebits.h: Likewise.
	* sysdeps/unix/sysv/linux/timebits.h: Likewise.
	* sysdeps/stub/waitflags.h: -> bits/
	* sysdeps/unix/bsd/waitflags.h: Likewise.
	* sysdeps/unix/sysv/linux/waitflags.h: Likewise.
	* sysdeps/unix/sysv/sysv4/waitflags.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sys/kernel_termios.h: -> ../
	* sysdeps/unix/sysv/linux/powerpc/sys/kernel_termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/kernel_termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/socketcall.h: -> ../

	* argp/argp-fmtstream.h: Standardize the multiple-include protect.
	* argp/argp.h: Likewise.
	* catgets/nl_types.h: Likewise.
	* crypt/sysdeps/unix/crypt.h: Likewise.
	* ctype/ctype.h: Likewise.
	* db/db.h: Likewise.
	* db/mpool.h: Likewise.
	* db/ndbm.h: Likewise.
	* dirent/dirent.h: Likewise.
	* elf/dlfcn.h: Likewise.
	* elf/elf.h: Likewise.
	* elf/link.h: Likewise.
	* gmon/sys/gmon.h: Likewise.
	* gmon/sys/gmon_out.h: Likewise.
	* grp/grp.h: Likewise.
	* inet/aliases.h: Likewise.
	* inet/arpa/ftp.h: Likewise.
	* inet/arpa/inet.h: Likewise.
	* inet/arpa/telnet.h: Likewise.
	* inet/arpa/tftp.h: Likewise.
	* inet/netinet/ether.h: Likewise.
	* inet/netinet/icmp6.h: Likewise.
	* inet/netinet/in.h: Likewise.
	* inet/netinet/ip6.h: Likewise.
	* inet/protocols/routed.h: Likewise.
	* inet/protocols/rwhod.h: Likewise.
	* inet/protocols/talkd.h: Likewise.
	* inet/protocols/timed.h: Likewise.
	* intl/libintl.h: Likewise.
	* io/fcntl.h: Likewise.
	* io/fts.h: Likewise.
	* io/ftw.h: Likewise.
	* io/sys/poll.h: Likewise.
	* io/sys/stat.h: Likewise.
	* io/sys/statfs.h: Likewise.
	* io/utime.h: Likewise.
	* linuxthreads/semaphore.h: Likewise.
	* linuxthreads/sysdeps/pthread/pthread.h: Likewise.
	* locale/locale.h: Likewise.
	* login/pty.h: Likewise.
	* login/utmp.h: Likewise.
	* malloc/malloc.h: Likewise.
	* malloc/obstack.h: Likewise.
	* math/complex.h: Likewise.
	* math/fenv.h: Likewise.
	* math/math.h: Likewise.
	* md5-crypt/md5.h: Likewise.
	* misc/ar.h: Likewise.
	* misc/err.h: Likewise.
	* misc/error.h: Likewise.
	* misc/fstab.h: Likewise.
	* misc/libgen.h: Likewise.
	* misc/nlist.h: Likewise.
	* misc/sys/cdefs.h: Likewise.
	* misc/sys/file.h: Likewise.
	* misc/sys/ioctl.h: Likewise.
	* misc/sys/queue.h: Likewise.
	* misc/sys/select.h: Likewise.
	* misc/sys/syslog.h: Likewise.
	* misc/sys/uio.h: Likewise.
	* misc/sysexits.h: Likewise.
	* misc/ttyent.h: Likewise.
	* nss/nss.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/getopt.h: Likewise.
	* posix/glob.h: Likewise.
	* posix/regex.h: Likewise.
	* posix/sys/times.h: Likewise.
	* posix/sys/types.h: Likewise.
	* posix/sys/utsname.h: Likewise.
	* posix/sys/wait.h: Likewise.
	* posix/tar.h: Likewise.
	* posix/unistd.h: Likewise.
	* posix/wordexp.h: Likewise.
	* pwd/pwd.h: Likewise.
	* resolv/arpa/nameser.h: Likewise.
	* resolv/netdb.h: Likewise.
	* resolv/resolv.h: Likewise.
	* resource/sys/resource.h: Likewise.
	* resource/sys/vlimit.h: Likewise.
	* resource/sys/vtimes.h: Likewise.
	* setjmp/setjmp.h: Likewise.
	* shadow/shadow.h: Likewise.
	* socket/sys/socket.h: Likewise.
	* socket/sys/un.h: Likewise.
	* stdlib/exit.h: Likewise.
	* stdlib/fmtmsg.h: Likewise.
	* stdlib/monetary.h: Likewise.
	* stdlib/stdlib.h: Likewise.
	* string/argz.h: Likewise.
	* string/envz.h: Likewise.
	* string/memory.h: Likewise.
	* string/string.h: Likewise.
	* string/strings.h: Likewise.
	* sunrpc/rpc/rpc.h: Likewise.
	* sunrpc/rpc/svc.h: Likewise.
	* sunrpc/rpc/types.h: Likewise.
	* sunrpc/rpc/xdr.h: Likewise.
	* termios/sys/ttychars.h: Likewise.
	* termios/termios.h: Likewise.

	* argp/argp-parse.c: <foo.h> -> <bits/foo.h>.
	* crypt/sysdeps/unix/crypt_util.c: Likewise.
	* dirent/dirent.h: Likewise.
	* elf/link.h: Likewise.
	* grp/fgetgrent.c: Likewise.
	* grp/grp.h: Likewise.
	* hurd/hurd/ioctl.h: Likewise.
	* inet/getnameinfo.c: Likewise.
	* inet/getnetgrent_r.c: Likewise.
	* inet/inet_ntoa.c: Likewise.
	* inet/netinet/in.h: Likewise.
	* io/fcntl.h: Likewise.
	* io/ftw.h: Likewise.
	* io/sys/stat.h: Likewise.
	* io/sys/statfs.h: Likewise.
	* io/utime.h: Likewise.
	* libio/_G_config.h: Likewise.
	* libio/libio.h: Likewise.
	* libio/libioP.h: Likewise.
	* libio/stdio.h: Likewise.
	* linuxthreads/lockfile.c: Likewise.
	* linuxthreads/semaphore.h: Likewise.
	* locale/duplocale.c: Likewise.
	* locale/freelocale.c: Likewise.
	* locale/lc-time.c: Likewise.
	* locale/setlocale.c: Likewise.
	* login/getutent_r.c: Likewise.
	* login/getutid_r.c: Likewise.
	* login/getutline_r.c: Likewise.
	* login/lastlog.h: Likewise.
	* login/pty.h: Likewise.
	* login/utmp.h: Likewise.
	* login/utmpname.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* malloc/thread-m.h: Likewise.
	* math/complex.h: Likewise.
	* math/fenv.h: Likewise.
	* math/libm-test.c: Likewise.
	* math/math.h: Likewise.
	* misc/sgtty.h: Likewise.
	* misc/stab.h: Likewise.
	* misc/sys/ioctl.h: Likewise.
	* misc/sys/select.h: Likewise.
	* misc/sys/uio.h: Likewise.
	* misc/sys/ustat.h: Likewise.
	* misc/syslog.c: Likewise.
	* nis/nss_compat/compat-grp.c: Likewise.
	* nis/nss_compat/compat-pwd.c: Likewise.
	* nis/nss_compat/compat-spwd.c: Likewise.
	* nis/nss_nis/nis-alias.c: Likewise.
	* nis/nss_nis/nis-ethers.c: Likewise.
	* nis/nss_nis/nis-grp.c: Likewise.
	* nis/nss_nis/nis-hosts.c: Likewise.
	* nis/nss_nis/nis-netgrp.c: Likewise.
	* nis/nss_nis/nis-network.c: Likewise.
	* nis/nss_nis/nis-proto.c: Likewise.
	* nis/nss_nis/nis-publickey.c: Likewise.
	* nis/nss_nis/nis-pwd.c: Likewise.
	* nis/nss_nis/nis-rpc.c: Likewise.
	* nis/nss_nis/nis-service.c: Likewise.
	* nis/nss_nis/nis-spwd.c: Likewise.
	* nss_nisplus/nisplus-alias.c: Likewise.
	* nis/nss_nisplus/nisplus-ethers.c: Likewise.
	* nis/nss_nisplus/nisplus-grp.c: Likewise.
	* nis/nss_nisplus/nisplus-hosts.c: Likewise.
	* nis/nss_nisplus/nisplus-netgrp.c: Likewise.
	* nis/nss_nisplus/nisplus-netgrp.c: Likewise.
	* nis/nss_nisplus/nisplus-proto.c: Likewise.
	* nis/nss_nisplus/nisplus-pwd.c: Likewise.
	* nis/nss_nisplus/nisplus-rpc.c: Likewise.
	* nis/nss_nisplus/nisplus-service.c: Likewise.
	* nis/nss_nisplus/nisplus-spwd.c: Likewise.
	* nis/ypclnt.c: Likewise.
	* nss/getXXbyYY.c: Likewise.
	* nss/getXXent.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* nss/nss_db/db-XXX.c: Likewise.
	* nss/nss_db/db-alias.c: Likewise.
	* nss/nss_db/db-netgrp.c: Likewise.
	* nss/nss_files/files-XXX.c: Likewise.
	* nss/nss_files/files-alias.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* posix/sched.h: Likewise.
	* posix/sys/types.h: Likewise.
	* posix/sys/utsname.h: Likewise.
	* posix/sys/wait.h: Likewise.
	* posix/unistd.h: Likewise.
	* pwd/fgetpwent.c: Likewise.
	* pwd/pwd.h: Likewise.
	* resource/sys/resource.h: Likewise.
	* setjmp/setjmp.h: Likewise.
	* shadow/fgetspent.c: Likewise.
	* shadow/lckpwdf.c: Likewise.
	* shadow/sgetspent.c: Likewise.
	* signal/signal.h: Likewise.
	* signal/sigsetops.c: Likewise.
	* socket/sys/socket.h: Likewise.
	* socket/sys/un.h: Likewise.
	* stdio/stdio.h: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdio-common/vfscanf.c: Likewise.
	* stdlib/atexit.c: Likewise.
	* stdlib/fmtmsg.c: Likewise.
	* stdlib/random.c: Likewise.
	* string/endian.h: Likewise.
	* sysdeps/alpha/w_sqrt.S: Likewise.
	* sysdeps/arm/__longjmp.S: Likewise.
	* sysdeps/arm/setjmp.S: Likewise.
	* sysdeps/generic/abort.c: Likewise.
	* sysdeps/generic/netinet/ip.h: Likewise.
	* sysdeps/generic/setenv.c: Likewise.
	* generic/sys/mman.h: Likewise.
	* sysdeps/i386/__longjmp.S: Likewise.
	* sysdeps/i386/setjmp.S: Likewise.
	* sysdeps/mach/hurd/dirstream.h: Likewise.
	* sysdeps/mach/hurd/jmp-unwind.c: Likewise.
	* sysdeps/posix/mk-stdiolim.c: Likewise.
	* sysdeps/powerpc/__longjmp.S: Likewise.
	* sysdeps/powerpc/setjmp.S: Likewise.
	* sysdeps/sparc/__longjmp.S: Likewise.
	* sysdeps/sparc/setjmp.S: Likewise.
	* sysdeps/standalone/close.c: Likewise.
	* sysdeps/standalone/filedesc.h: Likewise.
	* sysdeps/standalone/open.c: Likewise.
	* sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Likewise.
	* sysdeps/unix/bsd/m68k/sysdep.S: Likewise.
	* sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sethostid.S: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sethostid.S: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/vax/sysdep.S: Likewise.
	* sysdeps/unix/dirstream.h: Likewise.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/mips/sysdep.S: Likewise.
	* sysdeps/unix/mk-local_lim.c: Likewise.
	* sysdeps/unix/sparc/sysdep.S: Likewise.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/arm/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/m68k/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/netinet/ip.h: Likewise.
	* sysdeps/unix/sysv/linux/netinet/tcp.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/syscall.h: Likewise.
	* sysdeps/unix/sysv/linux/tcgetattr.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/sysconf.S: Likewise.
	* sysdeps/unix/sysv/sysv4/i386/sysdep.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S: Likewise.
	* sysvipc/sys/ipc.h: Likewise.
	* sysvipc/sys/msg.h: Likewise.
	* sysvipc/sys/sem.h: Likewise.
	* sysvipc/sys/shm.h: Likewise.
	* termios/termios.h: Likewise.
	* time/localtime.c: Likewise.
	* time/sys/time.h: Likewise.
	* time/time.h: Likewise.
	* time/tzset.c: Likewise.

	* sysdeps/unix/sysv/linux/arm/socket.S: socketcall.h change.
	* sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
	* sysdeps/unix/sysv/linux/m68k/socket.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/socket.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/socket.S: Likewise.

	* Makefile (headers): foo.h -> bits/foo.h.
	* dirent/Makefile: Likewise.
	* elf/Makefile: Likewise.
	* io/Makefile: Likewise.
	* linuxthreads/Makefile: Likewise.
	* linuxthreads/sysdeps/pthread/Makefile: Likewise.
	* login/Makefile: Likewise.
	* math/Makefile: Likewise.
	* misc/Makefile: Likewise.
	* posix/Makefile: Likewise.
	* resource/Makefile: Likewise.
	* setjmp/Makefile: Likewise.
	* signal/Makefile: Likewise.
	* socket/Makefile: Likewise.
	* stdio-common/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/Makefile: Likewise.
	* sysvipc/Makefile: Likewise.
	* termios/Makefile: Likewise.
	* time/Makefile: Likewise.
	* sysdeps/generic/Makefile (make_siglist-CFLAGS): Likewise.
	* sysdeps/posix/Makefile: stdio_lim.h -> bits/stdio_lim.h
	* sysdeps/unix/Makefile: Likewise with local_lim.h, errnos.h,
	ioctls.h, termbits.h.

	* sysdeps/unix/sysv/linux/Dist: sys/kernel_termios.h
	-> kernel_termios.h, sys/socketcall.h -> socketcall.h

	* elf/elf.h: Use <inttypes.h> definitions instead of __attribute__
	for getting the proper length on the ELF types to be friendly to
	non-gcc compilers.
	* posix/sys/types.h: Notice when int8_t and friends are defined
	and don't redefine them.
	* sysdeps/wordsize-32/inttypes.h: Likewise.
	* sysdeps/wordsize-64/inttypes.h: Likewise.

	* sysdeps/unix/sysv/linux/arm/profil-counter.h: Get sigcontext
	via <signal.h> instead.
	* sysdeps/unix/sysv/linux/i386/profil-counter.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/profil-counter.h: Likewise.

1997-06-20 17:59  Kazumoto Kojima  <kkojima@kk.info.kanagawa-u.ac.jp>

	* hurd/intr-msg.c: More 64bit changes.
	* mach/msg-destroy.c: Likewise.
	* sysdeps/mach/hurd/ioctl.c: Likewise.
	* sysdeps/mach/hurd/ioctls.h: Likewise.
	* sysdeps/mach/hurd/select.c: Likewise.
	* sysdeps/mach/hurd/statbuf.h: Likewise.

	* sysdeps/mach/hurd/mips/dl-machine.c: Hurd/MIPS64 patches.
	* sysdeps/mach/hurd/mips/exc2signal.c: Likewise.
	* sysdeps/mach/hurd/mips/init-fault.c: Likewise.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
	* sysdeps/mach/hurd/mips/intr-msg.h: Likewise.
	* sysdeps/mach/hurd/mips/longjmp-ctx.c: Likewise.
	* sysdeps/mach/hurd/mips/longjmp-ts.c: Likewise.
	* sysdeps/mach/hurd/mips/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/mips/sigreturn.c: Likewise.
	* sysdeps/mach/hurd/mips/trampoline.c: Likewise.
	* sysdeps/mach/mips/cacheflush.c: Likewise.
	* sysdeps/mach/mips/machine-lock.h: Likewise.
	* sysdeps/mach/mips/machine-sp.h: Likewise.
	* sysdeps/mach/mips/syscall.S: Likewise.
	* sysdeps/mach/mips/sysdep.h: Likewise.
	* sysdeps/mach/mips/thread_state.h: Likewise.
	* sysdeps/mach/start.c: Likewise.

	* sysdeps/mips/dl-machine.h: MIPS changes.
	* sysdeps/mips/elf/start.S: Likewise.
	* sysdeps/mips/init-first.c: Likewise.
	* sysdeps/mips/fpu_control.h: Likewise.
	* sysdeps/mips/machine-gmon.h: Likewise.
	* sysdeps/mips/jmp_buf.h: Likewise.
	* sysdeps/mips/__longjmp.c: Likewise.
	* sysdeps/mips/bsd-_setjmp.S: Likewise.
	* sysdeps/mips/bsd-setjmp.S: Likewise.
	* sysdeps/mips/setjmp.S: Likewise.
	* sysdeps/mips/setjmp_aux.c: Likewise.
	* sysdeps/mips/mips64/gmp-mparam.h: Likewise.
	* sysdeps/mips/add_n.S: New file.
	* sysdeps/mips/addmul_1.S: Likewise.
	* sysdeps/mips/lshift.S: Likewise.
	* sysdeps/mips/mul_1.S: Likewise.
	* sysdeps/mips/rshift.S: Likewise.
	* sysdeps/mips/sub_n.S: Likewise.
	* sysdeps/mips/submul_1.S: Likewise.
	* sysdeps/mips/mips64/Implies: Likewise.
	* sysdeps/mips/mips64/add_n.S: Likewise.
	* sysdeps/mips/mips64/addmul_1.S: Likewise.
	* sysdeps/mips/mips64/lshift.S: Likewise.
	* sysdeps/mips/mips64/mul_1.S: Likewise.
	* sysdeps/mips/mips64/rshift.S: Likewise.
	* sysdeps/mips/mips64/sub_n.S: Likewise.
	* sysdeps/mips/mips64/submul_1.S: Likewise.
	* sysdeps/mips/add_n.S: Removed.
	* sysdeps/mips/addmul_1.S: Likewise.
	* sysdeps/mips/lshift.S: Likewise.
	* sysdeps/mips/mul_1.S: Likewise.
	* sysdeps/mips/rshift.S: Likewise.
	* sysdeps/mips/sub_n.S: Likewise.
	* sysdeps/mips/submul_1.S: Likewise.

	* nss/Makefile: Prepare for static NSS.
	* resolv/Makefile: Likewise.
	* nss/nsswitch.c: Add code for static NSS.
	* nss/function.def: Define functions for static NSS.

1997-06-19 11:10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* libc.map: Add yet more symbols.

1997-06-19 20:33  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/dl-lookup.c (_dl_lookup_versioned_symbol): Don't pass NULL
	as object name to _dl_signal_error.
	(do_lookup): Skip objects that could not be opened.

	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Check that the
	symbol was found.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	* sysdeps/powerpc/dl-machine.h (elf_machine_rela): Likewise.

1997-06-20 03:13  Kazumoto Kojima  <kkojima@kk.info.kanagawa-u.ac.jp>

	* ctype/ctype-info.c: Use int32_t where `int' with 4 bytes is
	assumed.
	* ctype/ctype.h: Likewise.
	* math/math_private.h: Likewise.
	* inet/netinet/in.h: Likewise.
	* wctype/wctype.h: Likewise.

	* nss/Makefile: Only inhibit nss_files and nss_db modules if static
	NSS modules are not enabled.
	* resolv/Makefile: Likewise for nss_dns.
	* nss/function.def: New file.  List all available lookup functions
	for static NSS.
	* nss/nsswitch.c: Add code for static NSS.

1997-06-15 21:15  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* math/libm-test.c (gamma_test): Test for _SVID_ and for normal
	behaviour.

1997-06-15 20:32  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* math/libm.map: Add all necessary functions, correct existing entries.

1997-06-20 02:35  a sun  <asun@zoology.washington.edu>

	* sysdeps/unix/sysv/linux/netipx/ipx.h: Don't use kernel header.

1997-06-19 18:43  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_parse_spent):
	Compare pointer with NULL.

	* login/logout.c (logout): Compare pututline result with NULL.

	* inet/rcmd.c: Correct a few typos.  Reported by Erik Troan.
1997-06-21 02:59:26 +00:00
Ulrich Drepper
714a562f0b Update.
<1997-06-12 21:22  Ulrich Drepper  <drepper@cygnus.com>

	* Makefile (libc-map): Define before including Makerules.
	* Makerules (lib%.so): Depend on $(lib%-map).
	(build-shlib): Adapt rule for above change.
	(libc.so): Depend on $(libc-map).
	* db/Makefile (libcdb-map): New definition.
	* elf/Makefile (libdl-map): New definition.
	* elf/dl-lookup.c: Don't use relative include path.
	(undefined_msg): New variable.  Use single string in all functions.
	(do_lookup): Correctly recognize default version.
	Return -2 if no version information is available.
	Stop processing hash entries when string was found.
	Don't bark about missing versioned symbol in file with original
	reference if it is a weak symbol.
	(_dl_lookup_symbol): Use undefined_msg.
	(_dl_lookup_versioned_symbol): Likewise.
	Give extra information if no verdef info is available.
	* elf/dl-version.c (file_needed): Remove first argument.  We must
	seek in the whole search list.
	(match_symbol): Correct check for available verdef info.
	(_dl_check_map_versions): Correct call of find_needed.
	* locale/Makefile (libBrokenLocale-map): New definition.
	* login/Makefile (libutil-map): New definition.
	* math/Makefile (libm-map): New definition.
	* md5-crypt/Makefile (libcrypt-map): New definition.
	* nis/Makefile (libnsl-map, libnss_compat-map, libnss_nis-map,
	libnss_nisplus-map): New definition.
	* nss/Makefile (libnss_files-map, libnss_db-map): New definitions.
	* resolv/Makefile (libresolv-map, libnss_dns-map): New definitions.
	* libc.map: New file.
	* db/libdb.map: New file.
	* elf/libdl.map: New file.
	* locale/libBrokenLocale.map: New file.
	* login/libutil.map: New file.
	* math/libm.map: New file.
	* md5-crypt/libcrypt.map: New file.
	* nis/libnss_compat.map: New file.
	* nis/libnsl.map: New file.
	* nis/libnss_nis.map: New file.
	* nis/libnss_nisplus.map: New file.
	* nss/libnss_files.map: New file.
	* nss/libnss_db.map: New file.
	* resolv/libnss_dns.map: New file.
	* resolv/libresolv.map: New file.

	* sysdeps/i386/dl-machine.h (elf_machine_rel): Don't do anything
	for R_386_NONE entries.

	* Makefile (manual/dir-add.info): New rule.

	* Makerules: Add vpath definition for .x files.

	* Makerules (distinfo): Make sure target directory exists.

	* argp/argp-help.c (argp_args_usage): Don't modify `fdoc' value
	since it is used to distinguish filtered strings from unmodifed
	strings.

	* elf/dl-lookup.c (do_lookup): Optimize STT_* recognition.
	* elf/dl-reloc.c: Fix typo.

	* inet/arpa/tftp.h (struct tftphdr): Change type of tu_block to
	`unsigned short'.

	* manual/Makefile (dir-add.texi): Also emit wrapper text for
	info/install-info.
	(distribute): Add dir-add.texi and dir-add.info.
	(mostlyclean): Add dir-add.info.
	(realclean): Add dir-add.texi.
	(install): Add entries in `dir' file using install-info.

	* manual/libc.texinfo: Add @dircategory and @direntry text.
	Reported by Miles Bader <miles@gnu.ai.mit.edu>.

	* manual/pattern.texi: Correct description of GLOB_MAGCHAR and
	GLOB_NOMAGIC.  Changes by Roland McGrath <roland@gnu.ai.mit.edu>.

	* nis/nis_addmember.c: Little optimizations.
	* nis/nis_call.c: Likewise.
	* nis/nis_creategroup.c: Likewise.
	* nis/nis_defaults.c: Likewise.
	* nis/nis_destroygroup.c: Likewise.
	* nis/nis_ismember.c: Likewise.
	* nis/nis_local_names.c: Likewise.
	* nis/nis_print_group_entry.c: Likewise.
	* nis/nis_verifygroup.c: Likewise.

	* posix/unistd.h: Fix comment for getcwd.

	* stdlib/Makefile (headers): Remove inttypes.h.  It's a system
	dependent header.
	* sysdeps/wordsize-32/Dist: New file.
	* sysdeps/wordsize-32/Makefile: New file.
	* sysdeps/wordsize-64/Dist: New file.
	* sysdeps/wordsize-64/Makefile: New file.

	* sunrpc/Makefile: Adopt comment for real situation.

	* sysdeps/i386/add_n.S: Add ASM_TYPE_DIRECTIVE and AS_SIZE_DIRECTIVE.
	* sysdeps/i386/addmul_1.s: Likewise.
	* sysdeps/i386/lshist.s: Likewise.
	* sysdeps/i386/rshift.s: Likewise.
	* sysdeps/i386/sub_n.s: Likewise.
	* sysdeps/i386/submul_1.s: Likewise.

	* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
	Add .type and .size.

1997-06-12 13:32  Philip Blundell  <Philip.Blundell@pobox.com>

	* libc/sysdeps/unix/arm/brk.S: New file.
	* libc/sysdeps/unix/arm/sysdep.S: Likewise.
	* libc/sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.

1997-06-11 11:51  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_parse_spent):
	Check if we have shadow information.

1997-06-08 19:33  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nis/nis_getservlist.c (nis_getservlist): Use calloc instead of
	malloc, alloc memory for nis_server struct.
	* nis/nis_getservlist.c (nis_freeservlist): Give the memory for
	the nis_server struct free, too.

	* nis/nis_removemember (nis_removemember): Fix for loop.

1997-06-12 12:45  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/fpu/__math.h (__M_SQRT2): Define here since we
	cannot rely on M_SQRT2 being defined.  (log1p): Use __M_SQRT2 not
	M_SQRT2.
	* math/math.h (_Mldbl): Define even if M_* constants are not
	defined.
	Reported by corsepiu@faw.uni-ulm.de.

1997-06-12 03:08  Philip Blundell  <Philip.Blundell@pobox.com>

	* nss/getXXbyYY_r.c (do_weak_alias): Remove extra parentheses.

1997-06-11 13:22  Ulrich Drepper  <drepper@cygnus.com>

	* misc/regexp.h (compile): Allow use of macro INIT for variable
	declaration.  Add documentation for INIT.
	Reported by Robert Bihlmeyer <robbe@orcus.priv.at>.

1997-06-11 10:47  Philip Blundell  <Philip.Blundell@pobox.com>

	* sysdeps/unix/sysv/linux/net/if_arp.h: Add two new hardware types.

1997-06-10 11:31  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* sysdeps/powerpc/strlen.s: Use -0x101 instead of 0xfffffeff
	for a signed 16-bit value.

1997-06-07 07:54  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
	(_dl_sysdep_read_whole_file): Deleted.

	* sysdeps/powerpc/fenvbits.h (__FE_ALL_INVALID): Changed
	to FE_ALL_INVALID.

	* sysdeps/powerpc/fraiseexcpt.c (__FE_INVALID_SOFTWARE):
	Changed to FE_INVALID_SOFTWARE.
	(__FPSCR_STICKY_BITS): Changed to FPSCR_STICKY_BITS.

	* sysdeps/libm-ieee754/s_fmin.c: Fix a typo.

1997-06-07 18:48  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* shlib-versions (.*-.*-linux.*): Set libc to 6.

1997-06-08 15:35  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nis/nis_add.c (nis_add): Use nis_leaf_of_r instead of nis_name_of_r.

	* nis/nis_addmember.c (nis_addmember): Fix a lot of pointer errors.
	* nis/nis_clone.c: Likewise.
	* nis/nis_removemember.c (nis_removemember): Likewise.
	* nis/nis_table.c: Likewise.

	* nis/nss_nis/nis-hosts.c: Use addr, not p for inet_pton call.
	* nis/nss_nisplus/nisplus-hosts.c: Likewise.

	* nis/nss_nis/nis-netgrp.c (_nss_nis_setnetgrent): Check for
	group == NULL.

1997-06-08 21:21  Mark Kettenis  <kettenis@phys.uva.nl>

	* login/login.c, login/utmp_daemon.c, login/utmp_file.c,
	login/getutent_r.c, login/utmpname.c: Cleanup `#if _LIBC' and
	`#ifndef _LIBC' fragments.

	* login/programs/utmpd.c: Define DEFAULT_USER.
	(drop_priviliges): Use it.
	(main): Set locale and text domain.

	* login/programs/utmpd-private.h: Declare proc_utmp_eq.
	* login/programs/database.c (proc_utmp_eq): Removed.
	* login/programs/request.c (proc_utmp_eq): Made global.  Only use
	ut_id field if valid.

	* login/utmp_file.c (proc_utmp_eq): Restore patch made by Miles
	Bader that was lost when adding the daemon backend; Only use ut_id
	field if valid.

1997-06-05 23:10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/Dist: Remove netatalk/atalk.h and
	netinet/icmp.h, add netatalk/at.h.
	* sysdeps/unix/sysv/linux/powerpc/Dist: Remove termios.h.
	* sysdeps/unix/sysv/linux/sparc/Dist: Remove start.c.

1997-06-04 19:22  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* stdlib/testsort.c (compare): Fix parameter types.

1997-06-04 19:05  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* md5-crypt/Makefile (distribute): Fix name of file.

1997-06-04 19:02  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* login/Makefile (utmpd-routines): Remove utmpd again, which is
	already added implicitly through $(others).

1997-06-05 13:43  Fila Kolodny  <fila@filapc.ibi.com>

	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add netipx/ipx.h.

1997-06-05 13:25  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* md5-crypt/md5-crypt.c: Add prototype for __md5_crypt.

1997-06-05 17:08  Ulrich Drepper  <drepper@cygnus.com>

	* string/argz-addsep.c: Correct weak alias.
	Reported by Ben Pfaff <pfaffben@pilot.msu.edu>.

	* locale/setlocale.c (setlocale): Free variable with locale path
	before returning.
	(setname): Don't test for _nl_current[category] being NULL before
	freeing.
	Reported by Ben Pfaff <pfaffben@pilot.msu.edu>.

1997-06-04 12:41  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* manual/intro.texi (XPG): Correct some typos.

	* manual/libc.texinfo (Program Arguments): Menu updated.
	* nis/nis_local_names.c (nis_local_host): Fix pointer errors.
1997-06-12 21:38:55 +00:00
Ulrich Drepper
f671aeab4e Update.
1997-05-31 02:33  Ulrich Drepper  <drepper@cygnus.com>

	* io/ftwtest-sh: More tests.

	* misc/tsearch.c: Rewrite tdestroy_recursive.

	* libio/libio.h: Define bits for libg++-2.8.

1997-05-30 22:21  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nis/nss_nis/nis-hosts.c: Same changes as in
	nss/nss_files/files-hosts.c (Always use inet_pton).
	* nis/nss_nisplus/nisplus-hosts.c: Likewise.

1997-05-30 09:50  Richard Henderson  <rth@tamu.edu>

	* manual/maint.texi: ECOFF hasn't been tested in ages and I don't
	plan on doing so ever again.  Don't say alpha-linuxecoff is known
	to work.

	* elf/dl-lookup.c: Include <alloca.h>.
	* misc/tsearch.c: Include <string.h>.
	* posix/execle.c: Include <alloca.h>.
	* posix/execlp.c: Likewise.
	* stdio-common/printf_fphex.c: Include <string.h>.
	* sunrpc/xdr.c: Include <string.h>.
	* sysdeps/generic/memccpy.c: Include only <string.h>.

	* sunrpc/clnt_udp.c (clntudp_call): Make fromlen a size_t to fix
	parameters to network functions.
	* sunrpc/pmap_rmt.c (clnt_broadcast): Likewise.
	* sunrpc/svc_tcp.c (svctcp_create): Likewise with `len'.
	(rendezvous_request): Likewise.
	* sunrpc/svc_udp.c (svcudp_bufcreate): Likewise.
	(svcudp_recv): Similar, but go through a local variable.  The old code
	used &xprt->xp_addrlen.  Someone should determine if the type of the
	structure member should be changed instead.
	* sunrpc/xdr_rec.c (xdrrec_create): Expunge a ptr->int cast warning
	and transform a nonsense for-loop to a closed form calculation.
	(fill_input_buf): Another ptr->int warning.

	* sysdeps/alpha/Makefile: Temporarily turn on -mieee globally.  This
	will last until I figure out how to build a parallel libm_ieee.

	* sysdeps/alpha/fpu/fclrexcpt.c,
	* sysdeps/alpha/fpu/fegetenv.c,
	* sysdeps/alpha/fpu/fegetround.c,
	* sysdeps/alpha/fpu/feholdexcpt.c,
	* sysdeps/alpha/fpu/fenvbits.h,
	* sysdeps/alpha/fpu/fesetenv.c,
	* sysdeps/alpha/fpu/fesetround.c,
	* sysdeps/alpha/fpu/feupdateenv.c,
	* sysdeps/alpha/fpu/fgetexcptflg.c,
	* sysdeps/alpha/fpu/fraiseexcpt.c,
	* sysdeps/alpha/fpu/fsetexcptflg.c,
	* sysdeps/alpha/fpu/ftestexcept.c: New files.  There is, btw, a small
	kernel patch that must be applied as of 2.0.31-pre1 and 2.1.41 for
	this to work properly.

	* sysdeps/alpha/fpu/fpu_control.h: Update copyright.  Change default
	FP mode to round to nearest, no exceptions as for Intel.
	* sysdeps/unix/sysv/linux/alpha/setfpucw.c: Add copyright.
	(rdfpcr): Use excb rather than trapb.  Be more efficient about
	getting at the fpcr.
	(wrfpcr): Likewise.
	(__setfpucw): Reformat.

	* sysdeps/ieee754/huge_val.h: Change GCC's HUGE_VAL definition to use
	a single DI-mode integer instead of bytes.  This produces better code
	on Alpha.  Similar for HUGE_VALF.
	* sysdeps/ieee754/nan.h: Similar for NAN.  Add NANF and NANL.

	* sysdeps/libm-ieee754/s_log2.c: Missing */ and weak_alias.

	* sysdeps/unix/alpha/sysdep.S: Tiny cleanups.
	* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/brk.S: Don't use jmp macro to make
	sure the stack frame is released the very instruction before the
	real jump out.
	* 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/gnu/types.h: Undef some bits we may
	have gotten from <linux/posix_types.h>.

	* sysdeps/unix/sysv/linux/alpha/ioperm.c: Add definition for Miata.

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

	* misc/tst-tsearch.c (mangle_tree): Update casts to prevent
	warnings.

1997-05-29 14:02  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/sys/ttydefaults.h (CEOL, CSTATUS): Use
	correct value for _POSIX_VDISABLE.

1997-05-29 13:59  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Makefile (manual/dir-add.texi): Force execution.

1997-05-29 13:57  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysexits.h: New file.

1997-05-29 13:55  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* stdlib/strfmon.c: Don't run past EOS after `='.

1997-02-27 10:34  Richard Henderson  <rth@tamu.edu>
1997-05-31 00:47:04 +00:00
Ulrich Drepper
1f205a479b Update.
1997-05-21 02:49  Ulrich Drepper  <drepper@cygnus.com>

	* gnu-versions.h (_GNU_OBSTACK_INTERFACE_VERSION): Set to 2 since
	interface was changed with addition of _obstack_memory_used.
	Suggested by Ian Taylor <ian@cygnus.com>.

	* malloc/obstack.c: Include <config.h>.  Include <stdlib.h> only
	if __GNU_LIBRARY__ or HAVE_STDLIB_H is defined.
	Reported by Ian Taylor <ian@cygnus.com>.

	* dirent/Makefile (routines): Add versionsort.
	* dirent/dirent.h: Add prototype for versionsort.
	* dirent/versionsort.c: New file.
	* manual/filesys.texi: Add documentation for versionsort.
	* manual/string.texi: Add documentation for strverscmp.
	* string/Makefile (routines): Add strverscmp.
	(tests): Add tst-svc.
	* string/string.h: Add prototype for strverscmp.
	* string/strverscmp.c: New file.
	* string/tst-svc.c: New file.  Test for strverscmp.
	* string/tst-svc.input: New file.  Input data for tst-svc.
	* string/tst-svc.expect: New file.  Expected out from tst-svc.

	* math/Makefile (calls): Add s_signbit.

	* po/sv.po: Update.

	* resolv/nss_dns/dns-host.c: Add casts to prevent warnings.
	* sunrpc/pmap_rmt.c: Likewise.

	* string/basename.c: Don't use ISO C definition style.
	Include <config.h> is HAVE_CONFIG_H is defined.

	* sunrpc/proto.h: Add `const' wherever possible.
	* sunrpc/rpc_cout.c: Likewise.
	* sunrpc/rpc_svcout.c: Likewise.
	* sunrpc/xdr_mem.c: Likewise.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_stdio.c: Likewise.
	* sunrpc/rpc_parse.c: Delete comma from end of enum definition.
	* sunrpc/xdr.c: Little code cleanups.
	* sunrpc/xdr_flaot.c: Likewise.
	Patches by Matthew Wilcox <matthew.wilcox@chbs.mhs.ciba.com>.

	* sysdeps/i386/fpu/__math.h (__finite): Fix typo.

	* sysdeps/unix/sysv/linux/shmdt.c: Add cast to prevent warning.

	* time/europe: Update from tzdata1997f.
	* time/zic.c: Update from tzcode1997e.

1997-05-20 19:20  Miguel de Icaza <miguel@athena.nuclecu.unam.mx>

	* sysdeps/sparc/setjmp.S: Flush windows.
	Bug found by Richard Henderson.

1997-05-19 12:54  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* misc/efgcvt_r.c (fcvt_r, ecvt_r): Rewritten as to fit the specs.

1997-05-19 18:41  Thorsten Kukuk  <kukuk@uni-paderborn.de>

	* nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_parse_spent): Use
	atol instead of atoi.

1997-05-18 00:22  Philip Blundell <pjb27@cam.ac.uk>

	* inet/Makefile (routines): Add if_index.
	* sysdeps/unix/sysv/linux/if_index.c: New file.
	* sysdeps/stub/if_index.c: New file.
	* sysdeps/unix/sysv/linux/net/if.h: Add prototypes for routines in
	if_index.c (required by IPv6 basic API).
	* sysdeps/unix/sysv/linux/netinet/in.h: Add struct ipv6_pktinfo.

1997-05-17 23:29  Philip Blundell  <pjb27@cam.ac.uk>

	* sysdeps/unix/sysv/linux/netinet/in.h: Update IPv6 definitions
	for new advanced API draft.

1997-05-13 21:33  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* stdio-common/printf_fp.c: Only use the field width for deciding
	on padding when printing special values.
	* stdio-common/printf_fphex.c: Likewise.

1997-05-15 13:14  Miles Bader  <miles@gnu.ai.mit.edu>

	Changes by Thomas Bushnell <thomas@gnu.ai.mit.edu>:
	* hurd/hurdauth.c (_S_msg_add_auth): Implement correctly.

1997-05-12 14:50  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* hurd/hurdsig.c (_hurdsig_init): Double size of sigthread stack;
	msg_add_auth was overflowing it.

1997-05-12 21:20  Richard Henderson  <rth@tamu.edu>

	* elf/dl-lookup.c (_dl_lookup_symbol_skip): Call _dl_signal_error
	when we can't find the symbol.

1997-05-12 16:54  Ulrich Drepper  <drepper@cygnus.com>

	* posix/regex.c: Fix handling of 32-bit Windog environments.
	Patch by Arnold Robbins <arnold@skeeve.atl.ga.us>.

1997-05-10 23:26  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/m68k/syscalls.list: Add cacheflush.

1997-05-10 11:40  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/ldd.bash.in: Remove spurious quote character from version
	message.

1997-05-10 08:49  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* locale/programs/locale.c (write_charmaps): Don't get stuck in a
	loop if the file ends in a long line without newline.
	* locale/programs/charmap.c (charmap_read): Likewise.

1997-05-12 03:47  Ulrich Drepper  <drepper@cygnus.com>

	* sunrpc/rpc/xdr.h: Include more headers to be self-contained.
	* sunrpc/rpc/svc_auth.h: Likewise.
	* sunrpc/rpc/svc.h: Likewise.
	* sunrpc/rpc/rpc_msg.h: Likewise.
	* sunrpc/rpc/pmap_rmt.h: Likewise.
	* sunrpc/rpc/pmap_clnt.h: Likewise.
	* sunrpc/rpc/clnt.h: Likewise.
	* sunrpc/rpc/auth_unix.h: Likewise.
	* sysdeps/generic/rpc/auth.h: Likewise.
	Patches by Michael Deutschmann <ldeutsch@mail.netshop.net>.

1997-05-11 15:29  Philip Blundell  <pjb27@cam.ac.uk>

	* sysdeps/stub/sigaction.c (__sigaction): Correct typo.
	* sysdeps/standalone/arm/errnos.h: New file.
	* sysdeps/stub/sys/param.h: Add dummy definition of MAXSYMLINKS.
	* sysdeps/unix/arm/fork.S: New file.
	* sysdeps/unix/sysv/linux/arm/sysdep.h: New file.
	* sysdeps/stub/tempname.c (__stdio_gen_tempname): Add missing
	`streamptr' argument.
	* sysdeps/stub/vdprintf.c: Remove second copy of file (!), include
	<stdarg.h> to get va_list defined, return 0 not NULL.
	* sysdeps/unix/sysv/linux/statfsbuf.h: Include <gnu/types.h>.
	* sysdeps/unix/sysv/linux/arm/syscall.S: New file.
	* sysdeps/stub/direntry.h (struct dirent): Add missing ';'.
	* sysdeps/stub/seekdir.c (seekdir): Likewise.
	* sysdeps/stub/dirfd.c (dirfd): Argument dirp is DIR*, not FILE*.
	* sysdeps/standalone/dirstream.h: Define struct __dirstream
	not DIR; <dirent.h> provides typedef.
	* sysdeps/unix/sysv/linux/arm/clone.S: New file.
	* sysdeps/unix/sysv/linux/arm/socket.S: New file.
	* sysdeps/stub/sysconf.c (__sysconf): Fix typos.

1997-05-01 06:35  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/Dist: New file.
	* sysdeps/powerpc/Makefile: New file.
	* sysdeps/powerpc/fclrexcpt.c: New file.
	* sysdeps/powerpc/fegetenv.c: New file.
	* sysdeps/powerpc/fegetround.c: New file.
	* sysdeps/powerpc/feholdexcpt.c: New file.
	* sysdeps/powerpc/fenvbits.h: New file.
	* sysdeps/powerpc/fenv_const.c: New file.
	* sysdeps/powerpc/fenv_libc.h: New file.
	* sysdeps/powerpc/fesetenv.c: New file.
	* sysdeps/powerpc/fesetround.c: New file.
	* sysdeps/powerpc/feupdateenv.c: New file.
	* sysdeps/powerpc/fgetexcptflg.c: New file.
	* sysdeps/powerpc/fraiseexcpt.c: New file.
	* sysdeps/powerpc/fsetexcptflg.c: New file.
	* sysdeps/powerpc/ftestexcept.c: New file.
	* sysdeps/powerpc/mathbits.h: New file.

	* sysdeps/powerpc/dl-machine.h: Wrap in #ifndef dl_machine_h;
	define elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p,
	ELF_MACHINE_RELOC_NOPLT; consequent changes to elf_machine_rela.

	* sysdeps/powerpc/__math.h: Remove definition for hypot and __sgn.

	* sysdep/powerpc/fpu_control.h: Correct IEEE default mode.

	* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use .text, but
	instead .section ".text".

1997-04-25 05:06  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/__longjmp.S: Use symbolic register numbering.
	* sysdeps/powerpc/bsd-_setjmp.S: Likewise.
	* sysdeps/powerpc/bsd-setjmp.S: Likewise.
	* sysdeps/powerpc/setjmp.S: Likewise.

	* sysdeps/unix/sysv/linux/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/socket.S: Likewise.
	* sysdeps/unix/sysv/linux/syscall.S: Likewise.

1997-04-20 04:37  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/strchr.s: New file.
	* sysdeps/powerpc/strcmp.s: New (ugly) file.
	* sysdeps/powerpc/memset.s: New file.
	* string/tester.c: Include prototype and _GNU_SOURCE to make
	standalone compilation possible. Give strcmp a better
	test. Give memset a better test.

1997-04-05 06:34  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/strlen.s: Fixed bugs (how did it ever pass its
	tests before?). Changed to symbolic register numbering as an
	experiment.
	* sysdeps/powerpc/ffs.c: Don't include bstring.h, it doesn't
	exist.
	* sysdeps/rs6000/ffs.c: Likewise.

1997-05-12 02:28  Ulrich Drepper  <drepper@cygnus.com>

	* time/sys/time.h: Make second argument of setitimer const.
	Patch by Michael Deutschmann <ldeutsch@mail.netshop.net>.
	* sysdeps/stub/setitimer.c: Likewise.
	* sysdeps/mach/hurd/setitimer.c: Likewise.
1997-05-21 01:48:59 +00:00
Ulrich Drepper
bc9f6000f6 Update.
1997-03-23 02:11  Ulrich Drepper  <drepper@cygnus.com>

	* time/sys/time.h: Make values ITIMER_* also available as macros.

	* elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call
	__fstat but instead __fxstat directly to avoid dependency on
	libc.a when inline failed.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise.

	* math/Makefile (libm-routines): Add s_remquo.
	* sysdeps/libm-i387/s_remquo.S: New file.
	* sysdeps/libm-i387/s_remquof.S: New file.
	* sysdeps/libm-i387/s_remquol.S: New file.
	* sysdeps/libm-ieee754/s_remquo.c: New file.
	* sysdeps/libm-ieee754/s_remquof.c: New file.
	* sysdeps/libm-ieee754/s_remquol.c: New file.

	* math/libm-test.c (remquo_test): New function.

	* sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one
	correctly.

1997-03-22 14:06  Ulrich Drepper  <drepper@cygnus.com>

	* math/Makefile (libm-calls): Add s_nan.
	* sysdeps/libm-ieee754/s_nan.c: New file.  Implement `nan' function.
	* sysdeps/libm-ieee754/s_nanf.c: New file.  Implement `nanf' function.
	* sysdeps/libm-ieee754/s_nanl.c: New file.  Implement `nanl' function.

	* math/libm-test.c (basic_tests): Add tests for `nan' function.

	* math/libm-test.c (copysign_test): New function.
	(main): Call copysign_test.

1997-03-22 06:28  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y.
	* sysdeps/libm-ieee754/s_nextafterf.c: Likewise.
	* sysdeps/libm-ieee754/s_nextafterl.c: Likewise.
	* sysdeps/libm-i387/s_nextafterl.c: Likewise.

	* math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test):
	New functions.  Test these functions.
	(main): Call above new functions.

1997-03-22 04:53  Ulrich Drepper  <drepper@cygnus.com>

	* Net release 2.0.2.

1997-03-22 04:37  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for
	XTABS.
	* sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise.
	* termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab
	of Sun Dec 15 16:33:44 1996.
	Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>.

1997-03-21 13:41  Roland McGrath  <roland@baalperazim.frob.com>

	* sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386.
	Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or
	consult their values.
	(elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p,
	ELF_MACHINE_RELOC_NOPLT): New macros.

	* elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to
	_dl_lookup_symbol in place of DL_LOOKUP_NOPLT.
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro.

	* sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the
	symbol lookup before checking reloc type except for R_386_RELATIVE.
	(elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros.

	* elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be
	per-machine since it supposedly can't happen on i386.

	* elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE.  Use
	elf_machine_lookup_{noexec,noplt}_p macros on it.  Remove gratuitous
	indirection from REF arg; change callers.
	(_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name.
	(_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove
	FLAGS arg altogether.
	* elf/dlsym.c: Remove argument of FLAGS parameter.
	* elf/dlvsym.c: Likewise.
	* elf/link.h: Update decls.

	* Makefile (distribute): Add BUGS.
1997-03-23 01:54:07 +00:00
Ulrich Drepper
1fb05e3db1 update from main archive 970218
1997-02-19 03:28  Miles Bader  <miles@gnu.ai.mit.edu>

	* argp/argp-help.c: Add support for user provided filter of help
	messages.
	* argp/argp-parse.c: Likewise.
	* argp/argp.h: Likewise.
	* argp/argp-namefrob.h: Define __argp_input.

	* argp/argp-test.c: Add example for filter.

1997-02-19 02:58  Ulrich Drepper  <drepper@cygnus.com>

	* argp.h: New file.
	* locale/programs/locale.c: Switch to use argp.

	* errno.h: Make it possible to get definition of error_t even
	after having errno.h already.

	* elf/dl-hash.h: New file.  ELF hashing function.  Extracted
	from dl-lookup.c.
	* elf/dl-lookup.c (_dl_elf_hash): Remove definition.

	* elf/dl-load.c: Rename _dl_does_name_match_p to _dl_name_match_p.
	* elf/dl-version.c: Likewise.

	* elf/dl-lookup.c: Implement new versioning lookup scheme.
	* elf/dl-version.c (_dl_check_map_versions): Initialize new field
	in l_versions member.

	* elf/dlvsym.c: Correct call of _dl_lookup_versioned_symbol_skip
	and _dl_lookup_versioned_symbol.

	* elf/link.h: Rename hash_name_pair to struct r_found_version.
	* sysdeps/alpha/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.

	* intl/l10nflist.c: (_nl_make_l10nflist): Fix bug in computation of
	length of abs_filename.

	* locale/Makefile (CPPFLAGS): Define LOCALE_ALIAS_PATH.

	* locale/programs/ld-monetary.c (monetary_add): Allow value 0
	in mon_grouping information.  This means no more grouping.
	* locale/programs/ld-numeric.c (numeric_add): Write value \377
	when seein value 0 in grouping information.
	* locale/programs/linereader.c (lr_close): Don't free fname since
	it might be used in error messages.

	* locale/programs/locale.c: Check whether output of `locale -a'
	really is locale directory.  Also print locale aliases.

	* misc/search.h (__action_fn_t): Parameters VALUE and LEVEL cannot
	be const.

1997-02-19 02:16  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Correct #defin to
	#define.  Reported by Rick Flower <FLOWER@sdvax2.sdd.TRW.COM>.

1997-02-19 01:37  Erik Troan  <ewt@redhat.com>

	* shadow/sgetspent_r.c: Accept empty third, fourth and fifth fields.

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

	* sysdeps/unix/mman/syscalls.list: msync takes 3 arguments.
	Reported by Andreas Jaeger <aj@arthur.pfalz.de>.

	* sysdeps/stub/msync.c (msync): Add missing third parameter.

1997-02-19 00:29  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/bsd/sigsuspend.c: Call __sigpause with needed
	additional argument.

1997-02-18 22:13  Ulrich Drepper  <drepper@cygnus.com>

	* inet/net/ethernet.h: New file.
	* sysdeps/unix/sysv/linux/netinet/if_ether.c: Add BSD compatibility.
	* sysdeps/unix/sysv/linux/net/if_slip.h: New file.
	Contributed by a sun <asun@zoology.washington.edu>.

	* sysdeps/unix/sysv/linux/net/if_arp.h: Include <sys/socket.h>.
	* sunrpc/rpc/rpc_msg.h: Include <rpc/clnt.h>.
	Reported by a sun <asun@zoology.washington.edu>.

1997-02-16 14:25  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Makerules ((common-objpfx)distinfo-$(subdir)): Depend on sysdep
	makefiles which may change the distinfo variables.

1997-02-16 14:03  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers)
	[$(subdir)=misc]: Add sys/quota.h.
	(sysdep_headers) [$(subdir)=inet]: Add netinet/udp.h.

1997-02-17 13:12  aleph1@dfw.net

	* sunrpc/clnt_simp.c (callrpc): Prevent buffer overflow by using
	strncpy.

1997-02-18 03:28  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/bug10.c (main): Correct parameter.

1997-02-17 02:51  Ulrich Drepper  <drepper@cygnus.com>

	* malloc/obstack.h: Add `extern "C"' protection.
	* posix/regex.h: Likewise.
	* io/ftw.h: Likewise.
	* misc/libgen.h: Likewise.
	* login/utmp.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/reboot.h: Likewise.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
	* sunrpc/rpc/pmap_rmt.h: Likewise.
	* sunrpc/rpc/auth_des.h: Likewise.
	* elf/link.h: Likewise.
	Reported by HJ Lu.

1997-02-17 01:45  a sun  <asun@zoology.washington.edu>

	Linux specific network headers.
	* sysdeps/unix/sysv/linux/netinet/if_fddi.h: New file.
	* sysdeps/unix/sysv/linux/netinet/if_tr.h: New file.
	* sysdeps/unix/sysv/linux/netinet/ip_icmp.h: New file.
	* sysdeps/unix/sysv/linux/netinet/ip_fw.h: New file.
	* sysdeps/unix/sysv/linux/netinet/igmp.h: New file.
	* sysdeps/unix/sysv/linux/netinet/icmp.h: New file.
	* sysdeps/unix/sysv/linux/netinet/ip.h: New file.
	* sysdeps/unix/sysv/linux/netinet/tcp.h: New file.
	* sysdeps/unix/sysv/linux/netipx/ipx.h: New file.
	* sysdeps/unix/sysv/linux/netatalk/atalk.h: New file.
	* sysdeps/unix/sysv/linux/Dist: Add new network headers.
	* sysdeps/unix/sysv/linux/Makefile [$(subdir)=misc] (sysdep_headers):
	Add sys/quota.h.
	[$(subdir)=inet] (sysdep_headers): Add new network header.

	* sysdeps/unix/sysv/linux/netinet/udp.h: Add Linux specific changes.

	* inet/netinet/ip.h: Move to sysdeps/generic.
	* inet/netinet/tcp.h: Likewise.
	* sysdeps/generic/netinet/ip.h: Moved to here from inet/netinet.
	* sysdeps/generic/netinet/tcp.h: Likewise.

1997-02-17 01:18  Ulrich Drepper  <drepper@cygnus.com>

	* misc/sys/syslog.h (prioritynames): Correct definition to use
	braces where necessary.
	(facilitynames): Likewise.
	Patch by Ronald F. Guilmette <rfg@monkeys.com>.
	Comment and beautify declarations.

1997-02-16 19:54 1997  Philip Blundell  <Philip.Blundell@pobox.com>

	* inet/Makefile (routines): Add in6_addr, getnameinfo.
	* inet/getnameinfo.c: New file.  Implementation of getnameinfo()
	by Craig Metz.
	* inet/in6_addr.c: New file.  IPv6 addressing constants.
	* posix/Makefile (routines): Add gai_strerror.
	* resolv/netdb.h: Add more constants for IPv6 basic API.
	* sysdeps/posix/gai_strerror.c: New file.
	* sysdeps/stub/gai_strerror.c New file.
	* sysdeps/unix/sysv/linux/netinet/in.h: Add definitions for IPv6
	basic API.

	* sysdeps/posix/getaddrinfo.c: Update from latest version by
	Craig Metz and use reentrant getXXbyYY functions.

1997-02-15 14:32 Andreas Jaeger  <aj@arthur.pfalz.de>

	* argp/argp.h: Declare argp_program_version as const char.
	* argp/argp-test.c: Likewise

	* stdlib/testrand.c (main): Declare main prototype.
	* stdlib/testdiv.c (main): Likewise.
	* string/testcopy.c (main): Likewise.
	* string/test-ffs.c (main): Likewise.
	* time/test_time.c (main): Likewise.

	* locale/duplocale.c (__duplocale): Return result.

1997-02-16 03:54  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/netinet/in.h: Declare bindresvport.
	Reported by fabsoft@fabserver1.zarm.uni-bremen.de.

	* nss/nss.h: Remove declaration of __nss_shlib_revision.
	* nss/nsswitch.c: Don't use NSS_SHLIB_VERSION macro.

1997-02-16 03:48  Thorsten Kukuk  <kukuk@weber.uni-paderborn.de>

	* nis/nss_nis/nis-ethers.c (_nss_nis_getethernam_r): Rename to
	_nss_nis_gethostton_r.
	(_nss_nis_getetherbyaddr_r): Rename to _nss_nis_getntohost_r.

1997-02-15 22:37  Andy Berkheimer  <andy@tho.org>

	* resolv/gethnamaddr.c (gethostbyname2): Test for ':' in name before
	trying to resolv name as numeric IPv6 address.
	* nss/digits_dots.c: Likewise.

Sat Feb 15 04:51:08 1997  Ulrich Drepper  <drepper@cygnus.com>

	* locale/setlocale.c (setlocale): Don't try to be clever about
	unused locales.  When the existence of the locale files isn't
	tested the result of setlocale might be different.

1997-02-15 03:34  Ulrich Drepper  <drepper@cygnus.com>

	* locale/setlocale.c (setlocale): Don't increment usage_count of
	new locale if it already has the value MAX_USAGE_COUNT (it might
	be the C locale data which is read-only).
1997-02-19 04:43:53 +00:00
Ulrich Drepper
c84142e8fe Update to 2.1.x development version
1997-02-15 02:41  Miles Bader  <miles@gnu.ai.mit.edu>

	* argp/argp-help.c: Gettextize sources.
	* argp/argp-parse.c: Likewise.

1997-02-13 22:32  Ulrich Drepper  <drepper@cygnus.com>

	* features.h (__GLIBC_MINOR__): Bump to 1.

	* xlocale.h: New file.  Wrapper around locale/xlocale.h.
	* Makefile (distribute): Add xlocale.h.
	* locale/Makefile (routines): Add ctype_l.
	* locale/ctype-extn.c: Update copyright. De-ANSI-declfy.
	Add __isblank_l, __toascii_l and __isascii_l.
	* ctype/ctype.h: Add definitions and declarations for *_l functions.
	* locale/Makefile (headers): Add xlocale.h.
	(routines): Add newlocale, duplocale, and freelocale.
	* locale/localeinfo.h (MAX_USAGE_COUNT): New macro.
	(struct locale_data): Add new fields mmaped and usage_count.
	Correct various declarations.
	* locale/C-collate.c: Define value for new fields mmaped and
	usage_count.
	* locale/C-ctype.c: Likewise.
	* locale/C-messages.c: Likewise.
	* locale/C-monetary.c: Likewise.
	* locale/C-numeric.c: Likewise.
	* locale/C-time.c: Likewise.
	* locale/loadlocale.c (_nl_load_locale): Initialize mmaped and
	usage_count fields.
	* locale/locale.h: Don't define locale_t here (moved to xlocale.h).
	Correct prototypes for __newlocale and __freelocale.
	Add prototype for __duplocale.
	* locale/findlocale.c (copy): Remove function.  Use __strdup instead.
	(_nl_remove_locale): New function.
	* locale/nl_langinfo.c: Don't declare locale_data objects as const.
	* locale/setlocale.c: Likewise.
	* locale/weight.h: Change for use with locale objects.
	* locale/xlocale.h: New file.  Define __locale_t type.
	* locale/newlocale.c: New file.  Create new locale object.
	* locale/freelocale.c: New file.  Destroy locale object.
	* locale/duplocale.c: New file.  Create copy of locale object.
	* stdlib/Makefile (routines): Add strfmon_l.
	* stdlib/monetary.h [__USE_GNU]: Declare __strfmon_l.
	* stdlib/strfmon.c: Add support for use in extended locale model.
	* stdlib/strfmon_l.c: New file.
	* string/Makefile (routines): Add strcoll_l and strxfrm_l.
	* string/strcoll.c: Change for use in extended locale model.
	* string/strxfrm.c: Likewise.
	* string/strcoll_l.c: New file.  Implement __strcoll_l function.
	* string/strxfrm_l.c: New file.  Implement __strxfrm_l function.
	* wcsmbs/Makefile (routines): Add wcscoll_l and wcsxfrm_l.
	* wcsmbs/wchar.h [__USE_GNU]: Declare wcscoll_l and wcsxfrm_l.
	* wcsmbs/wcscoll.c: Change for use in extended locale model.
	* wcsmbs/wcscoll_l.c: New file.  Implement __wcscoll_l function.
	* wcsmbs/wcsxfrm_l.c: New file.  Implement __wcsxfrm_l function.
	* wctype/Makefile (routines): Add wcextra, wcfuncs_l, iswctype_l,
	and towctrans_l.
	* wctype/cname-lookup.h: Prepare for use in extended locale model.
	* wctype/iswctype_l.c: New file.  Implement character classification
	functions for use with locale objects.
	* wctype/wctype.h: Declare functions for use with locale objects.
	* wctype/towctrans_l.c: New file.  Implement __towctrans_l function
	for use with locale objects.
	* wctype/wcfuncs_l.c: New file.  Implement wide character
	classification functions for use with locale objects.
	* wctype/wcextra.c: New file.  Implement real functions for
	non-standard classification functions.

	* elf/ldd.bash.in: Don't use --data-relocs and --function-relocs
	parameters to ld.so.  Use environment variables.
	* elf/ldd.sh.in: Likewise.
	* elf/rtld.c: Remove handling of --data-relocs and --function-relocs
	options.  Instead read environment variables.

	* elf/link.h (receiver_fct): Add new argument to take error code.
	* elf/dl-error.c (_dl_signal_error): Call receiver function with
	another argument.

	* elf/dl-object.c (_dl_new_object): Create new object with list of
	names in l_libname member.
	* elf/dl-load.c (_dl_map_object_from_fd): Add name which was used to
	find to object to the list in the link_map variable.
	(_dl_map_object): Use _dl_does_name_match_p to compare with all
	available names of the object.
	Optimize handling of LD_LIBRARY_PATH a bit.
	* elf/rtld.c: Initialize l_libname member of _dl_rtld_map.

	* elf/dl-lookup.c (_dl_elf_hash): Optimize function.

	* elf/Makefile (routines): Add dl-version.
	* elf/link.h (hash_name_pair): New type.  Group pointer to string
	and its hash value.
	(struct link_map): Change l_libname member to be a list of names,
	not a single pointer to a name.
	Add new members l_nversions and l_versions.
	(_dl_does_name_match_p): New function to test for all names of an
	object.
	Add prototypes for new lookup and versioning functions.
	* elf/dl-lookup.c (do_lookup): Add new argument and handle case
	when versioned symbol is requested.
	(_dl_lookup_symbol): Call do_lookup with another argument.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): New function.  Handle lookup of
	versioned symbol.
	(_dl_lookup_versioned_symbol_skip): Likewise, similar to
	_dl_lookup_symbol_skip.
	* elf/dl-reloc.c (RESOLVE): Call _dl_lookup_versioned_symbol or
	_dl_lookup_symbol depending on availability of version information.
	* elf/dl-runtime.c (RESOLVE): Likewise.
	(fixup): Call elf_machine_relplt with additional argument to point
	to versioning information if available.
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise.
	* elf/dl-open.c (_dl_open): Call _dl_check_map_versions to check
	for correct versions.
	* elf/dl-version.c: New file.  Check library versions and extract
	version information for easier access.
	* elf/dlfcn.h [__USE_GNU]: Add prototype for dlvsym.
	* elf/dlvsym.c: New file.  Implementation of function similar to
	dlsym, but looks for versioned symbol.
	* elf/elf.h: Add types and macros for versioning.
	* elf/rtld.c (dl_main): Check availability of needed versions.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela): Add additional
	argument for version information.  Call RESOLVE with additional
	argument.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.

	* elf/dlerror.c: Change comment to align with guidelines.
	* elf/dlopen.c: Likewise.
	* elf/dlsym.c: Likewise.

	* locale/programs/localedef.c: Implement --quiet option.
	* locale/programs/charset.h: Declare be_quiet variable.
	* locale/programs/locfile.h: Likewise.
	* locale/programs/charmap.c: Don't print warnings if quiet option
	was given.
	* locale/programs/ld-collate.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-messages.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* locale/programs/locfile.c: Likewise.

	* Makefile (subdirs): Add argp.

	* catgets/catgets.c (catopen): Little code improvement.

	* posix/execl.c: Remove restriction to 1024 arguments.
	* posix/execle.c: Likewise.
	* posix/execlp.c: Likewise.

	* posix/getopt.c [_LIBC]: Define global objects with __ prefix
	and make regular names weak aliases.
	* posix/getopt1.c: Likewise.
	* posix/getopt.h [_LIBC]: Provide prototypes and declarations for
	__ protected forms.

	* posix/unistd.h: Add prototype for __sleep.
	* sysdeps/mach/sleep.c: Make sleep weak alias of __sleep.
	* sysdeps/posix/sleep.c: Likewise.
	* sysdeps/stub/sleep.c: Likewise.
	* sysdeps/unix/sysv/linux/sleep.c: Likewise.

	* ctype/ctype-info.c: Update copyright.
	* ctype/ctype.c: Likewise.
	* ctype/test_ctype.c: Likewise.
	* dirent/alphasort.c: Likewise.
	* dirent/list.c: Likewise.
	* gmon/bb_exit_func.c: Likewise.
	* grp/fgetgrent.c: Likewise.
	* grp/getgrent.c: Likewise.
	* grp/getgrent_r.c: Likewise.
	* grp/getgrgid.c: Likewise.
	* grp/getgrgid_r.c: Likewise.
	* grp/getgrnam.c: Likewise.
	* grp/getgrnam_r.c: Likewise.
	* hurd/alloc-fd.c: Likewise.
	* hurd/catch-exc.c: Likewise.
	* hurd/ctty-input.c: Likewise.
	* hurd/ctty-output.c: Likewise.
	* hurd/dtable.c: Likewise.
	* hurd/fchroot.c: Likewise.
	* hurd/fd-close.c: Likewise.
	* hurd/fd-read.c: Likewise.
	* hurd/fd-write.c: Likewise.
	* hurd/fopenport.c: Likewise.
	* hurd/get-host.c: Likewise.
	* hurd/getdport.c: Likewise.
	* hurd/getuids.c: Likewise.
	* hurd/getumask.c: Likewise.
	* hurd/hurd-raise.c: Likewise.
	* hurd/hurd.h: Likewise.
	* hurd/hurdauth.c: Likewise.
	* hurd/hurdexec.c: Likewise.
	* hurd/hurdhost.h: Likewise.
	* hurd/hurdid.c: Likewise.
	* hurd/hurdinit.c: Likewise.
	* hurd/hurdioctl.c: Likewise.
	* hurd/hurdkill.c: Likewise.
	* hurd/hurdlookup.c: Likewise.
	* hurd/hurdmsg.c: Likewise.
	* hurd/hurdpid.c: Likewise.
	* hurd/hurdports.c: Likewise.
	* hurd/hurdprio.c: Likewise.
	* hurd/hurdrlimit.c: Likewise.
	* hurd/hurdsock.c: Likewise.
	* hurd/hurdstartup.c: Likewise.
	* hurd/hurdstartup.h: Likewise.
	* hurd/intern-fd.c: Likewise.
	* hurd/intr-msg.c: Likewise.
	* hurd/intr-rpc.defs: Likewise.
	* hurd/intr-rpc.h: Likewise.
	* hurd/msgportdemux.c: Likewise.
	* hurd/new-fd.c: Likewise.
	* hurd/openport.c: Likewise.
	* hurd/pid2task.c: Likewise.
	* hurd/port-cleanup.c: Likewise.
	* hurd/port2fd.c: Likewise.
	* hurd/ports-get.c: Likewise.
	* hurd/ports-set.c: Likewise.
	* hurd/privports.c: Likewise.
	* hurd/report-wait.c: Likewise.
	* hurd/set-host.c: Likewise.
	* hurd/setauth.c: Likewise.
	* hurd/setuids.c: Likewise.
	* hurd/siginfo.c: Likewise.
	* hurd/sigunwind.c: Likewise.
	* hurd/task2pid.c: Likewise.
	* hurd/thread-cancel.c: Likewise.
	* hurd/thread-self.c: Likewise.
	* hurd/vpprintf.c: Likewise.
	* hurd/hurd/fd.h: Likewise.
	* hurd/hurd/id.h: Likewise.
	* hurd/hurd/ioctl.h: Likewise.
	* hurd/hurd/lookup.h: Likewise.
	* hurd/hurd/port.h: Likewise.
	* hurd/hurd/resource.h: Likewise.
	* hurd/hurd/threadvar.h: Likewise.
	* hurd/hurd/userlink.h: Likewise.
	* inet/ether_aton.c: Likewise.
	* inet/ether_aton_r.c: Likewise.
	* inet/ether_ntoa.c: Likewise.
	* inet/ether_ntoa_r.c: Likewise.
	* inet/gethstbyad.c: Likewise.
	* inet/gethstbyad_r.c: Likewise.
	* inet/gethstent.c: Likewise.
	* inet/getnetbyad.c: Likewise.
	* inet/getnetbyad_r.c: Likewise.
	* inet/getnetbynm.c: Likewise.
	* inet/getnetbynm_r.c: Likewise.
	* inet/getnetent.c: Likewise.
	* inet/getnetent_r.c: Likewise.
	* inet/getproto.c: Likewise.
	* inet/getproto_r.c: Likewise.
	* inet/getprtent.c: Likewise.
	* inet/getprtent_r.c: Likewise.
	* inet/getprtname.c: Likewise.
	* inet/getrpcbyname.c: Likewise.
	* inet/getrpcbyname_r.c: Likewise.
	* inet/getrpcbynumber.c: Likewise.
	* inet/getrpcbynumber_r.c: Likewise.
	* inet/getrpcent.c: Likewise.
	* inet/getrpcent_r.c: Likewise.
	* inet/getservent.c: Likewise.
	* inet/getservent_r.c: Likewise.
	* inet/getsrvbynm.c: Likewise.
	* inet/getsrvbynm_r.c: Likewise.
	* inet/getsrvbypt.c: Likewise.
	* inet/getsrvbypt_r.c: Likewise.
	* inet/herrno.c: Likewise.
	* inet/netgroup.h: Likewise.
	* ient/netinet/ether.h: Likewise.
	* intl/bindtextdom.c: Likewise.
	* intl/dcgettext.c: Likewise.
	* intl/dgettext.c: Likewise.
	* intl/gettext.c: Likewise.
	* intl/gettext.h: Likewise.
	* intl/gettextP.h: Likewise.
	* intl/hash-string.h: Likewise.
	* intl/loadmsgcat.c: Likewise.
	* intl/localealias.c: Likewise.
	* intl/textdomain.c: Likewise.
	* io/creat.c: Likewise.
	* io/getdirname.c: Likewise.
	* io/lockf.c: Likewise.
	* io/pwd.c: Likewise.
	* io/test-utime.c: Likewise.
	* locale/categories.def: Likewise.
	* locale/codeset_name.c: Likewise.
	* locale/lc-collate.c: Likewise.
	* locale/lc-ctype.c: Likewise.
	* locale/lc-messages.c: Likewise.
	* locale/lc-monetary.c: Likewise.
	* locale/lc-numeric.c: Likewise.
	* locale/lc-time.c: Likewise.
	* locale/loadlocale.c: Likewise.
	* locale/localeconv.c: Likewise.
	* locale/nl_langinfo.c: Likewise.
	* locale/setlocale.c: Likewise.
	* locale/strlen-hash.h: Likewise.
	* locale/programs/charmap-kw.gperf: Likewise.
	* locale/programs/charmap-kw.h: Likewise.
	* locale/programs/charset.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-messages.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/linereader.h: Likewise.
	* locale/programs/locale-spec.c: Likewise.
	* locale/programs/locales.h: Likewise.
	* locale/programs/locfile-kw.gperf: Likewise.
	* locale/programs/locfile-kw.h: Likewise.
	* locale/programs/locfile-token.h: Likewise.
	* locale/programs/simple-hash.h: Likewise.
	* locale/programs/stringtrans.c: Likewise.
	* locale/programs/stringtrans.h: Likewise.
	* login/logout.c: Likewise.
	* mach/bootprivport.c: Likewise.
	* mach/devstream.c: Likewise.
	* mach/hello.c: Likewise.
	* mach/mach.h: Likewise.
	* mach/mach_init.c: Likewise.
	* mach/mach_init.h: Likewise.
	* mach/mig-alloc.c: Likewise.
	* mach/mig-dealloc.c: Likewise.
	* mach/mutex-init.c: Likewise.
	* mach/mutex-solid.c: Likewise.
	* mach/setup-thread.c: Likewise.
	* mach/spin-lock.h: Likewise.
	* mach/spin-solid.c: Likewise.
	* mach/mach/mig_support.h: Likewise.
	* md5-crypt/md5-crypt.c: Likewise.
	* misc/nlist.h: Likewise.
	* nss/nss_files/files-ether.c: Likewise.
	* posix/confstr.c: Likewise.
	* posix/execl.c: Likewise.
	* posix/execle.c: Likewise.
	* posix/execlp.c: Likewise.
	* posix/execv.c: Likewise.
	* posix/execvp.c: Likewise.
	* posix/fnmatch.c: Likewise.
	* posix/getopt.c: Likewise.
	* posix/getopt.h: Likewise.
	* posix/getopt1.c: Likewise.
	* posix/id.c: Likewise.
	* posix/regex.c: Likewise.
	* posix/setpgrp.c: Likewise.
	* posix/unistd.h: Likewise.
	* posix/wordexp.c: Likewise.
	* pwd/fgetpwent.c: Likewise.
	* pwd/getpwent.c: Likewise.
	* pwd/getpwent_r.c: Likewise.
	* pwd/getpwnam.c: Likewise.
	* pwd/getpwnam_r.c: Likewise.
	* pwd/getpwuid.c: Likewise.
	* pwd/getpwuid_r.c: Likewise.
	* pwd/putpwent.c: Likewise.
	* resolv/gethnamaddr.c: Likewise.
	* resolv/res_hconf.c: Likewise.
	* resolv/res_hconf.h: Likewise.
	* setjmp/longjmp.c: Likewise.
	* setjmp/sigjmp.c: Likewise.
	* setjmp/tst-setjmp.c: Likewise.
	* stdio/clearerr.c: Likewise.
	* stdio/ferror.c: Likewise.
	* stdio/fgetc.c: Likewise.
	* stdio/fgetpos.c: Likewise.
	* stdio/fgets.c: Likewise.
	* stdio/fileno.c: Likewise.
	* stdio/fmemopen.c: Likewise.
	* stdio/fopen.c: Likewise.
	* stdio/fopncook.c: Likewise.
	* stdio/fputc.c: Likewise.
	* stdio/fputs.c: Likewise.
	* stdio/fread.c: Likewise.
	* stdio/freopen.c: Likewise.
	* stdio/fseek.c: Likewise.
	* stdio/fsetpos.c: Likewise.
	* stdio/ftell.c: Likewise.
	* stdio/fwrite.c: Likewise.
	* stdio/getchar.c: Likewise.
	* stdio/getdelim.c: Likewise.
	* stdio/gets.c: Likewise.
	* stdio/glue.c: Likewise.
	* stdio/internals.c: Likewise.
	* stdio/linewrap.c: Likewise.
	* stdio/linewrap.h: Likewise.
	* stdio/memstream.c: Likewise.
	* stdio/newstream.c: Likewise.
	* stdio/putchar.c: Likewise.
	* stdio/puts.c: Likewise.
	* stdio/rewind.c: Likewise.
	* stdio/setbuf.c: Likewise.
	* stdio/setbuffer.c: Likewise.
	* stdio/setlinebuf.c: Likewise.
	* stdio/setvbuf.c: Likewise.
	* stdio/ungetc.c: Likewise.
	* stdio/vasprintf.c: Likewise.
	* stdio/vscanf.c: Likewise.
	* stdio/vsnprintf.c: Likewise.
	* stdio/vsprintf.c: Likewise.
	* stdio/vsscanf.c: Likewise.
	* stdio-common/asprintf.c: Likewise.
	* stdio-common/dprintf.c: Likewise.
	* stdio-common/errnobug.c: Likewise.
	* stdio-common/fprintf.c: Likewise.
	* stdio-common/getline.c: Likewise.
	* stdio-common/getw.c: Likewise.
	* stdio-common/perror.c: Likewise.
	* stdio-common/psignal.c: Likewise.
	* stdio-common/putw.c: Likewise.
	* stdio-common/reg-printf.c: Likewise.
	* stdio-common/scanf.c: Likewise.
	* stdio-common/snprintf.c: Likewise.
	* stdio-common/sprintf.c: Likewise.
	* stdio-common/tempnam.c: Likewise.
	* stdio-common/test_rdwr.c: Likewise.
	* stdio-common/tst-fileno.c: Likewise.
	* stdio-common/tst-printf.c: Likewise.
	* stdio-common/tstgetln.c: Likewise.
	* stdio-common/vprintf.c: Likewise.
	* stdlib/drand48.c: Likewise.
	* stdlib/drand48_r.c: Likewise.
	* stdlib/erand48.c: Likewise.
	* stdlib/erand48_r.c: Likewise.
	* stdlib/exit.h: Likewise.
	* stdlib/strtoq.c: Likewise.
	* stdlib/strtoul.c: Likewise.
	* stdlib/strtouq.c: Likewise.
	* stdlib/test-canon.c: Likewise.
	* stdlib/testdiv.c: Likewise.
	* stdlib/testrand.c: Likewise.
	* string/argz-append.c: Likewise.
	* string/argz-count.c: Likewise.
	* string/argz-create.c: Likewise.
	* string/argz-ctsep.c: Likewise.
	* string/argz-delete.c: Likewise.
	* string/argz-extract.c: Likewise.
	* string/argz-insert.c: Likewise.
	* string/argz-next.c: Likewise.
	* string/argz-stringify.c: Likewise.
	* string/basename.c: Likewise.
	* string/envz.c: Likewise.
	* string/memfrob.c: Likewise.
	* string/strcoll.c: Likewise.
	* string/strdup.c: Likewise.
	* string/string.h: Likewise.
	* string/strndup.c: Likewise.
	* string/strnlen.c: Likewise.
	* string/strsignal.c: Likewise.
	* string/strxfrm.c: Likewise.
	* string/test-ffs.c: Likewise.
	* string/testcopy.c: Likewise.
	* sysdeps/generic/enbl-secure.c: Likewise.
	* sysdeps/generic/memcopy.h: Likewise.
	* sysdeps/generic/stpncpy.c: Likewise.
	* sysdeps/generic/strcasecmp.c: Likewise.
	* sysdeps/generic/strcat.c: Likewise.
	* sysdeps/generic/strchr.c: Likewise.
	* sysdeps/generic/strcpy.c: Likewise.
	* sysdeps/generic/strcspn.c: Likewise.
	* sysdeps/generic/strlen.c: Likewise.
	* sysdeps/generic/strncase.c: Likewise.
	* sysdeps/generic/strncat.c: Likewise.
	* sysdeps/generic/strncpy.c: Likewise.
	* sysdeps/generic/strpbrk.c: Likewise.
	* sysdeps/generic/strsep.c: Likewise.
	* sysdeps/generic/strspn.c: Likewise.
	* sysdeps/generic/strstr.c: Likewise.
	* sysdeps/generic/strtok.c: Likewise.
	* sysdeps/generic/strtok_r.c: Likewise.
	* sysdeps/mach/sleep.c: Likewise.
	* sysdeps/posix/sleep.c: Likewise.
	* sysdeps/stub/sleep.c: Likewise.
	* time/date.c: Likewise.
	* time/test_time.c: Likewise.
	* wcsmbs/wmemcpy.c: Likewise.
	* wctye/test_wctype.c: Likewise.
	* wctye/towctrans.c: Likewise.
	* wctye/wcfuncs.c: Likewise.
	* wctye/wctrans.c: Likewise.

1997-02-13 22:15  Miles Bader  <miles@gnu.ai.mit.edu>

	* argp/Makefile: New file.
	* argp/argp.h: Likewise.
	* argp/argp-ba.c: Likewise.
	* argp/argp-fmtstream.c: Likewise.
	* argp/argp-fmtstream.h: Likewise.
	* argp/argp-fs-xinl.c: Likewise.
	* argp/argp-help.c: Likewise.
	* argp/argp-namefrob.h: Likewise.
	* argp/argp-parse.c: Likewise.
	* argp/argp-pv.c: Likewise.
	* argp/argp-pvh.c: Likewise.
	* argp/argp-test.c: Likewise.
	* argp/argp-xinl.c: Likewise.

	* libio/_G_config.h: Make sure wint_t is also defined for old gcc
1997-02-09 04:35  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/_itoa.h: Update copyright.
1997-02-15 04:31:36 +00:00
Ulrich Drepper
4770745624 update from main archive 961203
Tue Dec  3 08:38:15 1996  Richard Henderson  <rth@tamu.edu>

	* sysdeps/unix/alpha/sysdep.S: Remove definition of __errno_location.
	Reformat copyright.

	* elf/rtld.c (_dl_start): Don't dereference the value returned by
	elf_machine_got to get _DYNAMIC, instead call new function
	elf_machine_dynamic.
	* sysdeps/alpha/dl-machine.h: Permute elf_machine_got to
	elf_machine_dynamic.  Reformat copyright.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/sparc/dl-machine.h: Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.

Tue Oct 15 23:46:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* MakeTAGS (sysdep_dirs): Include add-on sysdep directories.

Tue Dec  3 02:06:18 1996  Ulrich Drepper  <drepper@cygnus.com>

	* Makerules ($(libdir)/libc.so): Make first line of generated
	link script contain `/* GNU ld script'.  This will be used in
	ldconfig to check for linker scripts.
	* sysdeps/mach/hurd/libc-ldscript: Likewise.
	* sysdeps/mach/hurd/libc_p-ldscript: Likewise.

	* stdlib/getsubopt.c: Update copyright.  Correct typo in comment.
1996-12-04 01:41:39 +00:00
Ulrich Drepper
84384f5b6a update from main archive 961119
Wed Nov 20 02:04:11 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/sigsuspend.c: Make sigsuspend a weak
	alias of __sigsuspend.

	* grp/grp.h: Correct comment about POSIX compliance.
	* pwd/pwd.h: Likewise.

	* login/utmp.h: Update copyright and pretty-print prototypes.
	* sysdeps/generic/paths.h: Add _PATH_LASTLOG, _PATH_UTMP and
	_PATH_WTMP from utmpbits.h.
	* sysdeps/unix/sysv/linux/paths.h: Likewise.
	* sysdeps/generic/utmpbits.h: Remove here.
	* sysdeps/gnu/utmpbits.h: Likewise.

	* misc/sys/uio.h: Place __BEGIN_DECLS correctly.
	Pretty-print prototypes.

	* sysdeps/unix/sysv/linux/sparc/clone.S: New file.  Taken from
	LinuxThreads-0.5.

Tue Nov 19 13:43:07 1996  Richard Henderson  <rth@tamu.edu>

	* inet/ether_hton.c: Include <string.h>.
	* inet/ether_ntoh.c: Likewise.
	* inet/rexec.c: Get errno, index, getpass, getlogin from headers.
	* misc/search.h: Fix hcreate_r argument type (unsigned -> size_t).

	* misc/sys/cdefs.h: Change __long_double_t definition from typedef
	to define.  Jim Nance reports problems building XEmacs otherwise.

	* resolv/gethnamaddr.c: Protect h_errno redefinition.
	* resolv/getnetnamadr.c: Likewise.
	* resolv/herror.c: Likewise.

	* sysdeps/generic/sigset.h (__SIGSETFN): Operator ## doesn't work
	with -traditional.  Reported by Eric Youngdale.  While we're at this,
	don't do error checking in the __ functions.  This is consistent
	with the sysv4 definitions and seems Right.
	* signal/signal.h: Don't __OPTIMIZE__ sigops to __ versions.  Add
	prototype for __sigsuspend.
	* sysdeps/posix/sigblock.c: Optimize sigmask <-> sigset_t conversions
	for sigset_t == unsigned long.  De-ansidecl-ify.  Reformat copyright.
	* sysdeps/posix/sigpause.c: Likewise.
	* sysdeps/posix/sigsetmask.c: Likewise.
	* sysdeps/posix/sigvec.c: Likewise.
	* sysdeps/posix/sigintr.c: Reformat copyright.
	* sysdeps/posix/signal.c: Check signal number out of range since
	__sigismember doesn't anymore.  Reformat copyright.
	* sysdeps/posix/sigwait.c: Use __ versions of sigfillset, sigismember,
	sigdelset, sigaction, and sigsuspend.

	* stdlib/drand48-iter.c (__drand48_iterate): Cast state fragments
	to the wider type before shifting.

	* sysdeps/alpha/bsd-_setjmp.S: Silence assembler warning "$at used
	without .set noat" in profiling hook.
	* sysdeps/alpha/bsd-setjmp.S: Likewise.
	* sysdeps/alpha/htonl.S: Likewise.
	* sysdeps/alpha/htons.S: Likewise.
	* sysdeps/alpha/s_copysign.S: Likewise.
	* sysdeps/alpha/setjmp.S: Likewise.
	* sysdeps/alpha/stpcpy.S: Likewise.
	* sysdeps/alpha/strcat.S: Likewise.
	* sysdeps/alpha/strcpy.S: Likewise.
	* sysdeps/alpha/strncat.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/llseek.S: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.  Rename
	function to __sigsuspend and add weak alias.
	* sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.  Add missing END.

	* sysdeps/alpha/w_sqrt.S: Define _ERRNO_H so <errnos.h> defines EDOM.

	* sysdeps/unix/execve.S: Match PSEUDO_END symbol with the symbol
	SYSCALL__ actually generated.

	* sysdeps/unix/sysv/linux/errnos.h [_LIBC_REENTRANT]: Reflexively
	#define __set_errno, as several imported subsystems (eg. BIND) check
	that the symbol is defined.

	* sysdeps/unix/sysv/linux/getsysstats.c: Include <alloca.h>.

	* sysdeps/alpha/memcpy.S: Temporarily remove until I can find a bug
	that manifests in GCC.

Tue Nov 19 11:10:05 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* sysdeps/posix/writev.c (writev): COUNT parm is now int.
	* sysdeps/posix/readv.c (readv): Likewise.

Tue Nov 19 15:28:29 1996  Ulrich Drepper  <drepper@cygnus.com>

	* nss/nss_dns/dns-network.c: Change return type of all functions
	to enum nss_status.
	Reported by NIIBE Yutaka.
	* nss/nss_dns/dns-host.c: Update copyright.

Fri Nov 15 20:16:38 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* config.make.in: Remove definition of top_absdir.
	* configure.in: Likewise. Use $(..) instead.
	* Makerules (make-link): Use $(..) to find rellns-sh script.

Sat Nov 16 15:52:29 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* manual/nss.texi (Name Service Switch): Fix reference to
	`frobnicate'.

Fri Nov 15 22:08:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
	sys/mtio.h.

Mon Nov 18 05:51:13 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/generic/waitstatus.h (__WIFSIGNALED): Rename local
	variable from __stat to __status to prevent shadowing.
	* sunrpc/rpc/clnt.h (clntudp_create, clntudp_bufcreate): Likewise
	for parameter __wait.
	Reported by NIIBE Yutaka.

Mon Nov 18 02:05:38 1996  Ulrich Drepper  <drepper@cygnus.com>

	* misc/regexp.c: New file.  Implementation of obsolete interface
	to regular expression matcher (required in XPG4.2).
	* misc/regexp.h: New file.  Header for above.
	* misc/Makefile (headers): Add regexp.h.
	(routines): Add regexp.c.
	Update copyright.

Sun Nov 17 21:50:24 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* stdlib/tst-strtod.c (main): Add arguments for main.
	* stdlib/tst-strtol.c (main): Likewise.

Sun Nov 17 21:15:05 1996  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in: Substitute libc_cv_slibdir and libc_cv_sysconfdir
	in output files.
	* sysdepes/unix/sysv/linux/configure: Define libc_cv_slibdir to /lib
	and sysconfdir to /etc if $prefix is /usr.
	* config.make.in: Add slibdir, sysconfdir and BASH to be replaced.

	* elf/Makefile ($(objpfx)ldd): Install ldd.bash.in if
	$(have-bash2) is yes.
	* elf/ldd.bash.in: Add copyright and various cleanups.
	* elf/ldd.sh.in: Likewise.

	Implement RTLD_NEXT.
	* elf/dlfcn.h: Define RTLD_NEXT.
	* elf/dl-deps.c: Build second searchlist which contains duplicates.
	* elf/dl-lookup.c (_dl_lookup_symbol_skip): New function.  Used
	for RTLD_NEXT lookup.
	Rewrite _dl_lookup_symbol to put common parts for both lookup
	functions in a separate function.
	* elf/dlsym.c: Handle RTLD_NEXT by calling _dl_lookup_symbol_skip.
	* elf/link.h (struct link_map): Add l_dupsearchlist and
	l_ndupsearchlist.
	Add prototype for _dl_lookup_symbol_skip.

	* sunrpc/Makefile (rpcsvc): Add rusers.
	* sunrpc/rpcsvc/rnusers.x: Remove.  Obsolteted by rusers.x.
	* sunrpc/rpcsvc/rusers.x: New file.

Sun Nov 17 04:24:35 1996  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/vfprintf.c [USE_IN_LIBIO] (buffered_vfprintf): Call
	__libc_lock_init for local lock.
	Reported by a sun <asun@zoology.washington.edu>.
	[!USE_IN_LIBIO] (PAD): Optimize a bit.
1996-11-20 03:45:51 +00:00
Ulrich Drepper
afd4eb3759 update from main archive 961116
Sun Nov 17 03:13:57 1996  Ulrich Drepper  <drepper@cygnus.com>

	* db/makedb.c: Update and reformat copyright.
	* elf/Makefile: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-deps.c: Likewise.
	* elf/dl-error.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-init.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-minimal.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-symbol.c: Likewise.
	* elf/dladdr.c: Likewise.
	* elf/dlclose.c: Likewise.
	* elf/dlerror.c: Likewise.
	* elf/dlopen.c: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/do-rel.h: Likewise.
	* elf/dynamic-link.h: Likewise.
	* elf/eval.c: Likewise.
	* elf/rtld.c: Likewise.
	* inet/ether_hton.c: Likewise.
	* inet/ether_ntoh.c: Likewise.
	* inet/ether_line.c: Likewise.
	* inet/getnetgrent_r.c: Likewise.

	* inet/Makefile (+gccwarn): Remove definition.
	Instead set CFLAGS-rcmd.c, CFLAGS-rexec.c, and CFLAGS-ruserpass.c
	to `-w'.
	* inet/aliases.h: Add C++ protection.
	* inet/ether_hton.c: Add prototype for __nss_ethers_lookup.
	(ether_hostton): Remove unused variable result.
	* inet/ether_ntoh.c: Likewise.
	* inet/ether_line.c: Include <ctype.h> and <string.h>.
	* inet/getnetgrent_r.c: Include <stdlib.h>.
	Use casts to prevent warnings.
	(innetgr): Initialize `known' and `needed'.
	* inet/inet_net.c: Make local variable `i' of type u_int32_t.
	* nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)) [NEED__RES]: Don't
	return NULL.  Instead set *RESULT to NULL and return -1.
	* nss/getXXent_r.c (INTERNAL (REENTRANT_GETNAME)): Likewise.
	(SETFUNC_NAME, ENDFUNC_NAME) [NEED__RES]: Don't return anything.

	* nss/nss_files/files-alias.c: Debug function.  I didn't worked at
	all before.

Sat Nov 16 15:25:34 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/posix/readv.c: Don't use PTR anymore.
	* sysdeps/posix/writev.c: Likewise.

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

	* nss/db-Makefile: Generate lines for getXXXent iteration.

	* sysdeps/alpha/Dist: Don't distribute removed files divlu.S,
	divqu.S, remlu.S, and remqu.S.

Fri Nov 15 08:55:54 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* posix/unistd.h: Correct typo in documentation.

Thu Nov 14 18:08:14 1996  a sun  <asun@zoology.washington.edu>

	* inet/netinet/tcp.h: Use __ protected versions instead of
	BYTE_ORDER, LITTLE_ENDIAN, and BIG_ENDIAN directly.

Sat Nov 16 13:44:55 1996  Ulrich Drepper  <drepper@cygnus.com>

	* intl/loadmsgcat.c (_nl_msg_cat_cntr): Initialize so that
	references in libc.so are not anymore undefined.

Sat Nov 16 18:17:36 1996  NIIBE Yutaka  <gniibe@mri.co.jp>

	* io/utime.h: Rename second parameter for utime to prevent warning
	for -Wshadow.
	* dirent/dirent.h: Same here for scandir prototype.
	* math/mathcalls.h: Likewise for frexp and ldexp.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise for bindresvport.

Sat Nov 16 03:49:27 1996  Ulrich Drepper  <drepper@cygnus.com>

	* stdlib/tst-strtod.c: Add test for error case below.

Sat Nov 16 03:48:39 1996  Wolfram Gloger  <Wolfram.Gloger@dent.med.uni-muenchen.de>

	* stdlib/strtod.c: Recognize numbers like 0e-19.

Fri Nov 15 08:38:43 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* time/Makefile ($(installed-localtime-file)): Fix path to
	rellns-sh.

	* Makefile: Don't generate and install gnu/lib-names.h if
	$(build-shared) is not `yes'.

Thu Nov 14 09:23:58 1996  H.J. Lu (hjl@gnu.ai.mit.edu)

	* sysdeps/posix/Makefile ($(common-objpfx)mk-stdiolim): Depend
	on $(..)posix/posix1_lim.h, not ../posix/posix1_lim.h.

	* Makerules (REAL_MAKE_VERSION): New, use it instead of
	MAKE_VERSION.

Thu Nov 14 22:10:43 1996  Ulrich Drepper  <drepper@cygnus.com>

	* nss/nss_files/files-XXX.x (_nss_files_get,ENTNAME_r): Fix typo.
	* nss/getXXent_r.c: Fix typo.  Set correct return value when
	no further service is available.

Thu Nov 14 17:48:13 1996  Ulrich Drepper  <drepper@cygnus.com>

	* db/recno/rec_put.c: Add cast to avoid warning.
	* db/recno/rec_close.c: Likewise.
	* db/mpool/mpool.c: Likewise.
	* db/hash/hash_bigkey.h: Likewise.
	* db/hash/hash.c: Likewise.
	* db/btree/bt_split.c: Likewise.
	* db/btree/bt_put.c: Likewise.

Thu Nov 14 14:11:44 1996  Ulrich Drepper  <drepper@cygnus.com>

	* dirent/dirent.h: Update copyright.
	* elf/elf.h: Likewise.
	* elf/link.h: Likewise.
	* gmon/sys/gmon_out.h: Likewise.
	* gnu-versions.h: Likewise.
	* intl/libintl.h: Likewise.
	* io/fcntl.h: Likewise.
	* io/ftw.h: Likewise.
	* io/sys/statfs.h: Likewise.
	* io/utime.h: Likewise.
	* locale/langinfo.h: Likewise.
	* malloc/malloc.h: Likewise.
	* malloc/obstack.h: Likewise.
	* misc/ar.h: Likewise.
	* misc/error.h: Likewise.
	* misc/mntent.h: Likewise.
	* misc/sgtty.h: Likewise.
	* misc/sys/cdefs.h: Likewise.
	* misc/sys/dir.h: Likewise.
	* misc/sys/file.h: Likewise.
	* misc/sys/ioctl.h: Likewise.
	* misc/sys/ustat.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/getopt.h: Likewise.
	* posix/glob.h: Likewise.
	* posix/posix2_lim.h: Likewise.
	* posix/regex.h: Likewise.
	* posix/sys/times.h: Likewise.
	* posix/sys/types.h: Likewise.
	* posix/sys/utsname.h: Likewise.
	* posix/tar.h: Likewise.
	* posix/wordexp.h: Likewise.
	* resource/sys/resource.h: Likewise.
	* resource/sys/vlimit.h: Likewise.
	* resource/sys/vtimes.h: Likewise.
	* socket/sys/socket.h: Likewise.
	* socket/sys/un.h: Likewise.
	* stdio-common/printf.h: Likewise.
	* stdlib/alloca.h: Likewise.
	* string/argz.h: Likewise.
	* string/endian.h: Likewise.
	* string/envz.h: Likewise.
	* string/memory.h: Likewise.
	* string/strings.h: Likewise.
	* sysdeps/generic/crypt.h: Likewise.
	* sysdeps/generic/direntry.h: Likewise.
	* sysdeps/generic/gnu/types.h: Likewise.
	* sysdeps/generic/ioctl-types.h: Likewise.
	* sysdeps/generic/netinet/in.h: Likewise.
	* sysdeps/generic/resourcebits.h: Likewise.
	* sysdeps/generic/sigset.h: Likewise.
	* sysdeps/generic/sockaddrcom.h: Likewise.
	* sysdeps/generic/sys/mman.h: Likewise.
	* sysdeps/generic/sys/ptrace.h: Likewise.
	* sysdeps/generic/termbits.h: Likewise.
	* sysdeps/generic/waitstatus.h: Likewise.
	* sysdeps/ieee754/huge_val.h: Likewise.
	* sysdeps/ieee754/nan.h: Likewise.
	* sysdeps/mach/hurd/local_lim.h: Likewise.
	* sysdeps/mach/hurd/statbuf.h: Likewise.
	* sysdeps/stub/huge_val.h: Likewise.
	* sysdeps/stub/libc-lock.h: Likewise.
	* sysdeps/stub/signum.h: Likewise.
	* sysdeps/stub/statbuf.h: Likewise.
	* sysdeps/stub/waitflags.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: Likewise.
	* sysdeps/unix/bsd/osf/alpha/statbuf.h: Likewise.
	* sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/signum.h: Likewise.
	* sysdeps/unix/bsd/statbuf.h: Likewise.
	* sysdeps/unix/bsd/sun/signum.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/termbits.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/waitflags.h: Likewise.
	* sysdeps/unix/sysv/irix4/signum.h: Likewise.
	* sysdeps/unix/sysv/irix4/statbuf.h: Likewise.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sys/io.h: Likewise.
	* sysdeps/unix/sysv/linux/direntry.h: Likewise.
	* sysdeps/unix/sysv/linux/gnu/types.h: Likewise.
	* sysdeps/unix/sysv/linux/ioctl-types.h: Likewise.
	* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
	* sysdeps/unix/sysv/linux/resourcebits.h: Likewise.
	* sysdeps/unix/sysv/linux/signum.h: Likewise.
	* sysdeps/unix/sysv/linux/statbuf.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/io.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/klog.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/ptrace.h: Likewise.
	* sysdeps/unix/sysv/linux/syscall.h: Likewise.
	* sysdeps/unix/sysv/linux/termbits.h: Likewise.
	* sysdeps/unix/sysv/local_lim.h: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/syscall.h: Likewise.
	* sysdeps/unix/sysv/sco3.2/local_lim.h: Likewise.
	* sysdeps/unix/sysv/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/i386/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/sigset.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/signum.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/statbuf.h: Likewise.
	* sysdeps/unix/sysv/sysv4/waitflags.h: Likewise.
	* sysdeps/vax/huge_val.h: Likewise.
	* values.h: Likewise.

Thu Nov 14 04:22:41 1996  Ulrich Drepper  <drepper@cygnus.com>

	* malloc/obstack.h: Use memcpy instead of bcopy and define a macro
	`memcpy' using bcopy if memcpy is not available.

	* manual/stdio.texi: Correct description of printf customization.
	The argument info function is not optional anymore and the
	interface for `printf_function' also changed.
	* manual/examples/rprintf.c: Define and use argument info function.

	* stdio-common/printf.h (struct printf_info): Change type for field
	`pad' to wchar_t.
	Correct comment for `register_printf_function'.

	* nss/getXXbyYY.c [NEED_H_ERRNO]: Don't pass pointer to h_errno
	to reentrant function.  Instead use temporary variable and set
	h_errno if an error occured.
	Reported by NIIBE Yutaka.

	are no bits set in the masks.  Reported by baldazzi@csr.unibo.it.
1996-11-17 03:15:52 +00:00
Ulrich Drepper
706074a5bb update from main archive 960814 1996-08-15 01:23:29 +00:00
Roland McGrath
184b7b466a * elf/dl-lookup.c (_dl_lookup_symbol): Avoid sizeof dynamic auto array
because that is broken on alpha.
1996-07-17 03:34:06 +00:00
Roland McGrath
8ab1a68d05 Thu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): If no value and *REF is
	null, consider it a strong reference and give the error.
1996-06-13 06:50:11 +00:00
Roland McGrath
4d6acc61fa Thu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): If no value and *REF is
	null, consider it a strong reference and give the error.

Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-open.c (_dl_open): Correctly terminate relocating loop
 	after relocating NEW when it's the only new object.

	* elf/dl-init.c (_dl_init_next): When out of initializers, set
 	_r_debug.r_state to RT_CONSISTENT and call _dl_debug_state just
 	before return.

	* elf/rtld.c (dl_main): Move _dl_debug_initialize call after
 	relocation.  Call it unconditionally and only fill in DT_DEBUG
 	if it's present.  Then call _dl_debug_state with r_state RT_ADD
 	before running initializers.

	* elf/dl-open.c (_dl_open): Call _dl_debug_initialize and then call
 	_dl_debug_state with r_state RT_ADD before running initializers
	* elf/dl-close.c (_dl_close): Call _dl_debug_state with r_state
 	RT_DELETE before running finalizers and with RT_CONSISTENT just
 	before return.

	* elf/Makefile (dl-routines): Add dl-debug.
	* elf/dl-debug.c: New file.
	* elf/rtld.c (_dl_r_debug): Rename to _r_debug and move to dl-debug.c.
	(_dl_r_debug_state): Rename to _dl_debug_state and likewise move.
	(dl_main): Use _dl_debug_initialize.
	* elf/link.h: Fix name to _dl_debug_state in decl.
	(_dl_debug_initialize): Declare new function from dl-debug.c.
	(_r_debug): Declare it.

	* Makerules (distinfo-vars): Add install-{lib,data,bin,sbin,others}.
	In distinfo set $(subdir)-VAR and then set VAR to $($(subdir)-VAR).

	* Makeconfig (rpath-link): New variable; add $(elfobjdir).
	(default-rpath): Use it.
	(built-program-cmd): Use it in LD_LIBRARY_PATH.

	* Makeconfig (sysdep-configures): Prepend $(sysdep_dir) to names tried.

	* sysdeps/unix/Dist: Add make-syscalls.sh.

	* misc/Makefile (headers): Add sys/swap.h.
	* posix/unistd.h: Remove decls for swapon, swapoff.
	* sysdeps/generic/sys/swap.h: New file.
	* sysdeps/unix/sysv/linux/sys/swap.h: New file.

	* sysdeps/unix/sysv/linux/gnu/types.h: Remove temporary hack #define
	of __kernel_fsid_t.  It is correctly defines in <linux/types.h> now.
1996-06-13 04:06:45 +00:00
Roland McGrath
8d6468d0c8 Tue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
* elf/dl-close.c: Include <string.h> for memcpy.
	* elf/dl-lookup.c: Same.

	* elf/elf.h: Add Elfxx_Symndx for symbol indices.
	* elf/dl-lookup.c (_dl_lookup_symbol): Use it.
	(_dl_setup_hash): Use it.
	* elf/link.h (struct link_map): Use it.

	* elf/rtld.c (_dl_start): Don't rely on pointer-to-first-arg hack
	for getting the argc/argv/envp block.  Instead, make it the argument.
	sysdeps/i386/dl-machine.h (RTLD_START): Do that.
	sysdeps/m68k/dl-machine.h (RTLD_START): Same.

	* shlib-versions: Add version numbers for alpha-linux.  To avoid
	user confusion, make them the same as i386-linux.

	* sysdeps/alpha/Makefile [subdir elf]: Add -mno-fp-regs to
	sysdep-CFLAGS so that _dl_runtime_resolve doesn't have to save them.
	Add -mbuild-constants to CFLAGS-rtld.c to that we can bootstrap
	without using literal data.

	* sysdeps/generic/dl-sysdep.c: Include <string.h> for memcpy.
	Finish Elf32 -> ElfW migration.
1996-06-12 01:54:21 +00:00
Roland McGrath
ba79d61b44 * Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.
* elf/dl-close.c: New file.
	* elf/link.h: Declare _dl_close.
	* elf/Makefile (routines): Add dl-close.
	* elf/dlclose.c (dlclose): Use _dl_close.

	* elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.

	* elf/dl-runtime.c (_dl_global_scope): New variable.
	(_dl_object_relocation_scope): New function.
	(fixup): Use it.
	* elf/rtld.c (dl_main): Use it.
	* elf/dl-open.c (_dl_open): Use it.  If (MODE & RTLD_GLOBAL), set the
	l_global bit and append the new map to _dl_global_scope.
	* elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
	and _dl_object_relocation_scope.

	* elf/link.h (struct link_map): Add l_loader member.
	Remove _dl_map_object_from_fd decl.
	* elf/dl-load.c (_dl_map_object): Pass LOADER to ...
	(_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
	(_dl_map_object): Try DT_RPATH from all loaders up the chain.

	* elf/dl-object.c (_dl_loaded): Variable removed.
	(_dl_default_scope): New variable replaces it.
	* elf/link.h (_dl_loaded): Remove variable decl; instead define as
	macro for _dl_default_scope[2].
	(_dl_default_scope): Declare it.
	* sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
	instead of _dl_loaded.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.

	* elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
	* elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.

	* elf/link.h (struct link_map.l_type): Remove lt_interpreter.
 	(struct link_map): Add new flag member l_global.

	* elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
	directly instead of looking for lt_interpreter.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	* elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
	(dl_main): Set _dl_rtld_map.l_type to lt_library.

	* elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
	dependencies loaded, downgrading lt_executable -> lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
	l_type from that, translating lt_library->lt_executable based on the
	file's ELF type.
	(_dl_map_object): Likewise.
	* elf/link.h: Update prototypes.
	* elf/dl-open.c: Pass type lt_loaded.
	* elf/rtld.c: Pass type lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
	_dl_new_object.
	(_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
	Free REALNAME, and just use NAME in error message.
	* elf/dl-object.c (_dl_new_object): If malloc fails, return null
	instead of calling _dl_signal_error.

	* elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
	error for _dl_zerofd setup failure.

	* elf/dl-object.c (_dl_startup_loaded): Variable removed.
	* elf/link.h: Remove its decl.

	* elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
	through to _dl_lookup_symbol.
	* elf/link.h (_dl_relocate_object): Update comment and prototype.
	* elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.

	* elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
	null-terminated vector of pointers, no longer a vector of exactly two.
	* elf/link.h (_dl_lookup_symbol): Update comment and prototype.

	* elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
	done in _dl_relocate_object.

	* elf/dlopen.c: Pass "" to _dl_open when FILE is null.
1996-06-10 20:19:39 +00:00
Roland McGrath
266180eb98 Mon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/dl-sysdep.c (__open): Define this instead of open.
	(__close, __mmap): Likewise define with __ names now.

Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-support.c: New file.
	* elf/Makefile (CFLAGS-dl-support.c): New variable.
	(routines, elide-routines.so): Add dl-support.

	* elf/dl-minimal.c (_dl_pagesize): Remove common defn.
	* elf/dl-load.c (_dl_pagesize): Define it here.
	(_dl_map_object_from_fd): Initialize it if zero.
	* elf/link.h (_dl_pagesize): Remove const.

Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/Makefile (routines): Add dl-symbol.
	* elf/dl-lookup.c (_dl_symbol_value): Moved to ...
	* elf/dl-symbol.c: New file.

	* elf/elf.h (Elf32_Xword, Elf32_Sxword): New types.
	(Elf32_Section, Elf64_Section): New types, 16 bits.
	(Elf32_Sym, Elf64_Sym): Use it.

	* elf/dl-deps.c (_dl_open): Moved to ...
	* elf/dl-open.c: New file.
	* Makefile (routines): Add dl-open.

	* elf/Makefile (dl-routines): New variable.
	(routines): Add $(dl-routines).
	(elide-routines.so): New variable, set to $(dl-routines).
	(libdl-inhibit-o): Variable removed; build all flavors of -ldl.
	(rtld-routines): All but rtld, dl-sysdep, and dl-minimal moved to
 	$(dl-routines).

	* elf/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.

	* elf/dladdr.c: Use ELFW(ST_BIND) in place of ELF32_ST_BIND.

	* elf/dl-load.c (open_path): Use __ names for open and close.  Avoid
	using strdup.
	(_dl_map_object): Likewise.
	(_dl_map_object_from_fd): Use __ names for mmap, munmap, and mprotect.
	* elf/dl-minimal.c (malloc): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object): Likewise.

	* elf/dl-minimal.c (_dl_pagesize): New variable.
	(malloc): Use that instead of a static variable.
	* elf/dl-reloc.c (_dl_relocate_object): Use _dl_pagesize instead of
	calling getpagesize.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
	* elf/link.h: Declare _dl_pagesize.

	* elf/rtld.c (dl_r_debug): Renamed to _dl_r_debug.

	* elf/link.h (struct link_map): Use Half for l_phnum instead of Word.
  	* elf/rtld.c (dl_main): Use Half for phdr count arg.
	(_dl_sysdep_start): Update prototype of DL_MAIN function ptr arg.

	* elf/dl-load.c (_dl_map_object_from_fd): Use explicit Elf32_Word to
 	extract 4-byte magic number, not ElfW(Word).  Match EI_CLASS against
 	native wordsize, either 32 or 64.

	* elf/elf.h (Elf64_Byte, Elf64_Section): Typedefs removed.  In C a
 	char is always a byte, no need for a typedef.  Section indices are
	16-bit quantities in elf64, which already have a typedef Elf64_Half.

	Remove partial -lelf implementation.  There is now a
	separately-distributed `libelf' package that implements it.
	* elf/dl-lookup.c: Don't #include <libelf.h> any more.
	(_dl_elf_hash): New function, moved from
	libelf.h:elf_hash.
	(_dl_lookup_symbol): Use it instead of elf_hash.
	* elf/libelf.h: File removed.
	* elf/elf_hash.c: File removed.
	* elf/Makefile (headers): Remove libelf.h.
	(extra-libs): Remove libelf.
	(libelf-routines): Variable removed.

	* elf/Makefile (libdl.so): Remove commands from this target.  The
 	implicit rule commands are correct, this explicit rule just serves to
 	add some dependencies.

	* elf/dl-lookup.c (_dl_lookup_symbol): Use ELFW(ST_TYPE) in place of
 	ELF32_ST_TYPE.  Likewise ST_BIND.
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise R_SYM.

	* elf/link.h (ElfW): New macro for wordsize-independent ElfXX_* type
	naming.
	(ELFW): New macro, likewise for ELFXX_* macro naming.
	(_ElfW, _ElfW_1): New macros, subroutines of ElfW and ELF.

Sat Jun  8 20:52:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/link.h, elf/do-rel.h, elf/dynamic-link.h, elf/dl-deps.c,
 	elf/dl-init.c, elf/dl-load.c, elf/dl-lookup.c, elf/dl-reloc.c,
 	elf/dl-runtime.c, elf/dladdr.c, elf/dlclose.c, elf/dlsym.c,
 	elf/linux-compat.c, elf/rtld.c: Change all uses of `Elf32_XXX' to
 	`ElfW(XXX)' for wordsize-independence.

Sat Jun  8 20:50:42 1996  Richard Henderson  <rth@tamu.edu>

	* elf/elf.h: Move Elf64_* types in parity with Elf32 counterparts.
	(Elf64_auxv_t): New type.
	(EM_ALPHA, R_ALPHA_*): New macros for elf64-alpha format.
1996-06-10 10:18:47 +00:00
Roland McGrath
1c384dcd5f Wed Jun 5 00:01:19 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Fix typos in last change.
	Comment out ref to nonexistent _dl_close.
1996-06-05 04:03:34 +00:00
Roland McGrath
ee188d555b Tue Jun 4 21:01:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/getlogin_r.c: New file.

Wed Jun  5 02:11:30 1996  Ulrich Drepper  <drepper@cygnus.com>

	* io/Makefile (routines): Add ttyname_r.

	* resolv/res_debug.c, resolv/resolv.h: Update from bind-4.3.4-T4A.

	* sysdeps/libm-i387/e_asinl.S, sysdeps/libm-i387/e_atan2l.S,
	sysdeps/libm-i387/e_expl.S, sysdeps/libm-i387/e_fmodl.S,
	sysdeps/libm-i387/e_log10l.S, sysdeps/libm-i387/e_logl.S,
	sysdeps/libm-i387/e_remainderl.S, sysdeps/libm-i387/e_scalbl.S,
	sysdeps/libm-i387/e_sqrtl.S, sysdeps/libm-i387/s_atanl.S,
	sysdeps/libm-i387/s_cosl.S, sysdeps/libm-i387/s_ilogbl.S,
	sysdeps/libm-i387/s_log1pl.S, sysdeps/libm-i387/s_logbl.S,
	sysdeps/libm-i387/s_scalbnl.S, sysdeps/libm-i387/s_sinl.S,
	sysdeps/libm-i387/s_tanl.S: New files.  i387 assembler versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/k_standard.c: Add handling for errors
	in long double functions.

	* sysdeps/libm-ieee754/s_ilogbl.c, sysdeps/libm-ieee754/s_logbl.c,
	sysdeps/libm-ieee754/s_modfl.c:  New files.  Generic versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/s_isinf.c [NO_LONG_DOUBLE]: Add string
        alias for __isinfl.

	* sysdeps/libm-ieee754/w_acoshl.c, sysdeps/libm-ieee754/w_acosl.c,
	sysdeps/libm-ieee754/w_asinl.c, sysdeps/libm-ieee754/w_atan2l.c,
	sysdeps/libm-ieee754/w_atanhl.c, sysdeps/libm-ieee754/w_cabsl.c,
	sysdeps/libm-ieee754/w_coshl.c, sysdeps/libm-ieee754/w_dreml.c,
	sysdeps/libm-ieee754/w_expl.c, sysdeps/libm-ieee754/w_fmodl.c,
	sysdeps/libm-ieee754/w_gammal.c, sysdeps/libm-ieee754/w_gammal_r.c,
	sysdeps/libm-ieee754/w_hypotl.c, sysdeps/libm-ieee754/w_j0l.c,
	sysdeps/libm-ieee754/w_j1l.c, sysdeps/libm-ieee754/w_jnl.c,
	sysdeps/libm-ieee754/w_lgammal.c, sysdeps/libm-ieee754/w_lgammal_r.c,
	sysdeps/libm-ieee754/w_log10l.c, sysdeps/libm-ieee754/w_logl.c,
	sysdeps/libm-ieee754/w_powl.c, sysdeps/libm-ieee754/w_remainderl.c,
	sysdeps/libm-ieee754/w_scalbl.c, sysdeps/libm-ieee754/w_sinhl.c,
	sysdeps/libm-ieee754/w_sqrtl.c: New files.  Wrapper functions
	around long double function implementations.

	* sysdeps/posix/ttyname_r.c (ttyname_r): Use _D_EXACT_NAMLEN
	to determine length of directory entry name.

	* posix/Makefile (routines): Add getlogin_r.
	* posix/unistd.h: Add prototype for getlogin_r.
	* sysdeps/stub/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.  Stub version.
	* sysdeps/unix/getlogin.c (getlogin): Use ttyname_r instead of
	ttyname.  This avoids saving and restoring the old content.
	Also use setutent_r, getutline_r and endutent_r instead of
	accing UTMP file directly.
	* sysdeps/unix/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.

Tue Jun  4 20:10:09 1996  J.T. Conklin  <jtc@cygnus.com>

	* sysdeps/libm-i387/s_finitef.S: Fix mask for exponent.

	* elf/dl-lookup.c (_dl_lookup_symbol): Grok magical undefined symbols
	_GNU_libc_dl_{open,close,symbol} and resolve them to dl functions.

	* elf/rtld.c (rtld_map): Renamed to _dl_rtld_map, made global.
	* elf/link.h: Declare _dl_rtld_map.

	* elf/dl-lookup.c (_dl_symbol_value): New function.
	* elf/link.h: Declare it.

	stdio-common/vfscanf.c: Prepare for reentrant libio.
	Used in reentrant libio.
1996-06-05 01:07:21 +00:00
Roland McGrath
efec1d0c47 Tue Jun 4 02:25:44 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/linux-compat.c (_init): Pass reloc_addr arg to _dl_lookup_symbol.

	* elf/dl-lookup.c (_dl_lookup_symbol): Use l_searchlist.

	* elf/dl-deps.c: New file.
	* elf/Makefile (rtld-routines): Add dl-deps.
	* elf/link.h: Declare _dl_map_object_deps, _dl_open.
	* elf/rtld.c (dl_main): Use _dl_map_object_deps.
	* elf/dlopen.c: Use _dl_open.

	* elf/rtld.c (dl_main): Remove BEFORE_RTLD variable and list
	frobnication based on its value.  Detach RTLD_MAP from the chain if
	its l_opencount is zero after loading deps.

	* elf/dlfcn.h (RTLD_BINDING_MASK): New macro.

	* elf/link.h (struct link_map): Replace l_deps_loaded flag member with
	`struct link_map **l_searchlist' and `unsigned int l_nsearchlist'.
	* elf/dl-lookup.c (_dl_lookup_symbol): Make SYMBOL_SCOPE arg an array
	of two link_map ptrs.  Search the maps in the l_searchlist of each
	elt that is not null.
	* elf/dl-reloc.c (_dl_relocate_object): Pass proper SCOPE array.
	* elf/dl-runtime.c: Likewise.
	* elf/dlsym.c: Likewise.
	* elf/rtld.c (dl_main): Likewise.

	* elf/dl-minimal.c (realloc): Support realloc of the block most
	recently returned by the minimal malloc.

	* intl/localealias.c, intl/dcgettext.c [_LIBC]: Define HAVE_ALLOCA.
1996-06-04 05:18:15 +00:00
Roland McGrath
710f7bab59 Mon Jun 3 00:30:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
	don't allow a defn resolving to that address.
	* elf/link.h: Update prototype and comment.
	* elf/dl-runtime.c (fixup): Define local `resolve' function and pass
	it to elf_machine_relplt.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
	RELOC_ADDR and pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
	instead of calling it ourselves and passing its results.
	(elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
	* elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
	arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.

	* csu/initfini.c (_fini): Add extern decl for i_am_not_a_leaf.

	* elf/dlfcn.h (dl_open_mode): Enumerated type removed.
	(RTLD_LAZY, RTLD_NOW): Define these as macros instead.
	(RTLD_GLOBAL): New macro.
	(dlopen): Take arg of type int instead of dl_open_mode.
	* elf/dlopen.c: Likewise.

	* math/math.h (_Mldbl): New macro, either produces L suffix or not.
	(M_*): Use it for these constants.
1996-06-03 04:46:40 +00:00
Roland McGrath
6c03c2cf27 * elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
Reject SHN_UNDEF defns iff NOPLT is nonzero.
	* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
	* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
	* elf/dlsym.c (dlsym): Pass 0.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
	replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
	Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
	* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
	* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
	* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
1996-06-02 21:35:43 +00:00
Roland McGrath
8738e7f8b0 * elf/dl-lookup.c (_dl_lookup_symbol): Undefined symbol is no
error if weak.

	* elf/Makefile (default-rpath): New variable.
	(CPPFLAGS): Append -DDEFAULT_RPATH=....
	* elf/dl-load.c (_dl_map_object): Use DEFAULT_RPATH instead of
	hard-coded "/lib:/usr/lib".
1995-11-16 02:37:06 +00:00
Roland McGrath
1571a01695 Wed Sep 6 19:41:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather
	than WEAK_VALUE.a to see if a weak value has been set.  A valid
	weak value may set WEAK_VALUE.a to 0.
1995-09-07 09:00:05 +00:00
Roland McGrath
f2b0f935d7 * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap
from zero fill.

	* elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
 	if nonzero, don't let *REF satisfy the reference itself.
	* elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
	* sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
 	_dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
 	R->r_offset to RESOLVE callback.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
 	satisfy the reference itself if its value equals the reloc's
 	offset.

	* elf/rtld.c (dl_main): Write a newline in fatal msg.

	* Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
1995-06-12 09:00:13 +00:00
Roland McGrath
a1a9d21596 Tue May 30 15:52:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* mach/Makefile (server-interfaces): Removed notify and
 	device_reply.  For shlibs with eager binding, libmachuser.so must
 	not refer to any functions not defined in libc.
1995-05-31 13:23:14 +00:00
Roland McGrath
421f82e5cc Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makeconfig (+gccwarn): Add -Winline.

	* hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
 	set, avoid abort_rpcs, and use reply and intr ports saved in
 	SS->context.
	* sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
 	from SS->context.  Don't clear SS->context.
	* sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
 	setting SS->context.  If msg_sig_post returns, re-lock and clear
 	SS->context.

Fri May  5 10:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* mach/Makefile (errsystems.c): Comment out generation rule.

	* sysdeps/mach/_strerror.c: Consider a system unknown if its
 	bad_sub member is null.

	* mach/mig-alloc.c: Add weak alias to non-__ name.
1995-05-08 09:11:25 +00:00
Roland McGrath
d66e34cd42 * sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.
* sysdeps/i386/dl-machine.h: New file.
	* sysdeps/stub/dl-machine.h: New file.
	* sysdeps/i386/dl-runtime.c: New file.
	* sysdeps/stub/dl-runtime.c: New file.
	* sysdeps/i386/elf/start.S: New file.
	* sysdeps/generic/dl-sysdep.c: New file.
	* sysdeps/mach/hurd/dl-sysdep.c: New file.
1995-05-02 06:35:55 +00:00