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
2001-07-06 04:58:11 +00:00
2001-08-20 19:55:53 +00:00
2001-12-06 08:49:08 +00:00
2001-07-06 04:58:11 +00:00
2001-10-27 00:23:28 +00:00
2001-08-09 22:37:19 +00:00
2001-08-31 01:46:47 +00:00
2001-07-25 22:15:17 +00:00
2001-07-06 04:58:11 +00:00
2001-08-29 23:31:38 +00:00
2001-08-08 02:52:43 +00:00
2001-10-27 00:23:28 +00:00
2001-12-12 00:21:26 +00:00
2001-08-17 07:57:23 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-12-10 01:37:56 +00:00
2001-12-05 19:32:18 +00:00
2001-12-12 00:21:26 +00:00
2001-12-06 08:49:08 +00:00
2001-11-28 00:09:26 +00:00
2001-12-10 23:59:02 +00:00
2001-12-06 08:49:08 +00:00
2001-11-30 21:14:09 +00:00
2001-07-06 06:58:28 +00:00
2001-12-10 01:37:56 +00:00
2001-12-10 12:21:07 +00:00
2001-07-06 04:58:11 +00:00
2001-10-27 00:23:28 +00:00
2001-11-27 04:07:09 +00:00
2001-11-27 02:20:12 +00:00
2001-10-26 23:35:32 +00:00
2001-11-27 03:47:06 +00:00
2001-11-27 03:47:06 +00:00
2001-11-28 20:22:08 +00:00
2001-12-10 12:21:07 +00:00
2001-12-10 12:21:07 +00:00
2001-07-06 04:58:11 +00:00
2001-10-27 00:23:28 +00:00
2001-07-06 04:58:11 +00:00
1998-05-18 11:43:16 +00:00
2001-09-25 03:10:54 +00:00
2001-12-06 07:59:42 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-07-06 04:58:11 +00:00
2001-11-27 08:33:32 +00:00
2001-07-06 04:58:11 +00:00
2001-12-06 07:59:42 +00:00
2001-11-02 02:16:01 +00:00
2001-12-12 00:21:26 +00:00
2001-07-06 04:58:11 +00:00
2001-09-01 06:22:57 +00:00
2001-12-05 19:19:20 +00:00
2001-10-31 09:32:37 +00:00
2001-07-06 04:58:11 +00:00
2000-04-28 05:12:30 +00:00
1998-09-21 14:34:13 +00:00
2001-06-11 12:32:56 +00:00
2001-06-16 04:34:51 +00:00
2001-12-12 00:21:26 +00:00
1997-07-22 00:10:33 +00:00
1997-11-18 02:50:07 +00:00
2000-04-28 06:14:43 +00:00
2000-02-29 01:13:44 +00:00
2000-11-10 04:15:55 +00:00
2001-08-16 05:39:18 +00:00
1995-02-18 01:27:10 +00:00
2001-11-16 01:27:24 +00:00
2001-01-11 17:50:24 +00:00
2001-07-06 06:58:28 +00:00
FAQ
2001-05-11 16:48:44 +00:00
2001-05-11 13:09:19 +00:00
2001-04-18 20:03:28 +00:00
2001-04-19 20:15:22 +00:00
1999-10-31 17:37:43 +00:00
2001-07-06 04:58:11 +00:00
2001-09-12 18:50:25 +00:00
2001-08-29 23:31:38 +00:00
2000-11-15 23:56:34 +00:00
2001-11-16 01:27:24 +00:00
2001-07-06 04:58:11 +00:00
2000-03-20 00:42:58 +00:00
2001-12-10 01:37:56 +00:00
2000-03-10 09:36:06 +00:00
2001-11-14 08:49:20 +00:00
2001-12-06 23:48:26 +00:00
1999-05-13 10:22:54 +00:00
1996-11-06 04:24:40 +00:00
2001-04-19 16:31:12 +00:00
2001-08-29 23:31:38 +00:00
2001-08-23 04:17:06 +00:00
2001-11-27 04:07:09 +00:00
2001-12-06 07:59:42 +00:00

