kopensolaris-gnu/glibc.git
24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 03:48:48 +0000 (03:48 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* hurd/Makefile (routines): Add get-host, set-host.
(distribute): Add hurdhost.h.
* hurd/hurdhost.h: New file.
* sysdeps/mach/hurd/gethostname.c: Use _hurd_get_host_config.
* sysdeps/mach/hurd/gethostid.c: Likewise.
* sysdeps/mach/hurd/sethostname.c: Use _hurd_set_host_config.
* sysdeps/mach/hurd/sethostid.c: Likewise.
* hurd/get-host.c: New file.
* hurd/set-host.c: New file.

24 years ago.
roland [Sun, 16 Jun 1996 02:18:58 +0000 (02:18 +0000)]
.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 02:18:42 +0000 (02:18 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/rtld.c (dl_main): Remove _dl_rtld_map from chain unconditionally.
Then if it has a nonzero l_opencount, add it back in search order.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 02:18:39 +0000 (02:18 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-deps.c (_dl_map_object_deps): Set MAP's mark bit before loop.
Set mark bits of deps as opened, instead of as scanned.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 01:48:16 +0000 (01:48 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-load.c (_dl_map_object): Don't use _dl_loaded's DT_RPATH if
  it ain't got one!

24 years agoRegenerated: autoconf configure.in
roland [Sun, 16 Jun 1996 01:28:23 +0000 (01:28 +0000)]
Regenerated: autoconf  configure.in

24 years ago.
roland [Sun, 16 Jun 1996 01:27:54 +0000 (01:27 +0000)]
.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 01:27:37 +0000 (01:27 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 01:27:32 +0000 (01:27 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-open.c (_dl_open): Remove PARENT argument, pass null.
* elf/link.h: Update prototype.
* elf/dl-load.c (_dl_map_object): If dependents' DT_RPATHs don't find
NAME, try the DT_RPATH of the executable itself if dynamic.
* elf/dlopen.c (dlopen): Don't pass first arg to _dl_open.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sat, 15 Jun 1996 22:53:32 +0000 (22:53 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (build-shlib): Give -L opts for each elt of $(rpath-link).

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sat, 15 Jun 1996 22:53:28 +0000 (22:53 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-load.c (_dl_map_object): Exit DT_RPATH checking loop when an
open succeeds.

24 years agoSat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sat, 15 Jun 1996 22:53:25 +0000 (22:53 +0000)]
Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): Variable removed.
(rpath-link): Append to this instead.

24 years ago. libc-960615
roland [Fri, 14 Jun 1996 12:05:04 +0000 (12:05 +0000)]
.

24 years agoFri Jun 14 01:51:47 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Fri, 14 Jun 1996 11:59:48 +0000 (11:59 +0000)]
Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makeconfig (sysdep_dir): Move defn before config.status rule that
expands it.
(sysdep-configures): Variable removed.
(config.status): Use its contents directly, tighten up a bit, and
include Implies files.

24 years agoFri Jun 14 01:51:47 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Fri, 14 Jun 1996 11:59:45 +0000 (11:59 +0000)]
Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* version.c (banner): New static const variable, complete version
banner text.
(__libc_print_version): Use it, and use __write instead of printf.

24 years agoFri Jun 14 01:51:47 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Fri, 14 Jun 1996 11:59:42 +0000 (11:59 +0000)]
Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* configure.in (sysnames): Don't cache the value, because it
  depends only on libc sources.  Merge uniquifying third pass into
Implies/parent expansion second pass.  Report each unique name as
it is added in partial report string, terminated when finished.

24 years agoFri Jun 14 01:51:47 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> libc-960614
roland [Fri, 14 Jun 1996 06:14:39 +0000 (06:14 +0000)]
Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/Makefile ($(objpfx)$(rtld-installed-name)): Make a symlink.

24 years agoFri Jun 14 01:51:47 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Fri, 14 Jun 1996 06:14:33 +0000 (06:14 +0000)]
Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-open.c (_dl_open) [PIC]: Set PARENT to _dl_loaded if null.

24 years agoThu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 22:49:46 +0000 (22:49 +0000)]
Thu Jun 13 00:02:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/rtld.c (dl_main): Close _dl_zerofd after mapping deps.

24 years agoThu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 22:49:40 +0000 (22:49 +0000)]
Thu Jun 13 00:02:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill):
Add comment.

