Commit Graph

267 Commits

Author SHA1 Message Date
Ulrich Drepper
bb4cb25213 Update.
* elf/dl-close.c (_dl_close): When closing an object using TLS
	either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to
	true.  Increment dl_tls_generation only if we closed any TLS-using
	object.
	* elf/tst-tls6.c: New file.
	* elf/Makefile: Add rules to build and run tst-tls6.
2002-02-14 03:54:02 +00:00
Ulrich Drepper
aed283dd45 Update.
2002-02-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
	TLS_DTV_UNALLOCATE.
	(oom): New function.
	(_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
	(_dl_determine_tlsoffset): Likewise.
	(_dl_allocate_tls): Likewise.
	(__TLS_GET_ADDR): Define if not already defined.
	(_dl_tls_symaddr): New function.
	(allocate_and_init): New function.
	(__tls_get_addr): Actually implement handling of generation counter
	and deferred allocation.
	* sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
	add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
	Declare _dl_tls_symaddr.
	* sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
	SHARED.
	* include/link.h (struct link_map):  Remove l_tls_nextimage and
	l_tls_previmage.
	* elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
	instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
	(_dl_vsym): Likewise.
	* elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
	layout.
	(dl_main): Allow PT_TLS be present for empty segment.  Remove
	nextimage list handling.  Instead add all modules using TLS to
	dl_tls_dtv_slotinfo_list.
	* elf/dl-open.c (dl_open_worker): After successfully loading all
	objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
	* elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
	empty segment don't do anything.  Remove handling of initimage list.
	* elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
	(GLIBC_PRIVATE): Add _dl_tls_symaddr.
	* elf/dl-minimal.c: Define __libc_memalign.
	* elf/dl-support.c: Remove _dl_initimage_list.  Add
	_dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	* include/stdlib.h: Declare __libc_memalign.

	* elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
	* elf/tst-tls4.c: New file.
	* elf/tst-tls5.c: New file.
	* elf/tst-tlsmod2.c: New file.

	* elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.

	* elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.

	* elf/tst-tls1.c: Use test-skeleton.c.
	* elf/tst-tls2.c: Likewise.
	* elf/tst-tls3.c: Likewise.

	* elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.

	* sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
2002-02-13 08:03:56 +00:00
Ulrich Drepper
2e36cb48e5 Update.
* elf/tst-tls3.c: New file.
	* elf/tst-tlsmod1.c: New file.
	* elf/Makefile: Add rules to build and run tst-tls3.

	* sysdeps/i386/dl-machine.h: Include <tls.h>.
	(elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three
	TLS relocations.
2002-02-11 06:00:19 +00:00
Ulrich Drepper
87837aace9 Update.
* elf/dl-deps.c (struct openaux_args): Add open_mode element.
	(openaux): Pass open_mode as new last argument to _dl_map_object.
	(_dl_map_object_deps): Add new argument open_mode.  Initialize
	open_mode element of args variable with it.
	* elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
	_dl_map_object_deps.
	* elf/rtld.c (dl_main): Add zero as last parameter to
	_dl_map_object_deps call.
	* sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
	* elf/nodlopen2.c: New file.
	* elf/nodlopenmod2.c: New file.
	* elf/Makefile: Add rules to build and run nodlopen2.

	* elf/tls-macros.hgg: ...here.  New file.
2002-02-08  Richard Henderson  <rth@redhat.com>
2002-02-10 22:40:17 +00:00
Ulrich Drepper
2cef4257d0 Update.
* elf/tst-tls1.c: Move TLS helper macros to...
	* elf/tls-macros.h: ...here.  New file.
	* elf/tst-tls2.c: New file.
	* elf/Makefile (tests): Add tst-tls2.
	(distribute): Add tls-macros.h.
2002-02-10 18:58:00 +00:00
Ulrich Drepper
b123d06e21 Update.
* elf/Makefile (tests): Add tst-tls1.
	* elf/tst-tls1.c: New file.

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
	alignment of TCB for now.

	* elf/rtld.c (dl_main): Use p_vaddr as address of TLS
	initialization image for the application itself.

	loop to initialize TLS block.
2002-02-10 07:44:36 +00:00
Ulrich Drepper
a1a118c000 (dl-routines): Add dl-tls. (distribute): Add dl-tls.h. 2002-02-07 03:49:37 +00:00
Ulrich Drepper
535b764df5 Update.
* elf/rtld.c (_dl_start_final): Allocate TLS and initialize
	thread-pointer as soon as possible.
	* sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
	elements in rtld_global.
	* sysdeps/generic/tls.h: New file.
	* elf/Makefile (distribute): Add tls.h.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
	relocations.  Not complete yet.

	* resolv/resolv.h: Allow user to define __need_res_state and only
	define __res_start structure then.
	* include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
2002-02-05 00:57:29 +00:00
Ulrich Drepper
fb23eb252f Update.
2002-02-01  Jakub Jelinek  <jakub@redhat.com>

	* Versions.def (libc): Add GLIBC_PRIVATE.
	(libdb, libnss_db, libdb1): Remove.
	(libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis,
	libnss_nisplus): Move all symbols to GLIBC_PRIVATE.
	(libpthread): Add GLIBC_PRIVATE.
	(libresolv): Likewise, remove GLIBC_2.1.
	(ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1,
	GLIBC_2.2.3, GLIBC_2.3.
	* catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE.
	* elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first,
	_dl_sym, _dl_vsym): Likewise.
	(__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error,
	_dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize,
	_dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute,
	_dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip,
	_dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip,
	_dl_map_object, _dl_map_object_deps, _dl_out_of_memory,
	_dl_relocate_object, _dl_signal_error, _dl_start_profile,
	_dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global):
	Likewise.
	(_dl_object_relocation_scope): Remove.
	* hesiod/Versions: Move all symbols to GLIBC_PRIVATE.
	* iconv/Versions (__gconv_alias_db, __gconv_modules_db,
	__gconv_cache): Move to GLIBC_PRIVATE.
	* inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r,
	__internal_setnetgrent): Likewise.
	* io/Versions (__libc_open, __libc_close, __libc_read, __libc_write,
	__libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise.
	* locale/Versions (__collate_element_hash, __collate_element_strings,
	__collate_symbol_classes, __collate_symbol_hash,
	__collate_symbol_strings, _nl_current_LC_COLLATE,
	_nl_current_LC_CTYPE): Likewise.
	* misc/Versions (__libc_fsync, __libc_msync): Likewise.
	* nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE.
	(libnss_nis, libnss_nisplus): Likewise.
	* nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent,
	_nss_files_parse_spent): Move to GLIBC_PRIVATE.
	(libnss_files): Move all symbols to GLIBC_PRIVATE.
	* posix/Versions (__libc_wait, __libc_waitpid, __libc_pause,
	__libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64,
	__libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE.
	* resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop,
	__ns_get16, __ns_samename): Likewise.
	(libnss_dns): Move all symbols to GLIBC_PRIVATE.
	* setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to
	GLIBC_PRIVATE.
	* socket/Versions (__libc_accept, __libc_send, __libc_recvfrom,
	__libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto,
	__libc_connect): Likewise.
	* stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits):
	Likewise.
	* stdlib/Versions (__libc_system): Likewise.
	* sunrpc/Versions (__rpc_thread_destroy): Likewise.
	* sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE.
	* sysdeps/ia64/fpu/Versions: Likewise.
	* sysdeps/ia64/Versions: Likewise.
	* sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
	* sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move
	to GLIBC_PRIVATE.
	* sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise.
	* sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo,
	__libc_sigaction): Likewise.
	* termios/Versions (__libc_tcdrain): Likewise.

	* misc/sys/cdefs (__attribute_noinline__): Define.
	* elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add
	__attribute_noinline__.

	* elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64.
	* elf/dl-xstat64.c: New file.
	* elf/dl-fxstat64.c: New file.
	* sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined,
	don't export __fxstat64 at multiple versions.
	* sysdeps/unix/sysv/linux/lxstat64.c: Similarly.
	* sysdeps/unix/sysv/linux/xstat64.c: Similarly.
2002-02-01 23:24:05 +00:00
Ulrich Drepper
635f35fcf4 Update.
2002-02-01  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (distribute): Add dl-procinfo.c.
	* sysdeps/unix/sysv/linux/i386/Dist: Remove dl-procinfo.c.
	* sysdeps/unix/sysv/linux/arm/Dist: Likewise.
2002-02-01 19:13:09 +00:00
Ulrich Drepper
ab92bebd3e Update.
2002-01-08  Ulrich Drepper  <drepper@redhat.com>

	* Makefile (distribute): Add scripts/cpp.
	* elf/Makefile (distribute): Add reldep6mod[01234].c,
	unwind-dw2.c, unwind-dw2-fde.c, unwind.h, unwind-pe.h,
	unwind-dw2-fde.h, and dwarf2.h.
	* sysdeps/unix/bsd/bsd4.4/Dist: New file.
	* sysdeps/unix/sysv/aix/Dist: Add sysv_termio.h and start-libc.c.
	* sysdeps/unix/sysv/linux/ia64/Dist: Add ldd-rewrite.sed.
	* sysdeps/unix/sysv/linux/s390/Dist: Likewise.
