kopensolaris-gnu/glibc.git
23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 09:31:01 +0000 (09:31 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* shlib-versions (*-*-*): Add libutil=1.

23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 09:30:59 +0000 (09:30 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* rpm/Makefile (install-lib): Add libc.a et al.
(install-others): Only add libc.so if $(build-shared) is yes.

23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 09:30:50 +0000 (09:30 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* math/Makefile (install-lib): New variable, list libieee.a.
(non-lib.a): Likewise.
(extra-objs): Likewise, and ieee-math.o.
($(objpfx)libieee.a): New target, link to ieee-math.o.
* math/ieee-math.c: New file.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)=math]: Remove setfpucw
and libieee.a stuff.
* sysdeps/unix/sysv/linux/ieee-fpucw.c: File removed.
* sysdeps/unix/sysv/linux/i386/ieee_fpu.c: File removed.

23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 09:30:47 +0000 (09:30 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* hurd/hurdinit.c (map0): Remove [!PIC] conditional.

23 years ago. libc-960616
roland [Sun, 16 Jun 1996 08:46:47 +0000 (08:46 +0000)]
.

23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 08:46:17 +0000 (08:46 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* rpm/Makefile (install-others) [libc.so-version]: Get libc.so from
$(libdir), only the versioned named from $(slibdir).
(instfiles): New variable.
(glibc-$(version).$(config).rpm): New target.  Run rpm -bb.
* rpm/rpmrc: New file.  A third of the options controlling rpm can
only be given here (another third is on the command line, and a third
cannot be specified in any way shape or form).

23 years agoSun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 08:46:12 +0000 (08:46 +0000)]
Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/unix/sysv/Makefile (sysdep_headers): Make append of termio.h
and rule for it conditional on termio.h not already being in
sysdep_headers.

23 years ago.
roland [Sun, 16 Jun 1996 06:52:32 +0000 (06:52 +0000)]
.

23 years agoSun Jun 16 02:44:22 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:48:01 +0000 (06:48 +0000)]
Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* manual/Makefile (subdir_%): Add new rule with no deps, secondary to
to rule w/dep on %, with no-op commands.

23 years agoSun Jun 16 02:44:22 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:47:59 +0000 (06:47 +0000)]
Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (subdir_distinfo): New phony target; depend on distinfo.
* Makefile (rpm/%): New rule.
(+subdir_targets): Add subdir_distinfo.

23 years agoSun Jun 16 00:40:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:47:57 +0000 (06:47 +0000)]
Sun Jun 16 00:40:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add
  fpu_control.h here.

23 years agoSun Jun 16 02:44:22 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:47:54 +0000 (06:47 +0000)]
Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makeconfig (sysdep-configures): Remove empty variable.

23 years agoSun Jun 16 02:44:22 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:47:51 +0000 (06:47 +0000)]
Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* rpm/template: New file.
* rpm/Makefile: New file.

23 years agoSun Jun 16 02:44:22 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 06:47:48 +0000 (06:47 +0000)]
Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* Makerules (distinfo-vars): Write defns for $(install-lib.so) and
$(versioned).
* Makerules (subdir_distinfo): New phony target; depend on distinfo.
* Makefile (rpm/%): New rule.
(+subdir_targets): Add subdir_distinfo.

23 years ago.
roland [Sun, 16 Jun 1996 04:52:54 +0000 (04:52 +0000)]
.

23 years agoSun Jun 16 00:40:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 04:52:37 +0000 (04:52 +0000)]
Sun Jun 16 00:40:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* time/tzset.c (__tzset): After stripping leading :, call
__tzfile_read on TZ even if it's empty or null.
* time/tzfile.c (__tzfile_read): Use "Universal" if passed "".

23 years agoSun Jun 16 00:40:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
roland [Sun, 16 Jun 1996 04:52:34 +0000 (04:52 +0000)]
Sun Jun 16 00:40:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* time/Makefile ($(installed-localtime-file)): If target exists, do
nothing but print a message; if not, make it an absolute symlink.

23 years ago.
roland [Sun, 16 Jun 1996 03:49:40 +0000 (03:49 +0000)]
.

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

* math/Makefile (headers): Add fpu_control.h.
(aux): New variable, list fpu_control and setfpucw.
* sysdeps/generic/fpu_control.c: New file.
* sysdeps/stub/fpu_control.h: New file.
* sysdeps/unix/sysv/linux/m68k/fpu_control.h: Moved to ...
* sysdeps/m68k/fpu_control.h: here.
* sysdeps/unix/sysv/linux/i386/fpu_control.h: Moved to ...
* sysdeps/i386/fpu_control.h: here.
* sysdeps/unix/sysv/linux/alpha/fpu_control.h: Moved to ...
* sysdeps/alpha/fpu/fpu_control.h: here.  Fixed copyright.
* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
setfpucw, fpu_control.
* sysdeps/unix/sysv/linux/alpha/fpu_control.c: File removed.
* sysdeps/unix/sysv/linux/setfpucw.c: Moved to ...
* sysdeps/generic/setfpucw.c: here.
(__fpu_control): Variable removed.
(__setfpucw): Use SET even if zero.

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

* math/Makefile (headers): Add fpu_control.h.
(aux): New variable, list fpu_control and setfpucw.
* sysdeps/generic/fpu_control.c: New file.
* sysdeps/stub/fpu_control.h: New file.
* sysdeps/unix/sysv/linux/m68k/fpu_control.h: Moved to ...
* sysdeps/m68k/fpu_control.h: here.
* sysdeps/unix/sysv/linux/i386/fpu_control.h: Moved to ...
* sysdeps/i386/fpu_control.h: here.
* sysdeps/unix/sysv/linux/alpha/fpu_control.h: Moved to ...
* sysdeps/alpha/fpu/fpu_control.h: here.  Fixed copyright.
* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
setfpucw, fpu_control.
* sysdeps/unix/sysv/linux/alpha/fpu_control.c: File removed.
* sysdeps/unix/sysv/linux/setfpucw.c: Moved to ...
* sysdeps/generic/setfpucw.c: here.
(__fpu_control): Variable removed.
(__setfpucw): Use SET even if zero.

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

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

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

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

23 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!

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

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

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

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

23 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).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

23 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).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

23 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!

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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