From beb5387cf656c281f9cc81d6a04f1085fe534c9a Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 11 Jan 2001 17:50:24 +0000 Subject: Update. 2001-01-10 H.J. Lu * elf/dl-libc.c (do_dlopen): Call DL_STATIC_INIT for static binaries. * sysdeps/unix/sysv/linux/ia64/Makefile (sysdep-dl-routines): Add dl-static. * sysdeps/unix/sysv/linux/ia64/Versions (ld): Add _dl_var_init. * sysdeps/generic/ldsodefs.h (DL_STATIC_INIT): Defined if not defined. * sysdeps/unix/sysv/linux/ia64/ldsodefs.h: New file. * sysdeps/unix/sysv/linux/ia64/dl-static.c: New file. * sysdeps/unix/sysv/linux/ia64/Dist: Add dl-static.c. --- elf/dl-libc.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'elf/dl-libc.c') diff --git a/elf/dl-libc.c b/elf/dl-libc.c index dc47851803..913a516f37 100644 --- a/elf/dl-libc.c +++ b/elf/dl-libc.c @@ -1,5 +1,5 @@ /* Handle loading and unloading shared objects for internal libc purposes. - Copyright (C) 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Zack Weinberg , 1999. @@ -76,6 +76,10 @@ do_dlopen (void *ptr) struct do_dlopen_args *args = (struct do_dlopen_args *) ptr; /* Open and relocate the shared object. */ args->map = _dl_open (args->name, RTLD_LAZY, NULL); + +#ifndef SHARED + DL_STATIC_INIT (args->map); +#endif } static void -- cgit v1.2.3