2002-01-08 22:00:09 +00:00
Ulrich Drepper
a0dcb6896c Update.
2002-01-03  Jakub Jelinek  <jakub@redhat.com>

	* elf/Makefile (routines, shared-only-routines): Add
	unwind-dw2-fde-glibc instead of unwind-dw2-fde.
	* elf/elf.h (PT_GNU_EH_FRAME): Define.
	* sysdeps/generic/unwind-dw2-fde-glibc.c: New file.
	* sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases):
	Optimize if .eh_frame section contains no FDEs.
	(__register_frame, __deregister_frame_info_bases,
	__deregister_frame): Likewise.
	* sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix
	DW_CFA_restore handling.

2002-01-07  Stephen L Moshier  <moshier@mediaone.net>
2002-01-08 06:28:46 +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
74bd2300b5 Update.
2001-10-02  Jakub Jelinek  <jakub@redhat.com>
	    H.J. Lu  <hjl@gnu.org>

	* configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
	if gcc supports this flag.
	(EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
	(gcc3): Allow glibc to be compiled with gcc 3.x.
	* config.h.in (EXPORT_UNWIND_FIND_FDE): Add.
	* config.make.in (static-libgcc, unwind-find-fde): Add.
	* Makerules (build-shlib-helper, build-module-helper): Use it.
	* scripts/versions.awk: Make sure GLIBC_ versions come first.
	* elf/soinit.c (__libc_global_ctors): Set tbases and dbases if
	necessary.
	(_fini): Call __deregister_frame_info_bases if
	__register_frame_info_bases was used to register.
	* elf/Versions (__register_frame_info, __deregister_frame_info): Add
	for GLIBC_2.0.
	(__register_frame_info_bases, __register_frame_info_table_bases,
	__deregister_frame_info_bases, _Unwind_Find_FDE): Add for GLIBC_2.2.5.
	* elf/Makefile (routines): Add unwind-dw2-fde.
	(shared-only-routines): Add unwind-dw2-fde.
	* sysdeps/alpha/gccframe.h: New file.
	* sysdeps/arm/gccframe.h: New file.
	* sysdeps/generic/framestate.c: New file.
	* sysdeps/generic/dwarf2.h: New file.
	* sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0.
	* sysdeps/generic/unwind-dw2-fde.c: New file.
	* sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file.
	* sysdeps/generic/unwind-dw2-fde.h: New file.
	* sysdeps/generic/unwind-dw2.c: New file.
	* sysdeps/generic/unwind-pe.h: New file.
	* sysdeps/generic/unwind.h: New file.
	* sysdeps/hppa/gccframe.h: New file.
	* sysdeps/i386/gccframe.h: New file.
	* sysdeps/m68k/gccframe.h: New file.
	* sysdeps/mips/gccframe.h: New file.
	* sysdeps/powerpc/gccframe.h: New file.
	* sysdeps/s390/gccframe.h: New file.
	* sysdeps/sh/gccframe.h: New file.
	* sysdeps/sparc/gccframe.h: New file.
	* sysdeps/vax/gccframe.h: New file.
	* sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
	Set on all architectures except ia64.
	* sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set
	for i386.
	* sysdeps/mach/hurd/i386/Versions (__register_frame_info,
	__deregister_frame_info): Move to elf/Versions.
	* sysdeps/unix/sysv/linux/m68k/Versions: Likewise.
	* sysdeps/unix/sysv/linux/arm/Versions: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
	* sysdeps/unix/sysv/linux/i386/Versions: Likewise.
	* sysdeps/unix/sysv/linux/mips/Versions: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
	* sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate.
	* sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
	* sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.

	* sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New file.
	* sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file.
	* sysdeps/generic/strnlen.c: New file.
2001-11-16 01:27:24 +00:00
Ulrich Drepper
c47e78b10f Update.
2001-09-29  Jes Sorensen  <jes@trained-monkey.org>

	* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
	Add sc_loadrs and sc_rbs_bas to match current kernel.

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

	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.

	* sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Fix erfc(-inf).

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

	* elf/dl-open.c (dl_open_worker): If l_opencount of freshly loaded
	object has been bumped because of relocation dependency, avoid
	duplicates in l_scope.
	(show_scope): Fix typos.
	* elf/Makefile: Add rules to build and run reldep6.
	* elf/reldep6.c: New file.
	* elf/reldep6mod0.c: New file.
	* elf/reldep6mod1.c: New file.
	* elf/reldep6mod2.c: New file.
	* elf/reldep6mod3.c: New file.
	* elf/reldep6mod4.c: New file.

2001-09-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Call
	sparc64_fixup_plt.
	(sparc64_fixup_plt): Moved from elf_machine_fixup_plt. Optimize
	near jumps and 0xfffff800XXXXXXXX target addresses, no thread safety
	for non-lazy binding. Fix .plt[32768+] handling.
	(elf_machine_plt_value): Don't add addend.
	(elf_machine_rela): Call sparc64_fixup_plt instead of
	elf_machine_fixup_plt.
	(elf_machine_runtime_setup, TRAMPOLINE_TEMPLATE): Optimize for
	dynamic linker at 0xfffff800XXXXXXXX.

	* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
2001-10-01 00:14:14 +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
5a21d307c5 Update.
2001-09-07  Ulrich Drepper  <drepper@redhat.com>

	* include/link.h (struct link_map): Add l_scope_mem and l_scope_max
	elements.  Change l_scope to be a pointer only.
	* elf/dl-object.c (_dl_new_ojbect): Initialize l_scope and l_scope_max.
	* elf/dl-open.c (dl_open_worker): If dependency wasn't just opened
	here add searchlist of newly open file to the dependency's scope.
	* elf/dl-close.c (_dl_close): If dependency is used otherwise remove
	only searchlist from its scope.  Free own scope array if necessary.
	* elf/Makefile (tests): Add dblload and dblunload now.
2001-09-07 07:57:11 +00:00
Ulrich Drepper
3fac000158 Update.
2001-09-05  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile: Add rules to build new tests.  Don't run them yet since
	they both fail.
	* elf/dblload.c: New file.
	* elf/dblloadmod1.c: New file.
	* elf/dblloadmod2.c: New file.
	* elf/dblloadmod3.c: New file.
	* elf/dblunload.c: New file.
2001-09-06 01:03:05 +00:00
Ulrich Drepper
6c3ebebd1e Update.
2001-08-29  Ulrich Drepper  <drepper@redhat.com>

	* nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received
	first is from a previous call.
	Patch by Alexander Belopolsky <alexb@rentec.com> for [PR libc/3670].

2001-08-29  Andreas Schwab  <schwab@suse.de>

	* sysdeps/ia64/fpu/libm-test-ulps: Updated.

2001-08-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config.make.in (INSTALL_SCRIPT): Define.
	* Makeconfig (INSTALL_SCRIPT): Define.
	* Makerules (do-install-script): New macro to install scripts using
	INSTALL_SCRIPT.
	(install-bin-script): New rule to install scripts with
	do-install-script.
	(install-bin-script-nosubdir): New rule.
	(install-no-libc.a-nosubdir): Add install-bin-script-nosubdir.
	(distinfo-vars): Add $(install-bin-script).
	* Rules (others): Likewise.
	* Makefile (glibcbug): Install with install-bin-script.
	* debug/Makefile (xtrace): Likewise.
	(catchsegv): Likewise.
	* elf/Makefile (ldd): Likewise.
	* malloc/Makefile (mtrace): Likewise.
	* timezone/Makefile (tzselect): Likewise.

2001-08-29  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass
	ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
	_dl_lookup_versioned_symbol () and _dl_lookup_symbol ().

	Add it to LDFLAGS.so, LDFLAGS-rtld, and +link.
2001-08-29 23:31:38 +00:00
Ulrich Drepper
39ab0fdf56 (routines): Add dl-iteratephdr and dl-iteratephdr-static. 2001-07-25 20:42:02 +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
1826d7933b Update.
2001-05-22  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-close.c (_dl_close): Save imap->l_reldeps, not map->l_reldeps.

	* elf/Makefile (distribute): Add reldep4mod[1234].c.
	(tests): Add reldep4.
	(modules-names): Add reldep4mod[1234].
	(reldep4mod1.so, reldep4mod2.so, reldep4, reldep4.out): New rules.
	* elf/reldep4.c: New file.
	* elf/reldep4mod1.c: Likewise.
	* elf/reldep4mod2.c: Likewise.
	* elf/reldep4mod3.c: Likewise.
	* elf/reldep4mod4.c: Likewise.
2001-05-22 23:55:23 +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
2373b30ea8 Update.
2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/cp1255.c: Completely rewritten.
	* iconvdata/Makefile (gen-8bit-gap-modules): Remove cp1255.
	* iconvdata/testdata/WINDOWS-1255: New file.
	* iconvdata/testdata/WINDOWS-1255..UTF8: New file.
	* iconvdata/TESTS: Add WINDOWS-1255 test.
	* iconvdata/CP1255.irreversible: New file.

2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/cp1258.c: Completely rewritten.
	* iconvdata/Makefile (gen-8bit-gap-modules): Remove cp1258.
	* iconvdata/testdata/WINDOWS-1258: New file.
	* iconvdata/testdata/WINDOWS-1258..UTF8: New file.
	* iconvdata/TESTS: Add WINDOWS-1258 test.
	* iconvdata/tst-table-from.c (try): Reset the iconv descriptor before
	the main call, and flush it afterwards.
	(utf8_decode): Return a string, possibly containing several Unicode
	characters.
	(main): Update all utf8_decode calls.
	* iconvdata/CP1258.irreversible: New file.

2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconv/gconv.c (__gconv): For flush without output, pass do_flush = 2.
	* iconv/skeleton.c: Distinguish do_flush = 1 and do_flush = 2. In the
	first case, set outbuf, outstart, outend, and call PREPARE_LOOP before
	EMIT_SHIFT_TO_INIT; then pass the output produced by this step down to
	the next step. In the second case, clear the state without calling
	EMIT_SHIFT_TO_INIT.
	* iconvdata/ibm930.c (EMIT_SHIFT_TO_INIT): Use outbuf instead of
	data->__outbuf, and outend instead of data->__outbufend.
	* iconvdata/ibm933.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm935.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm937.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm939.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-cn.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-cn-ext.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-jp.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-kr.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/utf-7.c (EMIT_SHIFT_TO_INIT): Likewise.

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

	* elf/rtld.c (dl_main): Compute l_map_end for the main program.
	* elf/dl-sym.c (_dl_sym): Don't check for l_addr == 0.
	If match == _dl_loaded, caller can still come from the main program.
	(_dl_vsym): Likewise.
	* elf/dl-open.c (dl_open_worker): Don't check for l_addr == 0.
	* elf/dl-error.c (_dl_signal_error): Change NULL objname into "".
	* elf/restest2.c: New test.
	* elf/Makefile (tests): Add restest2.
	(restest2, LDFLAGS-restest2): Add rules.
2001-05-22 22:30:18 +00:00
Ulrich Drepper
8c0fe29004 (tests): Don't depend on $(objpfx)tst-pathopt.out for cross-compiling. ($(objpfx)tst-pathopt.out):Undo the last change. 2001-03-25 04:57:51 +00:00
Ulrich Drepper
a986484f67 Update.
2001-03-12  Jakub Jelinek  <jakub@redhat.com>

	* csu/Makefile (abi-tag.h): Define OS and version separately, allow
	version to be overriden from config.h.
	* csu/abi-note.S: Use OS and version separately, include config.h.
	* elf/dl-load.c (_dl_osversion): New.
	(_dl_map_object_from_fd): Kill some warnings.
	(open_verify): Check .note.ABI-tag of the library if present.
	* elf/Makefile (CPPFLAGS-dl-load.c): Add -I$(csu-objpfx).
	* elf/cache.c (struct cache_entry): Add osversion.
	(print_entry): Print osversion.
	(print_cache): Pass osversion to it.
	(compare): Sort according to osversion.
	(save_cache): Set osversion.
	(add_to_cache): Add osversion argument.
	* sysdeps/generic/ldconfig.h (add_to_cache, process_file,
	process_elf_file): Add osversion argument.
	* elf/readlib.c (process_file): Likewise.
	* sysdeps/generic/readelflib.c (process_elf_file): Likewise.
	* sysdeps/unix/sysv/linux/ia64/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* sysdeps/unix/sysv/linux/i386/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* sysdeps/unix/sysv/linux/sparc/readelflib.c (process_elf_file,
	process_elf32_file, process_elf64_file): Likewise.
	* elf/ldconfig.c (manual_link): Pass it.
	(search_dir): Issue diagnostic if two libs with the same soname in
	the same directory have different .note.ABI-tag.  Record osversion in
	dlib_entry and use it from there.
	(struct lib_entry): Remove.
	(struct dlib_entry): Add osversion.
	* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Check
	osversion.
	* sysdeps/generic/dl-cache.h (struct file_entry_new): Replace __unused
	field with osversion.
	* sysdeps/generic/ldsodefs.h (_dl_osversion): Declare.
	* sysdeps/unix/sysv/linux/init-first.c: Include ldsodefs.h.
	* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Save kernel
	version in _dl_osversion.
	* sysdeps/unix/sysv/linux/configure.in: Define __ABI_TAG_VERSION.
	* Makerules (build-shlib-helper, build-module-helper): New.
	(build-shlib, build-module-helper): Make sure .note.ABI-tag comes
	early.
	* config.h.in (__ABI_TAG_VERSION): Add.
	* elf/dl-minimal.c (__strtoul_internal): Set endptr on return.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
	Handle LD_ASSUME_KERNEL.
	* sysdeps/unix/sysv/linux/dl-librecon.h: New.
2001-03-16 07:40:05 +00:00
Ulrich Drepper
328c5f650f Update.
* timezone/antarctica: Update from tzdata2001a.
	* timezone/asia: Likewise.
	* timezone/australasia: Likewise.
	* timezone/backward: Likewise.
	* timezone/etcetera: Likewise.
	* timezone/europe: Likewise.
	* timezone/leapseconds: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/southamerica: Likewise.
	* timezone/systemv: Likewise.
	* timezone/yearistype: Likewise.
	* timezone/zone.tab: Likewise.
	* timezone/tzdump.c: Update from tzcode2001a.

2001-03-15  H.J. Lu  <hjl@gnu.org>

	* intl/Makefile: Fix a typo.

2001-03-14  David Mosberger  <davidm@hpl.hp.com>

	* gmon/gmon.c (write_call_graph): Avoid unaligned accesses when
	writing arc structures.

2001-03-15  H.J. Lu  <hjl@gnu.org>

	* elf/Makefile ($(objpfx)tst-pathopt.out): Protected against
	cross-compiling.

2001-03-13  Andreas Schwab  <schwab@suse.de>

	* posix/PTESTS2C.sed: Replace literal CRs by `\r'.

2001-03-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/cmsg_nxthdr.c (__cmsg_nxthdr): Fix test
	for control message fitting into message data.
	Patch by James Antill <james@and.org>.
2001-03-16 01:10:29 +00:00
Ulrich Drepper
273a3cfb99 Update.
* elf/global.c: New file.
	* elf/globalmod1.c: New file.
	* elf/Makefile: Add rules to build and run global.
2001-03-04 19:51:54 +00:00
Andreas Jaeger
e1e3ba549a Update.
* stdlib/Makefile (tests): Don't run tst-fmtmsg when
	cross-compiling.
	($(objpfx)tst-fmtmsg.out): Pass run-program-prefix.

	* stdlib/tst-fmtmsg.sh (test): Use run_program_prefix for static
	only builds.

	* elf/Makefile (tests): Only run tst-pathopt with shared libs.
2001-02-10 23:06:59 +00:00
Ulrich Drepper
421f0c9dce (distribute): Add firstobj.c. 2001-02-09 19:48:34 +00:00
Ulrich Drepper
b71e7ce864 Update.
* elf/Makefile: Add rules to build and run initfirst test.
	* elf/initfirst.c: New file.
	* elf/firstobj.c: New file.
2001-02-02 06:54:15 +00:00
Ulrich Drepper
c77a447822 Update.
2000-12-30  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): We can ignore the NODELETE flag if the
	object was not yet initialized.

2000-12-28  H.J. Lu  <hjl@gnu.org>

	* elf/dl-deps.c (_dl_map_object_deps): Make sure the DSO state
	is always consistent even if its dependency is failed.

	* elf/dl-open.c (_dl_open): Increment the open count before
	calling _dl_close () in case of failure.

	* elf/neededtest4.c: New file.
	* elf/neededobj5.c: New file.
	* elf/neededobj6.c: New file.

	* elf/Makefile (distribute): Add neededobj5.c and neededobj6.c.
	(tests): Add neededtest4.
	(modules-names): Add neededobj5 and neededobj6.
	($(objpfx)neededobj6.so): New target.
	($(objpfx)neededtest4): New target.
	($(objpfx)neededtest4.out): New target.
2000-12-31 06:09:08 +00:00
Andreas Jaeger
715ed1e9a5 Update.
2000-12-17  Andreas Jaeger  <aj@suse.de>

	* elf/vismain.c: Move prototypes for functions in vismod*.c to
	vismod.h.
	* elf/vismod.h: New file.
	* elf/Makefile (distribute): Add vismod.h.
	* elf/vismod1.c: Include vismod.h.
	* elf/vismod2.c: Likewise.
	* elf/vismod3.c: Likewise.

	* elf/constload3.c: Add prototype declarations to shut up gcc.
	* elf/failobj.c: Likewise.
	* elf/nodelmod3.c: Likewise.
	* elf/filtmod1.c: Likewise.
	* elf/filtmod2.c: Likewise.
	* elf/reldepmod1.c: Likewise.
	* elf/reldepmod2.c: Likewise.
	* elf/reldepmod3.c: Likewise.
	* elf/reldepmod4.c: Likewise.
	* elf/unload2dep.c: Likewise.
	* elf/unload2mod.c: Likewise.
	* elf/ltglobmod1.c: Likewise.
	* elf/pathoptobj.c: Likewise.

	* locale/programs/ld-collate.c (collate_finish): Don't use labels
	at end of compound statement.
	* locale/programs/locale.c (show_info): Likewise.
	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
2000-12-17 17:09:01 +00:00
Andreas Jaeger
1a511d3105 Update.
2000-12-15  Andreas Jaeger  <aj@suse.de>

	* stdio-common/scanf9.c (main): Reformat and change to avoid
	warnings.

	* stdio-common/tstdiomisc.c: Make local functions static.
	* stdio-common/tst-printf.c: Likewise.

	* elf/constload2.c: Add prototype declarations to shut up gcc.
	* elf/dep1.c: Likewise.
	* elf/dep2.c: Likewise.
	* elf/dep3.c: Likewise.
	* elf/dep4.c: Likewise.
	* elf/ltglobmod2.c: Likewise.

	* libio/fmemopen.c: Make local functions static.

	* elf/Makefile (distribute): Added testobj.h.

	* elf/testobj.h: New file.

	* elf/testobj1.c: Include testobj.h and move prototype
	declarations to testobj.h.
	* elf/testobj2.c: Likewise.
	* elf/testobj3.c: Likewise.
	* elf/testobj4.c: Likewise.
	* elf/testobj5.c: Likewise.
	* elf/testobj6.c: Likewise.
	* elf/testobj1_1.c: Likewise.
	* elf/preloadtest.c: Likewise.
2000-12-15 16:03:57 +00:00
Ulrich Drepper
8bc6161d50 Update.
* iconvdata/Makefile (distribute): Add viscii.c.

	* elf/Makefile (distribute): Add tst-pathopt.sh.
2000-11-03 01:24:42 +00:00
Ulrich Drepper
5a384a9143 Update.
* elf/Makefile: Add rules to build and run tst-pathopt.
	* elf/tst-pathopt.c: New file.
	* elf/tst-pathopt.sh: New file.
	* elf/pathoptobj.c: New file.
2000-10-30 00:13:29 +00:00
Ulrich Drepper
5ab7f7c12a Update.
* inet/getipnodebyad.c: Removed.
	* inet/getipnodebynm.c: Removed.
	* inet/tst-ipnode.c: Removed.
	* inet/freehostent.c: Removed.

	* sysdeps/unix/bsd/osf/=dirstream.h: Removed.

	* sysdeps/unix/sysv/linux/Dist: Add bits/initspin.h.

	* elf/Makefile (distribute): Add neededobj4.c.

	* iconvdata/Makefile (distribute): Add BIG5HKSCS.irreversible.

	* sysdeps/hppa/Dist: New file.
	* sysdeps/unix/sysv/linux/hppa/Dist: New file.
2000-10-27 06:51:12 +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
Ulrich Drepper
8edd917253 Update.
2000-10-24  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Use correct list (l_initfini) when
	computing new opencounts.
	* elf/Makefile: Add rules to build and run neededtest3.
	* neededtest3.c: New file.
	* neededobj4.c: New file.

	* elf/neededtest.c (main): Correct tests for failing dlopen.
2000-10-24 17:04:14 +00:00
Ulrich Drepper
9807e5408b Update.
* elf/unload.c: Generate more debugging output.

	* elf/neededtest.c: Make it more complicated.
	* elf/neededtest2.c: New file.
	* elf/Makefile: Add rules to build and run neededtest2.
2000-10-23 22:58:40 +00:00
Ulrich Drepper
d785c36692 Update.
2000-10-21  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-open.c (add_to_global): New function.  Split out from
	dl_open_worker.
	(dl_open_worker): Call add_to_global not only for new objects, also for
	previously loaded objects when (mode & RTLD_GLOBAL) and the object
	was not yet in the global scope.
	* elf/Makefile: Add rules to build and run lateglobal.
	* elf/lateglobal.c: New file.
	* elf/ltglobmod1.c: New file.
	* elf/ltglobmod2.c: New file.
2000-10-21 07:16:18 +00:00
Ulrich Drepper
f6de2239e2 Update.
* elf/Makefile: Add rules to build and run unload2.
	* elf/unload2.c: New file.
	* elf/unload2mod.c: New file.
	* elf/unload2dep.c: New file.

	* intl/libintl.h (ngettext macro): Add missing parameter.
	(dngettext macro): Likewise.
2000-10-21 02:07:22 +00:00
Ulrich Drepper
ceb579a3f8 Update.
2000-10-19  H.J. Lu  <hjl@gnu.org>

	* elf/Makefile (distribute): Add neededtest.c, neededobj1.c,
	neededobj2.c and neededobj3.c.
	(tests): Add neededtest.
	(modules-names): Add neededobj1, neededobj2 and neededobj3.
	($(objpfx)neededobj1.so): New target.
	($(objpfx)neededobj2.so): Likewise.
	($(objpfx)neededobj3.so): Likewise.
	($(objpfx)neededtest): Likewise.
	($(objpfx)neededtest.out): Likewise.
	* elf/neededtest.c: New. Based on the bug report from
	Allen Bauer <kylix_rd@hotmail.com>.
	* elf/neededobj1.c: Likewise.
	* elf/neededobj2.c: Likewise.
	* elf/neededobj3.c: Likewise.

2000-10-20  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Decrement reference counter for all
	dependencies even if the DSO does not get unloaded.

	* elf/dl-load.c (_dl_map_object_from_fd): Pass pointer to ELF header
	to elf_machine_matches_host.
	* sysdeps/alpha/dl-machine.h (elf_machine_matches_host): Parameter
	is now pointer to ELF header.
	* sysdeps/arm/dl-machine.h: Likewise.
	* sysdeps/generic/dl-machine.h: Likewise.
	* sysdeps/hppa/dl-machine.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
	* sysdeps/powerpc/dl-machine.h: Likewise.
	* sysdeps/s390/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	Patch by Martin Schwidefsksy <schwidefsky@de.ibm.com>.

2000-10-20  Jakub Jelinek  <jakub@redhat.com>

	* include/limits.h: Include bits/wordsize.h, use #if __WORDSIZE == 64
	check instead of #ifdef __alpha__.
	* include/bits/xopen_lim.h (WORD_BIT, LONG_BIT): Don't count on
	INT_MAX, __INT_MAX__, LONG_MAX or __LONG_MAX__ being defined when
	this is included.

	* posix/wordexp-tst.sh (testout): Place output file in build
	directory.  Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-10-21 00:02:39 +00:00
Ulrich Drepper
e340a2a2e2 Update.
* nscd/Makefile (distribute): Add nscd-types.h.
	* elf/Makefile (distribute): Add gccframe.h.
	* sysdeps/sparc/sparc32/Dist: Add ieee754.h.
	* sysdeps/ia64/Dist: Add ieee754.h.
2000-10-09 00:42:20 +00:00
Ulrich Drepper
b4a555d6f4 Update.
2000-09-29  Ulrich Drepper  <drepper@redhat.com>

	* elf/chroot_canon.c: Don't report a failure if the last path
	component is not available.
	* elf/ldconfig.c (parse_conf): Use canonicalized name when reporting
	error.

	* elf/cache.c (print_cache): Use stat64 instead of stat.
	* elf/ldconfig.c (chroot_stat): Likewise.
	(create_links): Likewise.
	(manual_link): Likewise.
	(search_dir): Likewise.
	* elf/readlib.c (process_file): Likewise.

	* Makefile (install): Set LC_ALL and LANGUAGE to C before running
	ldconfig.

2000-09-29  Jakub Jelinek  <jakub@redhat.com>

	* elf/chroot_canon.c: New file.
	* elf/Makefile: Build and distribute it.
	* elf/ldconfig.h (process_file): Add real_file_name argument.
	(chroot_canon): Add prototype.
	* elf/ldconfig.c (cache_file): Remove const.
	(chroot_stat): New.
	(create_links): Add real_path argument.
	If opt_chroot, maintain both real and given filenames.
	(manual_link): Likewise.
	(search_dir): Likewise.
	(parse_conf): If opt_chroot, use chroot_canon to find the real
	config file.
	(main): For -r, try to use chroot, if it fails, leave opt_chroot set
	and use chroot_canon where appropriate to do the same as if chroot
	succeeded.
	* elf/readlib.c (process_file): Add real_file_name argument, pass it
	to fopen.

2000-09-29  Ulrich Drepper  <drepper@redhat.com>

	* math/complex.h (_Complex): We can be more specific when _Complex
	is defined by the compiler.
2000-09-30 00:54:42 +00:00
Ulrich Drepper
74955460c5 Update.
2000-09-26  Thorsten Kukuk  <kukuk@suse.de>

	* nscd/dbg_log.c (dbg_log): Add missing format string.

	* catgets/catgets.c (catopen): Use getenv instead of __secure_getenv
	since we filter out the variable once.
	* iconv/gconv_conf.c (__gconv_get_path): Likewise.
	* locale/newlocale.c (__newlocale): Likewise.
	* locale/setlocale.c (setlocale): Likewise.
	* malloc/malloc.c (ptmalloc_init): Likewise.
	* resolv/res_hconf.c (_res_hconf_init): Likewise.
	* resolv/res_init.c (__res_vinit): Likewise.
	* time/tzfile.c (__tzfile_read): Likewise.
	* sysdeps/generic/unsecvars.h: New file.
	* elf/dl-support.c (non_dynamic_init): Use it here to remove variables.
	* elf/rtld.c (process_envvars): Likewise.
	* elf/Makefile (distribute): Add unsecvars.h.
2000-09-26 09:46:55 +00:00
Ulrich Drepper
917fd06163 Update.
2000-09-15  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (distribute): Add nextmod1.c and nextmod2.c.
	(tests): Add next.
	(modules-names): Add nextmod1 and nextmod2.
	Add rules to build and run next.
	* elf/next.c: New file.
	* elf/nextmod1.c: New file.
	* elf/nextmod2.c: New file.

2000-09-14  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-lookup.c (_dl_lookup_symbol_skip): Fix a typo.
2000-09-15 17:35:04 +00:00
Ulrich Drepper
e39e69563a Update.
* elf/Makefile (all-rtld-routines): Evaluate $(sysdep-rtld-routines)
	too.
	* sysdeps/powerpc/Makefile (sysdep-rtld-routines): New variable.
	(sysdep_routines): Remove dl-start.
	Patches by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
2000-09-07 21:34:51 +00:00
Ulrich Drepper
b79f74cd62 Update.
2000-09-03  Bruno Haible  <haible@clisp.cons.org>

	* charmaps/EUC-TW: Add commented non-reversible mappings.

2000-09-03  Bruno Haible  <haible@clisp.cons.org>

	* charmaps/CP949: New file.

2000-09-03  Bruno Haible  <haible@clisp.cons.org>

	* charmaps/GB2312: Remove 0x80..0xA0, 0xAA..0xAF, 0xF8..FF.

2000-09-03  Bruno Haible  <haible@clisp.cons.org>

	* charmaps/EUC-JP: Nonreversibly map 0xA1C0 to U+005C and 0x8FA2B7 to
	U+007E.
2000-09-05 02:41:25 +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
ad7534c8f0 Update.
2000-08-25  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (LDFLAGS-nodelete): Add -rdynamic.
	* elf/nodelete.c (fini_ran): New global variable.
	(do_test): Before every dlclose call clear fini_ran and test
	afterwards that it is not set by the destructors.
	* elf/nodelmod1.c: Add destructor which sets fini_ran.
	* elf/nodelmod2.c: Likewise.
	* elf/nodelmod4.c: Likewise.
2000-08-25 19:33:19 +00:00
Ulrich Drepper
32b4fe6a63 Update.
* elf/Makefile (distribute): Add dl-osinfo.h.
	* sysdeps/generic/dl-osinfo.h: New file.
	* sysdeps/unix/sysv/linux/dl-osinfo.h: New file.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Use DL_SYSDEP_OSCHECK
	if defined.
	* sysdeps/unix/sysv/linux/init-first.c: Perform kernel version test
	only for !SHARED case.  Get the code from dl-osinfo.h.
2000-08-22 17:48:22 +00:00
Ulrich Drepper
5763742fc7 Update.
2000-08-15  Ulrich Drepper  <drepper@redhat.com>

	* include/link.h: Undo last patches.  Hurd now had stat64.
	* elf/Makefile: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-misc.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* sysdeps/generic/sysd-link.h: Removed.
	* sysdeps/unix/sysv/linux/sysd-link.h: Removed.

	* rt/aio_notify.c (notify_func_wrapper): Wrapper function to call
	thread event callback function.
	(__aio_notify_only): Use function above.
	Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-08-16 01:28:07 +00:00
Ulrich Drepper
fc7f617d30 Update.
* include/link.h: Include sysd-link.h.
	* sysdeps/generic/sysd-link.h: New file.
	* sysdeps/unix/sysv/linux/sysd-link.h: New file.
	* elf/Makefile (distribute): Add sysd-link.h.
	* elf/dl-load.c: Use definitions from sysd-link.h instead of stat
	types and functions directly.
	* elf/dl-misc.c: Likewise.
	* elf/dl-profile.c: Likewise.

	* elf/loadfail.c (main): Close all successfully loaded objects.
2000-08-15 08:06:15 +00:00
Ulrich Drepper
74dd1fee1c Update.
* sysdeps/ia64/Dist: Add _mcount.S.

	* sysdeps/unix/sysv/linux/ia64/Dist: Add clone.S.

	* sysdeps/unix/sysv/linux/mips/Dist: Add _test_and_set.c.

	* elf/Makefile (distribute): Add missing modules.
2000-08-02 22:44:39 +00:00
Ulrich Drepper
925e31d9c2 Update.
2000-08-01  Ulrich Drepper  <drepper@redhat.com>
	    Joseph S. Myers  <jsm28@cam.ac.uk>

	* math/tgmath.h: Make standard compliant.  Don't ask how.

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

	* elf/Makefile ($(inst_slibdir)/$(rtld-version-installed-name)):
	Use $(do-install-program) instead of "$(INSTALL_PROGRAM) $< $@.new".
	($(inst_slibdir)/$(rtld-installed-name)): Use $(make-shlib-link) only.

2000-07-30  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* include/features.h (_XOPEN_SOURCE): Update the explanation.
	(__USE_LARGEFILE): Add an explanation.
	(_POSIX_C_SOURCE): Define to 2 only if _XOPEN_SOURCE < 500.
	(__USE_XOPEN2K): Define whenever _XOPEN_SOURCE >= 600.

2000-08-01  Ulrich Drepper  <drepper@redhat.com>

	* libio/Makefile: Enable exception handling for genops, wgenops,
	fileops, and wfileops.
2000-08-01 22:53:40 +00:00
Andreas Jaeger
5cc90078d4 Update.
2000-08-01  Andreas Jaeger  <aj@suse.de>

	* hesiod/Makefile (distribute): Add nss_hesiod/nss_hesiod.h.

	* elf/Makefile (distribute): Add filtmod1.c and filtmod2.c.

	* wctype/Makefile (distribute): Add wchar-lookup.h.

	* sysdeps/generic/Dist: Add bp-checks.h.

	* iconvdata/Makefile (distribute): Add isiri-3342.h.
2000-08-01 13:06:28 +00:00
Andreas Jaeger
10b36b41d2 Update.
* elf/Makefile ($(test-modules)): Exclude filtmod1.so, it has its
	own rule.
2000-07-21 13:23:36 +00:00
Ulrich Drepper
137bca87e7 Rewrite rules to generate filtmod1.so. 2000-07-21 07:21:02 +00:00
Ulrich Drepper
fcacb36a0c Update.
* elf/Makefile (tests): Add filter.  Add rules to generate filter.
	* elf/filter.c: New file.
	* elf/filtmod1.c: New file.
	* elf/filtmod2.c: New file.
2000-07-21 06:58:27 +00:00
Ulrich Drepper
2cb8cefbd4 Update.
* elf/Makefile: Add no modules for nodelete test.
	* elf/nodelmod3.c: New file.
	* elf/nodelmod4.c: New file.
	* elf/nodelete.c: Also test case where dependency of dlopen() object
	is marked nodelete.

	* elf/nodlopen.c: New file.
	* elf/nodlopenmod.c: New file.
2000-07-21 04:42:21 +00:00
Ulrich Drepper
2f54c82dac Update.
* elf/Makefile (tests): Add nodlopen.  Add rules to generate nodlopen.
	* include/dlfcn.h: Define __RTLD_DLOPEN.
	* elf/dl-load.c (_dl_map_object_from_fd): If DF_1_NOOPEN is set
	and this is a dlopen() call, do not load the binary.
	* dlfcn/dlopen.c: Add __RTLD_DLOPEN to mode passed down to _dl_open.
	* dlfcn/dlopenold.c: Likewise.
	* configure.in: Add test for -z nodelete option.
	* config.make.in: Define have-z-nodelete with libc_cv_z_nodelete.

2000-07-20  Mark Kettenis  <kettenis@gnu.org>

	Make Hesiod NSS module thread-safe.

	* hesiod/README.hesiod: Update.

	* hesiod/Versions [GLIBC_2.2]: Add _nss_hesiod_getservbyport_r,
	_nss_hesiod_setprotoent, _nss_hesiod_endprotoent,
	_nss_hesiod_getprotobyname_r, and _nss_hesiod_getprotobynumber_r.
	* hesiod/Makefile (libnss_hesiod-routines): Add hesiod-init and
	hesiod-proto.
	* hesiod/nss_hesiod/hesiod-init.c: New file.
	* hesiod/nss_hesiod/hesiod-pwd.c: Rewritten for thread-safeness.
	* hesiod/nss_hesiod/hesiod-grp.c: Likewise.
	* hesiod/nss_hesiod/nss_hesiod.h: New file.
	* hesiod/nss_hesiod/hesiod-service.c
	(_nss_hesiod_getservbyport_r): New function.  Provide support for
	looking up services by port number.
	* hesiod/nss_hesiod/hesiod-proto.c: New file.

	* hesiod/hesiod.c: Update from BIND 8.2.3-T5B.
	* hesiod/hesiod.h: Likewise.
	* hesiod/hesiod_p.h: Likewise.

2000-07-20  Mark Kettenis  <kettenis@gnu.org>

	Fix problems with `struct __res_state' getting too big.
	* resolv/resolv.h (struct __sockaddr_in): New definition.
	(struct __res_state): Use __sockaddr_in instead of sockaddr_in in
	the private parts of the structure to save some space.
	* resolv/res_send.c (res_nsend): Cast &EXT(statp).nsaddrs[ns] to
	(struct sockaddr_in *) in call to sock_eq.
	Use memcpy to copy statp->nsaddr_list[ns] to &EXT(statp).nsaddrs[ns].

2000-07-20  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
2000-07-21 04:12:25 +00:00
Ulrich Drepper
0fb7851fce Update.
* elf/Makefile (tests): Add $(tests-nodelete-$(have-z-nodelete)).
	(tests-nodelete-yes): Define.
	(modules-names): Add $(modules-nodelete-$(have-z-nodelete)).
	Add rules to build nodelete and modules.
	* elf/nodelete.c: New file.
	* elf/nodelmod1.c: New file.
	* elf/nodelmod2.c: New file.
	* configure.in: Add test for -z nodelete option.
	* config.make.in: Define have-z-nodelete with libc_cv_z_nodelete.
2000-07-21 00:15:14 +00:00
Ulrich Drepper
5e61ef8848 (tests): Add noload. Add rules to generate noload. 2000-07-20 22:21:58 +00:00
Ulrich Drepper
8ca91b369d Update.
2000-07-12  Andreas Jaeger  <aj@suse.de>

	* elf/Makefile (SYSCONF-FLAGS): Added to pass sysconfdir to
	compiler.
	(CFLAGS-cache.c): Added, uses SYSCONF-FLAGS.
	(CFLAGS-dl-cache.c): Likewise.
	(CFLAGS-ldconfig.c): Added, passes directory locations.

	* sysdeps/generic/dl-cache.h (LD_SO_CACHE): Use SYSCONFDIR to
	locate cache.
	* elf/ldconfig.c (LD_SO_CONF): Likewise.
	(main): Use configured LIBDIR and SLIBDIR.

2000-07-11  Jakub Jelinek  <jakub@redhat.com>

	* math/bits/cmathcalls.h (cimag): Add __THROW.
	(creal, conj): Likewise.
	* wctype/wctype.h (_ISwbit): Avoid warnings about shifting left
	by negative value.
2000-07-12 21:10:41 +00:00
Ulrich Drepper
40c4c9b562 Update.
2000-07-01  Andreas Jaeger  <aj@suse.de>

	* intl/Makefile (generated-dirs): New.

	* elf/Makefile (generated): trusted-dirs.h is always generated,
	move out of build-shared condition.
	(generated): Merge the two entries for build-shared.

2000-07-01  Ulrich Drepper  <drepper@redhat.com>

	* debug/Makefile (distribute): Add xtrace.sh.
2000-07-01 15:41:36 +00:00
Ulrich Drepper
394679ebe7 Update.
* elf/Makefile (LDFLAGS-origtest): Actually add it.
2000-06-30 18:11:39 +00:00
Ulrich Drepper
afa0569f3b Update.
* crypt/Makefile (distribute): Add ufc-crypt.h, crypt-private.h,
	ufc.c, speeds.c, README.ufc-crypt, and Banner.

	* sysdeps/sparc/Subdirs: New file.

	* locale/Makefile (distribute): Add weightwc.h and
	programs/localedef.h.

	* time/Makefile (distribute): Add datemsk.

	* sysdeps/ia64/Dist: Add softpipe.h.

	* sysdeps/unix/sysv/aix/Dist: New file.

	* posix/setpgrp.c: Moved to...
	* sysdeps/generic/setpgrp.c: ...here.  New file.
	* io/mknod.c: Moved to...
	* sysdeps/generic/mknod.c: ...here.  New file.

	* sysdeps/unix/sysv/linux/ia64/Dist: New file.

	* sysdeps/unix/sysv/linux/sparc/Dist: Add sys/procfs.h.

	* sysdeps/unix/sysv/linux/arm/Dist: Add oldgetrlimit64.c.

	* sysdeps/powerpc/Dist: Add fprrest.S, fprsave.S, gprsave1.S,
	gprsave0.S, gprrest1.S, and gprrest0.S.

	* sysdeps/generic/Dist: Add bp-thunks.h, bp-sym.h, and bp-start.h.

	* posix/Makefile (routines): Add spawnattr_getsigmask,
	spawnattr_getschedpolicy, spawnattr_getschedparam,
	spawnattr_setsigmask, spawnattr_setschedpolicy, and
	spawnattr_setschedparam.
	* posix/Versions: Add posix_spawnattr_getschedpolicy,
	posix_spawnattr_setschedpolicy, posix_spawnattr_getschedparam, and
	posix_spawnattr_setschedparam.

	* posix/spawnattr_setschedparam.c: Fix typo.

	* posix/spawnattr_setsigmask.c (posix_spawnattr_setsigmask):
	Correct typo.

	* login/programs/utmpd.c: Removed.
	* login/programs/utmpd.h: Removed.
	* login/programs/utmpd-private.h: Removed.

	* Makefile (distribute): Add include/db_185.h and include/db.h.

	* iconvdata/Makefile (distribute): Add iso-ir-165.c and
	iso-ir-165.h.

	* elf/Makefile (distribute): Add missing files.

	* dlfcn/Makefile: Add back rules to include eval in libdl.so.
	* elf/eval.c: Moved to...
	* dlfcn/eval.c: ...here.  New file.

	* Makefile (distribute): Also distribute ChangeLog.1?.
2000-06-14 00:55:24 +00:00
Ulrich Drepper
ffa8a90345 Update.
* elf/Makefile (distribute): Add dl-dtprocnum.h.
2000-06-08 04:54:46 +00:00
Ulrich Drepper
99ac5e47c0 Update.
2000-06-07  Andreas Jaeger  <aj@suse.de>

	* elf/Makefile: Build ldconfig only when building shared libraries.

2000-06-07  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/alpha/fpu/bits/mathinline.h (__fdimf): Only declare if
	__USE_ISOC99.
	(fdimf, __fdim, fdim): Likewise.
2000-06-07 16:53:48 +00:00
Ulrich Drepper
9b014809fa Update.
* locale/Versions [libc] (GLIBC_2.2): Add localeconv.
	* locale/localeconv.c: Make function versioned (with same definition).
2000-05-30 20:37:26 +00:00
Ulrich Drepper
ae28849710 (modules-names): Strip before using it. 2000-05-30 20:07:32 +00:00
Ulrich Drepper
c1025c1980 (tests): Add $(tests-vis-$(have-protected)). (tests-vis-yes): Add vismain. (modules-names): Add $(modules-vis-$(have-protected)). (modules-vis-yes): Add vismod1, vismod2, and vismod3. Add rules to generate and run vismain. 2000-05-23 18:10:54 +00:00
Ulrich Drepper
c77ec56d0c Update.
* elf/Makefile (distribute): Add dl-lookupcfg.h.
	* sysdeps/ia64/Dist: New file.
2000-05-05 08:07:07 +00:00
Ulrich Drepper
a0edd63e7c Update.
2000-04-19  Jakub Jelinek  <jakub@redhat.com>

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

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

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

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

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

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

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

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

	* Versions.def: Use ld instead of ld.so.
	* elf/Versions: Likewise.
	* sysdeps/mach/hurd/Versions: Likewise.
2000-04-21 03:43:31 +00:00
Ulrich Drepper
84ddc586f6 (distribute): Add dep1.c, dep2.c, dep3.c, and dep4.c. (tests): Add order. (module-names): Add dep1, dep2, dep3, and dep4. Add dependencies for dep* modules and order. Define rule for order.out which checks the result. 2000-03-31 17:07:47 +00:00
Ulrich Drepper
d7926ed9fe Update.
* elf/Makefile (dl-routines): Remove preinit.
	* elf/Versions: Remove _dl_preinit.
	* elf/dl-preinit.c: Removed.  Move content into...
	* elf/dl-init.c: ...here.
2000-03-31 07:14:42 +00:00
Ulrich Drepper
460adbb847 Update comment about _SLOWDOWN flags. 2000-03-20 00:46:01 +00:00
Ulrich Drepper
19cf43bed6 Update.
2000-03-16  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile: Add rules to compile and rune constload1 test.
	* elf/constload1.c: New file.
	* elf/constload2.c: New file.
	* elf/constload3.c: New file.
2000-03-17 02:17:59 +00:00
Ulrich Drepper
a53e3292a4 Update.
2000-02-25  Andreas Jaeger  <aj@suse.de>

	* stdio-common/Makefile (CFLAGS-_itoa.c): The code has been
	fixed, we don't need to disable the warnings anymore, remove them.
	* elf/Makefile (CFLAGS-dl-load.c): Likewise.

	* posix/Makefile (CFLAGS-regex.c): Remove not needed warning
	flag.

	* posix/regex.c (regex_compile): Remove unused variables.

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

	* sysdeps/unix/sysv/linux/bits/msq.h (struct msqid_ds): Use
	__pid_t.
	* sysdeps/unix/sysv/linux/alpha/bits/msq.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/msq.h: Likewise.

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

	* locale/programs/ld-ctype.c (allocate_arrays): Add missing
	variable declaration.
2000-02-25 17:08:15 +00:00
Ulrich Drepper
591e1ffbf8 Update.
1999-11-30  Andreas Jaeger  <aj@suse.de>

	Add ldconfig:
	* elf/Makefile (extra-objs): Added ldconfig-modules.
	(ldconfig-modules): New.
	Added vpath for xstrdup and xmalloc.
	Check for use-ldconfig instead of has-ldconfig.
	($(objpfx)ldconfig): New rule with dependencies.
	(distribute): Add new files.

	* sysdeps/unix/sysv/linux/sparc/readelflib.c: New file,
	developed together with Jakub Jelinek <jakub@redhat.com>.
	* sysdeps/generic/readelflib.c: Likewise.

	* elf/cache.c: New file.
	* elf/ldconfig.c: New file.
	* elf/ldconfig.h: New file.
	* elf/readlib.c: New file.

	* Makefile (install): Remove flag -d in ldconfig call.

	* configure.in: Rename has_ldconfig to use_ldconfig, set it to no
	by default.

	* config.make.in (has-ldconfig): Renamed to use-ldconfig, changed
	comment.
1999-12-04 08:00:00 +00:00
Ulrich Drepper
9df541684a Update.
1999-09-22  Andreas Jaeger  <aj@suse.de>

	* stdio-common/tstscanf.c (main): Add test case from PR libc/1313
	reported by Ben Caradoc-Davies <bmcd@physics.otago.ac.nz>.
		
1999-09-22  Andreas Schwab  <schwab@suse.de>

	* stdio-common/vfscanf.c: Fix width handling when scanning floats.

1999-04-02  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* elf/Makefile (CFLAGS-multiload.c): Change to allow building in
	the source directory.  Fixes PR libc/1059.
1999-09-22 16:03:46 +00:00
Ulrich Drepper
4a33c2f55e Update.
1999-09-13  Ulrich Drepper  <drepper@cygnus.com>

	* locale/langinfo.h: Remove byte-order dependent names.
	* locale/categories.def: Update after removal of byte-order dependent
	names.
	* locale/loadlocale.c (_nl_load_locale): Don't allow locale files
	with magic number in other byte order.
	* locale/newlocale.c (__newlocale): Remove byte-order dependent code.
	* locale/C-collate.c: Remove initializers for other byte-order.
	* locale/C-ctype.c: Likewise.
	* locale/C-monetary.c: Likewise.
	* locale/C-paper.c: Likewise.
	* locale/C-time.c: Likewise.
	* locale/lc-collate.c: Remove byte-order oriented initialization.
	* locale/lc-ctype.c: Likewise.
	* locale/lc-monetary.c: Likewise.
	* locale/lc-time.c: Likewise.
	* locale/programs/ld-address.c: Don't generate output in both
	byte-orders.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-paper.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* time/strftime.c (NLW): Don't use different byte-orders.
	* wctype/cname-lookup.h (cname_lookup): Likewise.

	* Makeconfig (localedir): Define using libdir, not datadir.
	(msgcatdir): New variable.
	* catgets/Makefile (CPPFLAGS): Define NLSPATH using msgcatdir.
	* elf/Makefile (bash-ldd-rewrite): Replace @TEXTDOMAINDIR@ using
	msgcatdir.
	* intl/Makefile (install-others): Install locale.alias in msgcatdir.
	(CPPFLAGS): Define paths using msgcatdir.
	* locale/Makefile (CPPFLAGS): Define LOCALE_ALIAS_PATH using msgcatdir.
	* po/Makefile (mo-installed): Define using msgcatdir.

	* sysdeps/unix/sysv/linux/net/if_arp.h: Fix typo.
1999-09-13 09:07:36 +00:00
Ulrich Drepper
2f44482393 Update.
1999-08-25  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/unix/sysv/linux/mips/syscalls.list: Add missing
	underscore in _llseek entry.

	* sysdeps/unix/sysv/linux/mips/syscalls.list: Fix typo in execve
	entry.

	* sysdeps/unix/sysv/linux/bits/errno.h: Fix comment.
	* sysdeps/unix/sysv/linux/mips/bits/errno.h: Likewise.

	* elf/Makefile ($(objpfx)ld.so): Fix rtld-ldscript dependency.
	Patch by Ralf Baechle <ralf@uni-koblenz.de>.
1999-08-25 17:47:08 +00:00
Ulrich Drepper
ff5fad1641 Update.
* elf/Makefile (tests): Add resolvfail.  Add rules to build the
	program.
	* elf/resolvfail.c: New file.
1999-08-01 21:43:03 +00:00
Ulrich Drepper
e28bacf578 Update.
* elf/Makefile (dl-routines): Add preinit.
	* elf/Versions [ld.so] (GLIBC_2.2): Export _dl_preinit_next.
	* elf/link.h (struct link_map): Add new field l_preinitcount.
	* elf/dl-preinit.c: New file.
	* elf/dynamic-link.h: Initialize l_preinitcount.
	* sysdeps/i386/dl-machine.h (RTLD_START): Call pre-init functions.
1999-07-24 22:17:17 +00:00
Andreas Schwab
b3ed821981 1999-07-19 Andreas Schwab <schwab@suse.de>
* libio/Makefile (routines): Add fwprintf.

	PowerPC has own version of w_sqrt.c and w_sqrtf.c.
	* math/w_sqrt.c: Moved to ...
	* sysdeps/generic/w_sqrt.c: ... here.
	* math/w_sqrtf.c: Moved to ...
	* sysdeps/generic/w_sqrtf.c: ... here.

	* Make-dist (generic-dirs): New variable.
	(try-sysdeps, +sysdep-names): Use it.
	* extra-lib.mk (all-$(lib)-routines): New variable.  Use it
	instead of $(lib)-routines.
	* elf/Makefile (distribute): Add dl-cache.h.
	* db2/Makefile (distribute): Add all new files.
	* iconvdata/Makefile (distribute): Don't distribute CVS
	directory.
	* math/Makefile (distribute): Remove machine/endian.h, add
	math_ldbl.h.
	* stdio-common/Makefile (distribute): Add _itowa.h.
	* sysdeps/generic/Dist: Remove make_siglist.c, add siglist.h.
	* sysdeps/gnu/Dist: Add eval.c
	* sysdeps/gnu/Makefile (libdl-sysdep_routines) [$(subdir) =
	dlfcn]: Add to this instead of libdl-routines.
	* sysdeps/ieee754/ldbl-128/Dist: New file.
	* sysdeps/mach/hurd/Dist: Add siglist.h
	* sysdeps/unix/sysv/linux/Dist: Add kernel-features.h.
1999-07-20 08:19:37 +00:00
Ulrich Drepper
019e7a645a Update.
1999-07-09  Andreas Schwab  <schwab@suse.de>

	* elf/Makefile (headers): Remove bits/dlfcn.h and dlfcn.h.

	* dlfcn/Makefile (headers): Add bits/dlfcn.h.
1999-07-09 10:13:23 +00:00
Ulrich Drepper
94e365c612 Update.
* sysdeps/gnu/Makefile (libdl-routines): Add eval.

1999-07-06  Zack Weinberg  <zack@rabi.columbia.edu>

	* dlfcn: New directory.  Move the following files from elf:
	dladdr.c, dlclose.c, dlerror.c, dlfcn.h, dlopen.c,
	dlopenold.c, dlsym.c, dlvsym.c.
	* dlfcn/Makefile: New file.
	* dlfcn/Versions: New file.
	* dlfcn/dlsym.c: All ELF-specific code split out to new
	function _dl_sym.
	* dlfcn/dlvsym.c: All ELF-specific code split out to new
	function _dl_vsym.
	* elf/dl-sym.c: New file.  _dl_sym and _dl_vsym are
	implemented here.

	* dlfcn/dladdr.c: Remove all references to ELF data structures
	or headers.
	* dlfcn/dlclose.c: Likewise.
	* dlfcn/dlerror.c: Likewise.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.

	* Makeconfig (dlfcn): New variable - set to `dlfcn' if elf is
	yes, empty otherwise.
	(libdl): Set to dlfcn/libdl.so or libdl.a if elf is yes,
	depending on build-shared.
	(subdirs): Add $(dlfcn).
	(rpath-dirs): Add dlfcn.
	* elf/Makefile: Remove all references to libdl or its
	components, except the ones relating to the test cases.
	(routines): Add dl-sym.
	* elf/Versions (libc): Add _dl_sym and _dl_vsym for GLIBC_2.2.
	(libdl): Delete.

	* elf/dl-close.c (_dl_close): Change argument to void *.
	* elf/dl-open.c (_dl_open): Change return type to void *.
	* elf/eval.c: Removed.
	* elf/ldsodefs.h: Move prototypes of _dl_catch_error,
	_dlerror_run, _dl_open, _dl_close, _dl_addr, and
	_dl_mcount_wrapper_check to include/dlfcn.h.  Delete
	_CALL_DL_FCT macro.
	* include/dlfcn.h: Also prototype _dl_sym and _dl_vsym here.
	Include real header from dlfcn directory.
	* include/ldsodefs.h: Removed.

	* grp/initgroups.c: Use DL_CALL_FCT not _CALL_DL_FCT.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* iconv/gconv.c: Likewise.  Don't include ldsodefs.h.
	* iconv/gconv_db.c: Likewise.  Don't include ldsodefs.h.
	* iconv/skeleton.c: Don't include ldsodefs.h.
	* nss/nsswitch.h: Don't include ldsodefs.h.  Include dlfcn.h.

1999-07-07  Ulrich Drepper  <drepper@cygnus.com>
1999-07-07 18:39:33 +00:00
Ulrich Drepper
b3fc5f84d1 Update.
* sysdeps/libm-ieee754/e_gamma_r.c: Initialize *signgamp for NaN
	returns.
	* sysdeps/libm-ieee754/e_gammaf_r.c: Likewise.
	* sysdeps/libm-ieee754/e_gammal_r.c: Likewise.
	Reported by John Reiser <jreiser@BitWagon.com> [PR libc/1185].

	* elf/dl-dst.h: Fix typo.
	* elf/dl-open.c: Likewise.

1999-06-26  Zack Weinberg  <zack@rabi.columbia.edu>

	* elf/dl-libc.c: New file, provides three functions:
	__libc_dlopen, __libc_dlclose, __libc_dlsym.
	* include/dlfcn.h: Prototype them.  Prototype _dl_addr.
	* elf/Makefile (routines): Add dl-libc.c.
	* elf/dl-profstub.c (_dl_mcount_wrapper): Change type of
	argument to void *.
	* elf/ldsodefs.h: Change proto and use of _dl_mcount_wrapper to match.

	* iconv/gconv.c: Include dlfcn.h.
	* iconv/gconv_db.c: Likewise.
	* malloc/mtrace.c: Likewise.  Don't include ldsodefs.h.

	* iconv/gconv_int.h (struct __gconv_loaded_object): Change
	`handle' to a void *.
	(__gconv_find_func): Delete prototype.

	* iconv/gconv_dl.c: Don't include ldsodefs.h.  Remove
	dlerror_run and related functions and structs.  Use
	__libc_dlopen, __libc_dlsym, __libc_dlclose.
	* nss/nsswitch.c: Likewise.

1999-06-28  Ulrich Drepper  <drepper@cygnus.com>
1999-06-28 15:52:36 +00:00
Ulrich Drepper
fabad36078 Update.
Add dl-dst.h and gen-trusted-dirs.awk.
1999-05-17 17:58:57 +00:00
Ulrich Drepper
82e30a5d10 Update.
1999-05-17  Ulrich Drepper  <drepper@cygnus.com>

	* elf/Makefile (distribute): Remove dl-origin.h.
1999-05-17 17:36:45 +00:00
Ulrich Drepper
dc5efe83c0 Update.
* Versions.def (ld.so): Add GLIBC_2.1.1.
	* elf/Makefile (routines): Add dl-origin.
	(tests): Add origtest.  Add dependencies for the program.
	* elf/Versions (ld.so) [GLIBC_2.1.1]: Add _dl_origin_path,
	_dl_platformlen, _dl_dst_count and _dl_dst_substitute.
	* elf/dl-deps.c (expand_dst): New macro.  Expand DSTs in filename.
	(_dl_map_object_deps): Use expand_dst to expand DSTs in DT_NEEDED,
	DT_AUXILIARY, and DT_FILTER filenames.
	* elf/dl-load.c (expand_dynamic_string_token): Explode into
	two functions and three macros.
	(_dl_dst_count, _dl_dst_substitute): New functions.
	* elf/dl-dst.h: New file.
	* elf/dl-open.c (_dl_open): Take extra parameter with address of
	caller.  Pass address in args structure.
	(dl_open_worker): Recognize and expand DSTs in filename.
	* elf/ldsodefs.h (_dl_open): Adapt prototype.
	* elf/dlopen.c (dlopen_doit): Pass caller address to _dl_open.
	(__dlopen_check): Pass caller address to dlopen_doit in args.
	* elf/dlopendoit.c: Likewise.
	* iconv/gconv_dl.c: Adapt call of _dl_open.
	* nss/nsswitch.c: Likewise.
	* elf/origtest.c: New file.
	* sysdeps/generic/dl-origin.h: Moved to...
	* sysdeps/generic/dl-origin.c: ...here.
	* sysdeps/unix/sysv/linux/dl-origin.h: Moved to...
	* sysdeps/unix/sysv/linux/dl-origin.c: ...here.
1999-05-05 23:29:18 +00:00
Ulrich Drepper
ab7eb29230 Update.
* elf/Makefile (trusted-dirs.st): Use gen-trusted-dirs.awk.
	* elf/gen-trusted-dirs.awk: New file.
	* elf/dl-load.c (systems_dirs): Moved into file scope.  Initialize
	from SYSTEM_DIRS macro.
	(system_dirs_len): New variable.  Contains lengths of system_dirs
	strings.
	(fillin_rpath): Rewrite for systems_dirs being a simple string.
	Improve string comparisons.  Change parameter trusted to be a flag.
	Change all callers.
	(_dt_init_paths): Improve using new format for system_dirs.
1999-05-03 21:59:35 +00:00
Ulrich Drepper
bf726173e7 Update.
1999-04-02  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* elf/Makefile (CFLAGS-multiload.c): Change to allow building in
	the source directory.  Fixes PR libc/1059.

	* sysdeps/unix/sysv/linux/ttyname.c (ttyname): Terminate the string.
1999-04-02 10:17:53 +00:00
Andreas Schwab
9f2a9248d1 * elf/Makefile ($(inst_slibdir)/$(rtld-version-installed-name),
$(inst_slibdir)/$(rtld-installed-name), ldso_install): Disable 
targets if not building shared libraries.
1999-03-22  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* elf/Makefile ($(inst_slibdir)/$(rtld-version-installed-name),
	$(inst_slibdir)/$(rtld-installed-name), ldso_install): Disable
	targets if not building shared libraries.
1999-03-22 17:40:43 +00:00
Andreas Schwab
2f512715ce * configure.in: Also look in $PATH when searching for
install-info.  Remove autoconf bug workaround and require autoconf  
2.13.
Mon Mar 22 15:48:06 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* configure.in: Also look in $PATH when searching for
 	install-info.  Remove autoconf bug workaround and require autoconf
 	2.13.
1999-03-22 06:51:09 +00:00
Ulrich Drepper
407a7d0eb7 Update.
1999-02-25  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* manual/libc.texinfo: Wrap @top node inside @ifnottex instead of
	@ifinfo.

1999-02-25  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* iconvdata/Makefile: Always include iconv-rules, but disable rule
	to regenerate it if avoid-generated.

	* Makeconfig: Always include sys-dirs, but disable rule to
	regenerate it when avoid-generated.

	* sysdeps/unix/Makefile: Put `ifndef avoid-generated' only around
	rule to generate sysd-syscalls.

	* elf/Makefile (generated): Remove $(objpfx) from names.
1999-03-01 07:15:16 +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
61e0617ac3 Update.
* elf/link.h (link_map): Add l_dev and l_ino.
	* elf/dl-load.c (_dl_map_object_from_fd): Test dev/ino of newly
	loaded shared object with all laoded objects.  Initialize l_ino
	and l_dev in case it's new.
	* elf/rtld.c (dl_main): Explain situation is l_dev/l_ino with main
	object.
	* elf/Makefile: Compile and run new test.
	* elf/multiload.c: New file.
1999-02-19 00:00:05 +00:00