about summary refs log tree commit diff
path: root/elf/dl-open.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-06-16 01:27:54 +0000
committerRoland McGrath <roland@gnu.org>1996-06-16 01:27:54 +0000
commita23db8e4af794430fe69c17bd884f03669d307d7 (patch)
tree2f5c0e5daf975595266cd58a12d7f71958fdde23 /elf/dl-open.c
parentf332db025658c36adaad3759d438ef5117a595c8 (diff)
downloadglibc-a23db8e4af794430fe69c17bd884f03669d307d7.tar.gz
glibc-a23db8e4af794430fe69c17bd884f03669d307d7.tar.xz
glibc-a23db8e4af794430fe69c17bd884f03669d307d7.zip
Sat Jun 15 18:13:43 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
	* sysdeps/unix/sysv/linux/Dist: Add sys/klog.h.

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

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

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

	* sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): Variable removed.
	(rpath-link): Append to this instead.
Diffstat (limited to 'elf/dl-open.c')
-rw-r--r--elf/dl-open.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 8171837236..c24920f933 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -25,22 +25,15 @@ Cambridge, MA 02139, USA.  */
 size_t _dl_global_scope_alloc;
 
 struct link_map *
-_dl_open (struct link_map *parent, const char *file, int mode)
+_dl_open (const char *file, int mode)
 {
   struct link_map *new, *l;
   ElfW(Addr) init;
   struct r_debug *r;
 
 
-#ifdef PIC
-  if (! parent)
-    /* If no particular dependent object caused this load,
-       then use the DT_RPATH of the executable itself.  */
-      parent = _dl_loaded;
-#endif
-
   /* Load the named object.  */
-  new = _dl_map_object (parent, file, lt_loaded);
+  new = _dl_map_object (NULL, file, lt_loaded);
   if (new->l_searchlist)
     /* It was already open.  */
     return new;