1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00

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.
This commit is contained in:
Roland McGrath
1996-06-16 01:27:54 +00:00
parent f332db0256
commit a23db8e4af
8 changed files with 41 additions and 18 deletions

View File

@ -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;