24 years agoThu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 22:49:33 +0000 (22:49 +0000)]
Thu Jun 13 00:02:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/generic/machine-gmon.h [NO_UNDERSCORES]: Define mcount as
weak alias for _mcount.
* sysdeps/alpha/_mcount.S (mcount): Define as weak alias.

24 years ago*** empty log message ***
miles [Thu, 13 Jun 1996 20:50:55 +0000 (20:50 +0000)]
*** empty log message ***

24 years ago(_hurd_internal_post_signal): Rename `deliver:' label to `deliver_pending:'
miles [Thu, 13 Jun 1996 20:44:10 +0000 (20:44 +0000)]
(_hurd_internal_post_signal): Rename `deliver:' label to `deliver_pending:'
  to match goto.

24 years agoThu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> libc-960613
roland [Thu, 13 Jun 1996 06:50:11 +0000 (06:50 +0000)]
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.

24 years ago.
roland [Thu, 13 Jun 1996 04:06:45 +0000 (04:06 +0000)]
.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:05:16 +0000 (04:05 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:05:12 +0000 (04:05 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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.

24 years agoThu Jun 13 00:02:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:05:08 +0000 (04:05 +0000)]
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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:05:04 +0000 (04:05 +0000)]
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-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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:05:02 +0000 (04:05 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:04:53 +0000 (04:04 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Thu, 13 Jun 1996 04:04:48 +0000 (04:04 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 21:55:43 +0000 (21:55 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 21:55:39 +0000 (21:55 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 21:55:24 +0000 (21:55 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoWed Jun 12 15:52:46 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 19:54:21 +0000 (19:54 +0000)]
Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/unix/sysv/linux/gnu/types.h: Remove temporary hack #define
of __kernel_fsid_t.  It is correctly defines in <linux/types.h> now.

24 years ago. libc-960612
roland [Wed, 12 Jun 1996 04:51:48 +0000 (04:51 +0000)]
.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 04:51:27 +0000 (04:51 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

* sysdeps/alpha/dl-machine.h: New file.

24 years ago.
roland [Wed, 12 Jun 1996 04:00:32 +0000 (04:00 +0000)]
.

24 years agoTue Jun 11 23:23:30 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 04:00:06 +0000 (04:00 +0000)]
Tue Jun 11 23:23:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (LDFLAGS-c.so): Use __libc_main instead of
__libc_print_version as entry point for shared object.
* version.c [HAVE_ELF] (__libc_main): New function.

24 years agoTue Jun 11 23:23:30 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 04:00:01 +0000 (04:00 +0000)]
Tue Jun 11 23:23:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-load.c (_dl_map_object_from_fd): Relocate l_entry with the
load address.

24 years ago.
roland [Wed, 12 Jun 1996 01:54:21 +0000 (01:54 +0000)]
.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:42:21 +0000 (01:42 +0000)]
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.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:42:18 +0000 (01:42 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

* sysdeps/generic/dl-sysdep.c: Include <string.h> for memcpy.
Finish Elf32 -> ElfW migration.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:42:13 +0000 (01:42 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

* 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.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:42:03 +0000 (01:42 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

* 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.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:41:59 +0000 (01:41 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

* 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.

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:41:57 +0000 (01:41 +0000)]
Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>

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

24 years agoTue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
roland [Wed, 12 Jun 1996 01:41:54 +0000 (01:41 +0000)]
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.

24 years ago.
roland [Wed, 12 Jun 1996 01:34:32 +0000 (01:34 +0000)]
.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 01:34:12 +0000 (01:34 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* config.make.in (CFLAGS): New variable.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 01:34:07 +0000 (01:34 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (elfobjdir): Use $(objdir) if set, even in elf subdir.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 01:33:58 +0000 (01:33 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* io/sys/stat.h (S_ISLNK, S_ISSOCK): Make conditional on __USE_BSD,
not __USE_GNU.
* string/string.h (strncasecmp): Likewise.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Wed, 12 Jun 1996 01:33:46 +0000 (01:33 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/Makefile (routines): Remove init-first.
* csu/Makefile (routines): New variable; put it here instead.

24 years ago.
roland [Tue, 11 Jun 1996 21:41:42 +0000 (21:41 +0000)]
.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:40:31 +0000 (21:40 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/Makefile (lib-noranlib): Move rule adding deps for ld.so et al
to after `include ../Rules', so $(rtld-installed-name) is defined.

24 years ago.
roland [Tue, 11 Jun 1996 21:33:17 +0000 (21:33 +0000)]
.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:31:38 +0000 (21:31 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules ($(libdir)/libc.so): Put $(rtld-installed) name between
libc.so and libc.a in the deps.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:31:32 +0000 (21:31 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* string/basename.c (basename): Cast FILENAME to char * for return.

24 years ago.
roland [Tue, 11 Jun 1996 21:07:00 +0000 (21:07 +0000)]
.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:06:31 +0000 (21:06 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/Makefile ($(objpfx)$(rtld-installed-name)): New target to make
link to ld.so if that is not the installed name.
(lib-noranlib): Depend on the installed name in the build directory
instead of on ld.so.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:06:29 +0000 (21:06 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when
relocating _dl_rtld_map, subtract SYM's value from final reloc value,
but don't change *RELOC_ADDR before calling *RESOLVE, because it might
call the function we are relocating!

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:06:25 +0000 (21:06 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (elfobjdir): Define as . when $(subdir) is elf.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 21:06:20 +0000 (21:06 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name)
between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so
ld searches libc.a before ld.so (is that an ld bug?).
Add $(elfobjdir) to -rpath-link.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 19:18:55 +0000 (19:18 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* string/basename.c: New file.
* string/Makefile (routines): Add basename.

24 years ago.
roland [Tue, 11 Jun 1996 19:18:38 +0000 (19:18 +0000)]
.

24 years agoTue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Tue, 11 Jun 1996 19:18:19 +0000 (19:18 +0000)]
Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* string/basename.c: New file.
* string/Makefile (routines): Add basename.

24 years ago. libc-960611
roland [Mon, 10 Jun 1996 20:19:39 +0000 (20:19 +0000)]
.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:19:03 +0000 (20:19 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:45 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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): 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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:42 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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-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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:39 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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/link.h (struct link_map.l_type): Remove lt_interpreter.
  (struct link_map): Add new flag member l_global.
* 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-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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:35 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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/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-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-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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:31 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:28 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:22 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:19 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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-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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:14 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dlopen.c: Pass "" to _dl_open when FILE is null.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:11 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:08 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:11:01 +0000 (20:11 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
done in _dl_relocate_object.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:10:51 +0000 (20:10 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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-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-object.c (_dl_startup_loaded): Variable removed.
* elf/link.h: Remove its decl.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 20:10:46 +0000 (20:10 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.

24 years ago.
roland [Mon, 10 Jun 1996 13:03:12 +0000 (13:03 +0000)]
.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 12:55:32 +0000 (12:55 +0000)]
Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/link.h: Include elfclass.h to define __ELF_NATIVE_CLASS.
(ElfW, ELFW): Use it.
* elf/Makefile (headers): Add elfclass.h.
* sysdeps/wordsize-32/elfclass.h: New file.
* sysdeps/wordsize-64/elfclass.h: New file.
* sysdeps/alpha/Implies: Add wordsize-64.
* sysdeps/i386/Implies: Add wordsize-32.
* sysdeps/m68k/Implies: Add wordsize-32.
* sysdeps/mips/Implies: Add wordsize-32.
* sysdeps/sparc/Implies: Add wordsize-32.

24 years ago.
roland [Mon, 10 Jun 1996 10:18:47 +0000 (10:18 +0000)]
.

24 years agoMon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:17:20 +0000 (10:17 +0000)]
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.

24 years agoSat Jun 8 20:52:38 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:26 +0000 (10:12 +0000)]
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.

24 years agoMon Jun 10 05:13:18 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:23 +0000 (10:12 +0000)]
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.
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/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).
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:21 +0000 (10:12 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:19 +0000 (10:12 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:16 +0000 (10:12 +0000)]
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:15 +0000 (10:12 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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

24 years agoMon Jun 10 05:13:18 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:13 +0000 (10:12 +0000)]
Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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/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.
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.

24 years agoMon Jun 10 05:13:18 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:10 +0000 (10:12 +0000)]
Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:08 +0000 (10:12 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-deps.c (_dl_open): Moved to ...
* elf/dl-open.c: New file.
* Makefile (routines): Add dl-open.
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:06 +0000 (10:12 +0000)]
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/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.
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/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.
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.

24 years agoMon Jun 10 05:13:18 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:03 +0000 (10:12 +0000)]
Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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/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/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/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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:12:01 +0000 (10:12 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* 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.
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.

24 years agoSun Jun 9 04:04:26 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Mon, 10 Jun 1996 10:11:58 +0000 (10:11 +0000)]
Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

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.