This directory contains the version 2.2.90 release of the GNU C Library.
Many bugs have been fixed since the last release.
Some bugs surely remain.

As of this release, the GNU C library is known to run on the following
configurations:

		*-*-gnu			GNU Hurd
		i[3456]86-*-linux-gnu	Linux-2.x on Intel
		m68k-*-linux-gnu	Linux-2.x on Motorola 680x0
		alpha*-*-linux-gnu	Linux-2.x on DEC Alpha
		powerpc-*-linux-gnu     Linux and MkLinux on PowerPC systems
		sparc-*-linux-gnu	Linux-2.x on SPARC
		sparc64-*-linux-gnu	Linux-2.x on UltraSPARC 64-bit
		arm-*-none		ARM standalone systems
		arm-*-linux		Linux-2.x on ARM
		arm-*-linuxaout		Linux-2.x on ARM using a.out binaries
		mips*-*-linux-gnu	Linux-2.x on MIPS
		ia64-*-linux-gnu	Linux-2.x on ia64
		s390-*-linux-gnu	Linux-2.x on IBM S/390
		s390x-*-linux-gnu	Linux-2.x on IBM S/390 64-bit
		sh-*-linux-gnu		Linux-2.x on Super Hitachi
		cris-*-linux-gnu	Linux-2.4+ on CRIS

Former releases of this library (version 1.09.1 and perhaps earlier
versions) used to run on the following configurations:

		alpha-dec-osf1
		i[3456]86-*-bsd4.3
		i[3456]86-*-isc2.2
		i[3456]86-*-isc3
		i[3456]86-*-sco3.2
		i[3456]86-*-sco3.2v4
		i[3456]86-*-sysv
		i[3456]86-*-sysv4
		i[3456]86-force_cpu386-none
		i[3456]86-sequent-bsd
		i960-nindy960-none
		m68k-hp-bsd4.3
		m68k-mvme135-none
		m68k-mvme136-none
		m68k-sony-newsos3
		m68k-sony-newsos4
		m68k-sun-sunos4
		mips-dec-ultrix4
		mips-sgi-irix4
		sparc-sun-solaris2
		sparc-sun-sunos4

Since no one has volunteered to test and fix the above configurations,
these are not supported at the moment.  It's expected that these don't
work anymore.  Porting the library is not hard.  If you are interested
in doing a port, please contact the glibc maintainers by sending
electronic mail to <bug-glibc@gnu.org>.

There are some add-ons which can be used together with GNU libc.  They
are designed in a way to ease the installation by integrating them in
the libc source tree.  Simply get the add-ons you need and use the
--enable-add-ons option of the `configure' script to tell where the
add-ons are found.  Please read the FAQ file for more details.

See the file INSTALL to find out how to configure, build, install, and port
the GNU C library.  You might also consider reading the WWW pages for the
GNU libc at http://www.gnu.org/software/libc/libc.html.

The GNU C Library is completely documented by the Texinfo manual found
in the `manual/' subdirectory.  The manual is still being updated and
contains some known errors and omissions; we regret that we do not
have the resources to work on the manual as much as we would like.
Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
not to the library bug-reporting address.

The file NOTES contains a description of the feature-test macros used
in the GNU C library, explaining how you can tell the library what
facilities you want it to make available.

We prefer to get bug reports sent using the `glibcbug' shell script which
is installed together with the rest of the GNU libc to <bugs@gnu.org>.
Simply run this shell script and fill in the information.  Nevertheless
you can still send bug reports to <bug-glibc@gnu.org> as normal electronic
mails.

The GNU C Library is free software.  See the file COPYING.LIB for copying
conditions.
Description
No description provided
Readme 191 MiB
Languages
C 75%
Assembly 14.8%
Roff 3.5%
Pawn 3.4%
Makefile 0.8%
Other 2.3%